APP下载

基于深度学习的涂层织物折皱识别与检测

2021-07-28阿力木安外尔张大旭陈务军王笑妍周群超罗一栋陈能夫孙鲲鹏

计算机工程与应用 2021年14期
关键词:折皱涂层语义

阿力木·安外尔,张大旭,2,何 巍,陈务军,王笑妍,周群超,罗一栋,陈能夫,孙鲲鹏

1.上海交通大学 船舶海洋与建筑工程学院,上海200240

2.上海市公共建筑和基础设施数字化运维重点实验室,上海200240

3.中国特种飞行器研究所,湖北 荆门448035

4.上海交通大学 空间结构研究中心,上海200240

5.上海应用技术大学 计算机科学与信息工程学院,上海201418

涂层织物是一种新型层压高性能织物复合材料,具有低密度、高强度、高阻隔性等特点,被广泛应用于建筑膜结构、浮空器囊体结构等领域。国内外对涂层织物的力学性能进行了广泛研究,但对其折皱方面的研究较少。涂层织物在生产、运输、充放气、拼装及使用过程会产生折皱损伤,对结构安全性、气密性和耐久性具有显著影响。涂层织物的折皱形状识别,以及其长、宽等技术参数的检测是评估折皱损伤对结构性能影响的前提条件,因此准确、高效地进行折皱的识别与检测尤为重要。

传统的涂层织物材料折皱检测以人工为主,肉眼检测精度和效率低。人工经验的主观性和视觉局限性导致折皱检测结果的一致性较差。深度学习卷积神经网络模仿人脑神经网络机制,根据自己的判断去定义图像高级抽象化特征,有利于统一识别与检测标准。借助深度学习卷积神经网络的智能检测手段可极大减少人工操作,提高效率。

折皱智能识别方法主要有两大类:传统的图像语义分割技术与基于深度学习的智能识别[1]。传统语义分割主要靠图像处理技术,包括基于阈值、边缘、区域和其他特定理论的图像分割和检测技术[2]。然而传统图像处理分割方法弊端较多,例如训练区域大小无法确定,存储及计算量非常大,因感受野受到限制只能提取某些局部特征等。2006年Hinton等[3]提出了深度学习的概念,从而开启了人工智能发展的第三个阶段。随后Sermanet等[4]提出了卷积神经网络(CNN),利用卷积操作获取图像空间信息减少网络训练参数,大幅度地提高了网络性能。随后卷积神经网络在语义分割、目标检测、图像识别和分类等计算机视觉和语义任务上表现越来越好。基于深度学习的图像语义分割主要思路是:不需人为设置特征,直接向深度学习网络输入大量原始图像数据,根据设计好的网络算法进行高层次的抽象特征提取,进行识别分类和目标定位,最终输出带有像素标签的分割结果。这类网络构架在准确度和分割效率上明显超越了传统方法。Zhang等[5]第一个将深度学习方法应用到道路裂缝检测问题中,使用卷积神经网络对智能手机采集的高分辨率图像进行训练,验证准确率达到86.96%。Long 等[6]提出了全卷积神经网络(FCN)方法对图像进行语义分割,使得图像分类问题从块延续到像素级,并得到较好的实验效果。Mei等[7]将深度学习语义分割网络运用到机场跑道路面裂缝的检测中,并使用新的损失函数,将精确率提高到96.8%。2019 年Liu 等[8]通过DeepLabV3模型,实现胃镜图像中早期癌症的预测。自2017年以来语义分割网络得到进一步发展,FCN、Segnet、DeepLab 系列和DAnet 等优秀的算法模型逐步运用到实际工程中[9]。

由于涂层织物折皱识别难度大,且缺乏公开数据集,因此该领域尚缺乏深度学习应用的研究。基于深度学习卷积神经网络,本文开展了涂层织物折皱识别与几何参数检测的研究,采用多尺度特征融合算法和形态学处理,建立一种端到端的折皱智能检测网络。

1 涂层层织物折皱与人工检测

1.1 涂层织物材料

材料为美国URETEK公司生产的涂层织物Uretek3216-LV。该材料由持力层、聚氟乙烯面层以及其他功能层层压复合而成。图1为该材料外观和层合结构示意图,阴面为浅黄色,朝向结构内部;阳面为乳白色,朝向结构外部。

