从opendrive到lanelets的解析器和转换器
opendrive2lanelet的Python项目详细描述
opendrive 2 lanelet-转换器
我们提供了一个opendrive(www.opendrive.org)到lanelets(www.mrt.kit.edu/software/liblanelet)转换器的代码,该转换器已经在我们的paper:m.althoff,s.urban和m.koschi的《从opendrive到lanelets的道路网络自动转换》中介绍过。美国电气与电子工程师协会服务运营和物流及信息学国际会议,2018年。
安装
从源安装
git clone https://gitlab.lrz.de/tum-cps/opendrive2lanelet.git
cd opendrive2lanelet
python setup.py install
使用PIP:
pip install opendrive2lanelet
或者,对于使用gui包:
pip install opendrive2lanelet[GUI]
OpenDrive文件示例
从以下位置下载示例文件:http://opendrive.org/download.html
用法
使用我们提供的gui
使用opendrive2lanelet-gui
使用命令行转换文件
执行opendrive2lanelet-convert input_file.xodr -o output_file.xml
如果要可视化commonroad文件,请使用opendrive2lanelet-visualize
命令。
在自己的脚本中使用库
fromlxmlimportetreefromopendrive2lanelet.opendriveparser.parserimportparse_opendrivefromopendrive2lanelet.networkimportNetworkfromfromcommonroad.common.file_writerimportCommonRoadFileWriter# Import, parse and convert OpenDRIVE filewithopen("{}/opendrive-1.xodr".format(os.path.dirname(os.path.realpath(__file__))),"r")asfi:open_drive=parse_opendrive(etree.parse(fi).getroot())road_network=Network()road_network.load_opendrive(open_drive)scenario=road_network.export_commonroad_scenario()# Write CommonRoad scenario to filefromcommonroad.common.file_writerimportCommonRoadFileWritercommonroad_writer=CommonRoadFileWriter(scenario=scenario,planning_problem_set=None,author="",affiliation="",source="OpenDRIVE 2 Lanelet Converter",tags="",)withopen("{}/opendrive-1.xml".format(os.path.dirname(os.path.realpath(__file__))),"w")asfh:commonroad_writer.write_scenario_to_file_io(file_io=fh)
只是分析opendrive.xodr文件
fromlxmlimportetreefromopendrive2lanelet.opendriveparser.parserimportparse_opendrivewithopen("input_opendrive.xodr",'r')asfh:open_drive=parse_opendrive(etree.parse(fh).getroot())# Now do stuff with the dataforroadinopen_drive.roads:print("Road ID: {}".format(road.id))
文档
文档发布在Read the Docs。
要从源代码生成文档,请首先使用pip安装必要的依赖项:
pip install -r docs_requirements.txt
然后您可以运行
cd docs && make html
例如。
已知问题
- 尝试在Wayland下使用gui.py时,会发生以下错误:
使用以下命令将平台设置为xcb:This application failed to start because it could not find or load the Qt platform plugin "wayland" in "". Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, xcb. Reinstalling the application may fix this problem.
export QT_QPA_PLATFORM="xcb"
作者
本杰明·奥尔森(现任维修人员)
斯特凡市区