韩彦芳,杨海马,杨志豪,张裕聪,王紫菲
(上海理工大学 光电信息与计算机工程学院,上海 200093)
隧道内电缆以卡具固定在水泥墙面上,电缆脱落会带来严重的安全问题。人工巡视耗时长、步行检测效率低,易疲劳,车行检测易漏检。在巡视车上安装图像采集装置获取图像,采用图像处理技术进行检测能极大提高检测效率和精确度。但成像环境的影响,常常导致成像光照不均,而隧道中水泥墙面的潮湿使墙面和电缆成像灰度相近,使光照不均和墙面干扰成为影响图像分割结果的关键,尤其在工程应用中,更需要简单、高效的方法来解决这一问题。
在光照不均方面,受益于Land 等[1]提出的人眼视觉亮度与色彩感知模型——Retinex 理论,许多研究者提出了多种有效方法[2]。如同态滤波[3],通过设计频域滤波器在傅立叶域对不同光源分量的频率成分进行滤波,从而实现灰度均衡化。传统方法通过线性和非线性灰度变换如伽马校正等[4]方法增强对比度从而消除光照不均的影响;以及基于灰度统计直方图方法进行灰度均衡等[5]。近年流行的深度学习方法在广泛的样本训练基础上可以得到比传统方法更好的效果,但是其训练过程的不可解释,导致其训练往往无法考虑图像工程中更高一级处理的需求[6]。在基于数学形态学理论方面,Liu 等[7]提出用Top-Hat 变换结合灰度变换的方法进行光照不均带钢表面图像处理,改善了后续二值化结果。这些方法在不同应用领域均取得了很好的效果。但以上方法基于灰度值进行全局增强,而没有考虑图像灰度值的空间分布特点。对隧道电缆图像而言,其光照的不均衡导致目标和背景灰度相同或相近,使全局灰度均衡的方法没办法将目标和背景的灰度区分开,因而导致基于灰度特征相似性的图像分割方法失效。
另一方面,隧道不同位置存在墙面潮湿、剥落、污迹、带状干扰等不利因素的影响,导致墙面成像灰度与电缆灰度相近,传统基于特征相似性的区域分割方法很难区分两者[8-9],而基于特征不连续性的边缘检测方法受墙面和电缆表面噪声的影响也存在很大困难[10]。基于深度学习的方法可以充分挖掘多种图像特征,但需要大量样本的归类、整理和标记工作以进行网络训练[11-12]。区域生长方法[13-16]可以同时利用空间和灰度分布信息,但往往耗时长、因噪声和光照不均的影响,会出现空洞和过分割现象。
文中以隧道电缆检测为应用背景,根据电缆图像空间和灰度分布特点,探讨改进区域生长电缆分割方法。针对光照不均、墙面不利因素影响以及耗时长问题,在分析电缆图像空间和灰度分布特性的基础上,采用灰度均值投影包络拟合离差,对电缆ROI 进行定位,从而消除光照不均和墙面对图像分割的影响;同时,结合电缆空间位置信息,初始化种子点并设定终止准则,大大减少了待处理数据量。
隧道电缆图像采集系统由巡视车上加载光源、图像采集卡、运动控制卡构成,获取图像数据及与图像相对应的公里标数和工作距离数据,将相应数据输入计算机进行存储、分析,公里标数和工作距离用于对检测结果图像所对应的实际地点进行定位,以通知人工及时检修。隧道电缆图像采集系统见图1。
图1 隧道电缆图像采集系统Fig.1 Tunnel cable image acquisition system
从工程应用需求和数据采集效率的角度考虑,视频采集系统获取的只有光强信号,没有波谱信息。图像采集过程中,巡视车行进方向与电缆平行,墙面正对光源中心区域较亮,远离光源部分的墙面较暗,导致所采集图像光照不均。同时,潮湿墙面与大部分电缆成像灰度值都较低,导致常用的OTSU 阈值法无法将电缆从背景中提取出来。图2 所示原始图像大小为1 000×1 800,其OTSU 二值化结果可明显看出光照不均的影响。图2 中,左边一列为原始图像,右边一列为对应的OTSU 阈值化结果。
由图2 可知,由于光源能量随距离增大而衰减,使照度在水平方向上呈现出从中心向两侧递减,光源行进方向(垂直方向)照度均衡的特点。同时,电缆在图像中也具有明显的垂直走向,所以如果将像素灰度值向垂直方向投影,可以结合空间和灰度值特征对墙面较暗区域与电缆区域的特点进行分析。基于这一思想,提出如下垂直方向投影法进行灰度分布分析。
设图像为f(x,y),图像大小为M×N,则定义垂直方向灰度均值投影V为:
依据式(1)对图2 中原始图像a—f 进行计算,得到垂直方向灰度均值投影,如图3 所示,横坐标为图像的列数,纵坐标为计算出的列向灰度均值投影V,其结果分别与图2 中a—f 原始图像对应。
图2 电缆原始图像及OTSU 阈值化结果Fig.2 Original image and OTSU thresholding results of cable
图3 垂直方向灰度均值投影Fig.3 Vertical projection of gray mean
通过图像采集系统获取了1 km 的隧道视频,共3 098 幅图像。经统计,发现不论是墙面潮湿、污迹、涂画、裂纹还是电缆位置靠左或右侧边、表面污损,其灰度均值投影曲线包络都表现为二次曲线走势。其中,电缆在空间上对应于曲线的谷点位置,光源中心对应峰值位置,而在水平方向,随着远离中心位置,灰度列均值急剧衰减,以致图像左右两侧灰度甚至低于电缆区域灰度;当墙面整体潮湿(图3b)而电缆表面反射光较强时,电缆对应曲线两谷值中间包括一个峰值所在的区域;当电缆位于图像左右两端位置时,与墙面的灰度相近,其可区分度降低(如图3d 所示)。
4)当墙面有形似电缆的低灰度区域时,(如图3f)曲线会有多个谷点,而电缆倾斜角度较低,区域内部特征一致性较高,对应的谷点一般最小。
通过以上分析,发现投影曲线谷点区域对应于电缆所在位置,因电缆在图像中为竖直走向,所以以谷点为中心的矩形区即电缆所在ROI(Region Of Interest)。如果提取ROI 区域进行电缆分割,则可以避开光照不均衡和墙面潮湿、剥落、涂画、裂纹等多种不利因素的影响。同时,大大降低待处理的数据量。基于这种设想,文中提出基于灰度投影谷点检测的ROI 提取方法以进行电缆图像分割。
基于最小二乘法,采用二次多项式对灰度投影曲线V外包络函数进行拟合得到拟合曲线C,则定义离差r为:
由于电缆在投影曲线中往往对应最远离包络函数的谷点,所以可通过求取离差最大值获取电缆位置l。
式中:arg(x)为求x对应的坐标。
由图2a—f 得到的包络曲线及其拟合离差结果见图4。其中,图4a—f 为灰度均值垂直方向投影曲线包络拟合结果,图4g—l 为根据式(2)计算得到的包络离差曲线图。两类图的横坐标均为图像列数,左栏图纵坐标为图像灰度均值垂直方向投影包络拟合值,右栏图纵坐标为拟合离差值。从图4 中看出,包络离差曲线的峰值非常明显,对应于电缆所在列位置。
图4 投影包络拟合及离差Fig.4 Envelop fitting and deviation of projection
基于以上分析,可知线缆区域内像素点具有如下特征。
1)像素列坐标均在拟合离差最大值坐标附近。
2)线缆区域内部像素一致性较高。
3)墙面剥落严重时,区域灰度变化大。
4)卡具宽度比线缆大。
因此,定义特征量如下。
1)设ROI 图像为f(x,y)其大小为M×N,拟合离差最大值列坐标为l,则定义空间偏移量d为:
2)设r为表示列数的随机变量,L为列数,V(i)为第i列像素灰度均值投影,Vpeak表示灰度均值投影的峰值,定义为:
根据H,寻找曲线低谷对应的坐标范围,即得卡具所在的行坐标范围,在此行坐标范围内,可对卡具在水平方向的分布范围进行搜索定位,从而得到卡具水平方向跨度D。
基于先验知识和以上特征分析,采用区域生长算法模型进行电缆分割,可以方便地将灰度分布特征和空间分布特征结合起来。为此,提出如下种子点选择、生长准则和终止准则。
种子点选择:在ROI 内,根据式(3)选择列坐标为l的所有像素为种子点S,种子点个数为N,种子点灰度均值为m。
生长准则:对于种子点四邻域中待检测像素点x(i,j)的判断准则为:|m-x|<T,T为阈值。当x满足生长准则时,将x加入种子点集合,S的个数N增加1,更新种子点灰度均值m。
终止准则:根据卡具水平方向分布范围结果,设定空间偏移量阈值为D,根据式(4),当待检测像素点空间偏移量d>D或当待检测点灰度值与种子平均灰度值m之差大于阈值T时,停止生长。
基于灰度均值投影和区域生长模型,在原始图像上的电缆分割流程见图5。
图5 ROI 区域生长流程Fig.5 Flow chart of ROI region growing
设原始图像为f(x,y),大小为M×N。
1)读入图像。
2)灰度投影包络拟合。根据式(1)对图像做垂直灰度均值投影,得到V(i),i=1,2,…,N,基于最小二乘原则,采用二次多项式对V进行包络拟合,得到包络曲线C(i)i=1,2, …,N。
3)ROI 提取,种子点初始化。根据式(2)计算包络离差ri,根据式(3)得到离差最大值对应的列坐标l;由l确定电缆ROI 区域,并以图像中第l列所有像素点初始化区域生长种子点。
4)卡具宽度估计。根据式(8)计算ROI 水平方向灰度均值投影,寻找谷点,对应于卡具所在行范围,以此区域内所有像素垂直灰度均值投影确定卡具水平方向跨度D。
5)频域高斯低通滤波。根据式(5)—(7)计算ROI 二阶矩μ2,根据μ2大小判断墙面剥落和涂画情况,用以确定频域高斯低通滤波器截止频率D0,当μ2较大时,选择较小D0进行滤波;
6)区域生长。计算种子点平均灰度值m,计算种子点四邻域中像素点灰度值与m差值,及其空间偏移量d,根据生长准则生长。
7)终止条件判定。根据式(4),判断待检测像素空间偏移量d是否大于D,若d大于D,则停止生长;若d小于D,则判断待检测像素灰度值与种子点灰度均值之差是否小于阈值T,如果是,则将当前像素点加入种子点集合,更新种子点个数N,更新种子点灰度均值m,返回第6 步;如果否,停止生长。
8)输出分割结果。
光照不均、墙面裂纹、墙面潮湿、剥落和涂画等是所有隧道成像中影响分割的主要原因。但各种状况影响分割算法的角度不同,一种全局分割方法很难同时对所有墙面状况下的图像分割都取得好的效果。根据影响因素的不同,对巡视车图像采集系统获取的一公里隧道墙面数据共3 098 幅灰度图像进行分类,构建了6 个数据集,分别对应于六种墙面状况,即单纯光照不均、墙面潮湿、污迹、裂纹、电缆位于图像一端(暗区域)、条带状干扰等,图2a—f 所示原始图像分别展示了不同墙面类别的特点。所有图像均存在光照不均问题,其中图2a 所属数据集墙面不利因素较少,主要为单纯光照不均;图 2b 所属数据集主要为墙面潮湿而电缆表面特征一致性差;图2c 所属数据集主要为墙面潮湿且存在潮湿轮廓干扰;图2d 所属数据集主要为电缆位于图像的一端暗区域中;图2e 所属数据集为墙面存在严重剥落和裂纹;图2f 所属数据集为墙面上存在与电缆形似的潮湿区域。为验证算法的有效性,每个数据集由30 幅图像构成。
对比实验基于 6 个数据集进行。分别采用K-means 聚类和全局区域生长等传统分割方法、目前得到广泛关注的Unet 语义分割方法和文中的ROI 区域生长法进行实验。
Unet 是一种基于编码解码结构的深度神经网络,对小训练样本问题非常有效,在语义分割中得到广泛关注和成功应用。首先从每个数据集中取3 幅图像进行标注,将每幅图像分成240×448 的图像块,对Unet网络进行训练,然后利用训练好的Unet 网络对每个数据集进行语义分割。Unet 网络的训练在单CPU 上进行,迭代次数为90 次,用时2 小时6 分钟,训练准确度和损失曲线见图6。
图6 Unet 训练过程Fig.6 Process of Unet training
实验在Windows10 操作系统下进行,对不同数据集,进行高斯核函数同态滤波后,分别采用K-means 聚类和全局区域生长进行分割,利用训练好的Unet 网络和ROI 区域生长算法,分别对每一个数据集进行测试,实验在相同的软硬件环境下进行,每种数据集中每张图像的平均运行时间见表1。
从表1 中看出,全局区域生长方法耗时长的问题非常明显,不考虑Unet 网络训练时间,只统计使用训练好的Unet 网络处理测试样本时间,每种数据集的每张图像平均运行时间也都在30 s 以上。基于ROI的区域生长由于极大降低了待处理数据量,算法运行时间大大降低。
表1 平均运行时间对比Tab.1 Comparison of average running time s
采用Unet 语义分割、K-means 聚类、全局区域生长与文中的ROI 区域生长分割分别对6 类数据集进行实验对比。每类数据集取出典型实验结果见图7—12。
从图7—12 可看到,光照不均和墙面不同状况对基于全局灰度特征的图像分割方法带来极大困难,虽然Unet 网络训练准确度达到95%,但在测试中,背景干扰的影响和细节丢失的问题比较严重,虽然通过改进网络结构和训练方法,可以改善Unet 网络的处理效果,但其处理测试样本的时间也值得关注。基于灰度投影初始化种子点的全局区域生长法在墙面状况较好时可以提取出电缆区域,但电缆表面一致性差或者墙面存在严重剥落和裂纹时(如图8 和图11),全局区域生长法也受到了很大影响。在不同墙面状况下,基于ROI 的区域生长法避开了光照不均和墙面的影响,成功实现了电缆分割。
图7 数据集1 实验结果对比Fig.7 Comparison of segmentation result of data set 1
图8 数据集2 实验结果对比Fig.8 Comparison of segmentation result of data set 2
图9 数据集3 实验结果对比Fig.9 Comparison of segmentation result of data set 3
图10 数据集4 实验结果对比Fig.10 Comparison of segmentation result of data set 4
图11 数据集5 实验结果对比Fig.11 Comparison of segmentation result of data set 5
图12 数据集6 分割结果对比Fig.12 Comparison of segmentation result of data set 6
分别对各种方法的分割正确率进行了对比。正确率的衡量应以满足更高层应用需求为标准。鉴于图像分割目的是为了得到独立而完整的电缆区域,以用于最终的电缆脱落状态识别,所以将正确率的衡量标准定为能否正确提取目标,而不受背景干扰。为此,采用2 个指标进行统计:误把电缆当做背景的漏分率(TF)和错把背景当做目标的误分率(FT),其中,当电缆区域空洞面积大于电缆面积一半的情况,记为漏分TF。对每个数据集进行了实验观察和统计,得出漏分率TF 和错分率FT 的结果如表2 所示。
表2 误分率FT 和漏分率TF 结果对比Tab.2 Comparison of false segmentation rate FT and miss segmentation rate TF
为具体比较分割结果的准确程度,分别对每个数据集取出 3 幅图像共 18 幅图像进行标注得到groundtruth 数据,计算各方法分割结果与groundtruth之间的平均Dice 系数,如表3 所示。Dice 系数反映了分割结果与groundtruth 的重合程度,其值介于[0,1]之间。
表3 平均Dice 指数对比Tab.3 Comparison of average Dice parameter
由表2 和表3 可知,Unet、K-means 方法在墙面情况复杂时,漏分割和错分割的比例很高,尤其是当墙面剥落和裂纹严重时,这2 种方法的平均Dice 系数不到0.2,算法几乎失效。而大部分情况下,这2种算法受到墙面干扰的影响而会把墙面错分为电缆;全局区域生长法因为利用了定位信息进行种子点初始化,所以对于单纯光照不均、墙面潮湿和电缆位于图像一端暗区域范围时,平均Dice 系数在0.9 以上,分割效果相对较好,但在墙面存在条带状暗区域干扰时,平均Dice 系数不到0.2,该方法也会失效;不论是哪一类数据集,ROI 区域生长法的平均Dice 系数都在0.9 以上,获得了很好的效果,只有在电缆表面一致性很差时,电缆内部会稍有小面积空洞(如图8所示)。
隧道电缆脱落图像检测具有重要安全意义和实用价值。其中,电缆图像分割是实现电缆状态识别的关键。通过分析隧道成像数据,建立了6 种墙面情况的数据集:单纯光照不均、墙面潮湿、剥落、污迹、裂纹,基于特征相似性的图像分割方法很难同时对所有数据集实现有效电缆分割。传统区域生长法受种子点选择、生长准则和终止准则的影响很大,往往存在耗时长、空洞和过分割问题。文中通过对电缆图像空间分布和灰度分布特征分析,利用灰度均值投影包络拟合离差,简单、快速实现电缆ROI 定位,在ROI上通过区域生长实现电缆分割。针对种子点对区域生长算法的影响,充分利用定位信息进行种子点初始化,针对区域生长耗时长的问题,利用定位信息确定了区域生长空间范围,极大降低了待处理数据量。与传统分割方法及目前流行的Unet 语义分割的对比实验结果表明,文中方法有效避开了光照不均和墙面多种不利因素对分割算法的影响,获得了更好的效果,为进一步电缆状态识别提供了有力支撑。