基于改进Canny算法的女性服装款式轮廓检测研究

2020-07-21 07:17:44王雅静陈晓玲
关键词:女装款式轮廓

王雅静,宋 丹,陈晓玲

(1.湖南工程学院 计算机与通信学院,湘潭 411104;2.湖南工程学院 纺织服装学院,湘潭 411104)

0 引言

图像边缘检测技术贯穿于整个图像处理操作中,并且形成独立的研究领域,如检测CT影像轮廓遮挡、铁道异物入侵[1]等.在服装行业有着巨大增值空间的女性服装产业中,对服装信息的需求较大,女装图像检测技术相对落后,尤其是进行服装边缘检测技术亟待提高.在提取过程中依据图像的特征及不同的应用需求选择不同的算法,给定图像的适当算法是进行图像识别和检索的关键步骤,也是进一步理解图像的基础,边缘检测具有相当大的现实意义与良好的发展前景,可以实际应用于女装廓形精细化分类和智能识别[2]等研究方向.

本文针对女性服装图片的复杂属性情况,研究服装款式的轮廓检测问题.Wang X等[3]提出了一种基于聚类模式识别和轮廓节点检测的计算机识别方法,分割出服装的衣片部分,体现不出整体服装信息.本文提出一种改进Canny算法对样本进行服装轮廓的提取,改善了女性服装各款式轮廓的分割效果,展示了完整的服装边缘信息.并与Canny算法及典型的微分算子算法进行结果对比,微分算子算法选取文献[4][5]中效果较好的边缘检测算子,其中包括Roberts、Prewitt以及Laplacian算子.

1 Canny算子

Canny于1986年提出Canny边缘检测算法[6],该算法提出后,在实际工程领域中获得了广泛应用.Canny边缘检测算法首先使用高斯核对图像的各个像素点进行卷积,达到平滑图象和抑制噪声的作用;用一阶偏导的差商来计算梯度的幅值和方向,根据得出的幅值对图像的线条进行提取;对梯度幅值进行非极大值抑制,使得边缘的像素点达到最佳值;用双阈值算法检测和连接边缘,将边缘二值化,并形成边缘轮廓;最后使用高斯平滑函数,对轮廓降噪[7].

梯度幅值的计算公式(2个方向)为

式(1)和(2)中:f(i,j)为(i,j)点的图像灰度值。

式(3)中:M为(i,j)点的幅值;Gx为X方向的梯度幅值;Gy为Y方向的梯度幅值。

2 改进Canny算法

传统Canny算法对于具有特殊属性的女性服装图像,会出现噪声边缘过多、边缘不连接等问题.刘骊等[8]指出由于服装图像常常包含遮挡物和复杂背景,导致分割准确率较低.该算法经过非极大值抑制确认边缘像素点,所以双阈值的选择对轮廓的确认尤为重要.

文献[9]将Otsu算法的时间复杂度进行了降低,该方法根据二分法计算梯度幅值的均值来取得双阈值.在使用该算法确认阈值的区间后,实现了对女装图像整体边缘的提取,但是纹理与面料在提取过程中也会成为边缘的一部分.针对此问题,李东等[10]指出傅立叶描述子、Hu不变矩等方法都能提取特征向量、重构轮廓曲线、去除噪声轮廓.对于单独无序的像素点,文献[11]提出了目标轮廓无序点集描述,并使用点对点匹配获取区域轮廓.但上述的方法都是分割色块较大的图像主体,不符合服装图像轮廓提取的要求.

针对上述问题,本文对Canny边缘检测算法提出相应的改进,由于样本背景与服装的类间方差大概率为单峰图像,所以使用Otsu算法[12]取得最大的类间方差值的灰度值,通过减小阈值的搜索域,来自适应得到高、低阈值,具体公式如下:

本文针对文献中的问题提出改进,精确服装轮廓,消除多余的纹理及装饰物噪声,改进的Canny算法具体步骤如下:

(1)将灰度图的梯度均值T分为两个部分,再算出上述两个部分的均值Tm(大于梯度均值的平均值)和Tn(小于梯度均值的平均值),根据类间方差的统计意义可得,阈值的搜索域为[Tm,Tn].

(2)设定Tm-1和Tm+1为计算步长,依次计算类间方差值,分别计算出g(Tm-1)、g(Tm)、g(Tm+1).并通过重复三个计算出阈值的类间方差的大小,缩小搜索域,当g(Tm-1)和g(Tm+1)同时小于g(Tm)时,Tm为高阈值,低阈值取高阈值的0.5倍.

(3)计算出的双阈值用作Canny算法分割的阈值的参数.然后遍历整个图像,根据查找到的白色像素点(像素值为255),查找与之相连的像素点在选取的领域值内是否为白色,不为白色说明该像素块属于内部,将该点删除(置为黑色像素值0).以此方法追踪服装图像的边缘,消除服装轮廓外的噪声.

对图像中所有像素点执行上述操作,便可完成女装图像款式轮廓的提取.这种方法能够减少双阈值的计算量,并且能自适应的找出分割阈值.

