CARLA常见错误解决方案以及配置环境、安装库、linux系统的一些问题解决方案

记录Linux环境、Windows环境下常见的运行自动驾驶仿真器CARLA出现的错误

问题1

问题1比较基础,创建虚拟环境以及删除虚拟环境

conda create -n RL python=3.7
conda remove -n RL --all

原因分析:

这里的RL是环境的名字,后面的python版本根据自己的需要进行改变;


问题2

No module named 'carla'

解决方案:

方法一:

export PYTHONPATH=$PYTHONPATH:/home/yff/CARLA_0.9.5/PythonAPI/carla/dist/carla-0.9.5-py3.5-linux-x86_64.egg

方法二:

cd $CONDA_PREFIX
mkdir -p ./etc/conda/activate.d
mkdir -p ./etc/conda/deactivate.d
touch ./etc/conda/activate.d/env_vars.sh
touch ./etc/conda/deactivate.d/env_vars.sh

第二步在这个文件夹(Anaconda3./etc/conda/activate.d/env_vars.sh)里面,打开env_vars.sh,把下面的代码写进去,然后保存这个文件:

export PYTHONPATH=$PYTHONPATH:/home/yff/CARLA_0.9.5/PythonAPI/carla/dist/carla-0.9.5-py3.5-linux-x86_64.egg

第三步在这个文件夹(Anaconda3./etc/conda/deactivate.d/env_vars.sh)里面,打开env_vars.sh,把下面的代码写进去,然后保存这个文件:

unset PYTHONPATH

第四步运行下面的代码,看有没有出现CARLA的egg文件的路径:

echo $PYTHONPATH

如果有刚才导入的路径,证明CARLA导入成功;


方法三:

gedit ~/.bashrc

然后在.bashrc文件最后加上以下代码:

export PYTHONPATH=$PYTHONPATH:/home/yff/CARLA_0.9.5/PythonAPI/carla/dist/carla-0.9.5-py3.5-linux-x86_64.egg
export CARLA_ROOT=/home/yff/CARLA_0.9.

关闭这个文件,运行以下代码:

source ~/.bashrc

方法四:

import sys
try:
    sys.path.append('/home/yyy/carla/CARLA_0.9.6/PythonAPI/carla/dist/carla-0.9.6-py3.5-linux-x86_64.egg')

问题3

'Permission dennied'
这个问题针对的是安装软件时会出现的错误;

解决方案:

在./run_train_eval.sh 前面加上一句代码:

chmod +x run_train_eval.sh

问题4

'ERROR: Could not build wheels for opencv-python which use PEP 517 and cannot be installed directly'

解决方案:

运行以下代码:

pip install --upgrade pip setuptools wheel

问题5

如何导入CARLA的额外地图

解决方案:

把下载好的地图放入import文件夹,然后运行以下代码:

./ImportAssets.sh

问题6

a similar error :the file is called GlobalShaderCache-GLSL_150_ES31.bin is missing

解决方案:

运行以下代码:

sudo apt install vulkan-utils

Notes: 常见运行CARLA客户端命令:

SDL_VIDEODRIVER=offscreen SDL_HINT_CUDA_DEVICE=0 /home/yff/CARLA_0.9.5/CarlaUE4.sh -world-port=2000 -fps=30
DISPLAY= ./CarlaUE4.sh -opengl -carla-port=2000

问题7的解决方案也是常见的运行CARLA客户端命令;

问题7

X Error of failed request: BadValue (integer parameter out of range for operation) Major opcode of failed request: 151 (GLX) Minor opcode of failed request: 3 (X_GLXCreateContext) Value in failed request: 0x0 Serial number of failed request: 147 Current serial number in output stream: 148

解决方案:

CUDA_VISIBLE_DEVICES=3 DISPLAY= ./CarlaUE4.sh -opengl -carla-port=2000

问题8

运行carla例程:python manual_control.py出现list index out of range的错误

解决方案:

运行以下代码:

nvidia-smi         (查看端口号)
kill -9 PID        (PID就是你要杀死的进程的端口号)

问题9

关掉终端,进程仍然在运行,如何关闭进程

解决方案:

把manual_control.py里的mono全部替换为arial


下面是一些服务器连接和电脑问题的解决方法;

问题10

连接服务器时,vnc server连接超时

解决方案:

在MobaXterm里运行以下代码:

vncserver -geometry 1920x1080

再打开vnc server修改Properties为刚才显示的端口号;


问题11

查看自己的ip地址和端口号

解决方案:

运行以下代码:

iconfig|grep net

第一个是局域网IP(v4),第二个是局域网IP(v6),第三个是广域网IP(v4),第四个是广域网IP(v6);
我们要找的是第三个,那就是远程SSH连接本机时用到的;默认端口号是22


问题12

电脑打不开校园网登录界面,但是显示网络连接着

解决方案:

win+R → inetcpl.cpl → 连接 → 局域网设置 → 取消勾选 (自动检测设置, 使用自动配置脚本, 为LAN使用代理服务器)


问题13

安装ros过程中出现问题,报错如下:
ModuleNotFoundError: No module named 'derived_object_msgs'

解决方案:

终端执行以下语句即可解决:

sudo apt-get install ros-foxy-astuff-sensor-msgs

问题14

