APP下载

基于YOLOv3和RGBD的车内人耳识别与深度定位∗

2021-11-08金银强王岩松张伟伟王孝兰

计算机与数字工程 2021年10期
关键词:准确率深度传感器

金银强 王岩松 张伟伟 王孝兰

(上海工程技术大学机械与汽车工程学院 上海 201620)

1 引言

常规的车内噪声控制一般采用隔振、减震、吸声等被动控制方法。此类方法在针对中高频噪声时可以起到良好的效果,但无法完全解决低频噪声的问题[1]。利用两列频率相同、相位相反的声波在空间上相互叠加干涉从而相互抵消的自适应主动降噪(Adaptive Active Noise Cancellation,AANC)系统可有效降低低频噪声[2~3]。为实现耳侧区域噪声的时域重构和声品质智能评价,需对车内人耳进行识别并进行空间位置的准确定位。前人已通过HOG+稀疏表示法、PCA+SVM法、LBP+BP神经网络法等实现了人耳识别[4~5],但这些方法操作相对繁琐且检测速率和精度较低。基于深度学习的目标检测算法因其无需进行人工的特征设计、良好的特征表达能力及优良的检测精度,已经超越传统检测方法,成为当前目标检测算法的主流[6]。

深度学习目标检测算法依据其设计思想,主要可分为两种,即两步走(two-stage)算法:先产生候选区域然后再进行CNN分类(RCNN系列等);一步走(one-stage)算法:直接对输入图像应用算法并输出类别和相应的定位(YOLO系列等)[7~8]。

RCNN系列先提取region proposal,之后再分类,是一种滑动窗口机制,每个feature map上都回归出9个anchor,大约一共20k个anchor,在通过非极大值抑制等方法最终会得到300个region propos⁃al[9]。因RCNN每个位置都需精修,降低了实时性效率。

2015年Redmon和Divvala提出YOLO(You Look Only Once)目标检测算法。其将物体检测作为回归问题进行求解,使用单个网络完成整个检测,大大提升了目标检测算法的速度。YOLO可以获取到图像的整体信息,相比于region proposal等方法,有着更广阔的“感知野”,其识别效果也具有很强的泛化能力[10]。YOLOv2受到Faster RCNN方法的启发,引入了anchor,同时使用了K-Means方法,并且去掉了全连接层,改成了全卷积结构,在精度和速度之间做出了折中[11]。YOLOv3在YOLOv2的基础上采用上采样(upsample)和多个尺度融合做法,在多个scale的feature map上做检测,对于小目标的检测效果提升比较明显,将YOLO系列的缺点(精度较低,不擅长检测小物体等)进行了优化,达到了较好的效果和较快的速度,成为最出色的目标检测算法之一[12]。

RGBD相机作为一款新兴的视觉传感器,可以同时获取采集图像的可见光色彩信息及深度信息。它具有精度高、价格低、尺寸小、易操作等优点。深度相机可在户内和户外任何有光的环境下提供复杂的实时物体深度信息,可通过立体的视觉感知周围环境。

本文使用深度相机的RGB信息和D信息,结合YOLOv3算法训练人耳样本,分别识别出人耳并计算出其空间深度坐标,搭建一套完整的人耳识别与深度坐标定位系统,为车内主动降噪提供实时人耳深度坐标信息。

2 YOLOv3算法

YOLOv3的特征提取使用了全新的网络来实现。从网络结构来看,相对于YOLOv2中的Dark⁃net-19网络,YOLOv3新增了残差网络,使用连续的1×1和3×3卷积层,将网络扩展为53层,称其为Darknet-53[12],网络结构如表1。

表1 Darknet-53网络结构图

Darknet-53网络包含53个卷积层和5个最大池化层,在每一个卷积层后又增添了批量标准化操作(batch normalization),同时,去掉了dropout操作,以防止过拟合[13]。Darknet-53网络比YOLOv2的Darknet-19在功能上有所增强,并且比ResNet-101和ResNet-152有更好的效果,表2为Darknet-53在ImageNet数据集下做的性能测试结果。

