基于ZYNQ的ORB-SLAM(-)

起始  

  ZYNQ是一个我非常喜欢的平台,原因在于它基于我非常大的自由,以及给与我很多的想象空间。第一次遇到ZYNQ是在2017年的时候,继而在2018年的4月份买了一张7035的开发板。两年时间过去了,遗憾的是并没有完整的掌握它,当然,好的一面是,一直在进步。我对ORB-SLAM的知晓是在2018年吧,但是对于这个问题的思考确实在大学的时候便已经开始了。当时每年的电赛都会参加,而且我都会选择控制类的题目来做。其中四轴的题目,在空间上需要完成闭环控制,这其实最好的方式便是借助于SLAM。但是限于个人的知识储备,以及环境,没有办法对它进行研究,但是冥冥之中自己的喜好还是引导自己去尝试研究它。最终它要成为我职业生涯的一部分。

  器件平台对于想做什么是非常重要的,决定了能做什么,以及做到什么程度。我向往ZYNQ提供的高性能,以及linux开发的完备,成体系的系统。我希望使用它来完成SLAM的功能。

  在综合对比了各种SLAM,认为ORB-SLAM非常时候入门。它代码清晰,且效果不俗,同时ORB特征快速且有效,这样便有机会实现一个实时的SLAM。我也是因为想做这个,突然想要开通博客,来记录自己的学习过程,同时同他人一起交流。

计划

  将最终的目标拆成若干个部分,然后分步骤去实现它。最终的目标是,在zynq上运行一个SLAM,同时利用这个SLAM在一个环境当做进行导航,控制一辆模型车按照预定的轨迹去运动。希望我度过一个美好的旅程。

  图1(待更新)

  A.基础环境搭建

    1.将两个摄像头的数据导入到内存中,编写驱动,提供软件访问的接口

    2.提供HDMI接口和网络通信,将图像可视化到本地和远程,进行Debug

    3.提供硬件的框架提取ORB特征,图像预处理

  B.研究ORB-SLAM2算法,目标包含两个方面

    1.软件工程环境。需要对软件的工程环境进行清晰的掌握,包括CMAKE,make。

    2.尽可能多的掌握算法的原理

  C.将ORB-SLAM2作为一个定位基础,控制一辆小车,使小车可以在指定环境中按固定路径进行行驶。

2020/5/17

  wildsEyes

posted on   荒眸  阅读(518)  评论(0编辑  收藏  举报

努力加载评论中...
点击右上角即可分享
微信分享提示