阴阳面宏观形貌分别如图1(a)、(b)所示,纵断面结构示意图如图1(c)所示。

图1 涂层织物材料Uretek3216-LV

1.2 涂层织物折皱

由于实际工程和试验环境复杂,涂层织物折皱形状分布不规则、复杂且密集,在光线昏暗等复杂的背景下,折皱中有相当大的噪音,导致连续性差和对比度低,小折皱和局部噪声导致边界模糊,而细小的边界信息对折皱正确识别和定位任务至关重要。如图2所示,涂层织物材料图像阴阳面区别较大。由于涂层材料不同,阴面呈现黄色(图2(a)),纱线经纬向交叉出现周期性凹凸,折皱区域与图像背景对比度不高,折皱边缘分界不明显。阳面呈白色(图2(b)),表面平滑,折皱相对明显且趋于稳定,但分布较密集。

图2 涂层织物材料局部折皱照片

1.3 标准揉搓试验

采用FDT-02 型揉搓试验机进行了标准揉搓试验[10-11]。试件长280 mm,宽200 mm。首先安装固定揉搓试件(图3(a)),然后进行揉搓试验。揉搓分三步完成,第一步上揉搓圆台向下平移90 mm,同时旋转440°(图3(b));第二步再向下平移65 mm;最后恢复至原始位置,整个过程下揉搓圆台固定不动。

图3 标准揉搓试验

1.4 折皱人工检测方法

根据美国材料实验协会(ASTM)相关标准[12],传统涂层织物折皱检测采用人工方法,对具有折皱的材料选取一定检测区域,根据折痕的长度,对折皱进行画点标识,点的分配方案如表1。该方法将折痕分类为峰线与谷线,折痕相对于膜材平面突出、靠近观察者的为峰线,以红点标识;反之为谷线,以蓝点标识,如图4所示。

表1 标识点分配方案B

图4 涂层织物折皱传统的评估方法

人工检测方法对检测人员的视力和光线条件要求较高,细小或亮度较低的折皱部分容易被忽略。工作人员的经验和主观判断对检测结果的影响较大,不同人员的检测结果很难一致,检测精度无法有效保证。由于人工检测效率低下,大型结构的折皱检测需要大量的人力和时间。

2 折皱识别模型构建

2.1 深度学习网络模型构架

本文建立了一种基于多尺度特征融合的折皱识别与检测的新颖深度卷积神经网络。该网络由下采样编码器和上采样解码器两部分组成。第一阶段通过卷积和池化操作对折皱图像进行逐像素特征提取学习,将每一个像素看作独立训练样本,用像素点上的损失函数进行训练,增加训练样本的有效性并防止模型过拟合。第二阶段采用新的上采样模式,将分割网络底层特征和多尺度高层特征有效融合,经过连续卷积上采样操作,进行折皱图像分类和识别。以下从整体语义分割网络、多尺度特征融合结构和上采样模块三个方面进行详细介绍。

2.1.1 折皱识别网络整体结构

本文深度卷积神经网络整体结构如图5 所示。为了检测高分辨率图像中的小表面折皱,需要较大的感受野以及能够捕获小特征细节。因此在编码器结构中采用较大的卷积层,以实现特征图和像素分类器之间的密集连接,从而增强像素上的分类和定位信息转换能力。编码器底层模块统一采用5×5卷积核,在高层模块中布置额外的下采样层并采用较大的15×15卷积核,以显著增加感受野尺寸和容量。每一个卷积层后会有特征归一化层和Relu激活函数层,后者有助于加快训练收敛速度。经过以上卷积和池化层逐层下采样特征提取最终输出单通道深层特征图,该特征图经过多尺度特征融合结构获取更多的折皱语义信息。解码器将多尺度特征融合模块输出和编码器底层特征进一步融合,经过连续卷积操作和四倍上采样,最终输出与原图同大小的折皱分割结果图。本次语义分割网络采用交叉熵函数[13]来计算像素预测损失,其表达如式(1)和(2)所示。

图5 基于改进的深度卷积神经网络示意图

式中,X、Wj分别代表输入数据及对应的权重,L代表损失函数,xn∈[0 ,255] 代表输入图像像素值,yn∈{0,1} 代表二值标签值,y∈{0,1} 代表网络最终预测概率值。

