随着深度学习的飞速发展,行为识别在计算机视觉中的应用也越来越多。作为行为识别的重要部分,目标检测算法的研究愈显突出。本文针对单阶段检测算法中效果较好的YOLOX-s模型,提出了基于YOLOX-s的注意力改进,在网络结构中,增加了SE模块和CBAM模块,将注意力集中在图片检测的目标区域中,使得更多的细节信息获取出来;同时选用DIoU损失函数,让聚集的目标框和检测框之间重叠部分更快地重合,提高了模型的精度。实验结果表明,所提的模型相比于YOLOX-s模型,在准确率、召回率以及mAP上有所提升,对满足实际需求更近一步。
1.1 目标检测概况 近些年来,随着深度学习的快速发展,目标检测在计算机视觉中的应用越来越广,尤其是行为识别中,目标检测将是里面很重要的一步。同时,目标检测一直处在热门研究领域中。
传统的目标检测首先对目标位置进行定位,其次根据特征提取算子提取特征,常用有HOG、SIFT等特征提取算子,最后使用SVM、RF 等分类器对提取的特征进行分类。文献[1]采用方向梯度直方图(Histogram of Oriented Gradient, HOG)提取特征向量,将提取的特征向量输入支持向量机(Suport Vector Machine, SVM)进行图像分类,最后实现东巴文的自动识别。文献[2]在SIFT 基础上提出FG-SIFT 算法, 减少了特征点提取的计算时长,提高了算法的实时性。文献[3]采用HOG-SVM 通过机器学习进行研究, 对电子元件进行了不同角度的特征提取,最后使分类精度得到了提高。文献[4]提出一种基于多分类器协同的半监督样本选择方法,利用SVM 和RF 两个分类器协同训练,最后达到很好的效果。传统的目标检测算法传统的目标检测虽然取得了一些成就,但目标检测的过程中存在时间复杂度高,同时提取的特征往往是人工手动设计的,使得模型的鲁棒性差和泛化性不好。从2014 年开始,深度学习开始用于目标检测、行为识别等领域,通过卷积神经网络将深层的特征提取出来,解决了传统目标检测的不足。其中最具有代表性的就是CNN、RNN 以及YOLO 等一系列基于深度学习的目标检测算法,相对于传统的手工设计特征的方法, 能够自动学习视频的深层特征, 同时在精度和效率方面大大地提高。
Girshick 等[5] 2014年利用Region CNN(R-CNN)通过选择性搜索算法从一组对象候选框中选择可能出现的对象框,然后将这些选择出来的对象框中的图像输入到CNN 模型提取出特征, 最后将特征送入分类器经行检测和分类。
最终使mAP 值在PASCAL VOC2007 上最好结果的30%提升到66.0%,但是精度脱离实际应用,检测速度更是达不到实际的要求。
Girshick 等[6] 2016 年的Faster R-CNN 将原始图片输入卷积中得到特征图, 使用建议框提取特征框,使得计算量大大减少,同时,分类和预测框的位置大小都是通过CNN 输出的,最后的检测精度和速度明显得到提升, 在PASCAL VOC2007 数据集上mAP 达到73.2%。
R-CNN 系列等[7] [8] [9] [10]两阶段目标检测算法,在精度检测效果上很好,但检测的速度仍然是个很突出的问题。Redmon等2016 年的YOLO (You Only Look Once)单阶段检测算法,将图片给卷积神经网络输入,最后得到边界框的信息以及置信度,在mAP 为63.4%的同时FPS 达到45,检测速度得到了极大提升,但是检测精度却比不上Faster R-CNN 检测算法。YOLO 单阶段检测算法检测速度快是一个优势,但是发展到现在存在