从表2中看得出,Darknet-53在检测效果上比ResNet-101更好一些,且检测速度也提高了1.5倍,Darknet-53虽然在性能上与ResNet-152基本相似,在检测速度上却提高了两倍,相比Dark⁃net-19,Darknet-53网络更为复杂,所以检测准确率有明显的提升,虽然检测速度不如Darknet-19快,但在实时性要求上仍然满足要求。

表2 特征网络对比表

YOLOv3把图片伸缩成416×416的像素,使用尺度金字塔结构,把图片划分为S×S个大小相同的单元格,在特征图为13×13、26×26、52×52的三个尺度上进行检测,并使特征图在相邻的两尺度上以两倍的上采样传递。每个单元格使用3个锚点预测3个边界框。卷积神经网络在每一个单元格上为每一个边界框预测4个值,即坐标(x,y)与目标的宽w和高h,分别记为tx、ty、tw、th。目标中心在单元格中相对于图像左上角有偏移(cx,cy),anchor box具有高度ph和宽度pw,YOLOv3的边界框的坐标转换示意图如图1。

图1 YOLOv3的边界框的坐标转换示意图

修正之后的边界框为

损失函数作为预测值与真实值之间的误差标准,反应模型检测效果好坏与网络学习快慢,YO⁃LOv3损失函数主要分为坐标损失,置信度损失及分类损失三大部分,其损失函数如下式所示:

式中S代表把图片划分成S×S个网格,B为每个网格中预测先验框个数,λcoord为坐标的预测惩罚系数,取其值为5,λnoobj为不含运动目标时的置信度惩罚系数,设其值为0.5,为预测图片出现在第i个网格中,由第j个预测框做预测。x、y、w、h、c分别代表预测框的坐标、宽、高和置信度。

3 RBGD多源视觉传感器

车内人耳的定位方法与传感器的选择密切相关。定位传感器可分为激光传感器和视觉传感器。激光传感器对车内场景有很好的建模效果,但模型系统成本过高。视觉传感器分为单目相机、双目相机和RGBD相机,其中双目相机和RGBD相机可以获取目标物体的深度信息。双目相机在计算深度时配置较为复杂,模型搭建繁琐,计算量较大。RGBD相机是可以同时获取目标RGB颜色信息和深度信息的传感器,可主动计算出深度距离,重建效果好[14]。针对车内人耳定位使用RGBD视觉传感器获取信息在整体考虑上较为合理。另外,RGBD相机的结构小巧、使用方便、价格低廉,故本文选用RGBD相机作为车内人耳数据采集与深度定位的传感器。

RGBD相机通过红外结构光或Time-of-Flight原理进行深度距离测量的[15]。首先脉冲发射器发射脉冲信号并记录其到检测目标之间光的时间间隔,然后通过计算时差来获得目标的距离。RGBD相机通过物理的方法进行测量,相对于双目相机通过复杂软件计算的方法,可减少大量的计算。

表3为本文选用的Intel RealSense D415深度相机的参数规格。该相机左右两侧的镜头分别为用来获取环境中物体的深度信息的三维结构光深度传感器;中间为获取环境中物体颜色信息的RGB彩色相机。从表中可以看出,其视野与快门类型适合车内人耳定位应用。

表3 RealSense D415参数规格

4 实验与结果与分析

4.1 实验方案

4.1.1 实验设备

实验用计算机系统为Windows10,CPU型号为Intel Core i5-8400,内存16GB,搭载NVIDIA Ge⁃Force GTX1070Ti显卡,配置NVIDIA CUDA9.0和GPU加速库CUDNN7.0和OpenCV3.2.0扩展库,使用Darknet深度学习框架,通过Python与C/C++混合编程,在Intel RealSense D415相机上实现人耳识别与深度定位。

4.1.2 训练数据集