为了在少量训练样本数据集上得到良好的检测效果,本文对传统卷积神经网络进行以下的三个改善。第一,改善编码器结构更合理安排卷积层,编码器底层布置少量卷积层,相对高层布置多量且大尺寸卷积核以显著增加感受野大小和容量。第二,编码器使用最大池化层替代大步长卷积层,提高网络弱监督对象识别能力,避免特征提取过程中丢失细小但重要的分割信息。第三,将底层特征和多尺度高层特征进行有效融合,提高网络分割结果的精度,减少对训练样本数量的依赖。

2.1.2 多尺度特征融合结构

编码器使用多层卷积和池化操作进行逐步特征提取,能够识别具有较强鉴别特征的折皱区域,但对于鉴别特征较弱的部分效果并不理想[13]。扩张卷积是卷积核的一种特殊表达形式,其在卷积核权重之间插入零值扩大感受野,以扩大特征映射的图像区域[14]。为了准确的定位(较小的视野)和有效获取上下文信息(较大的视野)之间找到最佳平衡点,通过采样率为(1、3、5)和(6,12,18)[15-16]两组模型进行实验比较,最终将多尺度特征融合模块设置为采样率分别为(1、3、5)的三个3×3空洞卷积和全局平均池化层。编码器最后一个特征通过全局平均池化层映射,得到的特征通过256个滤波器进行1×1卷积,然后双线性地将特征上采样到所需的空间维度。本文采用扩张卷积添加多尺度特征融合结构,其结构如图6所示。

图6 多尺度特征融合结构

空洞卷积作为强大的工具,提供了一种有效的机制来控制视野。它不仅可以控制特征分辨率,还能调整滤波器视野以捕获多尺度信息。本文多尺度特征提取模块用于探索多尺度卷积特征,将全局背景基于图像层次进行编码获得特征,将单个尺度上提取的卷积特征更改为不同采样率的多个并行空洞卷积层重采样,有效地对任意尺度的区域进行检测分类。相较于传统的标准卷积多尺度处理方式,本文减少了网络参数规模和计算量,有效提高检测精度。

2.1.3 上采样模块

传统网络中由于降维操作来增大感受野同时降低分辨率,导致上采样无法完全还原部分细节信息的损失。因此本文网络解码器模块进行了改善,该部分包含两个输入:一是编码器底层高分辨特征的输出,二是多尺度特征融合模块高层低分辨率特征的输出。利用不同尺度特征以获取局部和全局上下文信息。如图7 所示,2、3 等编码器底层特征图保留了更多的空间细节。使用最大池化层(图7中5)相对大步长卷积层(图7中4)更能获得清晰的细小分割信息,如图中离折皱骨架较远,并在低分辨率检测图像中占据很小部分的折皱边界信息。而6 等深层特征图具有更强的表示能力。通过连续3×3 核大小的卷积运算提高特征融合后的表达能力。由于上采样模块可以恢复双线性上采样操作中丢失的细节,所以采用连续三个卷积层提高解码器学习能力。上采样模块的参数详情见表2。

图7 特征图可视化结果

表2 上采样模块参数组成

2.2 涂层织物材料折皱数据集

将标准揉搓试验后的涂层织物试验件进行实地扫描,收集到167张有效的折皱图像(包括阴阳面)。为了降低训练所需的计算显存,加快损失收敛速度,所采集的图像经过Adobe Photoshop CC 软件裁剪为统一尺寸:512×512 像素,建立250 张折皱图像原始数据库(包括涂层织物材料阴面122张、阳面128张)。对图像进行伽马校正处理亮度偏差,增加图像对比度。进而按照“训练集∶测试集=4∶1”的比例建立涂层织物折皱数据库。

深度学习语义分割属于监督学习,因此训练集每张图像样本需要对应一张标签图,标签图包含分割目标的定位和分类信息,形成目标数据集。本文使用Labelme软件对折皱图像进行人工标注,将折皱区域标注为白色区域,非折皱区域标注为黑色区域,数据集准备过程如图8所示。

图8 数据集的标签制作过程

2.3 模型评判标准

