本文主要是介绍gici-open示例数据运行(1.1开阔环境数据运行),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1、配置数据和处理模式
下载对应的数据集后,首先处理1.1中的开阔环境下数据,将option目录下的配置文件复制到1.1数据目录下(若采用ROS编译,则配置文件目录为ros_wrapper/src/gici/option/ros real time estimation xxx.yaml),并修改配置文件中对应的文件路径和时间,采用的处理模式如下:
pseudo_real_time_estimation_RTK.yaml---单RTK解算
pseudo_real_time_estimation_PPP.yaml---单PPP解算
pseudo_real_time_estimation_LC.yaml---RTK+INS松组合解算
pseudo_real_time_estimation_SRR.yaml---SPP+INS+Vision松组合解算
2、启动处理
若是直接执行,则仅需:
./gici_main ../../gici-open-dataset/1.1/pseudo_real_time_estimation_SRR.yaml若是ROS模式,则需要依次执行:
1. 启动命令行窗口,执行 roscore
2. 启动命令行窗口,执行 rviz -d ./src/gici/rviz/gici_gic.rviz
3. 启动命令行窗口,执行 rosrun gici_ros gici_ros_main ../../gici-open-dataset/1.1/pseudo_real_time_estimation_SRR.yaml
3、分析结果
3.1 gici-open解算结果
首先分析开阔环境示例1.1中,RTK结果和参考值ground_truth相比的结果
算例数据中有ground_truth.txt,该文件中的坐标是相对于激光陀螺坐标中心的。纯GNSS解算得到的结果是相对于天线相位中心的,所以要做精度对比,需要对ground_truth的坐标进行转换。
1. IE解算得到参考坐标ground_truth.txt格式转换为nmea格式在目录gici-open/tools/evaluation/下可以执行:./format_converters/build/ie_to_nmea ../../../gici-open-dataset/1.1/ground_truth.txt得到输出文件:ground_truth.txt.nmea
2. 将NMEA格式转换为GPS天线相位中心:在目录gici-open/tools/evaluation/下可以执行:./alignment/build/nmea_pose_to_position ../../../gici-open-dataset/1.1/ground_truth.txt.nmea得到输出文件:ground_truth.txt.nmea.translated
做RTK处理的时候需要注意将yaml配置文件中的 system_exclude选项清空,即采用所有的GNSS系统进行解算,gici-open得到的RTK定位结果如下图所示,可以看到模糊度固定率达到98.9%,能够实现较好的效果。
同时用RTKLIB读取上面转换后的参考文件ground_truth.txt.nmea.translated进行对比做差,结果:
由图可知,高程方向的STD整体比较小,主要是因为不涉及前坐标转换的问题。而平面方向仍存在一定的偏差,应该主要是由杆臂引起的。应该是前面在转换参考坐标坐标基准的时候,有哪里没有搞清楚,需要看下转换代码理解下???????
3.2 NavSense解算结果
同时将原始观测值转换为Rinex格式。根据数据集的说明,流动站文件gnss_rover.bin采用的是天硕(Tersus)的接收机,基准站是标准RTCM3数据格式,采用RTKLIB进行如下设置可以进行转换:
转换完成后,直接将数据上传至NavSense在线平台进行处理。由左图可知,除了短暂的初始化过程,模糊度可以很快的固定。右图中可以看到各GNSS的可见卫星数比较稳定,说明环境比较好。
下面的轨迹图可以更直观的看到实验环境。
这篇关于gici-open示例数据运行(1.1开阔环境数据运行)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!