针对本文研究的内容,在CASIA--Webface人脸数据集中选取1000张侧脸含人耳的图像作为数据集一。在CAS-PEAL-R1人脸数据集随机挑选姿态图像库中人脸旋转+45°、90°、-45°拍摄的男、女露耳图片2000张作为数据集二。除此之外,为了适应更多车内乘客的复杂姿态、佩戴等变化,制作了个人数据集作为数据集三。该数据集在一辆荣威350轿车上,挑选10名志愿者,年龄在20岁到30岁之间,其中男生、女生各5名。志愿者分别在佩戴帽子,墨镜,蓝牙耳机,三样全部佩戴和不佩戴任何物品等五种条件下在车的主驾驶座,副驾驶座和后排的两个座位上分别进行身体前倾,头部旋转和身体左右倾斜运动。从身体背部靠紧座椅后背前倾到方向盘处,每10°拍摄一张,共拍摄5张;面部与摄像头光轴方向呈150°角到正对摄像头每30°角拍摄一张照片供5张;人体正面朝前直立在座椅上,左右各倾斜范围为25°,从远离摄像头的位置到靠近摄像头的位置每10°拍摄一张,共拍摄5张。以上拍摄使用CMOS相机分别在不同光照下进行,共拍摄6000张图片,照片大小为1008×756像素。

4.1.3 网络训练

为了节省网络训练与测试的时间,把原始图像分辨率降采样到416×416进行训练。同时为了增强训练模型的鲁棒性和泛化能力,对部分训练集图像随机调整亮度、曝光度、饱和度、色调、对比度等,并添加随机噪声,以扩充数据多样性。

在各训练集图像中均匀选出5000张标注的图像作为训练数据,通过labelimg图像标注工具,对训练图像中人耳部位进行手工标注,在原有图片基础上生成xml文件,然后在YOLOv3的Darknet-53网络里进行训练。其余的3000张图像作为测试数据。

在训练时,使用小批量随机梯度下降法对整个过程进行优化,且使用反向传播法使训练参数持续更新,使损失函数收敛,训练时的学习批次为32,迭代30000次,初始学习率为0.001,动量为0.9,学习衰减步长和衰减因子分别为40和0.1,非极大值抑制为0.5。

4.1.4 不同遮挡情况下的人耳识别

在实际的检测过程中,车内乘客的人耳往往存在被遮挡的情况,且遮挡比例不能确定,在这些情况下,为了验证YOLOv3网络人耳识别模型是否具有强大的学习能力和较高的识别精度,在测试集图像中抽取1000张照片,按照整个人耳比例的10%到50%用黑色方框进行填充,每种比例的遮挡使用200张照片处理,从而模拟实际车内人耳被部分遮挡的情况,处理后的测试集图像如图2,将这些数据在训练好的YOLOv3网络里进行人耳识别试验,验证YOLOv3算法在遮挡干扰下的识别准确率。

图2 遮挡0%~50%条件下的人耳测试图像

4.1.5 人耳深度检测

训练好人耳后,使用Intel RealSense RGBD相机在车内采集10名志愿者上身视频。分别在主驾驶室、副驾驶室、和后排两座上做身体前倾,头部扭转,身体左右摇摆运动。每人12段视频,每段10秒钟,共采集120段视频。如图3所示,Intel Re⁃alSense D415深度相机使用界面分为RGB图像输出窗口和深度图像输出窗口。

图3 Intel RealSense D415窗口界面

使用YOLOv3人耳检测模型对已经采集的视频RGB图像每一帧进行人耳识别,并把识别框像素的x,y坐标记录下来传递到相应的深度图像中,深度图像可根据相应接收到的人耳位置的像素坐标信息,输出该点的深度信息。对120段视频做人耳识别准确率试验和深度相机检测的深度距离与实际距离做误差分析。

4.2 实验结果分析

4.2.1 网络分析

