一种基于边界语义分割的道路积水识别方法与流程

文档序号:21366507发布日期:2020-07-04 04:41阅读:1254来源:国知局
一种基于边界语义分割的道路积水识别方法与流程

本发明涉及计算机视觉领域中的语义分割技术,其实质是像素级的图像识别技术,是一种基于边界语义分割的道路积水识别方法。



背景技术:

近几年来,随着深度学习的快速发展,计算机视觉领域也日新月异。深度卷积神经网络已经在图像分类、语义分割、目标检测和人脸识别等许多计算机视觉任务中处于领先地位。在日常生活中,无论是物品对象的识别检测,还是视频交通道路的路况分析都离不开计算机视觉。而语义分割被认为是计算机视觉的关键问题之一,目标是为图像中的每个像素分配一个类别标签,预测每个像素的位置和形状。图像分类仅仅是识别图像中存在的内容并将其分类,目标检测是通过边界框识别图像中存在的内容和位置,语义分割是遍历图像中每一个像素并将整幅图像转换为具有感兴趣区域掩膜,识别图像中存在的内容及其目标的位置。相比于图像分类和目标检测任务,语义分割是一项相对复杂并且具有挑战性的任务,同时也可以辅助计算机视觉领域的其他识别和检测任务。因此,语义分割的好坏也决定了后续算法检测和识别的优劣。语义分割可以按照人类认知的方式提供图像理解,为完整的场景解析铺平了道路。在许多涉及场景理解的现实应用中,语义分割要比检测和识别方法表现的更好。语义分割是计算机视觉领域中的核心任务,可以广泛地和各个领域相结合。如,自动驾驶领域:为自动驾驶汽车提供道路空间位置信息、检测障碍物以及交通标志等;卫星遥感图像分析:自动识别出卫星遥感影像上的每个像素的土地类型(道路、河流、庄稼和建筑物等);医疗影像分析:肿瘤图像分割和细胞分割,以及检测和跟踪手术操作中的医疗器械;实际上,在涉及目标对象识别的应用中,可以通过语义分割技术识别出目标区域。

语义分割技术的研究已经广泛的引起了计算机视觉领域研究者的兴趣。边界对齐尝试细化对象边界附近的预测,在众多的方法中,条件随机场(conditionrandomfield,crf)因其良好的数学形式而被广泛应用。谷歌提出的deeplab[chen等人,基于深卷积网络和全连接条件随机场的语义图像分割,2018年发表在ieee模式分析和机器智能期刊第4期第40卷第834页至848页]模型则是直接使用densercrf[koltun等人,具有高斯边缘势的全连接条件随机场中的有效推理,2011年发表在神经信息处理系统研究进展,见nips2011论文集第109页至117页]作为卷积神经网络(convolutionneuralnetwork,cnn)之后的后向处理方法,其中densercrf是建立在全连接图上的crf变体。牛津大学的郑帅等人[zheng等人,2015年发表在国际计算机视觉会议,见iccv2015论文集第1529页至1537页]将densecrf建模为循环神经网络(recurrentneuralnetwok,rnn)样式的运算符并提出端到端的流水线,但是由于该流水线中涉及过多的cpu计算,导致整个网络的推理速度非常慢。香港中文大学的刘子伟等人[liu等人,2015年发表在国际计算机视觉会议,见iccv2015论文集第1377页至1385页]对densecrf进行了不同的近似,并将整个流水线完全放在gpu上。清华大学的彭超等人[peng等人,2017年发表在计算机视觉与模式识别大会,见cvpr2017论文集第4353页至4361页]提出了一种全局卷积网络的语义分割方法,该方法同时解决了分类问题和定位问题,还引入了边界细化块,进一步提高了目标边界附近的定位性能。虽然上述方法都尝试优化对象边界的预测,但是它们只是在pascalvoc数据集和cityscapes数据集上进行了实验,验证了这些方法在边界预测方面得到了改善。这些方法在固定的数据集上进行了验证测试,但扩展到新的应用场景上仍然存在一些问题,不能很好的适用其他场景。香港中文大学的zhao等人[zhao等人,金字塔场景解析网络,2017年发表在计算机视觉与模式识别大会,见cvpr2017论文集第2881页至2890页]提出了金字塔场景解析网络(pspnet),利用基于不同区域的上下文聚合来实现全局上下文信息的能力。中科院自动化所的fu等人[fu等人,用于场景分割的双重注意网络,2019年发表在计算机视觉与模式识别大会,见cvpr2019论文集第3146页至3154页]提出了双注意力网络(danet)自适应地整合局部特征和全局依赖。虽然金字塔场景解析网络和双注意力网络都包含了丰富的语义信息,但是丢失了边界信息。

目前,也有一些技术尝试改进边缘预测,优化边缘结构,关注边缘信息。其中,显著性目标检测技术尝试对其进行改进,并且在边缘预测方面也得到了一定的改善。现有的显著性目标检测技术大都使用深度卷积神经网络提取图像特征并将检测结果以掩码的形式表示,相当于一个二分类的语义分割模型。将显著性目标区域从背景中以掩码的形式分离出来,类比于二分类语义分割中的背景和前景两分类。阿尔伯塔大学的qin等人[qin等人,basnet:边界感知显著性目标检测,2019年发表在计算机视觉与模式识别大会,见cvpr2019论文集第7479页至7489页]提出了一种预测优化结构的basnet,以及一种用于边界感知显着目标检测的新混合损失函数。具体而言,提出的basnet是预测模块和残差优化模块组成,其分别负责显著性预测和显著图的优化。其中预测模块是基于resnet34(he等人,用于图像识别的深度残差学习,2016年发表在计算机视觉与模式识别,见cvpr2016论文集第770至778页)的编码器-解码器结构,主导整个网络的参数计算量,导致网络计算效率比较低。优化模块只拥有少量的卷积层,参数计算量相对预测模块比较少。虽然basnet可以很好的预测目标区域,并且改善了边界预测质量,但是basnet的参数计算量和计算代价比较大,往往需要内存充足和计算资源丰富的运行环境。由于这样的缺陷,导致basnet不能直接运行在计算资源短缺的环境,basnet运行速度比较缓慢,实时性不高,限制了它在一些现实场景中的应用。

目前已知的关于道路积水位置检测的专利主要分为两类,第一类为使用传统的阈值分割和canny边缘检测方法,提取出积水区域。如中国地质大学的高伟等人提出的基于视频影像的道路积水提取系统和方法(专利公开号cn108198422a),但是积水区域检测优劣取决于一个合适的阈值,选取合适的阈值需要花费大量的时间。第二类是利用softmax分类器或者svm分类器对检测图像进行分类,判断是否存在积水区域。典型工作包括天津英田视讯科技有限公司的一种道路积水检测的方法(专利公开号cn107909070a),利用svm分类器判断图像的纹理特征是否属于积水纹理,最终将连续的积水像素块进行拼接,实现对积水区域的画框标识。但是该方法操作繁琐,比较耗时且容易受到外界的干扰。

现有的道路积水识别方法易受到外界环境的干扰,并且实时性和识别准确率不高。因此,研究一种快速有效的道路积水识别方法尤为重要。



技术实现要素:

本发明要解决的技术问题是:针对现有的道路积水识别方法中存在的识别准确率低、操作复杂、实时性不高等缺陷,提供一种基于边界语义分割的道路积水识别方法,可以准确的提取出道路积水区域,提高道路积水识别的速度和准确度。该方法可以方便地嵌入到任何积水识别系统中,简单易操作。

本发明的技术方案是:

第一步,制作语义分割数据集。利用摄像机采集不同道路背景下的积水视频,将这些视频制作成语义分割数据集。制作语义分割数据集的方法是:

1.1利用opencv库(opensourcecomputervisionlibrary,开源计算机视觉库,版本3.4.4.19及以上)将摄像机采集的不同道路背景下积水视频转化为图片:通过opencv中的cv2.videocapture库函数读取摄像机拍摄的视频流,将读取的视频流通过opencv中的read函数转换为一帧一帧的图片并存放到计算机中,得到图片集d,d={i1,i2,…,ii,…,in},其中ii为原图,1≤i≤n,n为图片集中的图片数量。

