基于箱型图与折点阈值边界的电缆分割方法

2021-09-15 11:20王昊天厉小润赵辽英
计算机应用与软件 2021年9期
关键词:绝缘层导体色调

王昊天 厉小润* 赵辽英

1(浙江大学电气工程学院 浙江 杭州 310027)

2(杭州电子科技大学计算机技术应用研究所 浙江 杭州 310018)

0 引 言

作为电能传输的载体,电力电缆的需求越来越大。由于制造工艺的原因会出现很多质量不达标的劣质电缆,这些劣质电缆的使用在给用户和用电企业带来经济损失的同时还会存在巨大的安全隐患,因此对生产出的电力电缆需要进行严格的质量检测。几何尺寸是影响电力电缆质量的一个重要指标。目前,电缆尺寸的检测一般是通过人工测量,耗时耗力。因此,根据电缆图像自动分割出电缆各区域从而实现电缆尺寸检测自动化具有十分重要的意义。

目前,常用的彩色图像分割方法有基于阈值的分割方法[1-3]、基于边缘的分割方法[4-7]、基于区域的分割方法[8-11]、基于图论的分割方法[12-15]、基于能量泛函的分割方法[16-19],以及基于深度学习的分割方法[20]。其中:基于阈值的分割方法思想是通过判断像素点每个通道的灰度值,将其划分到不同的类别中;基于边缘的分割方法是根据区域边缘灰度值存在突变的现象,根据梯度将图像分割出不同区域;基于区域的分割方法是按照图像的相似性准则划分为不同区域块,主要有种子生长法、区域分裂合并、分水岭法等;基于图论的分割方法是将图像分割问题与图的最小割问题相关联,将图像映射成带权无向图,使得分割后子图内部保持相似度最大,而子图之间相似度保持最小,常见的方法有GraphCut[12]、RandomWalk[14]等;基于能量泛函的分割方法主要指活动轮廓模型以及在其基础上发展出来的算法,基本思想是使用连续曲线来表达目标边缘,并定义一个能量泛函使得其自变量包括边缘曲线,因此分割过程就转变为求解能量泛函的最小值的过程,活动轮廓主要分为参数活动轮廓模型[16]和几何活动轮廓模型[17];基于深度学习的分割方法是一种监督学习的方法,通过学习大量的样本来训练模型来达到分割图像的目的,常用的模型有Mask R-CNN[20]。

由于基于深度学习的分割方法需要大量的样本进行训练,因此当图片样本较少时不太适合。在传统的分割方法中,当图像边缘复杂且目标区域内部颜色相近的情况下,阈值分割方法由于简单快速等优点而被广泛应用。阈值分割方法最核心的步骤是如何确定阈值。一般情况下,阈值分割方法通常是设定一个全局分割评价函数以及分割的区域个数,通过启发式算法如蚁群算法等得到每个区域的分割阈值从而完成分割[21-23]。但是由于电缆区域数量多、面积小且只关注目标区域的分割好坏,通过启发式算法得到的阈值参数并不适用。

基于此,本文提出一种基于箱型图与折点阈值边界的电缆分割方法。首先将图像转成HSV图像并设计一种基于阈值边界的区域分割方法;之后根据电缆的导体及结构得到各区域的颜色信息并进行初步分割,对分割结果进行统计得到区域的色调中位数以及各通道的四分位数,计算箱型图下边界作为各通道的初始阈值边界;最后根据目标区域内部颜色相近但与其余区域颜色存在差异的特点,计算折点阈值边界并完成区域的精确分割。

1 电缆区域分割算法

1.1 电缆区域分割流程

电力电缆内部由导体、绝缘层、护套、填充物四部分组成。其中导体、绝缘层和护套的尺寸有着明确的规定,需要进行检测。导体材料有铜和铝,颜色分别为铜褐色和白色;绝缘层颜色有彩色与灰色;护套颜色为黑色;填充物为白色。在进行电缆各区域分割时,首先根据原RGB图像得到HSV图像,之后依次进行导体、绝缘层、护套区域的分割。分割流程如图1所示。

图1 电缆区域分割流程

1.2 导体区域分割

电力电缆导体材料有铜和铝两种,铜为铜褐色,铝为白色,导体的形状为圆形或扇形。在判断导体材料时,首先根据铜所属的色调范围在HSV图像中进行区域分割,并去除小面积区域以及形状不符合的区域。若去除后图像存在导体区域,则导体材料为铜,否则导体材料为铝。之后使用基于箱型图与折点阈值边界的区域分割方法进行彩色区域的分割或白色区域的分割来获得导体区域。

1.3 绝缘层区域分割

每个导体区域都会被绝缘层包裹,当分割出各导体区域时,根据形态学膨胀等操作可以得到包裹导体的绝缘层颜色。根据得到颜色的饱和度判断是彩色的绝缘层还是灰色的绝缘层。之后使用基于箱型图与折点阈值边界的区域分割方法进行彩色区域的分割或灰色区域的分割来获得绝缘层区域。

1.4 护套区域分割

由于电缆的护套为黑色而填充物为白色,因此可以直接对图像通过OTSU算法进行二值化并保留黑色区域,之后从该区域中去除已经分割出的导体区域和绝缘层区域即可得到护套区域。

