APP下载

基于DeepLabv3+的鸣笛监测系统定位误差检测*

2022-10-25郑慧峰姚润广朱勤丰

传感技术学报 2022年8期
关键词:彩图声源鸣笛

周 云,郑慧峰,姚润广,朱勤丰

(中国计量大学计量测试工程学院,浙江 杭州 310018)

鸣笛监测系统是基于传声器阵列的声源定位技术在交通执法方面的应用。 传声器阵列中心集成的小型摄像机抓拍光学图像,与声源识别定位系统计算的声压云图(伪彩图)叠加,以声相云图的方式直观地将鸣笛声与鸣笛车辆相对应[1-3]。 随着文明城市建设和智能化交通管理的进一步深入,越来越多的城市在特定路口安装了鸣笛监测系统以协助交通部门取证执法[4]。

1996 年,Silverman 和Brandstein[5]首次将传声器阵列应用于噪声源的定位。 随后波音公司的Asano F、Asoh H 等[6]通过大型麦克风阵列实现波音777 在滑行中的噪声点监测分析。 丹麦的B&K、荷兰的Microflown 等单位[7]先后提出了“声学照相机”这一概念,将声场重建结果与光学照片合成,实现了声场可视化。 为进一步研究基于传声器阵列的声源定位系统,Barsikow B 等[8]通过改变传声器阵列的形状,如水平、垂直线性、十字和X 形等来研究噪声源的定位效果。 文献[9]提出修正阵列中各传声器与标准传声器之间的幅值比和相位差,从而提高传声器阵列的定位精度。 文献[10]设计了一种七元传声器阵列,并研究了阵列参数水平偏角、仰角等对定位误差的影响。 以上方法是从传声器及其阵列设计上对声源定位系统的定位误差进行研究。 鸣笛监测系统作为声源定位系统的分支,暂无统一的衡量标准或检定规程对其进行计量校准。 生产厂家提供的传统定位误差检测方法有两种:一是采用偏差标记框,在不同位置测试被检系统的定位中心是否位于框内,仅能够定性判断系统合格与否。 二是利用图像处理技术在声相云图上提取目标,与实际位置对比得到定位误差[11],一定程度上提高了检测效率和精度,但难以提取复杂背景环境中的目标对象。

语义分割算法将图像中不同类型的对象进行语义信息标注,可在复杂背景中识别出不同对象。 完全卷积网络(Fully Convolutional Network,FCN)[12]的提出,促进了深度学习语义分割模型的迅速发展,基于编码器- 解码器结构的U-net、 SegNet 和DeepLab 系列网络被广泛应用于医学图像处理、空间机器人、自动驾驶等领域[13]。 其中DeepLabv3+网络将深度可分离卷积添加到空洞空间金字塔池化(Atrous Spatial Pyramid Pooling,ASPP)和解码器模块中,提高了网络的运行速率和鲁棒性,达到了目前最佳的分割效果。

本文以DeepLabv3+网络为基础,增加通道注意力机制模块,并结合几何推导法提出了一种基于改进DeepLabv3+网络的鸣笛监测系统定位误差检测方法。 将声源定位结果分为横向定位误差与纵向定位误差两个指标,在室外道路上对动静态定位误差检测方法进行实验验证。

1 定位误差检测原理

1.1 横向定位误差和纵向定位误差定义

定位误差定义为鸣笛监测系统标记的伪彩图中心位置与鸣笛声源中心位置平行于路面的误差,此误差包括垂直于车辆行进方向的误差及平行于车辆行进方向的误差,分别为横向定位误差和纵向定位误差,如图1 所示。

图1 定位误差示意图

如图1 所示,以鸣笛监测系统的摄像头到路面的竖直投影点为原点Ow,道路的横向方向为x轴,纵向方向为y轴,建立直角坐标系Owxwyw,S(X0,Y0)为鸣笛声源的实际位置坐标,P(X1,Y1)为伪彩图中心位置的世界坐标。 则鸣笛监测系统的横向定位误差定义为:

纵向定位误差定义为:

2020 年中国计量科学研究院等单位起草的《机动车鸣笛监测系统检定规程》送审稿中规定:鸣笛监测系统对声源的横向定位误差不应超过0.6 m,纵向定位误差不应超过1.5 m。

1.2 定位误差检测步骤

对鸣笛监测系统生成的声相云图进行算法处理,计算其Err(x)和Err(y),主要分为两个步骤:一是运用训练好的网络模型预测声相云图,对鸣笛声源与伪彩图进行识别分割,获取两者的预测像素点所占区域,采用加权平均的方法分别将像素横纵坐标累加求均值,得到鸣笛声源和伪彩图的中心像素坐标。 二是结合相机参数和鸣笛监测系统的安装参数,通过几何关系将声相云图中的像素坐标换算为对应的世界坐标,进而通过式(1)、式(2)计算Err(x)及Err(y)。 检测方法的流程如图2 所示。