本文根据网络模型训练所得最优模型参数,在测试集上进行评估。本文采取以下指标[17]进行模型性能评估:准确率P,如公式(3)所示;查全率R,如公式(4)所示;平均精度AP;总和评价指标F1,如公式(5)所示及平均交并比mIOU,如公式(6)所示。

式中,TP表示真正例,FP表示假正例,FN表示假反例。Pii表示实际类型为i,预测类型为i的像素总数;Pji表示实际类型为i,预测类型为j的像素总数。

2.4 模型训练和结果

基于自制数据库的测试在Microsoft Windows 10专业版操作系统,Intel®CoreTMi9-8400 CPU@ 3.40 GHz的处理器,16 GB 显存的NVIDIA RTX 2080 显卡配置下,使用深度学习框架Tensorflow进行训练。训练阶段采用Adam算法优化网络,初始学习率设置为0.000 1,权值衰减率和梯度下降系数分别设置为0.000 5和0.999 7。经过33 000 次迭代以后,准确率不再提高且趋于稳定,本文模型识别和训练结果如图9和图10所示。

图9 本文网络折皱识别结果

本文模型最终在训练集和验证集上准确率均达到95%以上,损失收敛至小于0.1。识别效果如图10所示,涂层织物阴面凹凸不平等因素引起的像素噪声已被弱化,能够准确地分割出折皱骨架和边缘。与其他方法相比,本文网络在相同的训练迭代次数上收敛精度更高且稳定。模型性能仅使用1 570 万参数实现,而Resnet 和Xception 等流行网络参数数量分别为8 500 万和2 330万,有效减少了网络参数。

图10 训练结果

3 形态化处理

3.1 形态学骨架化

对于本文网络模型最终输出的二值分割结果图像,通过形态学骨架化运算将具有一定像素宽度的折皱变成单像素线条,以实现骨架提取,为计算折皱几何信息完成第一步基础处理,同时更简洁地描述折皱形态信息。本文定义骨架采用基于最大圆盘概念的算法[18],结果如图11所示。

图11 折皱图像骨架化过程

3.2 折皱几何信息计算

从骨架化后的折皱图像中可以得到一组坐标[xi,yi],xi、yi分别代表折皱骨架的横坐标和纵坐标,i=0,1,2,…,n。则折皱长度可按公式(7)算出:

在图像的像素矩阵中,任意点的像素坐标可表示成(i,Z(i,k)) 的形式,其中,i=0,1,2,…,n;K=1,2,…,n。假设第K列中最下面一个边缘检测点的像素坐标为(j,Z(j,k)),最上面一个边缘检测点(即折皱边缘点)的像素坐标为(i,Z(i,k)),则可以得出如下公式:

折皱的垂直像素宽度P(k):

式中,l为折皱长度,a为图像像素率,即一个单位的像素的实际长度。

图12(a)为随机选取的一张折皱图像,对该图像包含的折皱几何信息进行统计。第一步将原始图像输入本文算法得到折皱检测结果,即折皱分割二值图(图12(b))。接着通过折皱几何信息提取算法计算,得到折皱长度、平均宽度与面积等几何信息,折皱几何信息见表3。

图12 折皱几何信息智能统计示意图

表3 折皱几何信息数据表

4 模型验证与识别结果

4.1 模型验证

为验证本文网络结构改善的有效性,对网络编码器和解码器分别进行性能验证对比实验。

4.1.1 编码器结构性能验证

折皱检测任务为二分类问题,编码器特征提取结构不宜太深,参数不宜过多,否则会导致模型过拟合。本文对特征提取结构进行调整,编码器低层使用小卷积核,而深层布置相对大的卷积核以增加感受野大小和容量,提高特征有效提取和融合。另外使用最大池化层代替大步长卷积核进行下采样,避免小而重要的细节在特征提取过程中丢失。为验证结构优化的有效性,将与AlexNet[19]、VGG16[20]、ResNet[21]和Xception[22]等深度学习特征提取结构进行对比实验。本文将不同结构作为编码器下采样结构,其他模块参数保持不变,以同样的数据集上进行6组对比实验,实验结果如图13所示。

图13 不同特征提取结构准确度曲线表