1.2利用图形可视化标记工具labelme(麻省理工的计算机科学和人工智能实验室研发的图像标注工具,见https://github.com/wkentaro/labelme,版本3.18.0及以上)读取图片集d中的图片ii,并将图片ii中的积水区域用曲线进行框选,将框选区域的标签设置为水,标记完图片ii后生成对应的json格式文件,该json格式文件名为图片ii的名称,包含了图片ii中积水区域的位置信息。

1.3为了得到分割所需要的标签图片,采用labelme将图片ii对应的json格式文件转换成四个标准文件:img.png、label.png、label_viz.png和label_names.txt。其中img.png是ii原图,label.png是ii的语义分割标签图片,label_viz.png是语义分割标签图片的可视化显示的图片,label_names.txt记录ii中包含的语义类别集合c{c0,c1},c0表示的背景类,c1表示的是积水类。

label.png的分辨率大小与图片ii的分辨率大小相同,是一张图像模式为p的彩色图像,像素值的取值为0或1,像素值为1的区域表示目标区域即积水区域,像素值为0的区域表示非目标积水区域即背景区域。

1.4将label.png重新命名为图片ii的名称,实现标签图片名称与图片ii名称的对应。因此label.png和图片ii共同构成语义分割数据集d1,d1={i1,i2,…,ii,…,in,g1,g2,…,gi,…,gn},gi为ii的语义分割标签图片(即ii的label.png)。

第二步,利用数据增广技术对语义分割数据集d1进行扩充,得到训练数据集,方法是:

2.1对语义分割数据集d1中的图片i1,i2,…,ii,…,in分别做归一化操作,得到归一化操作后的图片i1′,i2′,…,ii′,…,in′,对ii做归一化操作得到图片ii′的方法是:对ii中的所有像素值进行归一化,即令其中x指ii中的任意一个像素值,将像素值x映射到0-1范围,得到归一化后的像素值x',有利于网络训练和快速收敛。

2.2利用python中pil(pythonimagelibrary,版本5.0.0及以上)的img.transpose(image.flip_left_right)(image.flip_left_right参数指从左向右翻转)库函数对语义分割数据集中的图片i1′,i2′,…,ii′,…,in′和g1,g2,…,gi,…,gn先进行水平翻转,得到水平翻转后的图片

i1′lr,i2′lr,…,ii′lr,…,in′lr和g1′,g2′,…,gi′,…,gn′;然后利用

img.transpose(image.flip_top_bottom)(image.flip_top_bottom参数指从上向下翻转)库函数对语义分割数据集中的图片i1′lr,i2′lr,…,ii′lr,…,in′lr和g1′,g2′,…,gi′,…,gn′再进行垂直翻转,得到翻转后的图片

i1″,i2″,…,ii″,…,in″和g1″,g2″,…,gi″,…,gn″。

2.3通过pil中的img.resize((width,height))(width,height参数分别指图片宽和高)库函数将翻转后的图片i1″,i2″,…,ii″,…,in″和g1″,g2″,…,gi″,…,gn″放大为1024×1024大小,再使用pil中的img.crop((left,upper,right,lower))

(left,upper,right,lower参数分别指图片的左下标位置,上下标位置,右下标位置和下下标位置)库函数将放大后的图片裁剪为固定的尺寸大小512×512,得到裁剪后的图片i1′″,i2′″,…,ii′″,…,in′″和g1′″,g2′″,…,gi′″,…,gn′″。

2.4通过图像操作库pil中的imageenhanbce.brightness(img).enhance(factor)(factor参数指饱和度因子)库函数随机调整图片i1′″,i2′″,…,ii′″,…,in′″的饱和度(指色彩的鲜艳程度,也称色彩的纯度)得到饱和度调整后的图片i1″″,i2″″,…,ii″″,…,in″″,降低积水识别网络对图片色彩的敏感度,增加分割数据集的多样性,得到训练数据集d2,

d2={i1″″,i2″″,…,ii″″,…,in″″,g1′″,g2′″,…,gi′″,…,gn′″}。

第三步,构建基于边界语义分割的道路积水识别系统,基于边界语义分割的道路积水识别系统由基于边界语义分割的道路积水识别网络、输出判定器组成,构建方法是:

3.1构建基于边界语义分割的道路积水识别网络,该网络由非对称的编码器网络和解码器网络构成。

3.1.1编码器网络由第一下采样块、第二下采样块、第一单次残差级联模块、第一降维块、第三下采样块、第二单次残差级联模块、第二降维块、第四下采样块、第三单次残差级联模块和第三降维块构成。编码器网络中的模块用于提取不同级别(不同级别指的是有的提取积水的边缘,有的提取积水的轮廓,有的提取积水的纹理特征等)的积水特征,网络浅层(指第一下采样块、第二下采样块、第一单次残差级联模块和第一降维块)提取的积水特征与网络深层(指第三下采样块、第二单次残差级联模块、第二降维块、第四下采样块、第三单次残差级联模块和第三降维块)提取的积水特征进行组合从而对整个图片中的积水进行表示。其中第一下采样块和第二下采样块提取积水特征并减小特征图的空间分辨率,第一单次残差级联模块提取积水的边缘特征,第一降维块对积水的边缘特征进行通道降维(即减少通道数的个数);第三下采样块下采样(下采样指同时缩小特征图的宽和高)积水特征,第二单次残差级联模块提取积水的轮廓特征,第二降维块对积水的轮廓特征进行通道降维;第四下采样块再次下采样积水特征,第三单次残差级联模块提取积水的纹理特征,第三降维块对积水的纹理特征进行通道降维。

第一下采样块由第一3×3卷积层、第一批归一化层(即batchnormalization)(ioffe等人,批量规范化:减少内部协变量漂移加速深度网络训练,2015年发表在arxiv)和第一relu层(rectifiedlinearunit,线性整流单元)(nair等人,整流线性单元可改善受限的玻尔兹曼机,2010发表在第27届机器学习国际会议,见icml论文集的第807页至第814页)组成,它对从d2读取的ii″″提取特征,得到输出特征图输出给第二下采样块和解码器网络,第一3×3卷积层的输入和输出通道数分别为3和16,第一批归一化层的特征个数为16,relu层中不包含超参数因此不需要设置超参数的值。

第二下采样块由第二3×3卷积层、第二批归一化层和第二relu层组成,通过对提取特征,得到输出特征图输出给第一单次残差级联模块,其中第二3×3卷积层的输入和输出通道数分别为16和32,第二批归一化层的特征个数为32。

第一单次残差级联模块由4个残差块(残差块由卷积层、批归一化层和relu层组成,具体描述见hekaiming等人,基于深度残差学习的图像识别,2016年发表在计算机视觉与模式识别大会,见cvpr2016论文集第770页至778页)组成。第一残差块对进行特征提取,得到输出特征图输出给第一单次残差级联模块中的第二残差块得到输出特征图输出给第一单次残差级联模块中的第三残差块得到输出特征图输出给第一单次残差级联模块中的第四残差块得到输出特征图按照公式(1)连接得到输出特征图输出给第一降维块,其中4个残差块中卷积层的输入和输出通道数都为32,采样率都为1。公式(1)中的[f21,f22,f23,f24]操作指对f21,f22,f23,f24进行连接,见参考文献“huang等人,密集连接卷积网络,2017年发表在计算机视觉与模式识别大会,见cvpr2017论文集第4700至第4708页”。

第一降维块由第一1×1卷积层、第三批归一化层和第三relu层组成,第一降维块对进行特征提取,得到输出特征图输出给第三下采样块和解码器网络,其中第一1×1卷积层的输入和输出通道数分别为128和64,第三批归一化层的特征个数为64。

第三下采样块由第三3×3卷积层、第四批归一化层和第四relu层组成,第三下采样块对进行特征提取,得到输出特征图输出给第二单次残差级联模块,其中第三3×3卷积层的输入和输出通道数分别为64和64,第四批归一化层的特征个数为64。

第二单次残差级联模块由5个残差块组成,第二单次残差级联模块中的第一个残差块对进行特征提取,得到输出特征图将特征图输出给第二单次残差级联模块中的第二个残差块得到输出特征图输出给第二单次残差级联模块中的第三个残差块得到输出特征图输出给第二单次残差级联模块中的第四个残差块得到输出特征图输出给第二单次残差级联模块中的第五个残差块得到输出特征图按照公式(1)中的连接操作进行连接得到输出特征图out6i,其中5个残差块中卷积层的输入和输出通道数都为64,卷积层的采样率分别为1,2,4,6,8。将out6i输出给第二降维块。

第二降维块由第二1×1卷积层、第五批归一化层和第五relu层组成,第二降维块对out6i进行特征提取,得到输出特征图out7i,将out7i输出给第四下采样块和解码器,其中第二1×1卷积层的输入和输出通道数分别为320和128,第五批归一化层的特征个数为128。

第四下采样块由第四3×3卷积层、第六批归一化层和第六relu层组成,第四下采样块对out7i进行特征提取,得到输出特征图out8i,将out8i输出给第三单次残差级联模块,其中第四3×3卷积层的输入和输出通道数分别为128和96,第六批归一化层的特征个数为96。

第三单次残差级联模块由5个残差块组成,第三单次残差级联模块中的第一个残差块对out8i进行特征提取,得到输出特征图f81i,将f81i输出给第三单次残差级联模块中的第二个残差块得到输出特征图f82i,将f82i输出给第三单次残差级联模块中的第三个残差块得到输出特征图f83i,将f83i输出给第三单次残差级联模块中的第四个残差块得到输出特征图f84i,将f84i输出给第三单次残差级联模块中的第五个残差块得到输出特征图f85i。将f81i,f82i,f83i,f84i和f85i按照公式(1)中的连接操作进行连接得到输出特征图out9i,将out9i输出给第三单次残差级联模块,其中5个残差块中卷积层的输入和输出通道数都为96,卷积层的采样率分别为4,6,8,10,12。

第三降维块由第三1×1卷积层、第七批归一化层和第七relu层组成,对out9i进行特征提取,得到输出特征图out10i,其中第三1×1卷积层的输入和输出通道数分别为480和128,第七批归一化层的特征个数为128。

3.1.2解码器网络由第一投影块、第一上下文信息融合模块、第一上采样层、第一卷积预测输出层、第二投影块、第二上采样层、第二上下文信息融合模块、第二卷积预测输出层、第三投影块、第三上下文信息融合模块、第三上采样层和第三卷积预测输出层构成。解码器网络中的模块用于扩大积水特征图的空间大小和获取积水空间特征,其中第一投影块对特征out1i进行通道升维(即增加通道数的个数)和下采样(即在进行采样的同时缩小特征图的宽和高)得到inp1i,使inp1i的宽,高和通道数相同;第一上下文信息融合模块通过融合和inp1i得到第一积水空间细节特征o1i;第二投影块对out4i进行通道升维和下采样得到inp2i,使inp2i的宽,高和通道数相同;第二上下文信息融合模块通过融合和inp2i得到第二积水空间细节特征o2i;第三投影块对进行下采样得到inp3i,使inp3i和out10i的宽,高和通道数相同;第三上下文信息融合模块通过融合out10i和inp3i得到第三积水空间细节特征o3i

第一投影块由第一平均池化层和第四1×1卷积层组成,第一投影块对out1i进行通道升维和下采样,得到输出特征图inp1i,将inp1i输出给第一上下文信息融合模块。第一平均池化层的池化窗口大小为3,步幅为2,第四1×1卷积层的输入和输出通道数分别为16和64;

第二投影块由第二平均池化层和第五1×1卷积层组成,对进行通道升维和下采样,得到输出特征图inp2i,将inp2i输出给第二上下文信息融合模块。第二平均池化层的池化窗口大小为3,步幅为2,第五1×1卷积层的输入和输出通道数分别为64和128;

第三投影块由第三平均池化层和第六1×1卷积层组成,对out7i进行下采样,得到输出特征图inp3i,将inp3i输出给第三上下文信息融合模块。第三平均池化层的池化窗口大小为3,步幅为2,第六1×1卷积层的输入和输出通道数分别为128和128;

第一上下文信息融合模块对与inp1i进行积水特征融合得到输出特征图o1i,将o1i输出给第一卷积预测输出层。第一上下文信息融合模块由1个1×1卷积层、2个3×3卷积层、3个批归一化层、2个relu层和1个sigmoid层组成,1×1和3×3卷积层输入和输出通道数为64,3个批归一化层的特征个数都为64,sigmoid层的操作如下所示:

其中x是输入值,y是输出值。由公式(2)可知sigmoid层不包含参数,因此该层没有参数要求。

第二上下文信息融合模块对out7i与inp2i进行积水特征融合得到输出特征图o2i,将o2i输出给第二上采样层。第二上下文信息融合模块由1个1×1卷积层、2个3×3卷积层、3个批归一化层、2个relu层和1个sigmoid层组成,1×1和3×3卷积层输入和输出通道数为128,3个批归一化层的特征个数都为128;

第三上下文信息融合模块对out10i与inp3i进行积水特征融合得到输出特征图o3i,将o3i输出给第三上采样层、第一上采样层、第三卷积预测输出层。第三上下文信息融合模块由1个1×1卷积层、2个3×3卷积层、3个批归一化层、2个relu层和1个sigmoid层组成,1×1和3×3卷积层输入和输出通道数分别为128和128,3个批归一化层的特征个数都为128。

第一上采样层对o3i进行双线性插值操作,得到输出特征图o31i,将o31i输出给第一连接器。第一上采样层的上采样因子为4;

第二上采样层对o2i进行双线性插值操作,得到输出特征图o21i,将o21i输出给第一连接器。第二上采样层的上采样因子为2;

第一连接器将o31i,o21i和o1i按照公式(1)连接得到输出特征图outconv1i,将outconv1i输出给第一卷积预测输出层。

第一卷积预测输出层对outconv1i进行积水区域预测,得到预测的输出特征图发送给输出判定器。第一卷积预测输出层由3×3卷积层、批归一化层、relu层、1×1卷积层、sigmoid层和第四上采样层组成,其中3×3卷积层的输入和输出通道数是320,批归一化层的特征个数为320,1×1卷积层的输入和输出通道数分别是320和1,第四上采样层的上采样因子为4。

第三上采样层对o3i进行双线性插值操作,得到输出特征图o32i,将o32i输出给第二连接器。其中第三上采样层的上采样因子为2;

第二连接器将o32i和o2i按照公式(1)连接得到输出特征图outconv2i,将outconv2i输出给第二卷积预测输出层。

第二卷积预测输出层对outconv2i进行积水区域预测,得到预测的输出特征图特征图用于网络训练。第二卷积预测输出层由3×3卷积层、批归一化层、relu层、1×1卷积层、sigmoid层和第五上采样层组成,其中3×3卷积层的输入和输出通道数是256,批归一化层的特征个数为256,1×1卷积层的输入和输出通道数分别是256和1,第五上采样层的上采样因子为8。

第三卷积预测输出层对o3i进行积水区域预测,得到预测的输出特征图特征图用于网络训练。第三卷积预测输出层由3×3卷积层、批归一化层、relu层、1×1卷积层、sigmoid层和第六上采样层组成,其中3×3卷积层的输入和输出通道数是128,批归一化层的特征个数为128,1×1卷积层的输入和输出通道数分别是128和1,第六上采样层的上采样因子为16。

3.2构建输出判定器:

输出判定器是对中的积水区域和背景区域进行分离的模块,输出判定器采用min-max归一化(jain等人,基于最小最大规范化的隐私保护数据扰动方法,2011年发表在国际计算机与通信技术期刊)操作将中的积水区域和背景区域进行分离,得到pnormi,pnormi中的白色区域是积水区域,黑色区域是背景区域。

第四步,训练基于边界语义分割的道路积水识别网络,得到网络权重参数的集合。具体方法为:

4.1初始化权重参数,设置训练过程中需要的超参数,方法是:

4.1.1利用kaiming初始化方法(hekaiming等人,深入研究整流器:在imagenet分类上超越人类水平,2015年发表在计算机视觉国际会议,见论文集第1026页至第1034页)初始化道路积水识别网络中的卷积层的权重参数集合和偏置参数集合其中1≤k≤k,k为基于边界语义分割的道路积水识别网络中的卷积层的总层数。利用随机均匀分布初始化基于边界语义分割的道路积水识别网络中的批归一化层的权重参数集合初始化道路积水识别网络中的批归一化层的偏置参数集合的值为0,其中1≤l≤l,l为基于边界语义分割的道路积水识别网络中的批归一化层的总层数。为基于边界语义分割的道路积水识别网络中第k层卷积的权重参数。为第k层卷积的偏置参数。为网络中第l层批归一化的权重参数,为第l层批归一化的偏置参数。

4.1.2设置基于边界语义分割的道路积水识别网络的超参数:训练迭代次数为5000,训练批尺寸大小batchsize为60,训练学习率为0.001。

4.2选择基于边界语义分割的道路积水识别网络训练的优化器,并训练基于边界语义分割的道路积水识别网络,方法为:

4.2.1采用adam优化器(kingma等人,adam:一种随机优化方法,2014年发表在arxiv)优化基于边界语义分割的道路积水识别网络,其中adam优化器的betas参数设置为(0.9,0.999),eps参数设置为1×10-8,weight_decay参数设置为5×10-4

4.2.2选择训练集d2对基于边界语义分割的道路积水识别网络进行训练,训练方法见文献“basnet:boundary-awaresalientobjectdetection[c]//proceedingsoftheieeeconferenceoncomputervisionandpatternrecognition.2019:7479-7489”。因为训练批尺寸大小为batchsize,因此需要对batchsize张图片进行特征提取以对网络进行训练,每次采用一张图片对道路积水识别网络进行训练,共进行batchsize次,对batchsize张图片的操作均相同,训练方法为:

4.2.2.1令变量i=1;令第i-1次即第0次训练后得到的卷积层权重参数集合令第0次训练后得到的批归一化层权重参数集合令第0次训练后得到的批归一化层偏置参数集合

4.2.2.2基于边界语义分割的道路积水识别网络的编码器从d2读取ii″″,令表示宽为h,高w,输出通道数为3的ii″″,编码器对进行编码,提取积水特征,方法为:

4.2.2.2.1第一下采样块对进行积水边缘特征提取,得到宽为和输出通道数为16的第一输出特征图

4.2.2.2.2第二下采样块对进行积水边缘特征提取,得到宽为和输出通道数为32的第二输出特征图

4.2.2.2.3第一单次残差级联模块对进行进一步的积水边缘特征提取,得到宽为和输出通道数为128的第三输出特征图

4.2.2.2.4第一降维块对进行通道降维,得到宽为和输出通道数为64的第四输出特征图

4.2.2.2.5第三下采样块对进行积水轮廓特征提取,得到宽为和输出通道数为64的第五输出特征图

4.2.2.2.6第二单次残差级联模块对进行进一步的积水轮廓特征提取,得到宽为和输出通道数为320的第六输出特征图

4.2.2.2.7第二降维块对进行通道降维,得到宽为和输出通道数为128的第七输出特征图

4.2.2.2.8第四下采样块对进行积水纹理特征提取,得到宽为和输出通道数为96的第八输出特征图

4.2.2.2.9第三单次残差级联模块对进行进一步的积水纹理特征提取,得到宽为和输出通道数为480的第九输出特征图

4.2.2.2.10第三降维块对进行通道降维,得到宽为和输出通道数为128的第十输出特征图

4.2.2.3训练后的基于边界语义分割的道路积水识别网络的解码器对进行解码,得到积水空间细节特征,并恢复空间分辨率大小为h×w,方法为:

4.2.2.3.1第一投影块对进行通道升维和下采样,得到宽和输出通道数为64的输出特征图

4.2.2.3.2第一上下文信息融合模块对进行积水特征融合,得到第一积水空间特征图方法为:

4.2.2.3.2.1第一上下文信息融合模块将进行相加,得到

4.2.2.3.2.2第一上下文信息融合模块中的1×1卷积层,批归一化层,relu层,批归一化层和sigmoid层依次对进行注意力响应特征图提取,得到宽和输出通道数为64的输出特征图

4.2.2.3.2.3第一上下文信息融合模块的3×3卷积层对进行积水空间特征提取,得到宽和输出通道数为64的输出特征图

4.2.2.3.2.4第一上下文信息融合模块的3×3卷积层对进行进一步的积水边缘特征提取,得到宽和输出通道数为64的输出特征图

4.2.2.3.2.5第一上下文信息融合模块对进行相加,得到输出特征图

4.2.2.3.2.6第一上下文信息融合模块中的批归一化层对进行批标准化操作,得到的积水特征图

4.2.2.3.2.7第一上下文信息融合模块对进行相乘,得到宽和输出通道数为64的融合后的积水空间细节特征

4.2.2.3.2.8第一上下文信息融合模块的relu层对中的非积水区域特征进行抑制,得到宽和输出通道数为64的第一积水空间特征图

4.2.2.3.3第二投影块对进行通道升维和下采样,得到宽和输出通道数为128的输出特征图

4.2.2.3.4第二上下文信息融合模块对进行积水特征融合,得到第二积水空间特征图方法为:

4.2.2.3.4.1第二上下文信息融合模块对将相加,得到

4.2.2.3.4.2第二上下文信息融合模块中的1×1卷积层,批归一化层,relu层,批归一化层和sigmoid层对进行注意力响应特征图提取,得到宽和输出通道数为128的输出特征图

4.2.2.3.4.3第二上下文信息融合模块的3×3卷积层对进行积水空间特征提取,得到宽和输出通道数为128的输出特征图

4.2.2.3.4.4第二上下文信息融合模块的3×3卷积层对进行进一步的积水轮廓特征提取,得到宽和输出通道数为128的输出特征图

4.2.2.3.4.5第二上下文信息融合模块将相加,得到

4.2.2.3.4.6第二上下文信息融合模块中的批归一化层对进行批标准化操作,得到积水特征图

4.2.2.3.4.7第二上下文信息融合模块将相乘,得到宽和输出通道数为128的融合后的积水空间细节特征

4.2.2.3.4.8第二上下文信息融合模块的relu层对的非积水区域特征进行抑制,得到宽和输出通道数为128的第二积水空间特征图

4.2.2.3.5第三投影块对进行下采样,得到宽为和输出通道数为128的输出特征图

4.2.2.3.6第三上下文信息融合模块对进行积水特征融合,得到第三积水空间特征图方法为:

4.2.2.3.6.1第三上下文信息融合模块将相加,得到

4.2.2.3.6.2第三上下文信息融合模块中的1×1卷积层,批归一化层,relu层,批归一化层和sigmoid层对顺序地进行注意力响应特征图提取,得到宽和输出通道数为128的输出特征图

4.2.2.3.6.3第三上下文信息融合模块的3×3卷积层对进行积水空间特征提取,得到宽和输出通道数为128的输出特征图

4.2.2.3.6.4第三上下文信息融合模块的3×3卷积层对进行进一步的积水纹理特征提取,得到宽和输出通道数为128的输出特征图

4.2.2.3.6.5第三上下文信息融合模块将相加,得到

4.2.2.3.6.6第三上下文信息融合模块中的批归一化层对进行批标准化操作,得到的积水特征图

4.2.2.3.6.7第三上下文信息融合模块将相乘,得到宽和输出通道数为128的融合后的积水空间细节特征

4.2.2.3.6.8第三上下文信息融合模块的relu层对的非积水区域特征进行抑制,得到宽和输出通道数为128的第三积水空间特征图

4.2.2.3.7第一上采样层将的宽和高分别扩大四倍,得到宽和输出通道数为128的输出特征图

4.2.2.3.8第二上采样层将的宽和高分别扩大两倍,得到宽和输出通道数为128的输出特征图

4.2.2.3.9第一连接器按照公式(1)连接,得到宽和输出通道数为320的输出特征图

4.2.2.3.10第一卷积预测输出层对进行上采样和积水区域预测得到宽w,高h和输出通道数为1的第一积水预测概率图

4.2.2.3.11第三上采样层将的宽和高分别扩大两倍,得到宽和输出通道数为128的输出特征图

4.2.2.3.12第二连接器将按照公式(1)连接,得到宽和输出通道数为256的输出特征图

4.2.2.3.13第二卷积预测输出层对进行上采样和积水区域预测得到宽h,高w和输出通道数为1的第二积水预测概率图

4.2.2.3.14第三卷积预测输出层对进行上采样和积水区域预测得到宽h,高w和输出通道数为1的第三输出预测概率图

4.2.2.4从d2数据集中选择标签图片gi′″。

4.2.2.5在训练过程中通过不断缩小特征图与gi′″、与gi′″、与gi′″之间的差异优化网络,使得网络可以学习到最优参数。并将第i次训练后得到的卷积层权重参数集合和卷积层偏置参数集合1≤k≤k;批归一化层权重参数集合和批归一化层偏置参数集合1≤l≤l,作为网络参数集合。第i次训练完后得到的参数集合是在第i-1次训练后得到的参数集合基础上进行更新优化得到。

4.2.2.6令i=i+1,若i≤batchsize,转4.2.2.2,若i>batchsize,转第五步。

第五步,采用训练后的基于边界语义分割的道路积水识别网络对摄像机所拍摄的图片i进行积水识别,方法是:

5.1将i按照第2.1,2.2,2.3,2.4步的操作进行归一化操作、水平翻转后垂直翻转、放大裁剪固定、调整图片饱和度,得到宽为h,高为w、输入通道数为3的原图i′h×w×3,其中h=512,w=512。

5.2训练后的基于边界语义分割的道路积水识别网络的编码器对i′h×w×3进行编码,提取积水特征,方法为:

5.2.1第一下采样块对i′h×w×3进行积水边缘特征提取,得到宽为和输出通道数为16的第一输出特征图

5.2.2第二下采样块对进行积水边缘特征提取,得到宽为和输出通道数为32的第二输出特征图

5.2.3第一单次残差级联模块对进行进一步的积水边缘特征提取,得到宽为和输出通道数为128的第三输出特征图

5.2.4第一降维块对进行通道降维,得到宽为和输出通道数为64的第四输出特征图

5.2.5第三下采样块对进行积水轮廓特征提取,得到宽为和输出通道数为64的第五输出特征图

5.2.6第二单次残差级联模块对进行进一步的积水轮廓特征提取,得到宽为和输出通道数为320的第六输出特征图

5.2.7第二降维块对进行通道降维,得到宽为和输出通道数为128的第七输出特征图

5.2.8第四下采样块对进行积水纹理特征提取,得到宽为和输出通道数为96的第八输出特征图

5.2.9第三单次残差级联模块对进行进一步的积水纹理特征提取,得到宽为和输出通道数为480的第九输出特征图

5.2.10第三降维块对进行通道降维,得到宽为和输出通道数为128的第十输出特征图

5.3训练后的基于边界语义分割的道路积水识别网络的解码器对进行解码,得到积水空间细节特征,并恢复空间分辨率大小为h×w,方法为:

5.3.1第一投影块对进行通道升维和下采样,得到宽和输出通道数为64的输出特征图

5.3.2第一上下文信息融合模块对进行积水特征融合,得到第一积水空间特征图方法与4.2.2.3.2步完全相同,即:

5.3.2.1第一上下文信息融合模块将进行相加,得到

5.3.2.2第一上下文信息融合模块中的1×1卷积层,批归一化层,relu层,批归一化层和sigmoid层依次对进行注意力响应特征图提取,得到宽和输出通道数为64的输出特征图

5.3.2.3第一上下文信息融合模块的3×3卷积层对进行积水空间特征提取,得到宽和输出通道数为64的输出特征图

5.3.2.4第一上下文信息融合模块的3×3卷积层对进行进一步的积水边缘特征提取,得到宽和输出通道数为64的输出特征图

5.3.2.5第一上下文信息融合模块对进行相加,得到输出特征图

5.3.2.6第一上下文信息融合模块中的批归一化层对进行批标准化操作,得到的积水特征图

5.3.2.7第一上下文信息融合模块对进行相乘,得到宽和输出通道数为64的融合后的积水空间细节特征

5.3.2.8第一上下文信息融合模块的relu层对中的非积水区域特征进行抑制,得到宽和输出通道数为64的第一积水空间特征图

5.3.3第二投影块对进行通道升维和下采样,得到宽和输出通道数为128的输出特征图

5.3.4第二上下文信息融合模块对进行积水特征融合,得到第二积水空间特征图方法与4.2.2.3.4步完全相同,即:

5.3.4.1第二上下文信息融合模块对将相加,得到

5.3.4.2第二上下文信息融合模块中的1×1卷积层,批归一化层,relu层,批归一化层和sigmoid层对进行注意力响应特征图提取,得到宽和输出通道数为128的输出特征图

5.3.4.3第二上下文信息融合模块的3×3卷积层对进行积水空间特征提取,得到宽和输出通道数为128的输出特征图

5.3.4.4第二上下文信息融合模块的3×3卷积层对进行进一步的积水轮廓特征提取,得到宽和输出通道数为128的输出特征图

5.3.4.5第二上下文信息融合模块将相加,得到

5.3.4.6第二上下文信息融合模块中的批归一化层对进行批标准化操作,得到积水特征图

5.3.4.7第二上下文信息融合模块将相乘,得到宽和输出通道数为128的融合后的积水空间细节特征

5.3.4.8第二上下文信息融合模块的relu层对的非积水区域特征进行抑制,得到宽和输出通道数为128的第二积水空间特征图

5.3.5第三投影块对进行下采样,得到宽为和输出通道数为128的输出特征图

5.3.6第三上下文信息融合模块对进行积水特征融合,得到第三积水空间特征图方法与4.2.2.3.6步相同,即:

5.3.6.1第三上下文信息融合模块将相加,得到

5.3.6.2第三上下文信息融合模块中的1×1卷积层,批归一化层,relu层,批归一化层和sigmoid层对顺序地进行注意力响应特征图提取,得到宽和输出通道数为128的输出特征图

5.3.6.3第三上下文信息融合模块的3×3卷积层对进行积水空间特征提取,得到宽和输出通道数为128的输出特征图

5.3.6.4第三上下文信息融合模块的3×3卷积层对进行进一步的积水纹理特征提取,得到宽和输出通道数为128的输出特征图

5.3.6.5第三上下文信息融合模块将相加,得到

5.3.6.6第三上下文信息融合模块中的批归一化层对进行批标准化操作,得到的积水特征图

5.3.6.7第三上下文信息融合模块将相乘,得到宽和输出通道数为128的融合后的积水空间细节特征

5.3.6.8第三上下文信息融合模块的relu层对的非积水区域特征进行抑制,得到宽和输出通道数为128的第三积水空间特征图

5.3.7第一上采样层将的宽和高分别扩大四倍,得到宽和输出通道数为128的输出特征图

5.3.8第二上采样层将的宽和高分别扩大两倍,得到宽和输出通道数为128的输出特征图

5.3.9第一连接器按照公式(1)连接,得到宽和输出通道数为320的输出特征图

5.3.10第一卷积预测输出层对进行上采样和积水区域预测得到宽w,高h和输出通道数为1的第一积水预测概率图

第六步,输出判定器对第一积水预测概率图进行判定,得到积水识别结果:

6.1输出判定器通过min-max归一化操作将中的积水区域的像素值范围转化为0.5到1,背景区域的像素值范围转化为0到0.5,从而将积水区域和背景区域进行了分离,得到了最终的积水预测图pnormh×w×1,其中pnormh×w×1中的白色区域是积水区域,黑色区域是背景区域。

采用本发明可以达到以下技术效果:

1.当前大多数的道路积水识别方法大都采用传统的机器学习技术,虽然计算复杂度不高但是需要过多的人为参与,人为提供辅助信息,并且识别精度不高。本发明采用基于深度学习的边界语义分割积水识别系统,不需要人为参与,并且在第3.1.1步通过单次残差级联模块中的多个积水特征的连接操作捕获图像的多样化特征,提升模型对目标的感知能力。在第3.1.2步通过上下文信息融合模块融合不同层提取的积水特征,恢复空间细节信息,提高识别精度。

2.本发明提出的基于边界语义分割的道路积水识别网络是由非对称的编码器-解码器网络组成,其中编码器和解码器网络拥有极少的参数量和低计算复杂度,因此可以提高识别速度,实时的处理每张图片。

本发明提出的基于端到端的深度神经网络提取图像特征实现道路积水位置的识别,不需要人为干预,可以很容易的实现道路积水识别并且可以嵌入到任何积水识别系统中。该方法解决了以往的道路积水识别系统的操作复杂,识别效率低等缺陷。

附图说明

图1为本发明的总体流程图。

图2为本发明构建的基于边界语义分割的道路积水识别系统示意图。

图3为本发明第六步的预测输出示意图。

具体实施方式

图1是本发明总体流程图;如图1所示,本发明包括以下步骤:

第一步,制作语义分割数据集。制作语义分割数据集的方法是:

1.1利用opencv库(版本3.4.4.19及以上)将摄像机采集的不同道路背景下积水视频转化为图片:通过opencv中的cv2.videocapture库函数读取摄像机拍摄的视频流,将读取的视频流通过opencv中的read函数转换为一帧一帧的图片并存放到计算机中,得到图片集d,d={i1,i2,…,ii,…,in},其中ii为原图,1≤i≤n,n为图片集中的图片数量。

1.2利用图形可视化标记工具labelme(版本3.18.0及以上)读取图片集d中的图片ii,并将图片ii中的积水区域用曲线进行框选,将框选区域的标签设置为水,标记完图片ii后生成对应的json格式文件,该json格式文件名为图片ii的名称,包含了图片ii中积水区域的位置信息。

1.3采用labelme将图片ii对应的json格式文件转换成四个标准文件:img.png、label.png、label_viz.png和label_names.txt。其中img.png是ii原图,label.png是ii的语义分割标签图片,label_viz.png是语义分割标签图片的可视化显示的图片,label_names.txt记录ii中包含的语义类别集合c{c0,c1},c0表示的背景类,c1表示的是积水类。label.png的分辨率大小与图片ii的分辨率大小相同,是一张图像模式为p的彩色图像,像素值的取值为0或1,像素值为1的区域表示目标区域即积水区域,像素值为0的区域表示非目标积水区域即背景区域。

1.4将label.png重新命名为图片ii的名称,实现标签图片名称与图片ii名称的对应。label.png和图片ii共同构成语义分割数据集d1,d1={i1,i2,…,ii,…,in,g1,g2,…,gi,…,gn},gi为ii的语义分割标签图片(即ii的label.png)。

第二步,利用数据增广技术对语义分割数据集d1进行扩充,得到训练数据集,方法是:

2.1对语义分割数据集d1中的图片i1,i2,…,ii,…,in分别做归一化操作,得到归一化操作后的图片i1′,i2′,…,ii′,…,in′,对ii做归一化操作得到图片ii′的方法是:对ii中的所有像素值进行归一化,即令其中x指ii中的任意一个像素值,将像素值x映射到0-1范围,得到归一化后的像素值x′,有利于网络训练和快速收敛。

2.2利用python中pil(版本5.0.0及以上)的img.transpose(image.flip_left_right)(image.flip_left_right参数指从左向右翻转)库函数对语义分割数据集中的图片i1′,i2′,…,ii',…,in′和g1,g2,…,gi,…,gn进行水平翻转,得到水平翻转后的图片i1′lr,i2′lr,…,ii′lr,…,in′lr和g1′,g2′,…,gi′,…,gn′;然后利用img.transpose(image.flip_top_bottom)(image.flip_top_bottom参数指从上向下翻转)库函数对语义分割数据集中的图片i1′lr,i2′lr,…,ii′lr,…,in′lr和g1′,g2′,…,gi′,…,gn′再进行垂直翻转,得到翻转后的图片i1″,i2″,…,ii″,…,in″和g1″,g2″,…,gi″,…,gn″。

2.3通过pil中的img.resize((width,height))(width,height参数分别指图片宽和高)库函数将翻转后的图片i1″,i2″,…,ii″,…,in″和g1″,g2″,…,gi″,…,gn″放大为1024×1024大小,再使用pil中的img.crop((left,upper,right,lower))(left,upper,right,lower参数分别指图片的左下标位置,上下标位置,右下标位置和下下标位置)库函数将放大后的图片裁剪为固定的尺寸大小512×512,得到裁剪后的图片i1′″,i2′″,…,ii′″,…,in′″和g1′″,g2′″,…,gi′″,…,gn′″。

2.4通过图像操作库pil中的imageenhanbce.brightness(img).enhance(factor)(factor参数指饱和度因子)库函数随机调整图片i1′″,i2′″,…,ii′″,…,in′″的饱和度得到饱和度调整后的图片i1″″,i2″″,…,ii″″,…,in″″,降低积水识别网络对图片色彩的敏感度,增加分割数据集的多样性,得到训练数据集d2,d2={i1″″,i2″″,…,ii″″,…,in″″,g1′″,g2′″,…,gi′″,…,gn′″}。

第三步,构建基于边界语义分割的道路积水识别系统,基于边界语义分割的道路积水识别系统如图2所示,由基于边界语义分割的道路积水识别网络、输出判定器组成,构建方法是:

3.1构建基于边界语义分割的道路积水识别网络,该网络由非对称的编码器网络和解码器网络构成。

3.1.1编码器网络由第一下采样块、第二下采样块、第一单次残差级联模块、第一降维块、第三下采样块、第二单次残差级联模块、第二降维块、第四下采样块、第三单次残差级联模块和第三降维块构成。编码器网络中的模块用于提取不同级别的积水特征,网络浅层(指第一下采样块、第二下采样块、第一单次残差级联模块和第一降维块)提取的积水特征与网络深层(指第三下采样块、第二单次残差级联模块、第二降维块、第四下采样块、第三单次残差级联模块和第三降维块)提取的积水特征进行组合从而对整个图片中的积水进行表示。其中第一下采样块和第二下采样块提取积水特征并减小特征图的空间分辨率,第一单次残差级联模块提取积水的边缘特征,第一降维块对积水的边缘特征进行通道降维;第三下采样块下采样积水特征,第二单次残差级联模块提取积水的轮廓特征,第二降维块对积水的轮廓特征进行通道降维;第四下采样块再次下采样积水特征,第三单次残差级联模块提取积水的纹理特征,第三降维块对积水的纹理特征进行通道降维。

第一下采样块由第一3×3卷积层、第一批归一化层和第一relu层组成,它对从d2读取的ii″″提取特征,得到输出特征图输出给第二下采样块和解码器网络,第一3×3卷积层的输入和输出通道数分别为3和16,第一批归一化层的特征个数为16,relu层中不包含超参数因此不需要设置超参数的值。

第二下采样块由第二3×3卷积层、第二批归一化层和第二relu层组成,通过对提取特征,得到输出特征图输出给第一单次残差级联模块,其中第二3×3卷积层的输入和输出通道数分别为16和32,第二批归一化层的特征个数为32。

第一单次残差级联模块由4个残差块组成。第一残差块对进行特征提取,得到输出特征图输出给第一单次残差级联模块中的第二残差块得到输出特征图输出给第一单次残差级联模块中的第三残差块得到输出特征图输出给第一单次残差级联模块中的第四残差块得到输出特征图按照公式(1)连接得到输出特征图输出给第一降维块,其中4个残差块中卷积层的输入和输出通道数都为32,采样率都为1。公式(1)中的[f21,f22,f23,f24]操作指对f21,f22,f23,f24进行连接。

第一降维块由第一1×1卷积层、第三批归一化层和第三relu层组成,第一降维块对进行特征提取,得到输出特征图输出给第三下采样块和解码器网络,其中第一1×1卷积层的输入和输出通道数分别为128和64,第三批归一化层的特征个数为64。

第三下采样块由第三3×3卷积层、第四批归一化层和第四relu层组成,第三下采样块对进行特征提取,得到输出特征图输出给第二单次残差级联模块,其中第三3×3卷积层的输入和输出通道数分别为64和64,第四批归一化层的特征个数为64。

第二单次残差级联模块由5个残差块组成,第二单次残差级联模块中的第一个残差块对进行特征提取,得到输出特征图将特征图输出给第二单次残差级联模块中的第二个残差块得到输出特征图输出给第二单次残差级联模块中的第三个残差块得到输出特征图输出给第二单次残差级联模块中的第四个残差块得到输出特征图输出给第二单次残差级联模块中的第五个残差块得到输出特征图按照公式(1)中的连接操作进行连接得到输出特征图out6i,其中5个残差块中卷积层的输入和输出通道数都为64,卷积层的采样率分别为1,2,4,6,8。将out6i输出给第二降维块。

第二降维块由第二1×1卷积层、第五批归一化层和第五relu层组成,第二降维块对out6i进行特征提取,得到输出特征图out7i,将out7i输出给第四下采样块和解码器,其中第二1×1卷积层的输入和输出通道数分别为320和128,第五批归一化层的特征个数为128。

第四下采样块由第四3×3卷积层、第六批归一化层和第六relu层组成,第四下采样块对out7i进行特征提取,得到输出特征图out8i,将out8i输出给第三单次残差级联模块,其中第四3×3卷积层的输入和输出通道数分别为128和96,第六批归一化层的特征个数为96。

第三单次残差级联模块由5个残差块组成,第三单次残差级联模块中的第一个残差块对out8i进行特征提取,得到输出特征图f81i,将f81i输出给第三单次残差级联模块中的第二个残差块得到输出特征图f82i,将f82i输出给第三单次残差级联模块中的第三个残差块得到输出特征图f83i,将f83i输出给第三单次残差级联模块中的第四个残差块得到输出特征图f84i,将f84i输出给第三单次残差级联模块中的第五个残差块得到输出特征图f85i。将f81i,f82i,f83i,f84i和f85i按照公式(1)中的连接操作进行连接得到输出特征图out9i,将out9i输出给第三单次残差级联模块,其中5个残差块中卷积层的输入和输出通道数都为96,卷积层的采样率分别为4,6,8,10,12。

第三降维块由第三1×1卷积层、第七批归一化层和第七relu层组成,对out9i进行特征提取,得到输出特征图out10i,其中第三1×1卷积层的输入和输出通道数分别为480和128,第七批归一化层的特征个数为128。

3.1.2解码器网络由第一投影块、第一上下文信息融合模块、第一上采样层、第一卷积预测输出层、第二投影块、第二上采样层、第二上下文信息融合模块、第二卷积预测输出层、第三投影块、第三上下文信息融合模块、第三上采样层和第三卷积预测输出层构成。解码器网络中的模块用于扩大积水特征图的空间大小和获取积水空间特征,其中第一投影块对特征out1i进行通道升维和下采样得到inp1i,使inp1i的宽,高和通道数相同;第一上下文信息融合模块通过融合和inp1i得到第一积水空间细节特征o1i;第二投影块对out4i进行通道升维和下采样得到inp2i,使inp2i的宽,高和通道数相同;第二上下文信息融合模块通过融合和inp2i得到第二积水空间细节特征o2i;第三投影块对进行下采样得到inp3i,使inp3i和out10i的宽,高和通道数相同;第三上下文信息融合模块通过融合out10i和inp3i得到第三积水空间细节特征o3i

第一投影块由第一平均池化层和第四1×1卷积层组成,第一投影块对out1i进行通道升维和下采样,得到输出特征图inp1i,将inp1i输出给第一上下文信息融合模块。第一平均池化层的池化窗口大小为3,步幅为2,第四1×1卷积层的输入和输出通道数分别为16和64;

第二投影块由第二平均池化层和第五1×1卷积层组成,对进行通道升维和下采样,得到输出特征图inp2i,将inp2i输出给第二上下文信息融合模块。第二平均池化层的池化窗口大小为3,步幅为2,第五1×1卷积层的输入和输出通道数分别为64和128;

第三投影块由第三平均池化层和第六1×1卷积层组成,对out7i进行下采样,得到输出特征图inp3i,将inp3i输出给第三上下文信息融合模块。第三平均池化层的池化窗口大小为3,步幅为2,第六1×1卷积层的输入和输出通道数分别为128和128;

第一上下文信息融合模块对与inp1i进行积水特征融合得到输出特征图o1i,将o1i输出给第一卷积预测输出层。第一上下文信息融合模块由1个1×1卷积层、2个3×3卷积层、3个批归一化层、2个relu层和1个sigmoid层组成,1×1和3×3卷积层输入和输出通道数为64,3个批归一化层的特征个数都为64,sigmoid层的操作如下所示:

其中x是输入值,y是输出值。由公式(2)可知sigmoid层不包含参数,因此该层没有参数要求。

第二上下文信息融合模块对out7i与inp2i进行积水特征融合得到输出特征图o2i,将o2i输出给第二上采样层。第二上下文信息融合模块由1个1×1卷积层、2个3×3卷积层、3个批归一化层、2个relu层和1个sigmoid层组成,1×1和3×3卷积层输入和输出通道数为128,3个批归一化层的特征个数都为128;

第三上下文信息融合模块对out10i与inp3i进行积水特征融合得到输出特征图o3i,将o3i输出给第三上采样层、第一上采样层、第三卷积预测输出层。第三上下文信息融合模块由1个1×1卷积层、2个3×3卷积层、3个批归一化层、2个relu层和1个sigmoid层组成,1×1和3×3卷积层输入和输出通道数分别为128和128,3个批归一化层的特征个数都为128。

第一上采样层对o3i进行双线性插值操作,得到输出特征图o31i,将o31i输出给第一连接器。第一上采样层的上采样因子为4;

第二上采样层对o2i进行双线性插值操作,得到输出特征图o21i,将o21i输出给第一连接器。第二上采样层的上采样因子为2;

第一连接器将o31i,o21i和o1i按照公式(1)连接得到输出特征图outconv1i,将outconv1i输出给第一卷积预测输出层。

第一卷积预测输出层对outconv1i进行积水区域预测,得到预测的输出特征图发送给输出判定器。第一卷积预测输出层由3×3卷积层、批归一化层、relu层、1×1卷积层、sigmoid层和第四上采样层组成,其中3×3卷积层的输入和输出通道数是320,批归一化层的特征个数为320,1×1卷积层的输入和输出通道数分别是320和1,第四上采样层的上采样因子为4。

第三上采样层对o3i进行双线性插值操作,得到输出特征图o32i,将o32i输出给第二连接器。其中第三上采样层的上采样因子为2;

第二连接器将o32i和o2i按照公式(1)连接得到输出特征图outconv2i,将outconv2i输出给第二卷积预测输出层。

第二卷积预测输出层对outconv2i进行积水区域预测,得到预测的输出特征图特征图用于网络训练。第二卷积预测输出层由3×3卷积层、批归一化层、relu层、1×1卷积层、sigmoid层和第五上采样层组成,其中3×3卷积层的输入和输出通道数是256,批归一化层的特征个数为256,1×1卷积层的输入和输出通道数分别是256和1,第五上采样层的上采样因子为8。

第三卷积预测输出层对o3i进行积水区域预测,得到预测的输出特征图特征图用于网络训练。第三卷积预测输出层由3×3卷积层、批归一化层、relu层、1×1卷积层、sigmoid层和第六上采样层组成,其中3×3卷积层的输入和输出通道数是128,批归一化层的特征个数为128,1×1卷积层的输入和输出通道数分别是128和1,第六上采样层的上采样因子为16。

3.2构建输出判定器:

输出判定器是对中的积水区域和背景区域进行分离的模块,输出判定器采用min-max归一化(jain等人,基于最小最大规范化的隐私保护数据扰动方法,2011年发表在国际计算机与通信技术期刊)操作将中的积水区域和背景区域进行分离,得到pnormi,pnormi中的白色区域是积水区域,黑色区域是背景区域。

第四步,训练基于边界语义分割的道路积水识别网络,得到网络权重参数的集合。具体方法为:

4.1初始化权重参数,设置训练过程中需要的超参数,方法是:

4.1.1利用kaiming初始化方法初始化道路积水识别网络中的卷积层的权重参数集合和偏置参数集合其中1≤k≤k,k为基于边界语义分割的道路积水识别网络中的卷积层的总层数。利用随机均匀分布初始化基于边界语义分割的道路积水识别网络中的批归一化层的权重参数集合初始化道路积水识别网络中的批归一化层的偏置参数集合的值为0,其中1≤l≤l,l为基于边界语义分割的道路积水识别网络中的批归一化层的总层数。为基于边界语义分割的道路积水识别网络中第k层卷积的权重参数。为第k层卷积的偏置参数。为网络中第l层批归一化的权重参数,为第l层批归一化的偏置参数。

4.1.2设置基于边界语义分割的道路积水识别网络的超参数:训练迭代次数为5000,训练批尺寸大小batchsize为60,训练学习率为0.001。

4.2选择基于边界语义分割的道路积水识别网络训练的优化器,并训练基于边界语义分割的道路积水识别网络,方法为:

4.2.1采用adam优化器优化基于边界语义分割的道路积水识别网络,其中adam优化器的betas参数设置为(0.9,0.999),eps参数设置为1×10-8,weight_decay参数设置为5×10-4

4.2.2选择训练集d2对基于边界语义分割的道路积水识别网络进行训练,方法为:

4.2.2.1令变量i=1;令第i-1次即第0次训练后得到的卷积层权重参数集合令第0令第0次训练后得到的批归一化层权重参数集合令第0次训练后得到的批归一化层偏置参数集合

4.2.2.2基于边界语义分割的道路积水识别网络的编码器从d2读取ii″″,令表示宽为h,高w,输出通道数为3的ii″″,编码器对进行编码,提取积水特征,方法为:

4.2.2.2.1第一下采样块对进行积水边缘特征提取,得到宽为和输出通道数为16的第一输出特征图

4.2.2.2.2第二下采样块对进行积水边缘特征提取,得到宽为和输出通道数为32的第二输出特征图

4.2.2.2.3第一单次残差级联模块对进行进一步的积水边缘特征提取,得到宽为和输出通道数为128的第三输出特征图

4.2.2.2.4第一降维块对进行通道降维,得到宽为和输出通道数为64的第四输出特征图

4.2.2.2.5第三下采样块对进行积水轮廓特征提取,得到宽为和输出通道数为64的第五输出特征图

4.2.2.2.6第二单次残差级联模块对进行进一步的积水轮廓特征提取,得到宽为和输出通道数为320的第六输出特征图

4.2.2.2.7第二降维块对进行通道降维,得到宽为和输出通道数为128的第七输出特征图

4.2.2.2.8第四下采样块对进行积水纹理特征提取,得到宽为和输出通道数为96的第八输出特征图

4.2.2.2.9第三单次残差级联模块对进行进一步的积水纹理特征提取,得到宽为和输出通道数为480的第九输出特征图

4.2.2.2.10第三降维块对进行通道降维,得到宽为和输出通道数为128的第十输出特征图

4.2.2.3训练后的基于边界语义分割的道路积水识别网络的解码器对进行解码,得到积水空间细节特征,并恢复空间分辨率大小为h×w,方法为:

4.2.2.3.1第一投影块对进行通道升维和下采样,得到宽和输出通道数为64的输出特征图

4.2.2.3.2第一上下文信息融合模块对进行积水特征融合,得到第一积水空间特征图方法为:

4.2.2.3.2.1第一上下文信息融合模块将进行相加,得到

4.2.2.3.2.2第一上下文信息融合模块中的1×1卷积层,批归一化层,relu层,批归一化层和sigmoid层依次对进行注意力响应特征图提取,得到宽和输出通道数为64的输出特征图

4.2.2.3.2.3第一上下文信息融合模块的3×3卷积层对进行积水空间特征提取,得到宽和输出通道数为64的输出特征图

4.2.2.3.2.4第一上下文信息融合模块的3×3卷积层对进行进一步的积水边缘特征提取,得到宽和输出通道数为64的输出特征图

4.2.2.3.2.5第一上下文信息融合模块对进行相加,得到输出特征图

4.2.2.3.2.6第一上下文信息融合模块中的批归一化层对进行批标准化操作,得到的积水特征图

4.2.2.3.2.7第一上下文信息融合模块对进行相乘,得到宽和输出通道数为64的融合后的积水空间细节特征

4.2.2.3.2.8第一上下文信息融合模块的relu层对中的非积水区域特征进行抑制,得到宽和输出通道数为64的第一积水空间特征图

4.2.2.3.3第二投影块对进行通道升维和下采样,得到宽和输出通道数为128的输出特征图

4.2.2.3.4第二上下文信息融合模块对进行积水特征融合,得到第二积水空间特征图方法为:

4.2.2.3.4.1第二上下文信息融合模块对将相加,得到

4.2.2.3.4.2第二上下文信息融合模块中的1×1卷积层,批归一化层,relu层,批归一化层和sigmoid层对进行注意力响应特征图提取,得到宽和输出通道数为128的输出特征图

4.2.2.3.4.3第二上下文信息融合模块的3×3卷积层对进行积水空间特征提取,得到宽和输出通道数为128的输出特征图

4.2.2.3.4.4第二上下文信息融合模块的3×3卷积层对进行进一步的积水轮廓特征提取,得到宽和输出通道数为128的输出特征图

4.2.2.3.4.5第二上下文信息融合模块将相加,得到

4.2.2.3.4.6第二上下文信息融合模块中的批归一化层对进行批标准化操作,得到积水特征图

4.2.2.3.4.7第二上下文信息融合模块将相乘,得到宽和输出通道数为128的融合后的积水空间细节特征

4.2.2.3.4.8第二上下文信息融合模块的relu层对的非积水区域特征进行抑制,得到宽和输出通道数为128的第二积水空间特征图

4.2.2.3.5第三投影块对进行下采样,得到宽为和输出通道数为128的输出特征图

4.2.2.3.6第三上下文信息融合模块对进行积水特征融合,得到第三积水空间特征图方法为:

4.2.2.3.6.1第三上下文信息融合模块将相加,得到

4.2.2.3.6.2第三上下文信息融合模块中的1×1卷积层,批归一化层,relu层,批归一化层和sigmoid层对顺序地进行注意力响应特征图提取,得到宽和输出通道数为128的输出特征图

4.2.2.3.6.3第三上下文信息融合模块的3×3卷积层对进行积水空间特征提取,得到宽和输出通道数为128的输出特征图

4.2.2.3.6.4第三上下文信息融合模块的3×3卷积层对进行进一步的积水纹理特征提取,得到宽和输出通道数为128的输出特征图

4.2.2.3.6.5第三上下文信息融合模块将相加,得到

4.2.2.3.6.6第三上下文信息融合模块中的批归一化层对进行批标准化操作,得到的积水特征图

4.2.2.3.6.7第三上下文信息融合模块将相乘,得到宽和输出通道数为128的融合后的积水空间细节特征

4.2.2.3.6.8第三上下文信息融合模块的relu层对的非积水区域特征进行抑制,得到宽和输出通道数为128的第三积水空间特征图

4.2.2.3.7第一上采样层将的宽和高分别扩大四倍,得到宽和输出通道数为128的输出特征图

4.2.2.3.8第二上采样层将的宽和高分别扩大两倍,得到宽和输出通道数为128的输出特征图

4.2.2.3.9第一连接器按照公式(1)连接,得到宽和输出通道数为320的输出特征图

4.2.2.3.10第一卷积预测输出层对进行上采样和积水区域预测得到宽w,高h和输出通道数为1的第一积水预测概率图

4.2.2.3.11第三上采样层将的宽和高分别扩大两倍,得到宽和输出通道数为128的输出特征图

4.2.2.3.12第二连接器将按照公式(1)连接,得到宽和输出通道数为256的输出特征图

4.2.2.3.13第二卷积预测输出层对进行上采样和积水区域预测得到宽h,高w和输出通道数为1的第二积水预测概率图

4.2.2.3.14第三卷积预测输出层对进行上采样和积水区域预测得到宽h,高w和输出通道数为1的第三输出预测概率图

4.2.2.4从d2数据集中选择标签图片gi′″。

4.2.2.5在训练过程中通过不断缩小特征图与gi′″、与gi′″、与gi′″之间的差异优化网络,使得网络可以学习到最优参数。并将第i次训练后得到的卷积层权重参数集合和卷积层偏置参数集合1≤k≤k;批归一化层权重参数集合和批归一化层偏置参数集合1≤l≤l,作为网络参数集合。第i次训练完后得到的参数集合是在第i-1次训练后得到的参数集合基础上进行更新优化得到。

4.2.2.6令i=i+1,若i≤batchsize,转4.2.2.2,若i>batchsize,转第五步。

第五步,采用训练后的基于边界语义分割的道路积水识别网络对摄像机所拍摄的图片i进行积水识别,方法是:

5.1将i按照第2.1,2.2,2.3,2.4步的操作进行归一化操作、水平翻转后垂直翻转、放大裁剪固定、调整图片饱和度,得到宽为h,高为w、输入通道数为3的原图i′h×w×3,其中h=512,w=512。

5.2训练后的基于边界语义分割的道路积水识别网络的编码器对i′h×w×3进行编码,提取积水特征,方法为:

5.2.1第一下采样块对i′h×w×3进行积水边缘特征提取,得到宽为和输出通道数为16的第一输出特征图

5.2.2第二下采样块对进行积水边缘特征提取,得到宽为和输出通道数为32的第二输出特征图

5.2.3第一单次残差级联模块对进行进一步的积水边缘特征提取,得到宽为和输出通道数为128的第三输出特征图

5.2.4第一降维块对进行通道降维,得到宽为和输出通道数为64的第四输出特征图

5.2.5第三下采样块对进行积水轮廓特征提取,得到宽为和输出通道数为64的第五输出特征图

5.2.6第二单次残差级联模块对进行进一步的积水轮廓特征提取,得到宽为和输出通道数为320的第六输出特征图

5.2.7第二降维块对进行通道降维,得到宽为和输出通道数为128的第七输出特征图

5.2.8第四下采样块对进行积水纹理特征提取,得到宽为和输出通道数为96的第八输出特征图

5.2.9第三单次残差级联模块对进行进一步的积水纹理特征提取,得到宽为和输出通道数为480的第九输出特征图

5.2.10第三降维块对进行通道降维,得到宽为和输出通道数为128的第十输出特征图

5.3训练后的基于边界语义分割的道路积水识别网络的解码器对进行解码,得到积水空间细节特征,并恢复空间分辨率大小为h×w,方法为:

5.3.1第一投影块对进行通道升维和下采样,得到宽和输出通道数为64的输出特征图

5.3.2第一上下文信息融合模块对进行积水特征融合,得到第一积水空间特征图方法与4.2.2.3.2步完全相同,即:

5.3.2.1第一上下文信息融合模块将进行相加,得到

5.3.2.2第一上下文信息融合模块中的1×1卷积层,批归一化层,relu层,批归一化层和sigmoid层依次对进行注意力响应特征图提取,得到宽和输出通道数为64的输出特征图

5.3.2.3第一上下文信息融合模块的3×3卷积层对进行积水空间特征提取,得到宽和输出通道数为64的输出特征图

5.3.2.4第一上下文信息融合模块的3×3卷积层对进行进一步的积水边缘特征提取,得到宽和输出通道数为64的输出特征图

5.3.2.5第一上下文信息融合模块对进行相加,得到输出特征图

5.3.2.6第一上下文信息融合模块中的批归一化层对进行批标准化操作,得到的积水特征图

5.3.2.7第一上下文信息融合模块对进行相乘,得到宽和输出通道数为64的融合后的积水空间细节特征

5.3.2.8第一上下文信息融合模块的relu层对中的非积水区域特征进行抑制,得到宽和输出通道数为64的第一积水空间特征图

5.3.3第二投影块对进行通道升维和下采样,得到宽和输出通道数为128的输出特征图

5.3.4第二上下文信息融合模块对进行积水特征融合,得到第二积水空间特征图方法与4.2.2.3.4步完全相同,即:

5.3.4.1第二上下文信息融合模块对将相加,得到

5.3.4.2第二上下文信息融合模块中的1×1卷积层,批归一化层,relu层,批归一化层和sigmoid层对进行注意力响应特征图提取,得到宽和输出通道数为128的输出特征图

5.3.4.3第二上下文信息融合模块的3×3卷积层对进行积水空间特征提取,得到宽和输出通道数为128的输出特征图

5.3.4.4第二上下文信息融合模块的3×3卷积层对进行进一步的积水轮廓特征提取,得到宽和输出通道数为128的输出特征图

5.3.4.5第二上下文信息融合模块将相加,得到

5.3.4.6第二上下文信息融合模块中的批归一化层对进行批标准化操作,得到积水特征图

5.3.4.7第二上下文信息融合模块将相乘,得到宽和输出通道数为128的融合后的积水空间细节特征

5.3.4.8第二上下文信息融合模块的relu层对的非积水区域特征进行抑制,得到宽和输出通道数为128的第二积水空间特征图

5.3.5第三投影块对进行下采样,得到宽为和输出通道数为128的输出特征图

5.3.6第三上下文信息融合模块对进行积水特征融合,得到第三积水空间特征图方法与4.2.2.3.6步相同,即:

5.3.6.1第三上下文信息融合模块将相加,得到

5.3.6.2第三上下文信息融合模块中的1×1卷积层,批归一化层,relu层,批归一化层和sigmoid层对顺序地进行注意力响应特征图提取,得到宽和输出通道数为128的输出特征图

5.3.6.3第三上下文信息融合模块的3×3卷积层对进行积水空间特征提取,得到宽和输出通道数为128的输出特征图

5.3.6.4第三上下文信息融合模块的3×3卷积层对进行进一步的积水纹理特征提取,得到宽和输出通道数为128的输出特征图

5.3.6.5第三上下文信息融合模块将相加,得到

5.3.6.6第三上下文信息融合模块中的批归一化层对进行批标准化操作,得到的积水特征图

5.3.6.7第三上下文信息融合模块将相乘,得到宽和输出通道数为128的融合后的积水空间细节特征

5.3.6.8第三上下文信息融合模块的relu层对的非积水区域特征进行抑制,得到宽和输出通道数为128的第三积水空间特征图

5.3.7第一上采样层将的宽和高分别扩大四倍,得到宽和输出通道数为128的输出特征图

5.3.8第二上采样层将的宽和高分别扩大两倍,得到宽和输出通道数为128的输出特征图

5.3.9第一连接器按照公式(1)连接,得到宽和输出通道数为320的输出特征图

5.3.10第一卷积预测输出层对进行上采样和积水区域预测得到宽w,高h和输出通道数为1的第一积水预测概率图

第六步,输出判定器对第一积水预测概率图进行判定,得到积水识别结果,如图3所示,方法为:输出判定器通过min-max归一化操作将中的积水区域的像素值范围转化为0.5到1,背景区域的像素值范围转化为0到0.5,从而将积水区域和背景区域进行了分离,得到了最终的积水预测图pnormh×w×1,其中pnormh×w×1中的白色区域是积水区域,黑色区域是背景区域。

利用python3.6语言和pytorch0.4.1深度学习框架按本发明所述方法编写了一个如图1所示的基于边界语义分割的道路积水识别系统,该系统在linux16.0464位操作系统,gpu(版本为teslap40)上运行并且平均识别一张图片需要0.0086秒,最后将运行结果发送给cpu(版本为intelxeone5v4系列)在显示器上进行显示,显示结果如图3所示。图3中的黑色区域是背景区域,白色区域是积水区域。可见,采用本发明能准确识别积水区域,且速度很快。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1