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

  • Post author:
  • Post category:其他



环境:

  • 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": []
}

到此前期准备就完成了


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

效果如下

在这里插入图片描述

到此地图导入完成!



版权声明:本文为weixin_45769992原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。