31、无人机自主目标跟踪系统:KCF算法的高效应用

基于KCF的无人机目标跟踪系统

无人机自主目标跟踪系统:KCF算法的高效应用

1. 目标跟踪技术发展与KCF算法选择

随着目标跟踪技术的不断发展,基于回归方法判别模型的跟踪算法逐渐流行,相关滤波成为热门的跟踪算法框架。此前,有诸多研究致力于解决无人机目标跟踪中的难题:
- 有人使用Siamese网络在相关数据集上评估跟踪器,该方法能有效应对目标外观变化和遮挡等挑战。
- 还有人将时间正则化引入DCF,以削弱边界效应和光照变化对目标跟踪过程的影响,在低计算成本下获得了较好的跟踪精度。
- 为解决跟踪器在复杂架构下无法应用于计算资源有限的移动平台的问题,提出了Siamese Transformer Pyramid Networks(SiamTPN)。

然而,上述工作大多基于无人机数据集,未应用于无人机实物。也有研究将CMT跟踪算法与无人机平台结合,完成了室内环境下无人机与被跟踪物体的相对距离保持和实时跟踪,但当物体丢失时,无人机就无法继续跟踪。还有人使用多特征融合方案的粒子滤波方法进行目标跟踪,取得了较高的跟踪成功率;也有人将时空正则化相关滤波器与无人机结合,实验测试显示出良好的性能。

与深度学习算法不同,相关滤波算法无需GPU加速,比传统经典算法具有更高的跟踪精度,且其计算模式在频域,大大提高了算法速度。鉴于无人机目标跟踪的上述困难,本文选择相关滤波框架中的KCF算法,并将其应用于实际无人机,以实现无人机的自主目标跟踪任务。本文的主要贡献在于构建了一个适用于无人机的自主目标跟踪系统,将目标跟踪算法(KCF)与无人机运动相结合,以保持无人机与被跟踪物体之间的相对位置。该系统无需GPU加速,在光照变化和相似物体干扰的情况下,无人机仍能自主、准确地跟踪目标。

2. 无人机自主目标跟踪系统构建

本文将相关滤波的KCF方法与无人机控制相结合,构建了无人机自主目标跟踪系统。该系统可基于高速视觉反馈,在无需GPU的情况下完成无人机的自主目标跟踪任务。无人机终端采用DJI的Tello无人机,地面控制终端采用搭载Windows10系统和Intel Core i5处理器的笔记本电脑。系统的整体框图如下:

graph LR
    A[无人机终端(DJI Tello)] -- LAN --> B[地面控制终端(笔记本电脑)]
    A -->|视频流| B
    B -->|跟踪目标位置| A

无人机终端和地面控制终端通过局域网(LAN)连接和通信。无人机终端通过机载摄像头获取第一视角的视频流,并使用LAN将RGB图像传输到地面控制终端。当地面控制终端接收到RGB图像传输时,在初始帧中选择跟踪目标,并使用KCF算法跟踪该目标。