Windows环境下安装Anaconda后,终端不出现base环境,这是因为需要添加环境变量;

解决方案:

Win11系统,按如下步骤找到环境变量:系统 --> 系统信息 --> 高级系统设置 --> 高级 --> 环境变量;
找到后点击下面的系统变量Path,打开它新建环境变量,把以下的目录添加进环境变量;

D:\common\Anaconda

D:\common\Anaconda\Scripts\

D:\common\Anaconda\Library\bin

D:\common\Anaconda\Library\mingw-w64\bin

D:\common\Anaconda\Library\usr\bin

"D:\common\Anaconda"这个路径是根据你自己的Anaconda安装位置进行修改的,后面的路径都是一样的。


问题15

CommandNotFoundError: Your shell has not been properly configured to use ‘conda activate‘.'

解决方案:

打开Anaconda powershell prompt,执行

conda init powershell

然后关闭Anaconda powershell prompt;
ctrl + R 打开windows10运行界面,输入powershell 回车,并在powershell 界面输入命令:

set-ExecutionPolicy RemoteSigned

系统有提示信息的时候输入Y
关闭 Anaconda powershell prompt,在终端就可以激活环境了;

问题16

Windows环境下在Anaconda里创建虚拟环境后,我发现虚拟环境不在Anaconda的envs文件夹下,在Pycharm
里添加不了该环境的解释器,这时候要更改Anaconda 环境默认位置;

解决方案:

conda config --show去查看env_dirs的信息,第一个一般是默认安装路径,此时发现第一个路径确实不是Anaconda的envs文件夹的路径;
windows+r输入%HOMEPATH%找到.condarc文件,用记事本打开,将自定义文件夹的路径append到文件中
envs_dirs:

 - D:\common\Anaconda\envs

如果发现创建的虚拟环境还是不在Anaconda的envs文件夹下的话,继续往下执行:
更改D:\Anaconda3的权限:选中Anaconda3文件夹,然后右击选则属性,找到安全,Users权限全部允许。
同时在改完Anaconda3的文件夹属性后没成功的话可以试试,将Anaconda3\envs文件夹的只读属性去掉,并且在属性–>安全–>User中将权限全都勾上。

问题17

AssertionError: Torch not compiled with CUDA enabled'

解决方案:安装cuda和对应的torch

1.运行如下的命令查看自己的显卡支持的最高的cuda版本;

nvidia-smi

2.查看自己想要安装的cuda和torch对应的版本;
CARLA常见错误解决方案以及配置环境、安装库、linux系统的一些问题解决方案_第1张图片
安装一个不高于自己电脑支持的最高cuda版本的cuda;
3. 在 https://download.pytorch.org/whl/cu113'中找自己安装的cuda对应的torch版本,这里我安装的是cuda11.3版本的,我下载的是torch-12.1-cu113-cp37版本,然后直接进入下载该文件的路径内打开终端安装;执行类似于这样的命令pip install torch-1.7.0+cu110-cp37-cp37m-win_amd64.whl',后面就是你下载的对应的版本的名称;
CARLA常见错误解决方案以及配置环境、安装库、linux系统的一些问题解决方案_第2张图片
使用如下的命令也是一种方法,使用下面的命令不需要再运行下面的步骤:

pip install torch==1.12.1+cu113 torchvision==0.13.1+cu113 torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/cu113
  1. 安装对应的cudaNN版本,https://developer.nvidia.com/rdp/cudnn-downloa' 里找到cuda对应的cudaNN版本,然后把里面的文件夹放到CUDA安装目录下,粘贴会提示是否替换,选择替换;
    在这里插入图片描述

5.运行如下语句,如果输出为True的话,那么就可以使用啦!

import torch
print(torch.__version__) 
print(torch.cuda.is_available())

也可以运行下面的语句判断是否成功

cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\extras\demo_suite
bandwidthTest.exe
deviceQuery.exe

问题18

Anaconda配置的环境想要迁移到ubuntu系统下,省去配置环境的麻烦'

解决方案:运行如下的命令

conda env export > environment.yml
conda env create -f environment.yml

问题19

'ubuntu18.04软件中心不见了'

解决方案:运行如下的命令

sudo apt install gnome-software

问题20

'ubuntu18.04 显示系统时间'

解决方案:运行如下的命令

dconf write /org/gnome/desktop/interface/clock-show-date 'true'

问题21

'Win11显示未找到音频设备'

解决方案:运行如下的命令

1)按下【Win+R】组合键打开运行,输入:services.msc 点确定打开服务;

2)找到【Windows Audio】服务,双击打开;

3)该服务未启动的话将其启动,若以启动则先停用,停用后再启用即可。

Gym框架

Gym框架是常用的强化学习算法使用的框架;
Gym框架的步骤:
1.生成环境gym.make();括号里面是一个输入,也就是要解的问题;
2.env.reset();重置环境;
3.循环执行以下步骤:
1)env.render()渲染环境,把游戏里面发生的过程展示给人看;
2)env.action_space.sample();均匀抽样得到动作,实际上根据策略函数或者
价值函数计算出action,这里只是举个例子让大家明白;
3)env.step(action);agent做出动作,然后环境更新状态,给出动作的奖励;


你可能感兴趣的:(python,linux,开发语言)