Design of visual odometer based on RANSAC optical flow method and feature point matching method
-
摘要: 为了解决光流跟踪法定位精度不足、误差累积和特征点匹配法耗时久的问题,设计了一种将随机抽样一致性(random sample consensus,RANSAC)光流跟踪法和改进的特征点匹配法结合的视觉里程计。利用RANSAC光流跟踪法对关键帧之间的小规模运动进行估计,RANSAC算法对光流跟踪的误匹配点进行剔除,大大降低了光流跟踪法存在的误匹配;而关键帧之间的运动估计则利用改进的特征点匹配法,以修正光流跟踪法的估计误差;最后利用卡尔曼滤波将RANSAC光流跟踪法和改进的特征点匹配法进行融合。实验结果表明:该文的算法能够克服光流跟踪法精度不足、误差累积的问题,将平均相对误差由15.5%提升到了2.6%;同时也能在一定程度上提高特征点匹配法的速度,将特征点匹配法的平均耗费时间由37.28 ms提升到了21.07 ms。Abstract: In order to solve the problem of insufficient positioning accuracy, error accumulation and long time consuming of feature point matching method, a visual odometer that combines RANSAC optical flow method and improved feature point matching method was designed. The RANSAC optical flow method was used to estimate the small-scale motion between key frames. The RANSAC algorithm eliminated the mismatch points of optical flow, which greatly reduced the mismatch existing in the optical flow method. The motion estimation between key frames used the improved feature point matching method to correct the estimation error of the optical flow method. Finally, the RANSAC optical flow method and the improved feature point matching method were fused by using the Kalman filtering. The experimental results show that the algorithm can overcome the problems of insufficient accuracy and error accumulation of the optical flow method, which increases the MRE from 15.5% to 2.6%. And it can also improve the speed of the feature point matching method, which increases the average consuming time from 37.28 ms to 21.07 ms.
-
Keywords:
- visual odometer /
- feature point matching method /
- optical flow method /
- RANSAC /
- Kalman filtering
-
引言
目标检测是计算机视觉中的一项热门任务,旨在从输入的视频或图像中获取感兴趣目标的信息[1]。近年来,随着深度学习发展与硬件性能提升,针对通用场景数据集(如MSCOCO等)下的目标检测算法性能已经达到了较高的水平[2]。然而,真实环境往往与现有的数据集存在较大差异,如光线、视角、天气等,导致源域(训练数据)与目标域(真实场景)存在域偏移,严重影响了检测算法在真实场景下的检测效果。
现有缓解域偏移技术途径分为两类。其一,使用少量标注目标域数据对模型进行微调,由于真实场景的实例标注是困难的,不具备实际可行性。其二,采用域适应算法改进的方式,主要包括基于特征对齐、半监督和数据增强的方法[3]。CHEN Y等人[4]设计的DAF(domain adaptive faster R-CNN)采用了基于对抗学习的深度域适应检测方法,首次提出了跨域目标检测任务;HE Z等人[5]在DAF的基础上提出了多层级特征对齐网络MAF,后续被广泛使用;KIM T等人[6]提出的算法从多样性的角度学习多个域之间的特征不变性表示解决跨域检测问题;CHEN C等人[7]提出的HTCN(hierarchical transferability calibration network)算法将信息熵作为判别准则,对样本的迁移性进行筛选;VS V等人[8]从知识蒸馏的角度提出了一种均值教师网络用于域适应检测。目前从特征对齐角度出发,基于对抗学习的算法仍是域适应检测研究的主流。
然而,现有对抗学习算法仍然存在三方面问题。第一,目前大多数对抗学习方法没有考虑背景特征在迁移学习中的负作用。不加区分的对抗学习导致不应对齐的背景特征也被强制对齐,使得前景与背景信息在检测中区分困难[9]。第二,现有对抗学习算法难以对齐实例特征。实例特征具有丰富多变的特征,将实例特征利用对抗学习方法对齐会导致检测性能的下降。第三,现有方法少有对域适应检测系统的研究。如何利用边缘端设备采集到的图像,边缘端-云端结合的快速域适应训练与部署仍是尚未讨论的问题[10]。
针对以上问题,本文提出了一种基于注意力机制的全局-实例域适应检测算法与系统,结合域适应算法与系统两方面的研究,实现快速训练、远程部署与较高精度的域适应检测系统。
一方面,提出了一种基于注意力机制的全局特征对抗学习算法,能够减弱背景特征在迁移学习中的负作用。同时,还提出了基于字典学习的实例级特征对齐方法,对实例级特征进行高精度的对齐。实现更细致的特征迁移,从而提高检测模型的性能。
另一方面,提出了一种基于FPGA+BPU(field programmable gate array+brain processing unit)单板多处理器协同架构的域适应模型可在线更新的检测系统,通过免标注实现快速训练,通过模型动态更新和远程部署,实现现场可重构域适应检测系统。总的来说,本文贡献主要有以下几个方面:
1) 提出了一种基于注意力机制的全局-实例域适应算法,使用注意力缓解全局特征对抗中背景知识负迁移的影响;通过基于字典学习的实例级特征对齐,能在实例级层面进行更加细致的对齐。
2) 提出了一种可实现免标注、场景数据回传、模型在线更新的域适应检测系统。将本方法应用到实际场景中,增强了在具体场景中的泛化性,无需标注,快速训练部署,并在端侧实现实时目标检测效果。
3) 所提方法在域适应检测数据集上进行了大量实验,实验结果表明,与现有方法相比,本文方法达到了较高水平。此外,还进行了消融实验,证明了本文所提各个模块的有效性。本文所提出的域适应模型可在线更新的检测系统,相比于无法更新的静态模型的检测系统具有更好的泛化性和场景适应能力,相比于先采集数据后标注训练的传统边缘端检测系统具有更快的响应速度和更好的检测结果。
1 域适应检测网络结构设计
域适应迁移学习的本质是将“源域”和“目标域”在特征空间中进行对齐。当“源域”和“目标域”在特征空间中的距离越接近时,就可以认为它们的分布差异不再存在,这意味着“源域”上的知识也适用于“目标域”,从而实现了迁移学习的目标。
1.1 基于注意力机制的全局-实例域适应检测算法
以Faster R-CNN[11]为基准算法进行域适应检测的修改,如图1所示为本文算法的整体框架图。上下两条支路为参数共享的孪生网络,上方为源域训练支路,输入来自于源域,即有标注的数据集;下方为目标域训练支路,输入来自于目标域,即应用场景下的图片。输入通过骨干网络进行特征提取,得到图像级特征图$ F $,然后结合生成的注意力图,实现对前景区域的关注。将特征图通过一个梯度反转层,使用全局特征判别器$ {D}_{{\mathrm{G}}} $对特征图的来源域进行判断,通过梯度反转层与判别器之间的对抗学习,实现全局特征的对齐。经过RCN模块后提取得到实例级特征$ k $,来自源域和目标域的实例级特征共同组成了实例级特征字典,将检测头得到的分类结果作为伪标签,与相同类别的实例级特征进行靠近,不同类别的实例级特征进行疏远,达到在特征空间中精细化特征对齐的目的。
1.2 基于注意力机制的全局特征对抗学习
基于对抗学习的域适应检测方法利用域判别器进行对抗训练,在梯度反传时经过梯度翻转层使得源域和目标域特征尽量相似[12]。实验证明,基于卷积网络的目标检测算法本质上是关注可能包含目标物体的局部区域[13],基于这一前提,本文在全局特征的基础上加入了注意力模块,通过注意力挖掘生成包含目标的前景区域,再与全局特征结合,在前景区域上进行特征的域对齐。背景特征抑制的全局特征如图2所示,根据图片中的目标分布得出注意力图,将背景区域的图像级特征进行抑制。在抑制背景特征后,使用图像级特征对齐,源域和目标域前景特征的空间分布如图2右侧所示,将背景特征进行疏远,前景特征进行聚集。
域适应检测最早在分类任务中取得进展,DANN[8](domain adversarial neural networks)网络提出将梯度反转层(gradient reversal layer,GRL)与卷积神经网络结合起来,图像分类网络与域分类网络共享特征提取网络参数,梯度反转层用于在梯度反向传播过程中实现梯度的取反。梯度反转层与域分类器在训练过程中对抗学习,使得输入域分类器的特征尽可能不具有领域的区分度。后面的研究者将梯度翻转层与域分类器应用到检测任务的迁移学习中,且取得了较好的效果。
若使用$ {I}_{s} $代表源域中的图片,$ {I}_{t} $代表源域中的图片,经过特征提取网络$ G $后得到图像级特征图$ F=G\left(I\right) $,在不加入注意力图时,域判别器的损失函数计算式(1)所示:
$$ {L_{{\text{GD}}}} = - ({Y_{{\text{DG}}}}\log ({D_{\text{G}}}({F_{\text{s}}}))) + (1 - {Y_{{\text{DG}}}})\log (1 - {D_{\text{G}}}({F_{\text{t}}}))\;\;\;\;\;\;\;\;\;\;\; $$ (1) 式中:$ {Y}_{\mathrm{D}\mathrm{G}} $为特征图的分类标签,源域特征图的分类标签$ {Y}_{{\mathrm{DG}}} $为0,目标域特征图的分类标签是1。
整个对抗学习的原理是域判别器通过以上的损失函数极小化分类损失,而经过梯度反传层后的特征提取网络则通过极大化该损失来进行优化,当判别器无法判断特征图的来源时就达到了特征对齐的目的[8]。
原有的将注意力图应用到域适应检测中的方法有EPM网络[14],EPM的研究是在FCOS的网络结构上开展的,利用了FCOS具有的目标提取层,可以将特征图对应位置上的前景和背景区域进行分离。但是对于其他的检测结构来说,难以直接获取注意力图。在基于锚框的检测网络中,本文根据最终的检测结果作为伪标签生成注意力图。注意力图$ \mathrm{A}\mathrm{t}\mathrm{t}\mathrm{e}\mathrm{n}\mathrm{M}\mathrm{a}\mathrm{p} $的生成如下所示:
$$ {\text{AttenMap}} = \sum\limits_{i = 0}^n {N({x_{i\_c}},{w_i}) \times N({y_{i\_c}},{h_i})} $$ (2) 式中:$ n $为检测得到的框的总个数;$ N $为一维正态分布,分别在检测框水平方向中心位置$ {x}_{c} $和竖直方向中心位置$ {y}_{c} $,以检测框的宽$ w $和高$ h $为方差构建高斯分布。将所有的检测结果分布求和,得到最终注意力图。
1.3 基于字典学习的实例级特征对齐
源域和目标域不同类别的实例特征在空间分布如图3所示,不同类别存在混叠现象,容易导致类别的错分类等。全局特征对齐只能够大致对齐源域和目标域特征,无法进行更加细致的特征对齐。为解决特征对齐粗糙的问题,本文将特征字典的方法引入到实例级特征对齐中,进行更加细致的特征对齐。
本文将实例特征对齐视为字典查询操作,构建了具有类别感知的特征字典,其中包括源域和目标域的样本,并赋予其类别伪标签,使得实例级特征可以查询与类别字典中相同类别的特征相似度,以及与不同类别之间的特征相似度。将相同类别的特征在空间中的表达尽量靠近,不同类别特征的表达进行疏远[15]。
特征字典使用队列数据结构,采取先进先出的数据更新机制,特征字典中储存着高维特征向量$ {\boldsymbol{k}} $,其中黄色标识的特征来自于源域,蓝色标识来自于目标域。源域和目标域的实例级特征组成混合特征字典,由于数据集中不同类别实例个数相差较大,所以针对这一问题,本文提出了动态长度的特征字典$ {FD}_{C}^{N} $。特征字典构建如图4所示。
如图4所示,其中N代表设定的每一类目标队列的最大长度,$ C $代表该数据集中目标的类别个数, $ {{{\boldsymbol{k}}}}_{c}^{n} $代表第$ c $类、第$ n $个特征向量。考虑到检测性能以及算法实现上的可行性,以域适应检测领域中常用检测效果较好的Faster R-CNN为基准模型。Faster R-CNN经过Align模块得到特征向量${{{{\boldsymbol{f}}}}_q}$,以及每个特征向量所对应的属于每一类的概率${\rm{clas}}{{\rm{s}}_{\log it}}$。先将背景和低分特征向量进行滤除,设置置信度阈值${\rm{scor}}{{\rm{e}}_{{\rm{thresh}}}}$,将前景目标的低分特征向量进行滤除,得到高分前景目标特征向量索引值${\rm{fore}}{}_{{\rm{idx}}}$,经过实验,${\rm{scor}}{{\rm{e}}_{{\rm{thresh}}}}$取0.3时最终的域适应检测效果最好,此时能够正确分类且样本数量较多。
$$ {\rm{fore}}{}_{{\mathrm{idx}}} \leftarrow {\rm{clas}}{{\rm{s}}_{\log it}} > {\rm{scor}}{{\rm{e}}_{{\mathrm{thresh}}}} $$ (3) 把输入的特征向量送入一个特征编码网络,并进行L2正则化得到前景目标的字典特征${{\rm{encoder}}}_{q}$:
$$ {\rm{encode}}{r_q} = {L_2}({\rm{Encoder}}({\boldsymbol{f}}_q[{\rm{for}}{{\rm{e}}_{{\rm{idx}}}}])) $$ (4) 将${{\rm{encoder}}}_{q}$中的元素集合看作$ X $,其中单个元素看作$ {x}_{i}^{c} $,$ c $是根据检测头得到的伪类别标签,$ i $是元素的索引值,设元素总个数为$ m $,$ i\in [\mathrm{0,1},\cdots ,m-1] $。每个元素的特征字典损失计算如式(5)所示:
$$\begin{split} & {L}_{{\rm{FD}}}({x}_{i}^{c})=\\ & -{\mathrm{log}}_{2}\left[\frac{\mathrm{exp}({x}_{i}^{c}\cdot {\rm{F}}{{\rm{D}}}_{c}/\tau )}{{\displaystyle {\sum }_{k\ne c}\mathrm{exp}({x}_{i}^{c}\cdot {\rm{F}}{{\rm{D}}}_{k}/\tau )+\mathrm{exp}({x}_{i}^{c}\cdot {\rm{F}}{{\rm{D}}}_{c}/\tau )}}\right] \end{split}$$ (5) 式中:$ \tau $是温度系数,温度系数决定了损失函数对困难负样本的关注程度,本文取$ \tau =0.07 $ [15];${x}_{i}^{c}\cdot {{\rm{FD}}}_{C}$中的$ {x}_{i}^{c} $代表$ {encoder}_{q} $第$ i $个实例特征所属第$ c $个类别,${{\rm{FD}}}_{c}$代表特征字典中第c类的特征队列,“$ \cdot $”代表对两者进行相似度求解,相似度范围是$ [-\mathrm{1,1}] $,越接近1代表两者越相似,越接近−1代表两者差异越大。由于每次${{\rm{encoder}}}_{q}$中的元素个数不确定,所以对其中每个元素的损失函数进行取平均,以保证训练过程的稳定性,总的实例特征对比损失计算如式(6):
$$ {L}_{{\rm{FD}}}(X)=\frac{1}{m}·{\displaystyle \sum _{i=0}^{m-1}{L}_{{\rm{FD}}}({x}_{i})} $$ (6) 每次计算完成实例特征对比损失后都要使用${{\rm{encoder}}}_{q}$对特征字典${{\rm{FD}}}_{C}^{N}$进行特征元素的更新,${{\rm{encoder}}}_{q}$元素所属目标根据分类头的伪标签进行分类,将对应类别的旧元素出列、新元素进列,维持实例特征字典元素的动态更新,保持特征一致性。训练过程中进行自动计数,动态调整各个类别字典的长度。
2 系统实现
嵌入式检测系统在生活中发挥着越来越重要的作用[16]。为满足实际场景需求,本文设计了如图5所示的系统框架,整个系统分为数据采集、图像回传、域适应模型训练和模型更新4个部分。视频采集阶段依赖端侧设备搭载的相机进行实现,将视频数据压缩后回传给服务器端,将视频帧作为目标域数据,利用服务器端进行域适应模型训练,将训练后的模型导出为板端支持的推理格式,并通过数据链路进行回传,更新端侧设备中的检测模型,然后继续执行相应的检测任务。
2.1 系统结构与设计
系统设计方面,本系统包括相机、FPGA、BPU等。采用了FPGA+BPU单板多处理器设计,具有强大图像处理及神经网络推理能力,能够在边缘端进行图像实时处理和目标检测。本文结合域适应方法,设计了可在线更新的边缘端检测硬件系统,提出了实时在线更新的域适应目标检测方法。
利用平台以太网接口,结合无线通信实现系统与控制终端的通信链路,当硬件平台到达目标区域时,利用板端的相机对周围环境以及目标进行采集,将视频画面压缩之后通过数据链路回传到服务器端。服务器端对视频流进行处理,将采集到的画面作为目标域数据进行域适应检测训练,训练结束后将模型转换为板端支持的格式,再通过数据链路传输给硬件平台,实现模型的更新部署,并自动执行检测任务,以达到在目标场景中更好的检测效果。系统结构如图6所示。
与其他方法相比,本系统的优势在于:多处理器异构平台设计充分利用处理器优势,BPU对目标进行检测,FPGA负责图像渲染,达到了实时的检测效果;结合域适应检测的方法,本系统通过实时进行采集图像回传的方式进行模型的实时训练与在线更新,对于目标场景检测识别更加精准,效率更高。
2.2 端侧模型部署
本文以地平线X3国产化芯片为板端部署平台,其智能计算单元BPU具有5 TOPs的模型推理算力。由于板端芯片算力的限制,选择实时性较好的单阶段YOLOv8作为部署的检测算法。将本文提出的基于注意力机制的全局-实例级域适应方法应用到YOLOv8框架中,从YOLOv8的检测结果中可以得到注意力图的分布,从特征提取网络得到的注意力图中提取得到实例级特征,从而实现YOLOv8框架下的域适应检测。
在训练得到最终模型后,去除特征辅助对齐结构,将YOLOv8模型导出,配合AI工具链,经过浮点模型准备、模型验证、模型转换、性能评估和精度评估等操作,将模型转换成板端运行格式。
模型后处理部分包含很多算子,只能够在CPU上运行,这会导致量化时连续计算的部分被拆分为多个子图。多个子图计算会极大消耗处理器资源及存储器带宽,导致整体的推理速度极大降低。为此,我们从检测头的输出部分将模型进行划分,检测头之前的部分经过量化可以完全部署在BPU上进行推理,后处理部分则使用CPU进行解析,通过构建近似的激活函数等操作,节省推理时间。推理时间与推理效果的分析可以在实验与分析部分看到。
3 实验与分析
本章节详细描述使用的测试数据集、评价指标,本文方法的实验配置与超参数,以及与现有方法的性能比较,模块的消融实验与结果可视化。
3.1 实验数据集
域适应检测中经常使用Cityscapes[17]、Foggy Cityscapes[18]等数据集。Cityscapes是一个在多个城市的街道场景以及季节采集得到的数据集,包括多个目标种类,针对语义分割、目标检测等任务都含有完整的标注信息。Foggy Cityscapes也是一个城市场景的数据集,是在Cityscapes的基础上合成的雾天的场景,标注信息与Cityscapes完全一致,Cityscapes向Foggy Cityscapes的域适应检测是最常用的数据集。
3.2 实验评价指标
为了评估检测效果的精度,本文使用目标检测领域通用的平均精度(average precision,AP)作为模型性能评价指标。其中mAP指的是IoU在0.50到0.95区间每隔0.05时的AP取值的平均值。
3.3 实验配置与超参数
本文方法使用PyTorch 1.9.0框架实现,硬件平台为Nvidia RTX A5000,PC机操作系统为Ubuntu 18.04。本文应用的训练策略包括:使用SGD(stochastic gradient descent)作为优化器来训练网络参数,训练时长为30 epoch,初始学习率为5$ \times $10−3,权重衰减为0.000 1,batch size设置为8,使用阶段衰减的学习策略,分别在第10 epoch、20 epoch将学习率衰减至之前的0.3倍。本文使用标准的数据增强策略,包括随机翻转、随机裁剪、多尺度训练等。
3.4 性能比较
将本文所提出的基于注意力机制的全局-实例特征对齐域适应检测网络在多个数据集上进行了测试,其中以Cityscapes为源域、以Foggy Cityscapes为目标域进行多个类别的迁移学习,在目标域测试集上的检测性能如表1所示。
表1中ConfMix使用了图像裁剪拼接的方式,对图像级特征进行对齐,对齐的层次不够细致;SC-UDA使用图像风格转换的方式进行域适应检测,由于数据集数量较少以及图像转换细节与真实存在差异等问题,导致仍存在域间隙;MeGA-CDA使用了记忆模块对每个类别的实例特征进行动量更新,由于其学习的数据量较小,所以也无法实现较好的实例级域适应对齐效果;MGA从多级特征对齐出发,将门控机制应用到对抗学习模块中,实现了多层级特征对齐;SSOD从相似度的角度出发,通过源域和目标域特征聚类进行特征对齐,但是也会限制特征的表达。通过表1可以看出,本文所提方法在实例个数较多的类别上(行人、车辆)的检测指标达到了领先水平,在实例个数较少的类别上的检测指标表现一般,综合表现接近于SOTA水平。本文使用注意力的方式实现了实例特征与背景特征的区分,对实例特征进行图像级对齐可以减少背景特征负迁移带来的影响,使用类别感知的动态实例级特征字典对源域和目标域实例级特征进行更加细致的特征对齐,从而使得特征对齐更加全面和精细化,从而取得更好的跨域检测效果。
表 1 本文的模型与其他域适应方法在Cityscapes向Foggy Cityscapes迁移性能对比Table 1. Comparison of migration performance between proposed model and other domain adaptation methods from Cityscapes to Foggy Cityscapes dataset方法 检测网络 Person Rider Car Truck Bus Train Motorcycle Bicycle mAP Source only Faster R-CNN 34.8 37.6 48.7 14.3 30.1 8.8 14.6 28.1 27.1 ConfMix[19] YOLOv5 45.0 43.4 62.6 27.3 45.8 40.0 28.6 33.5 40.8 SC-UDA[20] Faster R-CNN 38.5 43.7 56.0 27.1 43.8 29.7 31.2 39.5 38.7 MeGA-CDA[8] Faster R-CNN 37.7 49.0 52.4 25.4 49.2 46.9 34.5 39.0 41.8 MGA[21] Faster R-CNN 43.9 49.6 60.6 29.6 50.7 39.0 38.3 42.8 44.3 SSOD[22] Faster R-CNN 38.8 45.9 57.2 29.9 50.2 51.9 31.9 40.9 43.3 Ours Faster R-CNN 46.6 49.2 61.8 30.1 49.8 39.8 36.7 39.4 44.2 Oracle Faster R-CNN 52.2 55.0 72.1 31.2 52.7 45.0 33.9 50.0 49.0 3.5 消融实验
为证明本文所提各个模块的有效性,并验证各个模块的提升作用,本文设计如表2所示的消融实验。
表 2 在Cityscapes向Foggy Cityscapes数据集迁移学习的消融实验Table 2. Ablation experiment of transferring learning from Cityscapes to Foggy Cityscapes dataset方法 注意力(损失) 注意力(特征) 字典学习 mAP50 性能提升 Baseline 27.1 Baseline √ 38.5 +11.4 Baseline √ 39.6 +12.5 Baseline √ 40.2 +13.1 Baseline √ √ 44.3 +17.2 从表2可以看出注意力机制和实例级特征字典在Cityscapes向Foggy Cityscapes迁移学习任务上表现出的有效性,且由于注意力机制与字典学习所所用的区域不同,所以综合使用两者能够使检测性能再次得到提升。综合使用最多能够使检测效果相比于baseline提升17.2,使得检测网络的检测效果在目标域有较大提升。
3.6 结果可视化
为了直观展示特征字典的作用,将训练过程中的实例特征使用非线性降维技术t-SNE[23]进行降维可视化。对实例级特征对齐前后第1、10、20、30轮的实例特征进行可视化得到图7。
由于Cityscapes数据集具有8类目标,从图7(a)中可以看出每类目标的实例特征分布较松散,不同种类的特征之间混叠在一起。只在图像级对齐的策略下,随着训练的进行,不同类别的实例特征无法进行区分,容易导致网络的错检。使用特征字典进行实例级特征对齐后,随着训练的进行,如图7(b)所示,不同种类之间的特征逐渐分离,相同种类之间的特征逐渐聚集,能起到在实例级特征进行对齐的作用。
在Cityscapes数据集向Foggy Cityscapes验证集进行迁移学习时,使用域适应前后在Foggy Cityscapes上的检测效果对比图,检测结果见图8。
从图8(a)可以看出,未使用域适应训练得到的检测模型对于有雾遮挡的中小目标检出率较差,大量远方目标无法被检出,也体现了一般检测方法的局限性,只能够在与训练数据集相似的场景中发挥较好的检测性能,对于不同的检测场景,检测性能下降较大。使用相同的网络结构加入域适应模块进行训练得到的模型,在Foggy Cityscapes验证集上进行测试,如图8(b)所示,对于中小目标的检测效果有了很大的提升,即使目标被雾所干扰,网络也能够准确检出并正确分类,可以看出本方法提出的域适应检测的有效性。
3.7 模型部署
以实时性较好的单阶段YOLOv8作为部署的检测算法,结合本文所提方法,在自有数据集上进行迁移学习的测试,测试结果如表3所示。
表 3 在自有数据集上域适应前后的检测性能对比Table 3. Comparison of detection performance before and after domain adaptation on self-owned datasets方法 骨干网络 mAP 不进行迁移 C2fDarknet 36.5 本文方法 C2fDarknet 44.2 监督学习 C2fDarknet 46.3 从表3可以看出,在不进行域适应检测的情况下,仅利用监督学习的方法在源域上进行训练,在目标域上进行测试的检测效果较差。在使用了本文的域适应检测方法后,检测效果具有明显提升,达到了接近监督学习的效果。
将转换之后的模型文件传输到板端进行推理,推理一张$ 640\times 640 $像素大小的图片,在未去除后处理的情况下,耗时达到300 ms左右。去掉检测后处理网络部分的模型部署到BPU上,后处理部分使用CPU单独处理,相比于直接将整个检测网络部署在BPU上推理大约能够快4倍,达到75 ms左右。
为了进一步提高边缘端的推理速度,我们参考ZHANG Q等人[24]的研究,在网络中引入可变分组卷积(VarGNet),引入了可变分组卷积之后的网络模型精度、大小和边缘端推理时间,如表4所示。
添加可变分组卷积之后,编译器能够更好地针对BPU异构处理器进行优化,网络中操作的计算强度更平衡,存储器带宽也得到了更有效的利用。添加可变分组卷积之后,虽然检测精度稍有下降,域适应检测的精度mAP提升9个点,但是推理时间得到了显著下降。因此实际测试中,在边缘端设备上的模型推理速度有了明显的上升,如表4所示,达到了实时的检测性能。
表 4 引入可变分组卷积前后网络的检测性能以及参数量Table 4. Detection performance and number of parameters of network before and after using variable group convolution方法 骨干网络 mAP 参数量/M 推理时间/ms 不进行迁移 C2fDarknet 31.5 3.2 74.2 本文方法 C2fDarknet 41.8 3.2 74.2 本文方法 C2fDarknet +VarGNet 40.5 2.5 23.4 为了验证域适应检测在实际场景中的检测效果,在采集得夜晚场景作为目标域进行训练,并将数据集视频输入边缘端设备进行推理,发现能够较好地检测到场景中的目标,最终域适应前后的检测结果如图9所示。
从图9(a)可以看出,在白天场景训练的检测模型在夜晚场景的检测效果较差,对于弱特征、较小目标车辆容易出现漏检,在进行域适应训练后,得到如图9(b)所示的检测效果,对于周围的小目标车辆都能够得到较好的检测结果。所以本方法所提出的全局-实例级域适应检测系统对于现实场景有着非常重要的应用价值和意义,可以显著提高在目标场景的检测效果。
4 结论
本文提出了一种基于注意力机制的全局-实例级域适应检测算法与系统,通过算法和系统两方面的研究,实现了一套具有快速训练、远程部署和较高精度的域适应检测算法与系统。本文将注意力机制应用到全局特征对齐中缓解了背景特征负迁移的影响,构建的特征字典使用相似度度量,实现了特征在实例级的精细化对齐。基于本文改进的检测网络在域适应检测数据集上,达到了接近SOTA的性能水平,并通过消融实验证明了本文方法的有效性。本文提出的免标注、场景数据回传、模型在线更新的域适应检测系统,将本方法应用到实际场景中,增强了在具体场景中的泛化性,且无需进行标注,可快速训练部署,并在嵌入式平台上实现实时目标检测效果。
-
表 1 特征点提取算法时间
Table 1 Feature points extraction algorithm time
特征点数量 算法运行时间/ms SIFT SURF ORB 100 186.7 166.3 10.1 200 204.4 188.7 10.8 300 218.6 217.3 11.4 400 224.3 232.6 11.8 500 229.6 257.3 12.4 600 242.2 289.6 12.6 700 257.2 327.3 12.7 800 268.8 359.6 12.7 900 271.5 386.6 12.8 1000 286.1 402.6 13.1 -
[1] 李扬宇. 基于深度传感器的移动机器人视觉SLAM研究[D]. 重庆: 重庆大学, 2017. LI Yangyu. Research on vision slam of mobile robot based on depth sensor[D]. Chongqing: Chongqing University, 2017.
[2] NISTER D, NARODITSKY O, BERGEN J. Visual odometry[C]//Proceedings of the 2004 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. USA: IEEE Computer Society, 2004.
[3] DAVISON A J, REID I D, MOLTON N D, et al. MonoSLAM: real-time single camera SLAM[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,2007,29(6):1052-1067. doi: 10.1109/TPAMI.2007.1049
[4] KITT B, GEIGER A, LATEGAHN H. Visual odometry based on stereo image sequences with RANSAC-based outlier rejection scheme[C]//2010 IEEE Transactions on Intelligent Vehicles Symposium (IV). USA: IEEE, 2010.
[5] LOWE D G. Distinctive image features from scale-invariant keypoints[J]. International Journal of Computer Vision,2004,60(2):91-110. doi: 10.1023/B:VISI.0000029664.99615.94
[6] BAY H, ESS A, TUYTELAARS T, et al. Speeded-up robust features (SURF)[J]. Computer Vision and Image Understanding,2008,110(3):346-359. doi: 10.1016/j.cviu.2007.09.014
[7] ETHAN R, VINCENT R, KURT K. ORB: an efficient alternative to SIFT or SURF[C]//2011 International Conference on Computer Vision. USA: IEEE, 2012.
[8] 杨志芳, 袁家凯, 黄瑶瑶. 基于SIFT算法的室内全景图拼接[J]. 自动化与仪表,2020,35(3):58-62, 87. YANG Zhifang, YUAN Jiakai, HUANG Yaoyao. Indoor panorama stitching based on SIFT algorithm[J]. Automation and Instrumentation,2020,35(3):58-62, 87.
[9] 丁小奇, 李健, 胡雅婷, 等. 基于改进SURF算法无人机影像特征匹配的研究[J]. 中国农机化学报,2020,41(2):147-154. DING Xiaoqi, LI Jian, HU Yating, et al. Research on UAV image feature matching based on improved SURF algorithm[J]. Agricultural Machinery News of China,2020,41(2):147-154.
[10] 朱成德, 李志伟, 王凯, 等. 基于改进RANSAC-GMS算法的图像匹配[J]. 计算机应用,2019,39(08):2396-2401. ZHU Chengde, LI Zhiwei, WANG Kai, et al. Image matching based on improved RANSAC-GMS algorithm[J]. Computer Application: 2019,39(8):2396-2401.
[11] 周磊, 马立. 基于稀疏光流法的ORB特征匹配优化[J]. 应用光学,2019,40(4):583-588. doi: 10.5768/JAO201940.0402001 ZHOU Lei, MA Li. ORB feature matching optimization based on sparse optical flow method[J]. Journal of Applied Optics,2019,40(4):583-588. doi: 10.5768/JAO201940.0402001
[12] ENGEL J, SCHÖPS T, CREMERS D. LSD-SLAM: large-scale direct monocular SLAM[C]//13th European Conference on Computer Vision (ECCV). [S.l.]: Springer Nature, 2014.
[13] ENGEL J, STURM J, CREMERS D. Semi-dense visual odometry for a monocular camera[C]//Proceedings of the 2013 IEEE International Conference on Computer Vision. USA: IEEE, 2013.
[14] 贾哲. 基于光流跟踪和特征匹配的视觉里程计研究[D]. 天津: 天津理工大学, 2019. JIA Zhe. Research on visual odometer based on optical flow tracking and feature matching[D]. Tianjin: Tianjin University of Technology, 2019.
[15] 张国良, 姚二亮, 林志林, 等. 融合直接法与特征法的快速双目SLAM算法[J]. 机器人,2017,39(6):879-888. ZHANG Guoliang, YAO Erliang, LIN Zhilin, et al. Fast binocular SLAM algorithm combining direct m-ethod and feature method[J]. Robot,2017,39(6):879-888.
[16] 齐乃新, 杨小冈, 李小峰, 等. 基于ORB特征和LK光流的视觉里程计算法[J]. 仪器仪表学报,2018,39(12):216-227. QI Naixin, YANG Xiaogang, LI Xiaofeng, et al. Visual odometer based on ORB feature and LK optical flow[J]. Journal of Instrumentation,2018,39(12):216-227.
[17] 郑驰, 项志宇, 刘济林. 融合光流与特征点匹配的单目视觉里程计[J]. 浙江大学学报(工学版),2014,48(2):279-284. ZHENG Chi, XIANG Zhiyu, LIU Jilin. Monocular visual odometer fusing optical flow and feature pointmatching[J]. Journal of Zhejiang University (Engineering Edition),2014,48(2):279-284.
[18] 吴荻, 战凯, 肖小凤. 基于改进光流法和纹理权重的视觉里程计[J]. 计算机工程与设计,2019,40(1):238-243. WU Di, ZHAN Kai, XIAO Xiaofeng. Visual odometer based on improved optical flow method and text-ure weight[J]. Computer Engineering and Design,2019,40(1):238-243.
[19] 赵卫东, 曹蒙, 蒋超. 结合光流法和RANSAC的视觉里程计设计[J]. 兰州工业学院学报,2019(3):62-67. doi: 10.3969/j.issn.1009-2269.2019.03.012 ZHAO Weidong, CAO Meng, JIANG Chao. Design of visual odometer combining optical flow method and RANSAC[J]. Journal of Lanzhou University of Technology,2019(3):62-67. doi: 10.3969/j.issn.1009-2269.2019.03.012
[20] 涂梅林, 郭太良, 林志贤. 基于ORB特征的改进RANSAC匹配点提纯算法[J]. 有线电视技术,2018,344(8):15-19. TU Hailin, GUO Tailiang, LIN Zhixian. Improved RANSAC matching point purification algorithm based on ORB features[J]. Cable TV Technology,2018,344(8):15-19.
-
期刊类型引用(7)
1. 王雪,王在俊,钱奕舟,高耀文,刘人杰. 改进RANSAC的低能见度无人机图像匹配方法. 舰船电子工程. 2024(11): 134-139 . 百度学术
2. 周子翔,黄丹丹,刘智. 一种基于三维形状上下文特征的点云配准算法. 应用光学. 2023(02): 330-336 . 本站查看
3. 刘玉洁,张丽. 基于计算机视觉的灰度图像特征点快速匹配方法. 长江信息通信. 2023(04): 54-56 . 百度学术
4. 刘慧芳,甄国涌,储成群. 基于网格运动统计的工件识别改进算法. 组合机床与自动化加工技术. 2022(05): 109-112 . 百度学术
5. 孙滨,张亮. 改进深度学习的无人船目标光视觉跟踪研究. 舰船科学技术. 2021(06): 64-66 . 百度学术
6. 陈润泽,郝向阳,陶健,杨高杰. 旋翼无人机视觉/惯性组合导航技术研究. 电子测量技术. 2021(12): 121-127 . 百度学术
7. 郭军,胡立坤,姚燕. 基于ORB-LK光流的RGB-D SLAM算法. 广西大学学报(自然科学版). 2021(05): 1337-1348 . 百度学术
其他类型引用(21)