下面是由社区开发者——王方浩提供的文章,本文主要介绍Apollo高精地图标注相关工具。
ENJOYTHEFOLLOWING
本文将主要从以下几个方面来介绍:
概览导入点云
标注车道
标注路口标注斑马线标注红绿灯标注车道标识世界坐标导出地图总结完成点云地图的制作之后可以得到城市或园区的三维地图,接下来需要标注语义信息,提供给自动驾驶车辆使用。
目前暂时没有找到非常好用的开源语义标注工具,本文采用RoadRunnr,它是商业软件,包含在Matlab中,需要单独的Licns,高校可以申请试用。
下面介绍RoadRunnr的语义标注过程,标注完成之后RoadRunnr支持多种格式地图的导出,包括Apollo、Autowar、Osm等。当然最重要的是RoadRunnr可以直接导出模型文件和高精度地图,直接给仿真系统使用。
先创建工程,然后在Assts中新建Pointcloud目录,把点云文件拖动到该文件夹下。
导入点云之前需要设置点云的投影,否则不能导入到RoadRunnr。
如何设置投影?需要先搞清楚点云的坐标转换原理,上一个步骤生成的点云是UTM坐标系,而且点云的原点坐标需要加上初始位姿的偏移。在上一个步骤已经对点云进行了旋转,因此只需要根据UTM坐标转换到GPS坐标(因为RoadrRunnr只支持输入GPS坐标),并且在RoadRunnr的世界坐标中设置偏移就可以了。
上文讲的主要是想让开发者搞清楚点云的坐标和标注坐标,不然到时候导出的坐标和实际对不上。
不知道是不是RoadRunnr的BUG,这里如果直接设置坐标原点,点云就没法显示了,因此等到地图标注完成之后,再开始设置,这样就没有影响了。
接下来拖动点云Exampl到窗口,就会出现加载图标,如果点云比较大,加载过程会比较慢,下图是导入点云之后的效果图。可以点击工具栏的点云图标,对点云进行编辑,包括点的大小(默认为5,调整为1比较好),根据强度还是颜色渲染等。
接下来就可以在点云之上进行车道标注了,一般是采用俯视视角,根据车道线进行标注。
选择车道材质
RoadRunnr自带有一些车道模型可以直接采用,也可以自定义一些车道。
绘制车道
先在工具栏选择车道图标,然后沿着车道边沿点击鼠标右键,这样就会生成一段道路,继续上述过程就可以得到一条车道。
调整高度
如果不调整高度,放大缩小的时候感觉路面会移动,调整高度在车道左下角的小窗口进行调整,调整完高度之后,对路面横向距离再做微调就可以了。
调整的过程就是拖动点对齐到点云,如果中途需要增加点,可以点击鼠标右键,然后再拖动该点,添加点的方式同样适用于其它情况(包括道路、路口等)。
调整车道宽度
点击车道宽度图标可以调节车道宽度,可以先通过标尺工具来测量车道的宽度,然后适当的进行调整。
还有其它的车道设置包括增加车道、拆分车道、合并、分割等,这些可以根据情况使用。
标注完车道之后主要是标注路口,标注路口分为两种情况:十字路口、T型路口。
标注十字路口
点击自定义路口图标,然后鼠标右键依次点击十字路口道路的连接面,会生成空心框,连接好之后点击空格键,路口就生成好了。
标注T型路口
T型路口的标注和上述类型,主要的区别是先点击道路,然后右键再需要汇入的道路选择两个横截面。
调整路口
如果觉得路口的区域需要微调,可以点击路口调节图标,通过拖动边界线的点来调节,如果需要增加点,可以在线上点击鼠标右键。
路口车道线
通过路口车道线图标可以查看路口的虚拟车道线,也可以调整车道,路口的车道目前是自动生成的,目前可以直接手动连接2个蓝色的点,但是也要交通规则支持,如果交通规则不支持也不会生成虚拟车道,目前还有遇到双向车道生成不了虚拟车道的情况。
标注路中间的斑马线,斑马线有两种情况:十字路口的斑马线、单个单路中间的斑马线。
十字路口的斑马线相对比较简单,选择斑马线模型,然后点击人行横道图标,在路口点击右键就可以了。
接下来是单个路口的人行横道,先在道路中间生成虚拟路口:
然后选择人行横道图标和模型,在上面生成的路口点击鼠标右键,最后的效果如下:
点击红绿灯图标,按照下图的顺序就可以自动创建红绿灯,同时还可以设置每条Lan的相位。
下面是添加完成之后的效果图。
当然为了更好的导出模型文件,这部分只是视觉效果(如果只是做高精度地图,可以忽略),主要是为了给仿真器中的城市或者道路模型使用的,可以在车道上增加一些标识。
世界坐标这一步非常关键,因为生成的地图是相对点云原点的坐标,要转换为世界坐标还需要加入偏移,设置的方法也非常简单,点击世界坐标图标,然后设置世界坐标原点。
在文章生成的点云地图中,会打印坐标原点的坐标,但是是UTM的坐标,可以在网上根据转为GPS坐标填入下图中,然后开始转换坐标,世界坐标的转换就完成了。
接着选择菜单Fil-Export,就可以选择需要导出的高精度地图格式了。
当然RoadRunnr最大的好处在于可以直接导出模型和高精度地图,这样就可以直接导入仿真器和自动驾驶系统进行仿真了,这是它最大的优势。
由于RoadRunnr是商业软件,但是对一般的小地图来说,也足够进行标注了,如果有致于开源的标注工具当然就更好了。
*《Apollo高精度地图标注》
转载请注明地址:http://www.1xbbk.net/jwbrc/1609.html