机器人如何自主识别楼梯是一个非常有意思的话题
这里基于激光雷达,介绍一种简单粗暴的方法,如果环境不复杂,则可以将楼梯很好的检测出来。
github源码,较为简洁,易于理解:https://github.com/BIT-MJY/stairs_recogniton
(1)首先采集激光雷达点云:
![在这里插入图片描述](https://img-blog.csdnimg.cn/a09d8f13e47e4230addabeb432d43f50.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDY4NDEzOQ==,size_16,color_FFFFFF,t_70)
(2)将感兴趣区域(如机器人前方-15°~15°的水平FOV范围)中的点云投影到XZ平面:
![在这里插入图片描述](https://img-blog.csdnimg.cn/d2c0595a7f664e1b9cfd7d2f00547954.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDY4NDEzOQ==,size_16,color_FFFFFF,t_70)
(3)将投影后的XZ平面拿出来:
![在这里插入图片描述](https://img-blog.csdnimg.cn/5f51e31767f44870bff6fa8c4431083d.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDY4NDEzOQ==,size_16,color_FFFFFF,t_70)
(4)将上述点进行最小二乘拟合直线,若拟合后的误差(可以用SSE、MSE、RMSE等)小于设定的阈值,则认为直线拟合成功,即将楼梯检测出来了。
github源码效果:
![在这里插入图片描述](https://img-blog.csdnimg.cn/3e83a4e11b3c49c0896a9477fa32c3aa.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NDY4NDEzOQ==,size_16,color_FFFFFF,t_70)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)