2 箱型图与折点阈值边界分割算法

2.1 算法流程

基于传统的图像分割方法在电缆区域分割上的局限性,设计了一种基于箱型图与折点阈值边界分割方法。首先根据原RGB图像得到HSV图像。在HSV空间中,H为色调,不同的颜色对应着不同的色调,同时色调在空间上呈现循环性,当对色调进行归一化后,色调在0附近的颜色与色调在1附近的颜色均呈现红色;S为饱和度,代表颜色的鲜艳程度,高饱和度在视觉上呈现彩色,而低饱和度在视觉上呈现灰色;V为明度,明度过低时,饱和度和色调没有区分度。由于在电缆区域分割流程中,需要彩色区域分割、白色区域分割、灰色区域分割三种区域分割方式,因此分别设计了式(1)-式(3)来实现彩色、白色和灰色的区域分割。

(1)

(2)

(3)

式中:Hmid为目标区域的色调中位数;Vmid为目标区域的明度中位数;Th、Ts、Tv分别为H、S、V通道的阈值边界。当原始HSV图像中的像素点满足上述公式时,其分割图像对应的像素点数值为1,否则为0。由于色调的循环特性,即归一化后色调在0附近的颜色与色调在1附近的颜色相似,因此不能直接对色调作差,而是通过函数fH来得到色调间的差值,其定义如下:

fH(H,Hmid)=min(|H-Hmid|,|H-Hmid+1|,

|H-Hmid-1|)

(4)

根据以上公式,只要能确定目标区域的中位数以及各个阈值边界,就能将电缆对应区域分割出来,算法流程如图2所示。

图2 折点阈值边界区域分割算法流程

2.2 目标区域初步分割

在电缆区域分割流程中,根据电缆中是否存在符合导体面积和形状的铜褐色区域可以判断电缆的导体材料是铜还是铝。而当分割出导体区域后,根据包裹导体的外层区域可以得到每个导体外的绝缘层属于哪种颜色。因此,可以根据目标区域的已知颜色信息通过设置Th=THori、Ts=TSori、Tv=TVori,使用式(1)-式(3)进行初步分割。初步分割旨在先分割出一个粗略的目标区域,以供算法后续能进行精确定位。

2.3 目标区域信息统计

在得到初步分割图像I0之后,根据式(5)-式(7)得到图像目标区域H、S、V三个通道对应的数组。

aH=[Ihsv(i,j,1)|i,j∈(I0(i,j)=1)]

(5)

aS=[Ihsv(i,j,2)|i,j∈(I0(i,j)=1)]

(6)

aV=[Ihsv(i,j,3)||i,j∈(I0(i,j)=1)]

(7)

由于色调的循环性,若目标区域为红色,则会出现色调一部分在0附近,一部分在1附近的情况,为了防止这种情况导致中位数统计出错,设计式(8)-式(9)得到色调的中位数Hmid。

(8)

(9)

式中:aH′、aH1′为aH、aH1按升序排序后的数组;N为数组aH的长度;var(x)表示数组x的方差。若Hmid<0,则Hmid=Hmid+1。

同时根据式(10)-式(13)分别得到S通道的下四分位数Sq1和上四分位数Sq3以及V通道的下四分位数Vq1和上四分位数Vq3。

Sq1=aS′(N×0.25)

(10)

Sq3=aS′(N×0.75)

(11)

Vq1=aV′(N×0.25)

(12)

Vq3=aV′(N×0.75)

(13)

式中:aS′和aV′为aS和aV按升序排序后的数组;N为数组的长度。

2.4 初始阈值边界计算

对于式(1)-式(3),由于存在多个需要计算的折点阈值边界,需要按照顺序依次计算,因此在计算时需要给定其他未计算通道一个初始阈值边界。

若将目标区域像素看作是数据的集合,那么不属于目标区域的像素则可以看作是数据的异常值。箱型图是一种用作显示一组数据分散情况的统计图。常用于识别数据分布以及异常数据检测。其主要由5个点组成:上边缘Tmax,上四分位数Q3,中位数,下四分位数Q1,下边缘Tmin。箱型图示意图如图3所示。

图3 箱型图示意图

若数据在上边缘和下边缘范围外,则认为是异常值。下边缘的计算公式如下:

Tmin=Q1-1.5×(Q3-Q1)

(14)

参考箱型图下边缘计算公式,计算得到饱和度S和明度V的初始阈值边界:

TSinit=max(TSori,Sq1-1.5×(Sq3-Sq1))

(15)

TVinit=max(TVori,Vq1-1.5×(Vq3-Vq1))

(16)

2.5 折点阈值边界计算

对于电缆的各区域,其颜色特点为在各区域内部颜色连续变化而区域之间颜色会存在差异,即当阈值边界越来越宽松时,找到的目标区域像素点数量会越来越多,但是每次增加的幅度应该越来越小,当在某个阈值边界处像素个数增加幅度变大,则认为找到了目标区域外的像素,将前一个阈值设为该目标区域的阈值边界。以计算色调阈值边界为例,其伪代码如算法1所示。

