今天我们来讲一讲P600室外无人机亮点功能之一“吊舱框选跟踪”。该平台配置USB接口的Q10F十倍变焦单光吊舱,并开发了其专用ROS驱动;通过机载系统中内置的KCF框选追踪算法,基于*图像视觉实现对特定目标(人/车/其他无人机等…)的框选、追踪与跟随。下面将分别从原理说明和实机操作两方面进行描述。
file一、原理说明
1、KCF原理
KCF(Kernelized Correlation Filters)是一种鉴别式追踪方法,这类方法一般都是在追踪过程中训练一个目标检测器,使用目标检测器去检测下一帧预测位置是否是目标,然后再使用新检测结果去更新训练集进而更新目标检测器。而在训练目标检测器时一般选取目标区域为正样本,目标的周围区域为负样本,当然越靠近目标的区域为正样本的可能性越大。KCF相对于其他的tracking-by-detection方法速度得到了极大的提升,效果也相对较好。
KCF算法流程图
file2、节点图
吊舱跟踪节点图如下图所示:
file3、跟踪控制原理与主要消息流
控制说明:tracker_ros节点订阅来自吊舱的图像话题,得到xy偏移量和原本框大小和实际框大小,都在position_diff话题里面。xy的偏移量在serial_node节点由PID得到吊舱偏航横滚的控制量并通过串口二发给吊舱。原本框大小和实际框大小在target_tarcking节点由PID得到无人机x方向的期望速度。
file吊舱控制
俯仰角控制:PID控制(误差来自检测框与相机图像中心点上下偏离的距离)偏航角控制:PID控制(误差来自检测框与相机图像中心点左右偏离的距离)吊舱俯仰角和偏航角的PID代码如下:
file无人机跟踪控制
无人机偏航是读取吊舱偏航,并和吊舱偏航保持一致。X方向速度控制:PID控制(误差来自当前检测框的大小和最初手动框选大小的差)X方向速度的PID控制代码如下:
file二、实机操作
室外测试需要使用NoMachine连接TX2的远程桌面,同时在TX2上框选要跟踪的目标在完成初步测试之后,让飞手在自稳模式或定点模式下试飞飞机,飞机正常则返回地面继续下面步骤启动
fly_track_outdoor.sh
文件
/home/amov/track_ws/src/px4_command/sh/sh_for_P200/fly_tracking_outdoor.sh
观察各个终端,确保都没有错误在倒数第三个终端窗口输入0选择PID,输入1选择GO ON
file在倒数第二个终端窗口输入1选择go on,输入777选择track
file飞手尝试切换offboard模式,能切换成功则在position模式下飞到一定高度。框选目标观测速度数据是否正常,正常则继续框选目标:
file飞手切offboard模式飞机开始跟踪,并注意在意外情况下控制飞机切到自稳或者定点模式。
更多详细的资料
可参考wiki手册:
- End -
技术发展的日新月异,阿木实验室将紧跟技术的脚步,不断把机器人行业最新的技术和硬件推荐给大家。看到经过我们培训的学员在技术上突飞猛进,是我们培训最大的价值。如果你在机器人行业,就请关注我们的公众号,我们将持续发布机器人行业最有价值的信息和技术。
阿木实验室致力于前沿IT科技的教育和智能装备,让机器人研发更高效!
网友评论