首页 > 编程知识 正文

cimcoedit7使用教程,plecs安装教程

时间:2023-05-04 09:30:38 阅读:147754 作者:573

个人资料: lidar-based real-time3dlocalizationandmapping

github :3359 github.com/Erik-Nelson/blam.git

官方视频: https://youtu.be/08GTGfNneCI

另一方面,安装依赖软件包1,然后单击rossudosh-c ' echo ' deb http://packages.ROS.org/ROS/Ubuntu $ (LSB _ release-sc ) main '/etho/ette 要安装的ROS-latest.list ' sudo apt-key adv-- keyserverhkp :/ha.pool.sks-key servers.net 336080-- recv-kkey setup.zsh 2,gt Sam # boost=1.43 sudo apt-getinstallibboost-all-dev # cmake=2.6 sudo apt-getinstallcmakegitclone 3333 gt Sam.gitcdgtsammkdirbuildcdbuildcmake. sudomakeinstall二、blamgitclone 333333

cdbl am./update FAQ 3358 www.Sina.com /

将以下两行添加到cdbl am/internal/src/geometry _ utils package.XML中

在build _ dependroscpp/build _ depend run _ dependroscpp/run _ dependcmakelist.txt中添加以下两行

find _ package (catkinrequiredcomponentsroscpp ) include _ directories (include $ { catkin _ include _ dirs } ) 3358www

mysolutioniseditthe“point _ cloud _ filter.cc”,addthefollowingcodeattheendofthefilterfunction

if (! points-is _ dense (points _ filtered-is _ dense=false; std:vector indices; PCL :3360 removenanfrompointcloud (points_filtered,points _ filtered,indices ); } 1、fatal error: ros/ros.h: No such file or directory

修改" BlamSlam.cc ",并用msg_filtered替换原始msg中的内容: (这些行不是相连的) ) )。

//1,change loop _ closure _.addkeyscanpair (0,msg ); o loop _ closure _.addkeyscanpair (0,msg_filtered ); //2,change if (handleloopclosures (msg,new_keyframe ) ) toif ) handleloopclosures ) msg_filtered,new _ keyfres 以上的nan问题主要是因为使用的点云数据is_desne:false、即点云中可能包含nan,所以存在于过滤器中

统一了无效值的去除

三、官方使用的是velodyne的数据

rosbag play velodyne.bag#话题的rslidar _ pointssourceyour _ path/blam-master/internal/devel/setup.zshroslaunchblaunchblam

remap from='~pcld ' to='/rslidar _ points ' /! --/rslidar_points替换为自己的话题名称---使用自定义数据集的常见问题解答3358 www.Sina.com /

注意自己的点云数据量和velodyne的差异,如果点云数少,修改point _ cloud _ filter/config/parameters.YAML

# voxelgridfiltergrid _ filter 3360 false http://www.Sina.com /

更改point _ cloud _ localization/config/parameters.YAML

# maximumacceptableincrementalrotationandtranslation.transform _ thresholding 3360 true # false max _ translation 3360.5 #

观察你的pose有多大不同,修改laser _ loop _ closure/config/parameters.YAML

#在默认0.5米处检测一次环回或记录关键帧。 值越大,效率越高。 如果构图较慢,可以增大此值translation _ threshold :1.0 # 0.5 #,使其在缺省情况下在1.5米范围内匹配。 根据您自己的环回错误放大此值proximity _ threshold :10 # 1.5 # ICP ' fitness score ' mustbelessthanthisnumber, 越小越难环回max _ tolerable _ fitness :5 # 0.15 #根据自己的地图大小适当放宽跳过环回的点数,一般情况下地图越大bad PD _ recent _ pad

取消注册/blam/blam _ slam/octree _ map _ updates,然后重新注册时显示

使用自己的rslidar室外数据集可以实现以下效果(网格大小为10米) :

初次构图还没有返回循环,几乎没有偏差

绕了一圈后,虽然出现了角度偏移,但是环回后也很好,最终图如下

总结:效果好,首次构图误差小,环回速度足够快,调参也方便,关键是不需要其他传感器

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。