社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  机器学习算法

视觉SLAM如何基于深度学习闭环检测?

小白学视觉 • 2 年前 • 215 次点击  

点击上方小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达

本文由计算机视觉life整理,如有侵权可联系删除。原文链接:

https://www.zhihu.com/question/435448533

原提问:

请问有做视觉SLAM基于深度学习闭环检测的吗?

TurtleZhong:

相比现在基本都是用深度学习做的吧,只要涉及到场景光照变化大,相机视野变化大等等,传统的DBoW,VLAD方法确实能力有限,那想必现在大多数都用的是基于深度学习来做闭环检测的,具体的方法可以参考我前段时间写的总结:

https://github.com/TurtleZhong/Map-based-Visual-Localization

其实里面列举了传统方法和深度学习的方法,当然可能不全,但是欢迎补充,另外觉得有用的话点个关注。

九歌:

俺就是在做深度学习与闭环检测结合的工作的呀

目前将深度学习应用到闭环检测中已经很普遍了吧。直接的想法是在bow框架下利用如superpoint、d2、r2d2等深度学习特征代替传统orb、sift等特征。也有如NetVLAD、CALC等用神经网络模拟传统特征提取策略,以获得更好鲁棒性的。也有加入语义信息,如X-view、LoST、CALC2.0等利用图像语义信息,实现闭环检测的。

总的来说,如果只是关注闭环检测中图像检索的部分,与深度学习相关的工作还是很多很好的。难点在于要应对闭环检测中的一些实际挑战,比如cross-view乃至opposite-view,appearance changes,perceptual aliasing,dynamics,textless这些问题。

害,其实dbow和fabmap从效果和实时性的平衡上来说,不已经超好了嘛

刘斯坦:

搜deep learning feature points matching,文章非常多。

具体结合SLAM的工作,今年刚出的这篇清华的就很不错,还有代码:
ivipsourcecode/dxslamgithub.com

基本是一个纯工程的工作,很直观,把各种成熟的深度学习特征点提取和匹配网络(SuperPoint, D2-Net, HF-Net)的预训练模型直接拿来用,替换掉ORB-SLAM2里面的相关部分:

王小二:

1、不知道其它大佬的情况,现阶段我做的方向就是深度学习和SLAM的结合方向,所以SLAM各个比较关键的环节如何使用深度学习来完成,我倒是看过部分文章,比如特征提取,回环检测,优化等等。但是实际操作过的目前只有特征提取和描述子生成部分。详情见:https://zhuanlan.zhihu.com/p/214158164zhuanlan.zhihu.com

2、说回到回环检测这个问题,其实从直观上来说和图像检测,重识别等领域应该是有共通之处的,所以我之前的考虑也是利用图像检索的方式来实现回环检测。

3、说到具体的操作,当时考虑过的方向有:A、使用完整的图像来完成特征提取;B、图像切块或者提前感兴趣区域提取特征;C、整体+兴趣区域共同提取特征->企图在查询速度和精度做平衡

4、提取特征的方法考虑过:A、使用传统的特征来监督CNN,比如ORB,SIFT,HOG等;B、学习人脸识别,重识别等使用triple loss,margin loss等使用图片对或者图片组来训练

5、说起来,也许可以看看小样本分类识别的部分思路;细粒度识别分类的一些方案

6、现在已经有的搜图定位不妨也看看7、步子不要太大,是不是可以考虑CNN+传统的词袋模型一起使用?

Howie:

闭环过程使用深度学习中的图像检索,能有效的减少由于环境光照 季节更替,视角变化引起的匹配问题。但是需要采集大量的样本进行训练,同时考虑网络的大小和推理速度,以及自身的硬件平台性能。在一些嵌入式应用中,由深度学习带来的性能提升 可能需要消耗巨大的资源,此时仍需以传统算法为主。

实际使用中,若环境可布置如室内环境,建议使用二维码等人为标志进行回环检测,兼顾精度和速度。若是室外可变环境,则需要考虑自身的硬件性能,进行传统算法与深度学习方法的选择,对于纯粹的深度方向,应考虑模型设计优化,通过压缩量化等手段提升模型速度。

下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。

下载2:Python视觉实战项目52讲
小白学视觉公众号后台回复:Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。

下载3:OpenCV实战项目20讲
小白学视觉公众号后台回复:OpenCV实战项目20讲即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。

交流群


欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/160029