
Carla
文章平均质量分 59
carla文档的一些翻译和总结
想游泳的鱼
喜欢足球,支持国际米兰
展开
-
ubuntu20.04编译carla0.9.13源码
由于要研究一下carla的源码,准备先编译一下carla源码,选用的os是ubuntu20.04,carla的版本是0.9.13.编译的环境和步骤按照carla的官方文档来就可以了,但是还是有几个坑,所以特别记下来,供大家参考。编译unreal Engine按照官方文档的步骤就可以了,不会出现什么问题,只是需要科学上网按照文档来说,如果要在ubuntu20.04上编译,需要安装clang-10.但是下载的carla的源码中的安装脚本,确都是按照clang-8来进行编译的,所以需要修改安装脚本中clang的版原创 2022-12-06 19:36:30 · 991 阅读 · 1 评论 -
scenarioRunner使用
这些结果可以在 CARLA Leaderborad中进行验证和共享,这是一个开放平台,社区可以公平地比较他们的进展,评估现实交通情况下的代理。运行以后是看不到画面的,需要运行carla提供的manual_control.py文件才可以看到。同时也把PythonAPI目录下的carla文件夹下的agents目录拷贝到~/scenario_runner/目录下。agents目录下存放的是carla提供的自动驾驶的算法模块,openscenario运行需要这个模块。就可以看到运行的界面了。原创 2022-09-24 09:58:37 · 3364 阅读 · 0 评论 -
carla 把车辆遇到的红灯都变成绿灯
在仿真场景中有时候希望把遇到的红灯都变成绿灯,这样车就可以畅通无阻的形式。代码如下首先判断vehicle是否在交通信号灯的影响范围之内,其实就是看车辆是否进入了交通信号灯的bound box。如果进入了,而且信号灯是红色的,那么车就停止了如果是在影响范围内,就通过函数get_traffic_light()获得对应的交通灯对象判断当前交通灯的状态,如果是红色,就把交通灯的状态变为绿色的。这样车就不会停止,一直再跑。原创 2022-06-02 16:22:13 · 1945 阅读 · 5 评论 -
ros_bridge ackermann控制
在ros_bridge中,除了使用manual_control包来直接使用键盘来控制仿真小车,还可以通过ackermann(阿克曼)来控制。在carla和autoware联合仿真的过程中,autoware最终的控制信息是要转换为ackermann控制指令,最后控制仿真车。消息的整个流程如下图所示这个节点用来生成ackermann节点。这个节点是使用PID来控制速度和加速度这个用来设置ackermann的各种参数,并且定义了一个参数服务器这个是节点订阅的各种消息。如图所示,其中/carla/ego_原创 2022-06-01 11:27:55 · 1332 阅读 · 0 评论 -
修改编译 ros_bridge docker中的源码
有时候需要修改一下ros_bridge docker中的源码这个docker镜像中的源码分为两部分,一部分是autoware的源码,一部分是carla_ros_bridge的,carla_ros_bridge的源码都是以ros node的形式编写的,存放在carla-autoware-agent 和 ros-bridge两个目录中,编译是在carla_ws目录中。整个ros_bridge docker镜像的目录结构如下Autoware的源码PythonAPI是carla的api库的egg存放原创 2022-05-25 11:06:23 · 428 阅读 · 0 评论 -
carla中在斑马线附近的指定位置生成车辆
在carla中,车辆位置的生成一般都是在可以生成车辆的点的地方随机分配一个,这就导致生成的车辆的位置不固定。目前有个需求,就是要在固定位置生成车辆,而且还是斑马线附近,解决办法如下(使用的场景是Town03)。1. 首先找到carla场景中可以生成的点的做坐标。 在carla中使用spaw_points=world.get_map().get_spawn_points()get_spawn_points()函数为carla.Map模块中的函数,用来获得地图中所有车辆生成点。返回值是一个包含c原创 2022-04-20 20:02:45 · 1911 阅读 · 1 评论 -
Carla的核心内容
Carla的核心内容- 世界和客户端(World and client)客户端是用户和模拟器交流信息的模块。一个客户端运行在一个特定的IP和端口。客户端通过终端和服务器进行通信。同一时刻可以运行多个客户端。高级的多客户端管理要求对CARLA和同步性有透彻的了解。世界是代表模拟器的对象。它充当抽象层,其中包含生成角色,更改天气,获取世界的当前状态等主要方法。每个模拟器中只有一个世界。当更改地图后,它将被销毁并替换为新的对象。- 演员和蓝图(actor and blueprints)演员是在模拟器中起翻译 2021-01-25 17:10:51 · 395 阅读 · 0 评论