一 前言
在roadrunner创建地图,导入carla/ue的过程中,我发现一些roadrunner下的资产可能对后续我的个人工作有用,想把roadrunner资产在carla的语义分割相机中展现出来。
过程主要参照的是carla文档中,新建语义分割相机标签的内容Create semantic tags - CARLA Simulator,具体操作怕自己忘了记录一下。
操作中不要轻易删除一些文件,可能导致UE编辑器打不开!!!
二 UE编辑器上的操作
2.1 新建tag的文件夹
如文档中所讲的,在“Carla/Static”文件夹下创建你自己的文件夹名字,carla需要按照这个文件夹名,读取里面的资产,在语义分割上展示。
比如我这里建了两个分别就叫“SpeedBump”和“ConfuseBump”的文件夹,后续把相关资产扔进去:
2.2 迁移资源
这一步的前提是:你已经安装roadrunner的插件,并且将RR导出的地图导入到了UE的编辑器中,那么在“Carla/Static”文件夹下会有一个“Other”文件夹,其中包含了你命名RR地图的资产。
比如我这里叫“NBD-DasAUTO”的地图中,有一些交通障碍物:
从这个文件夹的资产(比如我这里的这个棍子)上右键,选择“资产操作”-“迁移”:
“确定”-迁移到你自己的目标文件夹,如我想把它归到“ConfuseBump”这里。
注意:第一次迁移不会有什么提示,但是当你把同样文件夹中的资源迁移过去,比如上图中水桶“Drum01”扔进去,会提醒你是否要覆盖之前的资产,这里直接选“取消”,水桶这个资产一样可以被迁移过去(我也不知道为什么,能用就行😓)
迁移后目标文件夹大致就是这个样子了:
三 代码上的操作
这部分主要对几个cpp文件进行修改
1.“LibCarla/source/carla/rpc”中的"ObjectLabel.h";
2."Unreal/CarlaUE4/Plugins/Carla/Source/Carla/Game"中“Tageer.cpp”的“GetLabelByFolderName”和"GetTagAsString"函数;
3.“LibCarla/source/carla/image”中"CityScapesPalette.h";
4."carla/PythonAPI/carla/source/libcarla"中的“world.cpp”;
照着官方文档做就可以了。Create semantic tags - CARLA Simulator
四 结果
做完这些,当你把创建好的文件夹中的资源拉进UE界面后,用carla的语义分割相机看,就是自己所设定的颜色了。
注意:如果是从原有的RR模型中的资产,或者从“Other”中拉进来的,会呈现“Other”对应标签的颜色(如图中右边的几个障碍&红绿灯灯杆)