跟踪算法的主要步骤如下:
1. 提取特征并生成循环矩阵
- 提取采集到的初始帧图像的特征,将其多次乘以置换矩阵,以获得目标图像块的循环矩阵。在目标跟踪任务中,通常仅在初始帧提供的目标位置框中获取正样本。用向量(x = {x_1, x_2, x_3, \ldots, x_n})表示目标的图像块,将目标的图像块(x)多次乘以置换矩阵,得到多个循环移位的样本向量,即(x)的循环矩阵(C(x)):
[
X = C(x) =
\begin{bmatrix}
x_1 & x_n & x_2 & \cdots & x_1 \
x_n & x_{n - 1} & x_3 & \cdots & x_2 \
x_2 & x_n & x_3 & \cdots & x_3 \
\vdots & \vdots & \vdots & \ddots & \vdots \
x_1 & x_2 & x_3 & \cdots & x_n
\end{bmatrix}
]
- 通过傅里叶变换将上述时域表示的循环矩阵转换到复域。设(F)表示傅里叶变换矩阵,(diag)表示对角化,(\hat{x})表示频域中的样本信号。变换后的循环矩阵表达式为:
[
X = F diag(\hat{x}) F^H
]
2. 训练滤波器
- 使用岭回归模型训练滤波器(w),通过最小化估计值(f(z) = w^T z)与目标(y_i)之间的误差,如下所示:
[
\min_w \sum_i (f(x_i) - y_i)^2 + \lambda |w|^2
]
- 将(w)表示为矩阵形式,计算导数并转换到复域,得到以下公式:
[
w = (X^T X + \lambda)^{-1} X^H y
]
其中(\lambda)是正则化系数,(X = [x_1, x_2, \ldots, x_n]^T)的每一行表示用于训练的样本向量,(X^H)表示复共轭转置矩阵。
- 将(X = F diag(\hat{x}) F^H)代入上式,得到复域中的滤波器(\hat{w}):
[
\hat{w} = diag\left(\frac{\hat{x}^ }{\hat{x}^ \otimes \hat{x} + \lambda}\right) \hat{y}
]
3. 使用核函数预测目标位置
- 获得可靠的模板滤波器后,引入核函数来检测和定位目标。
[
k_Z = C(k_{xz})
]
其中(k)表示核函数,(x)表示从上一帧获得的训练样本,(z)表示从当前帧采样的候选样本。
- 然后,得到候选样本的回归函数,将其转换到复域并表示为:
[
\hat{f}(z) = \hat{k}_{xz} \otimes \hat{\alpha}
]
(\hat{f}(z))是KCF算法估计的目标在图像中的位置。地面控制终端通过LAN将输出的跟踪目标位置传输到无人机终端。无人机通过视觉跟踪结果估计自身与目标之间的相对位置,并根据与跟踪目标的相对位置生成相应的前后、左右、上下运动,具体规则如下:
- 当被跟踪物体前后移动时,无人机根据边界框面积大于或小于阈值范围来决定是否前后移动:
[
\begin{cases}
\text{GoBackward} & \text{if } Area > Th_1 \
\text{GoForward} & \text{if } Area < Th_2 \
\text{Hover} & \text{if } Th_2 < Area < Th_1
\end{cases}
]
其中(Area)表示边界框的面积,(Th_1)和(Th_2)分别表示最大阈值和最小阈值。
- 当被跟踪物体左右旋转、上下移动时,无人机根据边界框的位置决定是否进行左右旋转和上下运动:
[
\begin{cases}
\text{GoLeft} & \text{if } x < \frac{\text{framewidth}}{2} - \text{deadzone} \
\text{GoRight} & \text{if } x > \frac{\text{framewidth}}{2} + \text{deadzone} \
\text{GoUp} & \text{if } y < \frac{\text{frameheight}}{2} - \text{deadzone} \
\text{GoDown} & \text{if } y > \frac{\text{frameheight}}{2} + \text{deadzone} \
\text{Hover} & \text{otherwise}
\end{cases}
]
其中(x)和(y)分别表示边界框中心点的横坐标和纵坐标,(\text{framewidth})和(\text{frameheight})分别表示RGB图像的宽度和高度。这里的死区定义为无人机系统相应输出为零时的输入信号范围。具体来说,当目标位于空间中的立方体区域时,认为无人机与被跟踪目标之间的相对位置保持不变,无人机没有运动控制命令,保持悬停。

通过上述系统,无人机实现了基于视觉的无人机目标跟踪相对位置保持,完成了实时、鲁棒的无人机目标跟踪。

3. 实验验证

为验证所开发的无人机目标跟踪系统的有效性,在DJI的Tello无人机上进行了两组跟踪实验,并在i7 - 9750 H CPU下测试了该系统。基于视觉的无人机自主目标跟踪系统的总内存使用仅为121 Mb,目标跟踪算法的计算、相对位置估计和无人机运动控制总共耗时18 ms,远高于无人机的帧率(30 Fps),满足实时要求。

