无人机目标检测 Darknet-ROS 学习(一)
简介
在无人机上实现目标检测,使用的设备是阿木实验室P200
,飞控是PX4
,板载计算机是TX2
,目的是在无人机有限的计算资源上实现快速准确的目标检测,并且可以将目标检测结果传输给无人机,帮助无人机进行感知融合,智能避障以及路径规划等扩展任务。
知识点
该项目所需知识点分为两个大块ROS
和Darknet
。
这次的学习主题主要围绕着ROS
展开。
ROS
的学习之路非常的成熟,ROS
即机器人操作系统,于2010年提出,发展至今,大版本分为ROS1
和ROS2
,最成熟最常用的是ROS1
,目前ROS已经广泛应用于智能机械臂
,无人机自主导航
,自动驾驶
等领域。
ROS目前最常用的开发平台是Ubuntu
,不同的Ubuntu系统对应不同的ROS版本,一个版本Ubuntu系统可以存在多个版本ROS并进行切换,对应关系如下:
Ubuntu | ROS |
---|---|
16.04 | kinetic |
18.04 | melodic |
20.04 | noetic |
建议安装16.04
和18.04
以及其对应的ROS,因为这两个版本是目前最稳定的,相应的社区和学习资料也是最多的。
环境安装
万事开头难,特别是在没有理解ROS
框架的情况下去安装ROS的环境
,但是学习ROS架构的最好方式就是上手实操。
因为无人机实际飞行时的不确定性和出于安全考虑,在无人机上验证算法时通常使用仿真来进行,本项目开发的整套环境为:Ubuntu + ROS + PX4 + Gazebo
其中Gazebo是仿真器,PX4是飞控系统
这两个网站的教程非常的详细,跟着做基本不会出错,因为只是需要学习ROS
,所以执行完安装PX4
这步就可以了。
ROS学习
ROS学习极力推荐古月居21讲
,结合代码讲解非常清晰:ROS入门
在了解了ROS框架
以后,就可以理解安装环境的各项步骤,在做完这些后,再去进行下一步的学习,TX2
其实就是一台电脑,安装的步骤与实际的电脑一般无二。