首页/文章/ 详情

介绍一款开源的自动驾驶仿真场景播放器:esmini

1年前浏览3667

大家好,我是李慢慢。


前面介绍了一款制作OpenDRIVE文件的开源工具(如下链接),truevision。

介绍一款开源的OpenDrive地图制作软件


有了OpenDRIVE,仿真就有了地图。接下来就是在地图上讲故事(交通参与者的各种行为)。那就必须说说,OpenSCENARIO,因为它就是讲故事的,更准确地说,它定义了讲故事的准则,按照这套准则,讲出来的故事话本,保存在一个.xosc的文件中。


这个故事的话本,想要徒手看懂有点困难,把它播放出来,就好懂多了。今天介绍的,就是这么一个播放OpenSCENARIO格式话本的小工具:esmini。



目录:

1、esmini简介

2、esmini下载及安装

3、esmini使用方法


1、esmini简介 


esmini 是一个播放 OpenSCENARIO 文件的软件工具。它既作为独立应用程序提供,也作为与自定义应用程序链接的共享库提供。此外,还开发了一些工具来支持交通场景的设计和分析。



esmini的官方说明链接:

https://esmini.github.io



这个说明文档真的很有用吖,本文后续尝试都是基于本说明文档进行的,诸君若是看本文有何疑问,最好的方法就是去看这个官方文档哦。


2、esmini下载及安装


esmini源码下载地址:

https://github.com/esmini/esmini/releases/tag/v2.26.1



源码有支持windows的、ubuntu的、和mac的。我这里选择了windows版本的。需要下载如下两个压缩包。



解压之后即可,不需额外安装。



3、esmini使用方法


进入【esmini-demo_win】文件夹,可以直接使用内置的案例。如下:


双击任何.bat文件,都能打开一个窗口,进行某个场景的播放。(这个播放并不是平面的,而是3D模型,可以通过鼠标键盘控制旋转和缩放等。)


其实仔细看下bat文件的内容,就知道它的工作原理了。以【run_cut-in.bat】为例,它内部其实就一句代码:


"../../bin/esmini" --window 60 60 1024 576  --osc ../../resources/xosc/cut-in.xosc


它其实就是调用了bin文件夹下面的esmini.exe程序,打开一个设定尺寸大小的窗口,播放某个指定路径的场景文件。


有没有很简单?


知道了这个原理,我们就可以自己想办法运行我们需要运行的场景了。


例如用python脚本运行某个场景:










# 指定场景文件的路径file_path = "D:/esmini/test_xosc/trajectory_example.xosc"# 指定esmini程序的路径esmini_path = "D:/esmini/esmini-demo_win/esmini-demo/bin/esmini"# 指定运行的指令cmd = esmini_path + str(" --window 60 60 1024 576  --osc ) + file_path ")# 运行指令os.system(cmd)


上述esmini工程还只是个demo,完整的代码,需要将另一个文件解压后,替换掉demo里的对应内容,具体操作,参考官方说明文档。



4、esmini其他功能


esmini不仅可以播放OpenSCENARIO文件,还可以重播已经仿真完成的文件,也即【replayer】功能。



还可以以3D视图来查看OpenDRIVE文件,验证我们创建的xodr文件的逻辑是否正确,也即【odrviewer】功能。


还有以2D方式查看OpenDRIVE文件的功能【odrplot】。



还有数据可视化的功能【plot_dat】。


esmini还有很多值得探索的,它是一个非常优秀的开源项目,很适合用来做参数化建模,很适合和咱们自己的业务进行融合。诸君如果感兴趣,欢迎自行探索,也欢迎前来找李慢慢交流,共同进步。


瑞斯拜。



来源:车路慢慢
python自动驾驶控制
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2023-06-22
最近编辑:1年前
李慢慢
硕士 自动驾驶仿真工程师一枚
获赞 11粉丝 71文章 122课程 0
点赞
收藏
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