3.1 目标简单运动实验

该实验旨在验证所提出的无人机视觉跟踪系统的有效性。被跟踪物体进行简单运动,无人机生成相应的命令进行跟随,保持与被跟踪物体的相对位置。在实验中,在初始帧中使用矩形框标记被跟踪物体,跟踪结果如下:
|运动情况|跟踪结果|
| ---- | ---- |
|物体靠近无人机|当被跟踪物体从当前位置继续向前移动时,与无人机的距离逐渐减小,被跟踪物体的边界框面积变大。当边界框面积大于最大阈值时,无人机向后运动;当边界框面积在设定阈值范围内时,无人机停止向后运动并保持悬停;当距离再次减小时,无人机再次向后运动。|
|物体远离无人机|当被跟踪物体从当前位置向后移动,边界框面积小于阈值范围时,无人机向前运动;当边界框面积在阈值范围内时,无人机保持悬停。|
|物体绕无人机逆时针行走|当被跟踪物体左右旋转时,无人机根据边界框中心点的横坐标位置决定是否产生左右旋转运动。当被跟踪物体在当前位置连续左右旋转移动,中心点的横坐标位置离开死区时,无人机产生左或右运动;否则,无人机在死区内保持悬停。|
|物体绕无人机顺时针行走|同理,根据边界框中心点横坐标位置判断,离开死区则产生相应运动,在死区内则悬停。|
|物体向上运动|当被跟踪物体从当前位置继续爬楼梯向上时,边界框中心点的纵坐标位置离开死区,无人机跟踪被跟踪物体产生向上运动;当被跟踪物体继续爬楼梯时,无人机也会产生前后运动;当无人机在死区内时,保持悬停。|
|物体向下运动|当被跟踪物体从当前位置继续下楼梯向下时,边界框中心点的纵坐标位置离开死区,无人机跟踪被跟踪物体产生向下运动;当被跟踪物体继续下楼梯时,无人机也会产生前后运动;当无人机在死区内时,保持悬停。|

在无人机跟踪物体的过程中,实验结果表明,即使在被跟踪物体周围有相似物体干扰、光照变化的背光场景下,无人机仍能准确跟踪目标。这说明所设计的无人机系统能够在背景干扰和背光条件下,在不同运动状态下完成鲁棒的目标跟踪。

3.2 目标复杂运动实验

该实验旨在验证无人机在被跟踪物体进行复杂运动时能否准确跟踪目标。无人机通过边界框计算自身与目标物体的相对位置,当目标物体移动时,无人机根据相对位置变化生成速度命令,以在复杂环境中实现目标跟踪。

在有光照变化和相似背景干扰的场景中测试了该算法。被跟踪目标物体从低光照的室内环境移动到高光照的室外环境,在实验过程中,被跟踪物体随机、连续移动。实验结果如下:
- 开始时,无人机和被跟踪物体在死区内保持悬停。
- 被跟踪物体向下移动,无人机跟随产生向下运动。
- 被跟踪物体继续向前移动,两者距离逐渐增大,无人机产生向前运动。
- 被跟踪物体向右移动,无人机相应地产生向右运动。

两组实验表明,所提出的无人机目标跟踪系统在被跟踪物体前后、左右、旋转、上下移动时,即使存在相似物体干扰和光照变化,也能准确、实时地进行跟踪。实验结果显示,所设计的无人机系统能够实现实时、鲁棒的无人机自主目标跟踪。

4. 结论

本文将高速核相关滤波(KCF)跟踪算法与无人机运动控制相结合,设计了一个适用于无人机的自主目标跟踪系统。实验表明,该系统仅在低内存使用的CPU支持下,就能实现高度鲁棒的无人机自主实时跟踪。未来,将考虑使用重新检测机制,以进一步解决跟踪过程中物体在无人机视野中消失的问题。

无人机自主目标跟踪系统:KCF算法的高效应用

5. 技术优势总结

