【Carla】carla仿真环境安装与运行(Python、ros)

★,°:.☆( ̄▽ ̄)/$:.°★
这篇文章主要介绍carla仿真环境安装与运行。
学其所用,用其所学。——梁启超
欢迎来到我的博客,一起学习,共同进步。
喜欢的朋友可以关注一下,下次更新不迷路

文章目录

    • :smirk:1. carla介绍
    • :blush:2. carla安装
      • Windows安装carla
      • Ubuntu安装carla
    • :satisfied:3. carla-ros-bridge安装与仿真

1. carla介绍

Carla是一个开源的无人驾驶仿真平台,用于训练和测试自动驾驶算法。它提供高度可配置的场景和传感器设置,模拟城市环境和交通情况,以帮助开发者评估他们的自动驾驶系统在各种现实世界场景下的表现。

Carla的目标是为研究人员、工程师和学生提供一个真实的仿真环境,以便快速迭代和测试他们的自动驾驶算法。它支持基于Python的API,使用户能够轻松地与仿真环境进行交互,并控制车辆、获取传感器数据等。

Carla具有逼真的图形渲染和物理模拟能力,可以模拟车辆的运动、感知和决策过程。它还支持多个传感器类型,包括相机、激光雷达和雷达等,以提供丰富的感知信息。用户可以根据自己的需求配置传感器设置,从而模拟不同的传感器布局和性能。

除了提供仿真环境外,Carla还提供了一套丰富的API和工具,用于收集和分析仿真数据。这些数据可以用于训练和验证自动驾驶算法的性能,并帮助用户改进他们的系统。

总之,Carla是一个功能强大而灵活的无人驾驶仿真平台,旨在加速自动驾驶技术的发展和研究。它为开发者提供了一个安全、可控且可扩展的环境,用于测试和验证各种自动驾驶算法的效果。

主要功能如下:

  • Provide Sensor Data (Lidar, Semantic lidar, Cameras (depth, segmentation, rgb, dvs), GNSS, Radar, IMU)
  • Provide Object Data (Transforms (via tf), Traffic light status, Visualization markers, Collision, Lane invasion)
  • Control AD Agents (Steer/Throttle/Brake)
  • Control CARLA (Play/pause simulation, Set simulation parameters)

Carla相关学习资源:

官网:https://carla.org/
Github:https://github.com/carla-simulator/carla
Wiki:https://carla.readthedocs.io/en/latest/
中文站:https://www.carla.org.cn/#/
0.9.11-release版本:https://github.com/carla-simulator/carla/releases/tag/0.9.11

2. carla安装

直接安装release 0.9.11版本,方便又快捷!源码真的不知道要折腾多久。

Windows安装carla

首先安装DirectX,在该地址下载即可:https://www.microsoft.com/en-us/download/confirmation.aspx?id=35

然后下载0.9.11的windows release版本,如下:

【Carla】carla仿真环境安装与运行(Python、ros)_第1张图片

双击运行即可:

这里在windows下演示,安装好python3.7版本,可通过python -V查看。

安装依赖的pip包:pip install numpy pygame networkx

安装carlib:

# 打开powershell
cd D:\WindowsNoEditor\PythonAPI\carla\dist
# 安装egg
easy_install .\carla-0.9.11-py3.7-win-amd64.egg

运行client端脚本(前提是server端要打开,也就是双击运行的那个):

cd D:\WindowsNoEditor\PythonAPI\examples
python .\automatic_control.py	# 自动运行车辆控制

执行后的演示如下:

Ubuntu安装carla

Ubuntu安装类似,也是去下载Ubuntu的release版本,然后运行即可。

#运行Carla
./CarlaUE4.sh
#加80个随机车辆
cd ~/CARLA_0.9.11/PythonAPI/examples
./spawn_npc.py -n 80
#控制天气变化
./dynamic_weather.py
#手动驾驶client
./manual_control.py

Q:出现carla的time-out of 2000ms while waiting for the simulator
A:在manual_control.py加一句client=carla.Client(host='127.0.0.1', port=2000),多个client时port+1

3. carla-ros-bridge安装与仿真

源码安装步骤如下:

mkdir -p ~/carla-ros-bridge/catkin_ws/src
cd ~/carla-ros-bridge
git clone https://github.com/carla-simulator/ros-bridge.git(0.9.11)
cd catkin_ws/src
ln -s ../../ros-bridge-0.9.11
source /opt/ros/melodic/setup.bash
cd ..

rosdep update
rosdep install --from-paths src --ignore-src -r

catkin_make

加入环境变量:

gedit ~/.bashrc
#### carla
export PYTHONPATH=$PYTHONPATH:/home/dev/CARLA_0.9.11/PythonAPI/carla/dist/carla-0.9.11-py2.7-linux-x86_64.egg

#### carla_ros_bridge
source ~/carla-ros-bridge/catkin_ws/devel/setup.bash

ros节点启动:

#### Option 1: start the ros bridge
roslaunch carla_ros_bridge carla_ros_bridge.launch

#### Option 2: start the ros bridge together with RVIZ
roslaunch carla_ros_bridge carla_ros_bridge_with_rviz.launch

#### Option 3: start the ros bridge together with an example ego vehicle
roslaunch carla_ros_bridge carla_ros_bridge_with_example_ego_vehicle.launch

此外,也可以做autoware与carla的联合仿真:

  1. carla-仿真引擎(服务端)
  2. ros_bridge-车辆模型和topic节点(客户端)
  3. autoware-自动驾驶算法集合

仿真流程:

1.启动carla-./CarlaUE4.sh 
2.启动carla_ros_bridge-roslaunch carla_ros_bridge carla_ros_bridge_with_example_ego_vehicle.launch
3.启动autoware-roslaunch runtime_manager runtime_manager.launch
4.调用autoware中的rviz,显示相机和雷达,及算法处理后的结果

可以实现的功能:

1.录制bag
2.验证lidar聚类算法
3.雷达建图
……

另外,autoware也可以与lgsvl联合仿真,autoware自带了接口。

win启动lgsvl-2019.4,选择autoware车和ip,autoware启动lgsvl的bridge.launch
能录制velodyne的点云bag,出现车悬空的问题,换了个场景好了

ros也能和lgsvl联合仿真,也要启动一个rosbridge:

roslaunch rosbridge_server rosbridge_websocket.launch

在这里插入图片描述

以上。

你可能感兴趣的:(c++ROS自动驾驶,c++,carla,python)