Ubuntu18.04使用Carla导入RoadRunner自建地图并使用

环境:

  • Ubuntu 18.04
  • 源码编译搭建的Carla1 版本为0.9.12
  • UnrealEngine_4.26
  • Carla和UE4的版本一定要适配!!!
  • python3.9

1 RoadRunner的安装和使用

a. RoadRunner的安装

参考 链接: link

b. RoadRunner的使用参考

链接: 【手把手教你使用 RoadRunner 为自动驾驶模拟设计 3D 场景】

c. RoadRunner地图的导出

1.使用 CARLA 选项导出场景:
在主工具栏中,选择文件 -> 导出 -> CARLA (.fbx, .xodr, .rrdata.xml)
2. 在弹出的窗口中:
选中以下选项:

  • 按分割分割:按语义分割分割网格。
  • 两个纹理维度的强大功能:提高性能。
  • 嵌入纹理:确保纹理嵌入网格中。
  • 导出到磁贴:选择磁贴的大小或仅选中一块磁贴。

保持未选中状态:

2 Carla源码编译安装

参考链接 建议混着看
https://www.cnblogs.com/chenjian688/p/16624095.html
https://www.freesion.com/article/9313991401/
https://blog.csdn.net/weixin_42259296/article/details/120127475
https://zhuanlan.zhihu.com/p/470335288
https://carla.readthedocs.io/en/latest/build_carla/

3 Carla导入地图

1. 前期准备
在进入Carla根目录下的Import文件夹
在这里插入图片描述
在Import文件夹下面新建一个文件夹 这里我取名为RoadA

在这里插入图片描述
进入新建的文件夹,创建json文件,json文件的名字与文件夹名字相同
再将从RoadRunner中导出的地图文件夹放入新建的文件夹目录下
在这里插入图片描述
目录结构如下

Import
│
└── Package01
  ├── Package01.json
  ├── Map01_Tile_0_0.fbx
  ├── Map01_Tile_0_1.fbx
  ├── Map01_Tile_1_0.fbx
  ├── Map01_Tile_1_1.fbx
  └── Map01.xodr

然后打开新建的json文件

gedit ./roadA.json

添加并修改如下代码
name为RoadRunner中导出的地图文件夹名字
source和xodr为从RoadRunner中导出的地图文件夹目录下fbx和xodr文件路径,注意路径的根目录是新建的文件夹,即json文件所在的目录
use_carla_materials指是否使用carla提供的纹理,这里我选择了false

{
    
    
  "maps": [
      {
    
    
       "name": "roadA", 
       "source": "./roadA/roadA.fbx",
       "use_carla_materials": false,
       "xodr": "./roadA/roadA.xodr"
      }
  ],
  "props": []
}

#参考官网
{
    
    
  "maps": [
      {
    
    
        "name": "Map01",
        "xodr": "./Map01.xodr",
        "use_carla_materials": true,
        "tile_size": 2000,
        "tiles": [ 
        "./Map01_Tile_0_0.fbx",
        "./Map01_Tile_0_1.fbx",
        "./Map01_Tile_1_0.fbx",
        "./Map01_Tile_1_1.fbx"
        ]
      }
  ],
  "props": []
}

到此前期准备就完成了

扫描二维码关注公众号,回复: 14885473 查看本文章

2. 编译
进入到carla的根目录 在控制台以下输入命令

make import

等待编译完成 等待时间较长
编译完成会在carla/Unreal/CarlaUE4/Content目录下生成和Import目录下导入地图文件夹名字相同的文件夹。文件结构如下

RoadA
│
└── Config
  ├── RoadA.json
└── Maps
  ├── RoadA
└── Static
  ├── Road
  ├── RoadLine
  ├── Terrian

3.RoadRunner中打开
进入到carla的根目录 运行Carla

make launch

打开后进入界面
选择 文件 -> 打开关卡
在这里插入图片描述
在弹出的界面中选择make import生成的文件夹 点击到Maps目录下的文件,如图所示
在这里插入图片描述
打开文件需要等待一小会
打开成功后就会出现在RoadRunner中的自建地图
在这里插入图片描述

4 测试使用

点击右上角的运行,等待运行成功(命令行出现 登录XXXX)
然后进入到Carla/PythonAPI/examples目录下,打开终端,运行脚本

在这里插入图片描述

实现手动驾驶
python3 manual_control.py

效果如下
在这里插入图片描述
到此地图导入完成!

猜你喜欢

转载自blog.csdn.net/weixin_45769992/article/details/127785441