算法1计算色调阈值边界

1.functiongetH()

2. Initialize step=0.02,i=1,Th=step,Ts=TSinit,Tv=TVinit

3.whileTh<1do

4. get image Iiaccording formula(1)

5.ifi>1then

6. Li=(sum(Ii)-sum(Ii-1))/sum(Ii-1)

//计算像素增加比例

7.else

8. Li=0

9.endif

10.ifi>2 and Li-1

11. Th=Th-step

12. return Th

//如果像素提升比例变大,则返回前一个阈值

13.endif

14. i=i+1

15. Th=Th+step

//拓展阈值边界

16.endwhile

17.endfunction

以一个实际的电缆图像为例,在计算其红色绝缘层时,以上步骤得到的每次像素增加的比例以及每次找到的红色绝缘层区域如图4所示。

(a) 原图 (b) 每次增加的像素比例

可以发现,在第4次放宽阈值边界时,找到了部分导体区域,像素增加的比例提高,因此第3次的阈值边界作为红色绝缘层的阈值边界较为合适。

在后续计算饱和度折点阈值边界和明度折点阈值边界时,将之前已经找到的阈值边界作为初值,其过程与计算色调阈值边界类似。对于白色区域分割和灰色区域分割同样与上述步骤类似。

2.6 目标区域精确分割

在计算得到的目标区域中位数以及各通道阈值边界后,代入相应公式进行目标区域的精确分割。

3 实验结果

本文实验所用数据均来源于普通相机在白色背景且光照均匀的条件下对实际电缆横截面拍摄的图片。所有实验均通过MATLAB R2017a实现,实验平台为个人计算机(Intel(R) Core(TM) i5- 6200U CPU 2.3 GHz)。设置参数THori=0.03,TSori=TVori=0.35,这两个值分别为判断颜色是否相似以及是否为彩色的阈值。其目的在于分割出一个粗略的目标区域以供算法后续进行精确分割,影响较小。以实际电缆为例,通过本文算法对各区域的分割结果以及阈值边界如图5和表1所示。在图5中,电缆中的导体和4个绝缘层区域均完整地分割出来。从表1中可以看出,电缆各区域阈值边界相差较大。蓝色绝缘层在图像中没有其他区域色调与它接近且它自身磨损较严重,所以色调阈值边界较大且饱和度阈值边界较小;黄色绝缘层内部颜色比较一致,同时电缆内部的白色填充物和黄色绝缘层色调很接近但饱和度更低,所以黄色绝缘层的色调阈值边界较小且饱和度阈值边界较大。表1数据说明本文算法可以很好地计算出各区域的最佳阈值边界。

(a) 原图 (b) 导体铜 (c) 蓝色绝缘层

表1 折点阈值边界

根据本文的电缆区域分割算法并进行简单的形态学处理后得到的电缆三个部分的分割结果如图6所示。可以看到,电缆的三个区域均被完整地分割出来。

图6 电缆区域分割结果

同时,将本文使用的箱型图与折点阈值边界分割算法与区域生长算法以及自适应步长的阈值分割算法对电缆的绝缘层进行分割结果对比,结果如图7所示。可以看到,当绝缘层颜色比较一致时,所有算法都能较好地将其分割出来。而当绝缘层内有磨损等导致部分颜色发生变化时,区域生长算法和自适应步长阈值分割算法都存在某些绝缘层区域没有分割完全而某些不是绝缘层区域被分割出来的现象。对比之下,本文的基于箱型图与折点阈值边界的分割方法可以比较好地分割出电缆的每个绝缘层区域。

(a) 原图 (b) 区域生长 (c) 自适应步长阈值分割 (d) 本文方法

4 结 语

本文针对传统图像分割方法对电缆区域分割效果差的问题,提出一种基于箱型图与折点阈值边界的电缆区域分割方法。首先根据电缆的导体与结构信息,递进得到电缆各区域的颜色信息。之后设计基于阈值边界的区域分割方法,通过对各区域的信息进行统计,根据箱型图得到各通道的初始阈值边界。最后根据电缆区域间颜色存在差异的特性计算出各区域的折点阈值边界并进行电缆区域分割。实验结果表明,本文方法基于电缆的结构特征以及统计得到的自适应参数对各区域进行二次精确分割,在不需要人工设定超参数的情况下,可以很好地分割出电缆各区域,鲁棒性高。通过本文算法对电缆各区域进行分割,可以直接得到电缆导体的面积从而判断电缆导体部分是否符合国家标准。同时,根据分割出的绝缘层与护套,根据梯度信息来提取精确边界进而判断电缆绝缘层与护套厚度是否符合标准。通过图像对电缆各区域尺寸进行自动化检测,在降低人工检测成本的同时也提高了检测精度,对电缆质量检测有着重要意义。

猜你喜欢
绝缘层导体色调
湖光水色调
导体杆在磁场中的运动问题剖析与启示
Aliens encounter stories:illusion or imagination
马拉喀什记忆
带螺旋形芯的高效加热线
高频传输线路
In Spring!春之色调
静电现象有什么用?
电力电缆的检修及维护
电荷在导体上的分布演示实验改进