聚类Anchor参数与边界框损失优化的室内人群检测
作者: 颜冰 刘佳庆 池强
关键词:模式识别;神经网络;人群计数;YOLOv3;计算机视觉
中图分类号:TP391.4 文献标识码:A
文章编号:1009-3044(2023)03-0030-04
1 概述
随着机器学习和计算机视觉技术的发展,人们对视频监控的智能化水平的需求逐步提高,其中的人群自动计数有着重要的社会意义和市场应用前景,如公共安全、应急疏散等领域[1-2]。本文主要针对教室人群的精确检测统计问题,在YOLOv3[8]检测框架下展开研究,为室内人群智能化监控提供支持。检测场景设定为室内人群,以教室和会议室人员检测统计为应用背景,该场所决定了场景中的人的行为大多时间都为坐着,导致检测目标的身体大部分都是处于桌椅或周围人群的遮挡,对目标全身轮廓检测产生不考虑。除此之外,被大量使用的人脸检测也由于学生在教室学习时存在低头状态导致人脸识别困难,以及摄像机对目标的远距离采集特征不足,而造成漏检、精度低问题始终存在,同时训练时由于背景噪声而产生的负样本影响,使得依赖人脸和轮廓检测技术来实现人数统计得到的结果效果并不是很好。
鉴于在标注目标时对可能在检测时因为物体等遮挡造成加大漏检率的情况,本文采用具有较好鲁棒性的人头作为检测对象,通过改进YOLOv3的锚点(Anchor)参数更新、目标真实边界框和模型预测框的交并比(In⁃tersection over Union, IoU) ,并将批量归一化(Batch Nor⁃malization, BN) 层参数合并到卷积层以改进人头的精确检测,从而达到室内人群精确检测统计的目的。
2 YOLO 框架与改进
2.1 YOLO v3检测网络结构
YOLOv3对输入的图片处理与卷积神经网络不同的是将图片整体进行输入,不需要对目标进行分割处理,通过这种方式加快了检测的速度,在YOLO-v3中网络将输入的图片下采样到第一检测层,在该检测层中检测使用步长为32的层的特征映射。
在YOLOv3中引入了残差(ResNet) [4]作为主干网络结构(Darknet-53) 的部分,在残差网络中通过使用网中网结构[5],使网络在卷积的计算过程中减少通道数和参数以及模型的体积。该模型采用5个下采样层,设置每次采样的步长为2,结构如图1所示。
2.2 聚类Anchor 参数更新
YOLO在对输入图像目标进行检测时预测3种尺度的Anchor,通过对不相同尺寸输入处理,使之变为相同尺寸的输出,对所标记的图片中不同大小的目标进行计算得到最适合Anchor的值。
为此,本文基于聚类思想,设计Anchor参数更新方法。为提高效率,选择无监督学习典型算法kmeans作为聚类算法,在聚类时,使用欧式距离公式或曼哈顿公式进行计算距离,分别定义为:
3 训练与测试
3.1 数据准备
实验数据主要来自普通监控摄像机采集,同时从网络中收集、筛选并进行适当处理后的教室环境中的图片,它们具有不同的对象姿势、光亮、角度与像素,从而丰富数据集。验证数据集、测试数据分别由120、30张样本组成实验验证主要针对教室人群的精确检测统计,所以训练数据集通过对同一教室不同时间段、不同坐姿、站姿等行为进行采集的图像数据构成,使用上文提出的算法进行训练从而得到特征模型分别在不同的测试数据集上进行测试,测试结果对训练时的参数进行更改选择使其达到模型最优化。
在图片的预处理过程中,为了增加网络的鲁棒性进行了以下处理方式:缩放、色彩调节、反转等图片处理,在数据增强上通过在线增强使用了随机翻转、随机剪裁、随机旋转、颜色抖动等处理方法来达到样本的扩充从而增大训练的数据量。
实验中对教室现场环境(Identify the scene, ITS)分别取不同的时间段、学生姿势将其分为6类,分别记为:C1(早晨)、C2(中午)、C3(晚上)、C4(上课)、C5(下课)、C6(自习),C1、C2、C3图片的时间状态均处于上课状态,C4、C5、C6样本背景均处于普通光强,每类测试样本为5张。
3.2 实验环境
实验主要在普通PC机上完成,基本配置包括:Windows 10系统,i5处理器,显卡为NVIDIA GeForceGTX 1060(显存6G) ,16G运行内存,对YOLO-V3的训练使用Darknet-53框架,配置CUDA9.0和CUDNN7.0进行加速计算。部分测试数据如图2所示。
3.3 实验结果及分析
3.3.1 训练参数优化及预测精度值分析
在学习率(Learning rate, LR) 训练选择上,所选的学习率分别为0.010、0.009、0.007、0.005、0.003、0.001,对应的1200张训练样本模型的预测估计概率值(Esti⁃mated probability of prediction, EPP) 和真实预测值(True prediction probability, TPP) 如图4和表1所示。
由表1与图4可以看出,预测概率估计值和真实概率估计值随着学习率的改变先增大后减小,当学习率小于0.01时,学习率的减小,使得训练产生的模型的预测概率估计值与识别准确率均有明显的增大趋势。当学习率为0.007 时,真实预测值达到最大为0.94。在越过此点后当学习率从0.007减小到0.001的整个过程中,预测概率估计值处于0.90附近,真实预测值处于0.92左右,此时的学习率的变化对上述两个性能指标的影响较小。当学习率从0.007 减小到0.001时,预测概率估计值先上升至最大点后下降,真实预测值随着学习率的变小而下降。
综上分析可以得出结论,当学习率设为0.007时,对训练产生的模型具有较好的预测表现能力,在使用时可以选择此学习率作为经验值。
3.3.2 不同迭代次数下的模型预测精度
本次实验针对训练的1200个样本,设置了8种训练的迭代次数,由上一节的学习率分析可知,学习率的最佳选择为0.007,迭代次数(iterations) 、改进前预测值(Prediction before improvement, PBI)、改进后预测值(Improved predictive value, IPV)和关系如表2所示,改进前预测值和改进后预测值与迭代次数变化趋势如图5所示。
可以看出,在训练的整个过程中,在训练过程中预测值均呈上升趋势,其中改进后的模型预测值上升速度较快,改进前模型的预测值上升速度较为缓慢,如图5所示,当迭代次数为16000时,预测值最高,两个模型结果分别为0.94、0.97,由此可知,改进后模型在训练时的预测值明显优于未参加改进的模型。
3.3.3 不同场景识别性能
在前两节通过对学习率和迭代次数的分析过程中,得到了较好的模型,本节实验内容主要包括模型对上述不同场景的实验模型的测试。所选学习率为0.007,迭代次数为16000次,表3表示模型对6类不同场景下测试数据的识别误差(Number of recognition er⁃rors, NORE) 与单图识别时间(Single graph identifica⁃tion time, SGIT)关系。
由表3可以看出由于遮挡(低头状态或背影)、环境等造成的漏检问题,该模型在检测图片中C4(上课)的识别误差明显低于其他状态,这是因为学生在上课时保持抬头姿势便于识别,处于C2(中午)和C6(自习)的识别误差较高,这是因为C2(中午)时间受光源影响,在光照较强情况下的识别误差高于普通光照(C1、C3) 的误差,C5(下课)和C6(自习)时学生处于低头、站立、走动、聚集聊天等状态下容易造成目标间的遮挡问题,使得识别误差大。由实验识别的时间可以看出该检测模型能够满足实时检测应用需求。
4 结束语
本文所提方法通过使用聚类算法对Anchor的设定使网络可使用符合室内人群数据集特征的参数,同时采用基于G-IoU进行边界框的优化方式加大网络模型的适应力和表现力,使得网络在处理应对具有特定室内场景图像数据时,可以有较好的性能,在室内人群检测统计任务中性能优于原有算法,可以为室内人群精准检测和识别等智能监控应用提供参考。