图2 检测方法流程图

2 基于DeepLabv3+的定位误差检测

2.1 改进的DeepLabv3+网络结构

DeepLabv3+在DeepLabv3 的基础上添加一个解码器模块,使网络沿对象边缘的分割效果有明显的提升。 并在编码器部分引入了空洞卷积,加大感受野,丰富了每个卷积的输出信息[14-15]。 然而,在模型分割过程中,DeepLabv3+对目标区域及特征没有侧重学习,容易漏检感兴趣的区域,而声相云图中鸣笛声源与伪彩图所占的像素范围极为接近,不易分割。 因此,本文在主干特征提取网络和ASPP 模块之间添加了通道注意力机制模块[16]。 该模块可对特征图中的不同通道赋予不同的权重,增加通道间的差异,并通过全局最大池化和全连接层等获取相应通道的权值特征,提高特征提取精度。 另外,本文需要分割的类别仅有声源、伪彩图及背景三种,故将主干网络由传统的Xception 更换为MobileNetV2,两者均使用深度可分离卷积,而MobileNetV2 大大减少了参数量[17],并且使用ReLU6 激活函数保证网络结构的数值分辨力,改进的DeepLabv3+网络结构如图3 所示。

图3 改进DeepLabv3+网络

2.2 网络训练及其评价指标

将鸣笛监测系统在不同情况下抓拍的声相云图作为数据集(图4),分辨率均为640×480。 选取500张图片,使用LabelMe 软件将其整理为VOC 格式。随机选取数据集中350 张图片用作训练集,75 张用作验证集,75 张用作测试集。

图4 数据集中的声相云图

本文在深度学习框架Keras 环境下完成网络的训练和测试,编程语言为python3.6,使用Intel(R)Core(TM)i7-8700 处理器,NVIDIA GeForce RTX 2060 显 卡, 在 Windows10 操 作 系 统 下 运 用CUDA10.0 与cuDNN7.4 加速改进DeepLabv3+网络训练。 模型收敛后,调用生成的权重文件对测试集图片进行测试,对测试图片中的目标物体进行划分并用不同颜色标记,图5 为实际测试效果。

图5 改进DeepLabv3+算法的定位结果

本文使用平均交并比(Mean Intersection over Union,mIoU)和平均像素精度(Mean Pixel Accuracy,mPA)作为模型的性能评价指标,具体公式如下:式中:k表示像素分类类别,Pii表示属于i类被预测为i类的像素总数,Pij表示属于i类被误判为j类的像素数量,Pji表示属于j类被误判为i类的像素数量。 式(3)得到各类别预测值与真实值之间重合度的均值,式(4)得到各类别被正确分类的像素数量所占比例的均值。

将测试集的图片输入DeepLabv3+和增加注意力机制的改进DeepLabv3+网络模型,并计算其mIoU 和mPA,结果如表1 所示。

表1 改进前后性能对比 单位:%

改进DeepLabv3+算法较原始DeepLabv3+算法有更优秀的表现,mIoU 为87.82%,mPA 为93.85%。在各个类别的分割精度方面,改进DeepLabv3+算法对伪彩图的分割效果最优,IoU 可达83.12%,提升了5.7%。

2.3 坐标系转换方法

鸣笛监测系统安装好后,其相机参数(水平视场角β、垂直视场角θ)、安装参数(俯仰角α、安装高度H)可测量标定获得,如图6 所示。

图6 鸣笛监测系统参数示意图

通过几何推导法,得到像素坐标与世界坐标的映射关系[18],可将声相云图中的像素坐标转换为世界坐标系下平行路面的坐标,以伪彩图中心坐标为例,原理如图7 所示。

图7 几何转换原理

已知鸣笛监测系统的安装参数和相机参数后,根据摄像头的垂直视场角θ设定步进小角度Δθ,可表示为:

式中:height 为声相云图的像素高度,y1为声相云图

中伪彩图中心的纵坐标值。 由此可得到Owxwyw坐标系中的伪彩图中心纵坐标为:

定义Xmax为鸣笛监测系统在距离Y1处对应的实际水平视野宽度,如图7(a)所示,其计算方式为:

式中:OwP可根据相似三角形经简单运算后求得,则Owxwyw坐标系中的伪彩图中心横坐标为:

式中:width 为声相云图的像素宽度,x1为声相云图中目标点的横坐标值。 综上,伪彩图中心像素坐标P(x1,y1)得以转换为对应的世界坐标P(X1,Y1)。此外,在实际应用场景中,鸣笛声源往往距离地面有一定的高度,此时需要通过相似三角形原理计算出鸣笛声源高度为h时的伪彩图中心的世界坐标P(X′,Y′)。

3 鸣笛声定位实验结果与分析

为研究鸣笛监测系统在实际使用过程中的定位性能,设计鸣笛声源分别在固定位置及运动状态下开展实验。 实验系统如图8(a)、8(b)所示,包括鸣笛监测系统、鸣笛声源、声源支架、工具车和计算机等。 声源频率为3.18 kHz。

3.1 静态定位实验

在室外道路上,将鸣笛监测系统安装于6.5 m的支撑杆上,在鸣笛监测系统的视野范围内设置12个位置,如图8(c)所示。 将鸣笛声源固定于高0.6 m 的支撑架上,模拟汽车喇叭的高度,分别放置在各个位置上,依次鸣笛获取定位数据。

图8 定位误差检测实验

将声相云图送入改进DeepLabv3+模型进行预测,获得图像中鸣笛声源和伪彩图所占的像素位置,再分别求取中心坐标,最后根据几何推导法转换为世界坐标,计算鸣笛监测系统的Err(x)及Err(y)。将本文方法计算所得的结果与实际定位误差对比,结果如图9 所示。

图9 本文方法与实际静态定位误差对比

由图9 可知,本文方法求得的定位误差与实际定位误差对比差异较小,两者Err(x)的差值和Err(y)的差值均在12 号位置处最大,分别为0.09 m和0.17 m。 在距离鸣笛监测系统7.8 m ~16.8 m,横向宽度4 m 的范围内,本文方法能够满足声源定位误差检测精度要求。

3.2 动态定位实验

为检测鸣笛监测系统的动态定位误差,使用工具车搭载鸣笛声源以30 km/h 的速度面向鸣笛监测系统运动,在经过上述12 个位置点(图8(c))的同时控制鸣笛声源工作,触发鸣笛监测系统对其进行抓拍,保存声成像视频,提取对应帧图像后运用本文方法计算每个位置点的动态定位误差,与实际的定位误差比较,结果如图10 所示。

图10 本文方法与实际动态定位误差对比

图10 中将本文方法计算的动态定位误差求取平均值和标准差,作误差棒图。 与实际定位误差对比,本文方法对动态横向定位误差检测结果与真实值的差值最大为0.1 m,标准差为0.05 m;对动态纵向定位误差检测结果与真实值的差值最大为0.35 m,标准差为0.14 m,本文方法能够满足现场检测要求且具有一定的稳定性。

为进一步研究鸣笛监测系统对于不同运动方向声源的抓拍能力,在图8(c)的5 号~8 号位置点处,分别使鸣笛声源以10 km/h、20 km/h 以及30 km/h的速度相对鸣笛监测系统做运动,经本文方法计算Err(x)及Err(y),将结果进行对比,如图11 所示。

由图11 可知,在不同的运动方向下,Err(x)的差异最大值为0.12 m。 Err(y)差异较大,具体表现为声源靠近鸣笛监测系统时的Err(y)为声源远离时的21%~67%,且不同方向的定位误差结果不同,声源靠近鸣笛监测系统时,定位距离比实际距离大,声源远离时比实际距离小。 这是由于声源置于工具车前部,远离鸣笛监测系统鸣笛时,声波经过车体一系列吸收、反射后被传声器阵列接收,影响定位性能。

图11 不同运动方向定位误差对比

4 结语

本文将语义分割算法应用到声相云图中声源和伪彩图的识别定位,并结合几何关系推导演算,提出了一种基于改进DeepLabv3+的定位误差检测方法。实验结果表明,改进DeepLabv3+网络对声相云图的背景有更强的抗干扰能力,运用本文方法对鸣笛监测系统进行定位误差检测,在声源固定的情况下,与真实值的最大误差为0.17 m。 对动态定位误差检测的最大引入误差为0.35 m,能够满足鸣笛监测系统定位误差检测精度要求。

本文对鸣笛监测系统的动静态定位误差进行研究,而空间分辨力等其他参数,涉及多个声源同时鸣笛的情况,将在后续的研究工作中开展。

猜你喜欢

彩图声源鸣笛
管道有源噪声控制中壁面分布次级声源的空间分布优化
虚拟声源定位的等效源近场声全息算法
一种基于麦克风阵列用于分离单极子和偶极子声源的方法
庚子清明国祭(二)
室内声音导航系统
彩图吧
彩图吧
彩图吧
彩图吧
江山万里心