文章目录
map 生成流程
百度高精地图数据格式采用(XML)文件格式的数据组织方式,根据(XML)文件生成base_map.bin文件,进而生成routing_map和sin_map
。工具的代码在modules/map/tools
中,调用bazel-bin目录
下的可执行文件。
base_map
是最完整的地图,包含所有道路和车道几何形状和标识。其他版本的地图均基于base_map
生成。- routing_map包含base_map中车道的拓扑结构,可以有以下命令生成:
dir_name=modules/map/data/demo # example map directory./scripts/generate_routing_topo_graph.sh --map_dir(src dir) ${
dir_name}(des dir)
//该脚本是map模块中的tool工具的使用。在babel-bin下找到他的可执行文件
--------------------------------------应用举例
bash scripts/generate_routing_topo_graph.sh --map_dir=/apollo/modules/map/data/apollo_map /apollo/modules/map/data/apollo_map
- sim_map是一个适用于Dreamview视觉可视化,基于base_map的轻量版本。减少了数据密度,以获得更好的运行时性能。可以由以下命令生成:
dir_name=modules/map/data/demo # example map directory
bazel-bin/modules/map/tools/sim_map_generator --map_dir=${
dir_name} --output_dir=${
dir_name}
--------------------------------------应用举例
bazel-bin/modules/map/tools/sim_map_generator
--map_dir=/apollo/modules/map/data/apollo_map
--output_dir=/apollo/modules/map/data/apollo_map
map tool工具使用
modules/map/tools/proto_map_generator.cc
由XML文件生成.bin和.txt文件。
bazel-bin/modules/map/tools/proto_map_generator
--map_dir=/apollo/modules/map/data/apollo_map_test
--output_dir=/apollo/modules/map/data/apollo_map_test
modules/map/tools/map_tool.cc
由生成的bin或者txt文件进行地图偏移,生成新的bin和txt文件。
bazel-bin/modules/map/tools/map_tool --map_dir=/apollo/modules/map/data/apollo_map_test --output_dir=/apollo/modules/map/data/apollo_map_test/offset
modules/map/tools/sim_map_generator.cc
用于生成由dreamview前端显示的下采样地图的地图工具,也就是生成sim_map
modules/map/tools/quaternion_euler.cc
四元数转欧拉角
modules/map/tools/map_xysl.cc
车道点之间的相互转换,xy->sl 、sl->xy 或者xy->lane 等
modules/map/tools/refresh_default_end_way_point.cc
假设在我们的终点的绝对值(x,y,z)仍然正确的情况下改变了通道信息。 然后我们可以在新地图上找到最近的点作为新的终点。
modules/map/tools/map_datachecker
该文件还不知道能干啥,编译的时候缺少一个grpc的文件,grpc是一个谷歌开源库,是一种(Remote Procedure Call Protocol),需要把这个库安装一下才能使用.安装方法:grpc c++ helloworld 例子 实例解析
------构建服务器 bazel build //modules/map/tools/map_datachecker/server:map_datachecker_server ------构建客户端 bazel buil