不同结构准确率和结构对比如图13 和表4 所示。相对其他特征提取模型,本文编码器不仅简化网络结构,减少模型参数量,还有效提高分割精度,性能趋于稳定且高效,适合折皱图像语义分割二分类任务。

表4 不同模型结构和准确率比较

为保证网络结构的简洁和一致,诸多深度学习网络采用大步长卷积层代替池化层,同时不影响网络性能[23]。但卷积层不仅会增加网络参数,减慢训练速度,也会导致特征数据结构发生变化。而最大池化层引入了非线性,保证特征的平移不变性,使得高层特征具有更大的感受野,这有助于捕捉细小而重要的折皱细节信息。

本文编码器在每一块卷积操作后分别用卷积核为2×2 的最大池化层(图13 中本文算法MP)和卷积核为3×3,步长为2的卷积操作(图13中本文算法LC)进行一组对比实验。如图13所示,与大步长卷积操作相比,使用最大池化层进行特征降维,准确率能够提高约6.4%。

4.1.2 解码器结构性能验证

上采样模块卷积数的选择对模型最终折皱检测结果有很大的影响。为了验证本文解码器结构有效性,进行了不同上采样结构组合对比实验,表5显示了不同结构的性能对比。将第一层底层特征和高层语义特征输入后,与使用一个或两个卷积运算相比,采用三个[3×3,256]连续卷积可获得最佳识别结果,mIoU 值分别增加了1.05个百分点和0.12个百分点,当使用四个连续卷积运算时,模型精度开始下降。

表5 不同网络结构算法性能比较

为了评估底层特征对折皱边缘分割的影响,将编码器的第一层、第二层及两层低层组合特征进行对比实验。如表5所示,将两层特征组合使用时平均准确率AP和mIoU值分别为95.78%和77.53%,与使用单个底层特征相比,分别提高了4.32个百分点和3.89个百分点。因此,本文上采样模块将底层折皱特征与深层语义信息有效结合,有助于聚合折皱多级特征并提高检测准确性。

4.2 识别结果对比

为了进一步评估本文模型的识别效果,将本文算法分别与传统语义分割技术和其他深度学习网络进行对比,并采用多种评估指标进行定性和定量验证。

4.2.1 与传统图像语义分割技术识别结果对比

从数据库中随机选取3组折皱图像(包括阴阳面),将本文算法与Canny边缘检测法[24]、大律法和区域生长法进行比较。Canny边缘检测法采用Canny算子对折皱图像进行识别。大律法是一种自适应性阈值确定方法,利用灰度值分布确定合适的阈值,将图像分割为折皱与背景区域。区域生长法为一种基于前景图像相似性进行分割的算法[25]。不同算法折皱检测结果对比如图14所示。

图14 本文算法与传统语义分割算法识别结果对比

对于组别一和组别三,涂层织物阳面折皱分布较明显,主要干扰因素为折皱边缘亮度不均所导致的灰度值分布差异。Canny 边缘检测法和区域生长法能够识别出折皱大致骨架,但受噪声影响,没能分割折皱边缘。大律法只能粗略分割出折皱趋势和其边缘,但对折皱骨架两侧边缘和非折皱区域的判断误差较大。本文算法很好地克服了对比度低和噪声不均等因素对图像分割带来的干扰,正确识别出折皱及其边缘。

对于组别二,涂层织物阴面折皱与非折皱背景对比度低的特点增加了折皱识别难度,纱线经纬向交叉出现了周期性凹凸,图像亮度和灰度值变化大。

三种传统语义分割方法均受噪声干扰将材料凹凸处灰度值高即比较亮的部分误识为折皱,其中大律法大致分割出了折皱的位置和边界,但非折皱区域识别错误率相当高。本文算法能够精准地分割出折皱和背景。

4.2.2 与其他深度语义分割网络识别结果对比

从数据库中选取5组具有代表性的折皱图像,在同样的数据集基础上分别与Shelhamer等[26]提出的FCN和Chen等[27]提出的DeepLabV3+两种卷积神经网络算法进行对比实验,对比结果如图15 所示。使用本文采用的评估标准计算网络性能,对比结果见表6。

表6 不同网络算法性能比较 %