3 仿真实验结果

3.1 图像边缘分割算法对比分析

图1、图2是裙装、上衣的图像分割结果,图(b)、(c)、(d)系列子图为三种微分算子实验的结果图,图(e)和(f)系列子图为Canny算法与改进Canny算法的实验结果.

图1 裙装对比图(微分算法、Canny、改进Canny)

图2 上衣对比图(微分算法、Canny、改进Canny)

微分算子算法是图像分割的典型算法[13]:(1)Robert算子作为一阶微分算子算法,其算法计算量小,对细节的反应也较为敏感,是一种利用局部差分算子寻找边缘的算子;(2)Prewitt算子是加权平均算子,像素平均则相当于对图像进行地同滤波,算法结果中会有些许噪声的影响;(3)Laplacian算子来自拉普拉斯变换,会产生一个陡峭的零交叉,并根据这个零交叉来发现边缘.这三种微分算子算法的效果表现较差,出现外部轮廓不连续、边缘不平滑、纹理等产生的噪声较多,并且不能与外部轮廓区分开等问题.Laplacian算子的边缘相较于其他几种算子的分割效果来看,具有边缘更加明显的特点,但外部轮廓的连续性不强.如图1短裙图像的(e)部分所示,短裙的腰部轮廓出现明显的断裂,同样出现此问题的还有Prewitt算子.而Roberts算子由于对噪声敏感的特点,服装内的纹理和花纹的边缘噪声与服装款式轮廓连接较多,特别是有碎花图案的女装图像,如图2短袖图像的(b)部分和(c)部分.图1和图2的(f)部分是改进Canny算法的实验结果,将Canny算法的不足处,即花色、纹理、装饰设计所形成的噪声边缘,有效的进行了消除,准确的提取到了女装图像的轮廓边缘.

3.2 改进Canny算法实验设计及结果分析

基于上述理论作为基础,本文选取白色背景的女性服装图像作为样本进行仿真实验.实验将样本分为八类款式,对每类图像进行预处理,经过预处理的图像,为改进的Canny算法提供初步的边缘信息,为后续款式轮廓的提取打下基础.服装图像预处理过程包括将彩色原始图像进行灰度化,使用Otsu算法对灰度图像进行二值化.

图像预处理后,使用改进Canny算法对所处理图片进行图像边缘的分割,形成完整的服装图像轮廓.初步形成的服装轮廓里包括了服装纹理和面料等产生的噪声边缘,该算法能自适应选取阈值,将二值化的服装图像、服装外部轮廓与噪声边缘分离,分割出去除噪声边缘的服装轮廓.所以只需追踪物体的外部边界,即可获得图像里的女装款式轮廓.具体过程如图3所示.

图3 女装款式提取流程图

在MATLAB编程软件平台下,本文通过对56张女装图片进行了仿真实验.实验将样本图片分为八个类别:短/长半身裙、短/长裙、短/长袖、短/长裤.选取背心、短袖、长裙、长裤这四类仿真实验结果进行展示,如图4所示.

图4 女性服装款式轮廓检测

图4 (a)为原图像,图 4(b)为原图像使用Otsu算法进行二值化的效果图,而图4(c)展示的是使用改进Canny算法的款式轮廓分割效果图.

在实验样本图片的选取上,颜色、纹理、面料和款式多样化可以有效测试算法的泛化能力,达到预期效果.改进的Canny算法不论是在纹理较多(如碎花长裙图像)、面料不同(如纱质长半身裙图像),还是图像明暗度(如短袖与长袖图像)不同的女性服装图片上都能提取到准确的服装款式轮廓,实验表明该算法在噪声边缘多的情况下,也有较好的轮廓检测效果,并具有适用性广、抗噪性强、准确度高等优点.

4 结论

为了能有效分割女装图像的款式轮廓,保证后续服装图像处理环节的效果,本文提出了一种改进Canny算法的服装图像分割算法.该算法使用改进的Otsu算法计算图像梯度幅值的高、低阈值,初步提取服装的轮廓描述,然后用非最大值抑制来选取服装轮廓中的边缘曲线,进行细化后,消除噪声边缘.并经过追踪服装外部轮廓,忽略纹理或装饰物所形成的噪声信息,提取到清晰连续的女装款式轮廓.在仿真实验中,对多类别的女装图像进行了轮廓提取,并与微分算子算法和Canny算法进行了对比分析,实验结果表明本文改进的算法更能准确分割出服装边缘,提取到女装款式轮廓,表达出女装的款式特征.

猜你喜欢
女装款式轮廓
轮廓错觉
女装流行面料
女装风格与细节
基于实时轮廓误差估算的数控系统轮廓控制
Dream Bag
2017年春夏男装周的女装风景
Coco薇(2016年8期)2016-10-09 02:10:06
女装流行面料
最火的单品款式
Coco薇(2015年5期)2016-03-29 22:40:10
在线学习机制下的Snake轮廓跟踪
计算机工程(2015年4期)2015-07-05 08:27:39
初为人母的着装困扰