为了验证训练后的检测可靠性和有效性,使用loss函数作为参考。图4为YOLOv3网络训练过程中loss值的收敛曲线图,横坐标代表训练迭代次数,最大迭代次数为30000次。训练迭代5000次后,随着迭代次数的增加,loss曲线逐渐趋于平稳,最后下降到约0.12时基本保持稳定,说明此算法在训练过程中表现出良好的收敛特性,网络的训练结果比较理想。

图4 loss收敛曲线图

由于YOLOv3为目标检测算法,实验采用适用于目标检测领域的P(准确率)、R(召回率)、AP(平均准确率)IOU(交并比)和FPS(平均每帧处理时间)作为评判指标。对于准确率P和召回率R值的计算公式如下:

TP表示被模型检测正确的有人耳正样本数,FN表示被模型检测错误的有人耳正样本数,FP表示被模型检测错误的无人耳负样本数。AP可通过P和R计算P-R曲线面积得到。IOU是检测出人耳的边界框与实际人耳边界框重叠的部分除以两个区域的集合部分得出的结果,计算公式如下:

Spt为训练样本集中标注的准确人耳边框区域面积,Sgt为训练中预测出的人耳边界框面积。

由实验可得模型检测的准确率P为96.7%,召回率R为89.9%,AP为95.2%,IOU为95.3%,平均每秒处理帧数(FPS)为7fps,说明YOLOv3算法在识别人耳时具有较高的识别性能,优于其他传统的人耳识别模型,图5为YOLOv3识别人耳的效果图。

图5 YOLOv3人耳识别效果图

4.2.2 部分遮挡人耳检测分析

对不同程度遮挡情况下的人耳图像进行识率实验,表4为在不同程度遮挡情况YOLOv3与其他算法的识别率对比。

表4 不同遮挡情况下识别率对比

在0%~30%的遮挡条件下,YOLOv3算法准确率稳定在92%以上,具有相对较高的识别能力,检测率优于其他传统算法。人耳被挡到40%~50%时,由于失去了过多的人耳特征,各个检测算法都出现了识别准确率大幅度降低现象,在此情况下,YOLOv3算法仍然在识别准确率上比其他传统算法表现优异,这也从侧面体现了YOLOv3的网络模型结构在学习能力和检测能力上更加智能。

4.2.3 人耳深度定位分析

在使用YOLOv3识别人耳后,可检测出RGBD相机拍摄的RGB图像里的人耳,并把其像素坐标传递给深度图像,即可在深度图像中获得人耳处的深度信息,图6(a)为RGB图上识别出人耳的示意图,图6(b)为其对应的深度图。通过检测深度与实际深度的误差分析试验可得,误差在±3.5cm以内,可满足实时输出深度信息的要求。

图6 RGB图像和深度图像

5 结语

本文使用YOLOv3算法作为识别车内人耳的工具,结合RGBD深度相机共同完成了车内人耳识别与深度定位系统。YOLOv3在人耳遮挡10%~30%时识别率高于90%,FPS可达7fps,在识别精度和检测速度上均可满足实时性。使用Intel Real Sense D415深度相机,根据YOLOv3算法识别出的人耳边界框的中心像素坐标,在深度图像中找出相应位置,并输出其深度坐标,误差可控制在±3.5cm以内,为车内主动降噪系统提供有效的坐标信息,为后续采集人耳附近的噪声信息提供了有利的数据支撑,具有较好的工程应用价值。但本文还有一些特殊情况,如车内多人干扰、夜间光照不足、人耳被长发遮挡等,需要未来进一步研究与改进。

猜你喜欢

准确率深度传感器
制作二氧化碳传感器
四增四减 深度推进
深度思考之不等式
乳腺超声检查诊断乳腺肿瘤的特异度及准确率分析
多层螺旋CT技术诊断急性阑尾炎的效果及准确率分析
不同序列磁共振成像诊断脊柱损伤的临床准确率比较探讨
舰船测风传感器安装位置数值仿真
氧传感器的基本检测
颈椎病患者使用X线平片和CT影像诊断的临床准确率比照观察
简约教学 深度学习