由表6不同算法的定量对比结果可知,在复杂背景和少量样本下本文折皱检测精度最高,与其他深度学习网络算法相比,mIoU值最高为77.53%。FCN和DeepLabv3+模型的mIoU 值分别为43.51%和61.49%。在其余如准确率、查全率、查准率和F1 等评价指标中,本文算法均达93%以上,检测结果明显优于其他网络。本文算法性能提高的主要原因是编码阶段使用了多尺度特征融合模块,捕获上下文折皱特征以进行精确的语义挖掘,在获得丰富语义信息的基础上,利用低层高分辨率特征恢复折皱目标边界信息,采用连续卷积运算恢复特征图,通过多层改进提高细小折皱检测精度。

图15 描述了不同算法折皱检测结果的视觉对比。第一列为包含折皱的原始图像。实验结果表明,全卷积神经网络FCN 整体识别效果差,同时严重受非折皱区域噪声干扰,不能适应复杂场景下的折皱智能检测。DeepLabV3+在检测材料阳面对比度较高的折皱任务上表现较好,但因单卷积核会导致折皱信息的丢失,在阴面折皱检测中遗漏了损伤程度低的细小折皱信息,折皱分割结果并不全面和准确。本文算法很好地融合了不同尺度语义特征,在少量训练样本基础上克服了折皱背景等诸多噪声干扰,准确分割出折皱骨架、边缘和细小部分。随着数据集的完善和网络参数的优化,本文算法精度和背景伪影抑制的鲁棒性可以进一步提高,以便于应用到更多复合材料损伤检测和评估任务中。

图15 本文算法与其他深度学习语义分割算法识别结果对比

4.2.3 训练集样本数量敏感度分析

模型训练所需样本数量是影响算法在实际工程中应用的重要因素,为了验证本文模型在数据库依赖上的改善,本文评估了样本数量对训练模型的影响。每组随机删除样本,分别以200、150 和100 张训练集进行三组对比实验,每组实验遵循本文2.4 节中的训练流程和网络参数的设定。

结果如图16所示,使用较少的训练样本时,FCN和DeepLabv3+识别精度比本文方法低,随着样本数量减少性能下降幅度明显。DeepLabv3+模型在150 和100个训练样本数据集上的准确率分别下降4.57 个百分点和27.87个百分点,表明DeepLabv3+对特定训练示例相当敏感。FCN对训练样本数量更为依赖,样本较少时网络性能不稳定。三组对比实验中,本文算法准确率均高于90%。本文通过逐像素损失训练方式和深层多尺度丰富语义信息特征和底层全局信息有效融合,在少量训练样本基础上还能保持优秀且稳定的检测效果,相比其他方法需要大量的训练样本,本文方法可以降低训练成本,提高在实际工程应用的能力。

图16 样本数量与算法识别精度柱状图

5 结束语

本文针对涂层织物折皱智能识别与检测方法的问题,提出一种基于多尺度特征融合的端到端深度卷积神经网络。首先通过标准揉搓试验模拟涂层织物折皱损伤过程建立数据库,利用伽马校正增加折皱与背景对比度;然后利用不同采样率的扩张卷积和池化操作构成多尺度特征融合模块,通过深底层特征融合并连续卷积运算上采样得到准确的分割结果;最后使用形态学处理获取折皱几何信息。实验结果表明,本文算法仅在250张数据库的容量上达到95.78%的准确率和77.53%的平均交并比。本文算法优化特征提取结构布置,采用多尺度扩张卷积,改进上采样模块,充分利用不同深度和不同尺度的折皱特征,不仅有效获取折皱鉴别特征,还能恢复折皱边界信息,实现折皱的像素级预测。通过对网路结构的验证、与传统语义分割技术和其他深度学习网络进行对比,本文算法所需的训练样本数少,但检测准确率高,能够解决传统人工检测效率低,识别误差大的问题,为智能检测涂层织物折皱提供了良好的技术手段。

猜你喜欢

折皱涂层语义
新型“刮刮乐”涂层在牙膏盒上的应用研究
语言与语义
折皱的记忆
我的书
塑料涂层的制备
“上”与“下”语义的不对称性及其认知阐释
精纺毛织物结构参数与折皱回复性的关系
认知范畴模糊与语义模糊
纬纱和组织结构对交织面料折皱回复性能的影响
Federal—Mogul公司开发的DuroGlide活塞环涂层