一种应用于定型机织物的探边算法 下载: 642次
1 引言
在纺织印染机械中,热定形机是印染工艺后处理过程中的重要设备,探边纠偏装置是热定型机中控制织物正确走向的关键装置[1]。在织物热定形前,该装置实时跟踪布匹的边缘位置,自动调整织物位置以确保织物的边缘纳入针板或布铗[2]。因此,探边精度高、跟踪速度快、响应敏捷是确保织物能够准确上铗的前提。
探边装置分为接触探边与非接触探边。接触探边是利用机械触杆与微动开关的配合来感知织物边缘,判断织物的位置情况。该技术探边精度差,响应速度慢,故障率高,已经被淘汰[3]。第一代非接触光电探边器采用红外探边技术,利用红外接收管对红外光的敏感特性,探测织物的边缘[4]。但红外探边技术采用的是分立的红外接收管,因此体积大小及排列的方式共同限制了系统的最小探边精度[5]。
图像处理技术在当今工业控制及自动化等领域的应用十分广泛,是各国学者竞相研究的重点领域[6]。相对于第一代探边器,基于图像处理的非接触探边器具有十分明显的技术优势:1)图像传感器的测量精度可以达到微米级别,且速度更快;2)由于微处理器运算能力的提高,新一代探边系统采用嵌入式微处理器处理图像;3)设备的自动化、稳定性、通信总控制等性能也得到了显著的提高[7]。
应用于探边系统的图像探边算法是探边系统的核心部分,处理的对象是由线阵CCD探头采集到的一维图像,通过算法来识别织物的边缘位置[8]。目前,很多学者对探边算法进行了大量研究,当前的织物检测中运用的算法主要是传统的图像处理算法,如微分法和最大类间方差法(OTSU算法)[9]。微分法根据图像边缘具有突变的特点,求取微分结果中的零点或极值点作为边缘位置,该方法对图像中的离散噪声十分敏感[10]。最大类间方差法基于最小二乘法原理[11],在一维边缘分割中对图像中的每一个像素求方差,确定最大方差所在的像素位置,该位置就是图像分割的位置,即边缘位置[12]。该算法运算量过大,在复杂织物特征情况下,算法容易失效。一些新兴的图像边缘检测算法在某种场景下提取出来的边缘效果良好,但是算法复杂,不适合植入嵌入式系统[13]。针对当前的研究现状,本文提出了一种应用在多种织物探边中的自适应阈值算法。该算法能够适应多种织物边缘位置的灰度变化,根据织物的边缘特征得到阈值,快速、准确地识别不同织物的边缘位置,容躁性好,适应能力强。
2 探边环境及目标图像
2.1 探边任务分析
一个完整的机器视觉探边系统包括线阵CCD传感器、镜头、电源模块、光源、光源控制器和嵌入式控制器等[14]。该系统利用线阵CCD传感器采集包含织物与背景信息的图像,通过嵌入式微处理器中的算法处理,提取边缘位置信息。系统如
在检测环境中,该视觉探边系统安装在定型机上的固定位置,包含有线阵CCD传感器的探头位于织物边缘部分的正上方,织物向前运动,探头与运动织物的相对位置如
图 2. 探头与运动织物俯视图。(a)标准位置;(b)向左偏移;(c)向右偏移
Fig. 2. Top view of probe and moving textile. (a) Normal position; (b) left shift; (c) right shift
2.2 图像采集特点
系统使用的线阵CCD传感器为东芝公司生产的TCD1209DG,该CCD传感器有效像素数为1×2048,像元宽度为14 μm,系统采用的镜头放大倍率为0.9×,采用的标定法为基于点阵标定板的视觉测量系统标定方法[15]。设计要求的织物边幅变化量为±10 mm,织物边幅精确度为0.1 mm,织物到探头的距离为36 mm±2 mm。
探边算法的设计需要根据放大倍率计算公式以及相机标定方法,将织物边幅变化量与织物边幅精确度分别转化为对应的像素数。镜头放大率
式中:
由于采用的线阵CCD传感器有效像素数为1×2048,采集到的图像大小为1 pixel×2048 pixel,即一条直线,如
根据前文探边内容的描述,可以得知探边算法处理的图像存在以下特征:
1) 图像中只存在一个真实的边缘,该边缘为图像中背景与织物交界处;
2) 图像中被测织物与背景的相对位置是已知的(以
3) 待测织物的种类以及织物的特征多种多样,因此待处理的灰度响应图像呈现不同的特点,某些织物的灰度响应曲线可能较为复杂;
4) 背景的材质可人为调整,可根据需要选取颜色单一、与织物灰度有明显区别的背景板。
采集到的织物与背景灰度响应曲线如
对应于不同的织物与背景,灰度响应曲线将呈现不同的形状,灰度图中灰度值出现明显变化的过渡带为织物的边缘范围,该过渡带的中心位置可以视为织物的边缘位置。根据实际需求,算法并不需要识别织物的纹理及其他特征,只需要将灰度响应曲线转化为只含有边缘信息的二值图,如
3 织物自适应阈值探边算法
3.1 算法实现要求
根据前文分析,设计的探边算法应该满足以下要求:
1) 织物可能具有条纹、缺陷和镂空等特征,探边算法具有滤除这些特征的能力;
2) 通过该算法获得的织物边缘位置应满足系统的精度要求;
3) 考虑到生产线上织物材质等因素的变化,该算法具有适应绝大多数织物检测的能力;
4) 探边系统采用的是嵌入式系统设计,需要考虑算法的计算时间,算法应该简洁,速度快,尽量少出现复杂循环以及乘除运算;
5) 对于某些难以识别的灰度图像,算法应该具有错误处理机制,防止系统误操作。
结合(1)式和(2)式得到织物相对于中心位置的偏移量Δ
式中:
3.2 图像预处理
由于环境影响或者随机干扰会使图像中存在许多噪声,因此不能直接对采集到的灰度图像作探边处理。传统的预处理方法有中值滤波、均值滤波、高斯滤波和维纳滤波等,考虑到嵌入式系统的实时性以及运算能力,本文采用中值滤波进行预处理。预处理结果将图像中有用的信息保留下来,便于后续获取边缘位置。
3.3 分割阈值确定
在图像的阈值分割中,通常采用固定阈值分割法,通过固定的阈值对图像进行分割,从而得到二值图像。近似的数学模型可表示为
式中:
算法步骤如下:
1) 计算灰度图像中最后350 pixel的灰度值均值
2) 根据均值
3) 将
4) 计算
5) 分割图像得到二值图;
6) 获得边缘像素点序号
7) 将二值图化为只含有边缘信息的二值图。
下面介绍求解均值
步骤1)中,由于探头安装在定型机中固定位置,因此灰度图像中边缘过渡带的左侧为织物,右侧为背景。根据前面的计算,图像整体的像素范围为1~2000 pixel,探头的标准位置设定在序号为1000的像素点,织物边幅的变换量设定为1300 pixel,因此灰度图像中最后350 pixel的灰度值必定为背景部分的灰度,即边缘的最大位置为序号1650的像素点。计算最后350 pixel的灰度值均值
当图像中出现边缘时,灰度值会出现突变,并在一定的像素区间内保持变化。算法中为了避免出现大量的循环乘除计算,并且排除噪声的干扰,采用如下方法求解边缘起始点
步骤2)中,根据步骤1)计算得到的350 pixel的均值
当这五个间隔点的值减去均值
分析织物的灰度响应图像,在边缘过渡带结束后,图像的灰度曲线将趋于平缓,按照步骤2)中描述的搜索方向,边缘过渡带结束后,出现的是织物的灰度响应曲线。在相同测试条件下,测得一张纸片的边缘过渡带的宽度大约为20 pixel。
根据对边缘过渡带的分析,步骤3)中求解边缘终止点
当斜率
通过步骤2)与步骤3)的计算,得到边缘起始点
执行步骤5)后,图像的灰度值二值化如(4)式所示。
步骤6)中采用如下方法得到边缘像素点序号
当检测中的织物含有镂空或者多条纹等特征时,需要在阈值分割后的二值图中去除这些特征的影响,步骤7)中采用的方法如下:对阈值分割后的图像,读取边缘点
综前文所述,即得到边缘像素点序号
4 实验结果及分析
4.1 实验环境
实验部分需要验证的是所设计算法的准确性及计算速度,因此将系统硬件部分的参数(如CCD的曝光时间、光源类型、镜头放大倍率和相机高度等)以及环境因素作为不变量,实验中选择计算机软件(MATLAB)进行算法的运行并得到运行时间,以避免直接将算法移植到嵌入式硬件中运行造成的不便。具体实验平台环境参数如
实验结果需要与织物的真实边缘进行对比,以判断误差的大小。设定织物的真实边缘为通过软件测量的织物灰度图像中灰度值跳变区域的二分之一处。实验采用控制变量法,探边算法验证实验中算法运行时间不包括中值滤波处理所用的时间。
4.2 实验内容及结果
中值滤波中滤波模板尺寸的选择将会影响过滤噪声的质量,本文设计了一组中值滤波模板选取实验。为了验证设计的算法对不同织物的处理能力以及算法的效率,设计了四组织物探边实验,在大量的实验数据中选取下列五组数据进行分析。
实验1.中值滤波模板选取实验
中值滤波中滤波模板尺寸的选取与应用的对象有关,如果尺寸过小,可能过滤不掉噪声,如果尺寸过大,运算规模会增大很多,因此实验选取5×1、7×1、9×1模板对米白色地毯的灰度图像进行中值滤波。计算采用各个模板滤波后的基于均值的信噪比以及运算时间,通过对比选择最合适的滤波模板,并将该模板用于待测织物的中值滤波。实验数据列于
表 1. 实验平台环境参数
Table 1. Experimental parameters of environment platform
|
表 2. 5×1、7×1、9×1模板滤波数据
Table 2. Filtering data of 5×1, 7×1, and 9×1 templates
|
根据实验结果,当滤波模板为5×1时,运算时间最短且信噪比最高,因此选择5×1模板作为织物灰度图像中值滤波处理的模板尺寸。
实验2. 高、低灰度响应织物处理实验
算法对于高、低灰度响应织物的探边能力能够体现算法针对不同织物的适应能力。实验选择米白色地毯的灰度图像作为高灰度响应情况,选择深灰色地毯作为低灰度响应情况,以均匀的绒面黑色吸光布为背景。
图 11. 米白色地毯边缘检测结果。(a)原始灰度;(b)中值滤波处理后;(c)算法处理后
Fig. 11. Creamy white carpet edge detection result. (a) Original grayscale; (b) after median filtering; (c) after algorithm post-processing
根据本组实验的结果,设计的算法能够精确识别高、低灰度织物响应图像中织物的边缘位置,说明算法能处理的灰度范围足够大。
实验3.包含镂空和条纹等特征的织物处理实验
织物中可能存在某些会被误认为边缘的特征,因此需要验证算法能否在复杂的织物特征中得到准确的边缘位置。实验选择包含有镂空和白色条纹的深灰色棉布作为实验对象,以均匀的绒面黑色吸光布为背景。
表 3. 高、低灰度响应织物探边数据
Table 3. High and low gray response fabric edge detection data
|
表 4. 含有镂空和白色条纹的深灰色棉布探边数据
Table 4. Edge detection data of dark gray cotton cloth with hollowed-out and white stripes
|
图 13. 含有镂空和白色条纹的深灰色棉布边缘检测结果。(a)原始灰度;(b)中值滤波处理后;(c)算法处理后
Fig. 13. Edge detection result of dark gray cotton cloth with hollowed-out and white stripes. (a) Original grayscale; (b) after median filtering; (c) after algorithm post-processing
实验4. 不同背景处理实验
测试算法效果时,应选择与织物颜色区别较大的背景颜色。考虑到背景的不同也会影响算法的检测效果,本组实验验证不同背景下算法对同一织物的检测效果。实验选择黑色背景布与浅灰色背景布为实验对象,以包含有镂空和白色条纹的深灰色棉布为检测织物,本组实验中黑色背景布下包含有镂空和白色条纹的深灰色棉布的实验数据为实验3中的数据。
表 5. 不同背景颜色探边数据
Table 5. Edge detection data for different background colors
|
实验5. 经典算法、新兴图像处理算法与设计算法探边效果对比实验
本文论述的算法相比于经典的探边算法以及新兴图像处理算法,需要在运行速度以及准确度等方面有较大的提升,本组实验中,选择OTSU算法、格子玻尔兹曼算法处理采集到的织物灰度图像,选择绿白黄纱含有镂空纱布为检测织物,以均匀的绒面黑色吸光布为背景。
图 14. 浅灰色背景下含有镂空和白色条纹的深灰色棉布边缘检测结果。(a)原始灰度;(b)中值滤波处理后;(c)算法处理后
Fig. 14. Edge detection result of dark gray cotton cloth with hollowed-out and white stripes in a light gray background. (a) Original grayscale; (b) after median filtering; (c) after algorithm post-processing
表 6. 不同算法探边数据
Table 6. Edge detection data of different algorithms
|
从实验结果可以发现,当经典算法与新型图像处理算法运用于织物探边时,准确度较低且运算时间较长,因此不适合运用于织物探边。
根据前文论述,待检测织物布幅的像素变化量精确度为6 pixel(即通过探边算法求得的边缘位置与实际边缘位置的差值应小于6 pixel)。通过四组实验的验证可得,本文设计的算法计算得到的边缘位置与织物实际边缘的偏差均小于6 pixel,且计算时间与其他探边算法相比明显缩短。根据算法得出边缘位置,即可计算织物相对于中心位置的偏移量。算法设计完成后,将算法植入FPGA芯片中,FPGA控制器将偏移量转化成脉冲发送给电机,便可对织物进行纠正。
5 结论
针对提高定型机织物探边精确度与速度的问题,分析了第一代与第二代探边系统中存在的问题,在设计探边算法时,充分参考了采集到的各类织物图像的特点以及采集环境的特点,提出了一种能够适用于多种织物特征的探边算法。该算法在适应能力、计算速度以及精确度上有了较大的提升,并且对数据噪声、数据异常点个数很不敏感。实验结果表明,本文提出的算法对多种织物特征下的探边有较为优秀的表现。算法满足织物边幅探边精确度小于0.1 mm、计算速度快的要求。在今后的系统设计中,考虑将探边算法移植到FPGA嵌入式模块中,并设计通信模块等以实现系统的整体探边速度要求。
[1] 常为人. 热定形的光电探边装置[J]. 印染, 1987, 13(1): 41-45.
[2] 何哲, 杨涛. 定型机拉伸拉幅控制系统研究[J]. 现代制造工程, 2017, 3(5): 13-16.
[3] 周海燕, 苏娟, 胡益. 印染流水线上探边仪系统设计[J]. 仪表技术与传感器, 2009, 5(2): 44-46.
[4] 孙德培. 红外探边及纠偏方案探讨[J]. 上海毛麻科技, 2003, 8(3): 19-21.
[5] 聂飞. 基于线阵CCD的探边系统的研究与设计[D]. 长沙: 湖南大学, 2014: 11- 12.
NieF. The research and design of edge detection system based on linear array CCD[D]. Changsha: Hunan University, 2014: 11- 12.
[6] Qin Y H, Su J H, Yu R C. Development of machine vision and applications[J]. Science & Technology Vision, 2016, 35(25): 153-154.
[7] 张岩, 裴晓敏, 付韶彬. 基于单片机的智能循迹小车设计[J]. 国外电子测量技术, 2014, 33(3): 51-54.
[9] 李文羽, 程隆棣. 基于机器视觉和图像处理的织物疵点检测研究新进展[J]. 纺织学报, 2014, 35(3): 158-164.
[10] 吴一全, 孟天亮, 吴诗婳. 图像阈值分割方法研究进展20年(1994—2014)[J]. 数据采集与处理, 2015, 30(1): 1-23.
[12] 马骕, 邓喀中, 庄会富, 等. 中低分辨率SAR纹理多特征的OTSU变化检测[J]. 激光与光电子学进展, 2017, 54(6): 062804.
[13] 吴掬鸥, 袁晓桂. 基于阈值分割技术的图像分割法研究[J]. 现代电子技术, 2016, 39(16): 105-107.
[15] 段振云, 王宁, 赵文辉, 等. 基于点阵标定板的视觉测量系统的标定方法[J]. 光学学报, 2016, 36(5): 0515004.
Article Outline
傅灵逍, 陈广锋, 陈革. 一种应用于定型机织物的探边算法[J]. 激光与光电子学进展, 2018, 55(11): 111506. Lingxiao Fu, Guangfeng Chen, Ge Chen. An Edge Detection Algorithm Applied to Setting Machine[J]. Laser & Optoelectronics Progress, 2018, 55(11): 111506.