KCF算法与无人机运动控制结合构建的自主目标跟踪系统具有多方面显著优势,以下为详细总结:
|优势类型|具体优势|
| ---- | ---- |
|计算资源需求低|无需GPU加速,仅依靠CPU就能运行,且总内存使用仅121 Mb,适用于计算资源和内存有限的场景。|
|实时性强|目标跟踪算法计算、相对位置估计和无人机运动控制总共耗时18 ms,远高于无人机帧率(30 Fps),能满足实时跟踪要求。|
|鲁棒性高|在背景干扰(如相似物体干扰)和背光条件(光照变化)下,仍能准确跟踪目标,无论是目标简单运动还是复杂运动,都能保持良好的跟踪效果。|
|算法效率高|相关滤波算法的计算模式在频域,大大提高了算法速度,相比传统经典算法有更高的跟踪精度。|

6. 系统架构与工作逻辑流程图

为了更清晰地展示无人机自主目标跟踪系统的架构和工作逻辑,下面给出mermaid格式的流程图:

graph TD
    A[无人机终端(DJI Tello)] -->|视频流(RGB图像)| B[地面控制终端(笔记本电脑)]
    B -->|选择跟踪目标| C[KCF算法处理]
    C -->|目标位置信息| D[相对位置估计]
    D -->|运动控制命令| A
    subgraph KCF算法处理
    E[提取特征生成循环矩阵] --> F[训练滤波器]
    F --> G[核函数预测目标位置]
    end

该流程图展示了系统的主要工作流程:无人机终端采集视频流并传输到地面控制终端,地面控制终端使用KCF算法处理视频流,得到目标位置信息,然后进行相对位置估计,最后生成运动控制命令发送给无人机终端。KCF算法处理部分详细展示了其三个主要步骤:提取特征生成循环矩阵、训练滤波器和核函数预测目标位置。

7. 实际应用场景与潜力

无人机自主目标跟踪系统在多个实际应用场景中具有巨大的潜力:
- 安防监控 :可以实时跟踪可疑人员或物体,在光照变化和复杂环境下也能准确跟踪,为安全保障提供有力支持。例如在大型活动现场、工业园区等场所,对人员和车辆进行实时监控和跟踪。
- 物流配送 :在配送过程中,无人机可以跟踪货物或指定的接收点,确保货物准确送达。特别是在复杂的户外环境中,系统的鲁棒性可以保证跟踪的准确性。
- 农业监测 :用于跟踪农田中的特定区域或目标,如监测农作物的生长情况、病虫害的传播等。无人机可以根据目标的位置进行精准的数据采集和分析。
- 体育赛事 :在体育赛事中,无人机可以跟踪运动员的运动轨迹,为观众提供独特的视角,也可以为教练和运动员提供数据支持。

8. 未来发展方向与挑战

尽管该无人机自主目标跟踪系统已经取得了良好的实验结果,但仍面临一些挑战和未来发展方向:
- 目标丢失处理 :如前文所述,当物体在无人机视野中消失时,系统目前缺乏有效的应对机制。未来可以使用重新检测机制,例如结合多传感器数据(如雷达、红外传感器等),提高在目标丢失情况下的重新跟踪能力。
- 复杂环境适应 :虽然系统在一定程度上能适应光照变化和相似背景干扰,但在更极端的环境条件下(如恶劣天气、强电磁干扰等),跟踪效果可能会受到影响。需要进一步优化算法,提高系统在复杂环境下的适应性。
- 多目标跟踪 :目前系统主要针对单目标跟踪,在实际应用中,可能需要同时跟踪多个目标。未来可以研究多目标跟踪算法,将其与现有的系统相结合,实现多目标的实时跟踪。
- 智能决策能力 :可以进一步提升无人机的智能决策能力,使其能够根据目标的运动状态和环境信息,自主调整跟踪策略,提高跟踪效率和准确性。

综上所述,基于KCF算法的无人机自主目标跟踪系统具有显著的优势和广泛的应用前景,但也需要在未来不断改进和完善,以应对各种挑战,实现更高效、更智能的目标跟踪。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值