初识 carla
安装
下载地址
// 下载对应平台版本的发布版压缩包。不过这个链接对国内不是很友好。
https://github.com/carla-simulator/carla/releases
// 这个链接是国内的地址,提供预编译版下载,你可以直接下载并解压,直接开始使用CARLA仿真器。
// 但是只有编译release,不便于二次开发和自建地图
https://mirrors.sustech.edu.cn/carla/carla/
查看对应Python版本
打开‘/carla/PythonAPI/carla/dist’,查看egg文件对应的python版本。如果版本不匹配,会报出“cannot import name carla ”的错误。
CARLA 版本 | 对应Python版本 |
---|---|
0.99.13 | 3.7 |
0.99.12 | 3.7 |
0.99.11 | 3.7 |
0.99.10 | 3.7 |
0.9.9.4 | 3.7 |
0.9.8 | 3.5 |
安装carla前,需要安装
pip install --user pygame numpy
运行报错
出现报错怎么办,当然是百度了。解决方法就是这个 链接: link.
根据这个博主的说法,出现这个问题,有两种情况
1 电脑配置不够
./CarlaUE4.sh -opengl // 每次启动都要加
or
sudo gedit ~/carla/Util/BuildTools/BuildCarlaUE4.sh
将RHI="-vulkan"更改为to RHI="-opengl"
2 nvidia的驱动没装好。
去解决驱动的问题。
显卡的nvidia-settings只显示PRIME Profiles选项
在进入ubuntu的时候,选择进入的ubuntu还是ubuntu on Wayland界面的区别很大。这两个界面对nvidia的使用和显示也不一样。
我在进入ubuntu on Wayland 的时候,nvidia-setting会只显示PRIME Profiles选项。nvidia-smi只会显示占用少量内存,这样可以降低显卡的使用量,但是无法拓展屏幕。
正常情况下进入ubuntu的时候显示的跟下面一样
carla-ros-bridge 的安装
有两种安装方式。从源码安装和直接安装。
但是我遇到一个问题,就是用 sudo apt-get install carla-ros-bardge 之后,在运行的时候,会显示
ImportError:No module named util
搞了很久也没有解决这个问题。后来决定采用源码安装的方式。这里需要大家注意的就是,我在官网发现,carla-ros-bridge的版本有限。最新的好像是0.9.12,一定要和自己的CAR版本对应上才可以安装。
使用
示例函数的位置 在CARLA_0.9.10/PythonAPI/examples 下
dynamic_weather.py // 动态控制天气
manual_control.py //插入可以控制的车辆
//加入80辆交通工具
python3.7 spawn_npc.py -n 80
python manual_control.py # 以第三视角驾驶该车辆
//远程连接服务器
python3.7 manual_control.py --host=服务器IP
spawn_npc 参数
-h, --help show this help message and exit
--host H IP of the host server (default: 127.0.0.1)
-p P, --port P TCP port to listen to (default: 2000)
-n N, --number-of-vehicles N
number of vehicles (default: 10)
-w W, --number-of-walkers W
number of walkers (default: 50)
--safe avoid spawning vehicles prone to accidents
--filterv PATTERN vehicles filter (default: "vehicle.*")
--filterw PATTERN pedestrians filter (default: "walker.pedestrian.*")
-tm_p P, --tm-port P port to communicate with TM (default: 8000)
--sync Synchronous mode execution
键盘控制
## carla-ros-bridge
// 启动ros桥
roslaunch carla_ros_bridge carla_ros_bridge.launch
// 与RVIZ一起启动ros bridge
roslaunch carla_ros_bridge carla_ros_bridge_with_rviz.launch
// 与示例 ego 车辆一起启动 ros 桥
roslaunch carla_ros_bridge carla_ros_bridge_with_example_ego_vehicle.launch