CN112884750A - 一种基于gpu的素色织物折痕提取方法 - Google Patents
一种基于gpu的素色织物折痕提取方法 Download PDFInfo
- Publication number
- CN112884750A CN112884750A CN202110241411.XA CN202110241411A CN112884750A CN 112884750 A CN112884750 A CN 112884750A CN 202110241411 A CN202110241411 A CN 202110241411A CN 112884750 A CN112884750 A CN 112884750A
- Authority
- CN
- China
- Prior art keywords
- crease
- pixel
- point set
- dark
- bright
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 239000004744 fabric Substances 0.000 title claims abstract description 105
- 238000000605 extraction Methods 0.000 title claims abstract description 38
- 238000002360 preparation method Methods 0.000 claims abstract description 103
- 238000001514 detection method Methods 0.000 claims abstract description 33
- 238000000034 method Methods 0.000 claims abstract description 14
- 238000001914 filtration Methods 0.000 claims abstract description 10
- 239000011159 matrix material Substances 0.000 claims description 22
- 238000012216 screening Methods 0.000 claims description 21
- 238000009795 derivation Methods 0.000 claims description 9
- 238000007781 pre-processing Methods 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 230000007547 defect Effects 0.000 abstract description 8
- 238000004364 calculation method Methods 0.000 abstract description 7
- 238000007689 inspection Methods 0.000 abstract description 6
- 238000005457 optimization Methods 0.000 abstract description 2
- 230000009466 transformation Effects 0.000 abstract 1
- 230000006870 function Effects 0.000 description 21
- 238000004422 calculation algorithm Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 4
- 239000004753 textile Substances 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 2
- HPTJABJPZMULFH-UHFFFAOYSA-N 12-[(Cyclohexylcarbamoyl)amino]dodecanoic acid Chemical compound OC(=O)CCCCCCCCCCCNC(=O)NC1CCCCC1 HPTJABJPZMULFH-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 210000004204 blood vessel Anatomy 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000004043 dyeing Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007730 finishing process Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 238000009941 weaving Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/0002—Inspection of images, e.g. flaw detection
- G06T7/0004—Industrial image inspection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20024—Filtering details
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30108—Industrial image inspection
- G06T2207/30124—Fabrics; Textile; Paper
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Treatment Of Fiber Materials (AREA)
Abstract
本发明公开了一种基于GPU的素色织物折痕提取方法。本发明包括以下步骤:1对采集的素色织物图像进行均值滤波和尺寸变换,获得预处理后的素色织物图像;2设置检测参数,并且利用二维高斯函数生成高斯一/二阶偏导卷积核;3在GPU中,采用基于Steger的线条中心线提取法利用高斯一/二阶偏导卷积核并行计算预处理后的素色织物图像中各像素点的一/二阶偏导数、特征值、法线方向和折痕中心线亚像素位置,获得中心线预备点集;4在CPU上,遍历折痕中心线预备点集,输出最终的折痕中心线。本发明进行GPU并行优化,提取素色织物图像中的折痕中心线,计算效率高,能够应用于在线式自动验布平台,有效地将折痕与布面疵点进行分离,提高疵点检测准确率。
Description
技术领域
本发明属于纺织技术领域与图像处理技术领域的一种素色织物折痕提取方法,具体涉及了一种基于GPU的素色织物折痕提取方法。
背景技术
我国是面料生产大国,织物织造完成后通常需要对织物疵点进行检测。在纺织行业中,传统的织物检测方式是人工检验,该方法存在效率低、漏检率大等问题,工人的主观性对检测结果影响也较大。针对此问题,基于计算机视觉的织物瑕疵自动检测技术在纺织行业的应用日趋成熟,该技术采用工业相机等采集织物图像,在计算机完成图像处理,定位提取瑕疵部位。相应地,拥有高度并行化的GPU被广泛地应用到计算机图像处理领域,使用GPU并行处理能够有效解决图像处理中运算量大、实时性低的难题。随着GPU技术的发展,计算能力得到不断提升、单位算力硬件成本也在不断下降。
在图像处理中,Steger算法是具有亚像素级精度的中心线提取方法,Steger算法目前已在医学图像中的血管提取、卫星图像中的道路提取等技术领域具有较多研究与应用,研究显示其具有较强的普适性。Steger算法利用Hessian矩阵通过求法线方向上的极值点,由泰勒级数展开求取线条中心的亚像素位置。该算法具有精度高、鲁棒性好等优势,但是其计算量大,在实时性要求高的中心脊线提取场合难以快速实现。
在传统纺织工业的染整工艺流程里,在最后进行验布环节时,常常因为织物积压或工艺原因造成布面存在较多的折痕,当自动验布平台与打卷平台相结合时,无法在布面施加过大的张力,最终自动验布平台采集的织物图像存在较多的折痕,对断经、断纬、污迹、孔洞等影响织物质量评级的严重疵点的自动检测造成影响。
Steger算法应用在素色织物的折痕提取上,相较于传统方法,对图像质量的要求更低,受织物图像的背景纹理影响小。Steger算法的检测效果优势明显,但是其运算复杂度高,而对于广泛采用的在线型的自动验布平台,对检测算法的实时性要求较高。
发明内容
本发明对Steger的线条中心线提取法进行了GPU并行优化,并应用在素色织物图像中的折痕中心线提取,CPU+GPU通用异构并行处理架构来完成对图像的高速处理,具有较高的实时性,能够更好地应用于在线式自动验布平台,识别提取布面折痕,有效地将折痕与布面疵点进行分离,提高疵点检测准确率。
本发明采用以下技术方案:
本发明包括以下步骤:
步骤1:对采集的素色织物图像进行预处理,预处理包括均值滤波和尺寸变换,获得预处理后的素色织物图像;
步骤2:根据预先采集的带有折痕的素色织物图像数据集设置参考宽度和参考对比度,根据参考宽度和参考对比度设置检测参数,根据检测参数的一部分利用二维高斯函数生成高斯一/二阶偏导卷积核;
步骤3:在GPU中,采用基于Steger的线条中心线提取法利用高斯一/二阶偏导卷积核并行计算预处理后的素色织物图像中各像素点的一/二阶偏导数、特征值、法线方向和折痕中心线亚像素位置,根据检测参数的另一部分对所有像素点的特征值进行筛选,获得折痕中心线预备点集;
步骤4:在CPU上,遍历折痕中心线预备点集,根据折痕中心线预备点集中各像素点的一/二阶偏导数、法线方向和折痕中心线亚像素位置进行亮/暗折痕中心线的连线提取,输出亮/暗折痕中心线;根据折痕相关特征对亮/暗折痕中心线进行筛选,输出最终的亮/暗折痕中心线。
所述步骤1具体为:
1.1)利用一个长宽与素色织物图像的背景纹理横纵周期相同的矩形均值滤波核与素色织物图像卷积进行均值滤波,获得滤波后的素色织物图像;
1.2)对滤波后的素色织物图像进行尺寸变换,将滤波后的素色织物图像的分辨率缩小至50~100DPI,获得预处理后的素色织物图像。
所述步骤2具体为:
2.1)根据预先采集的带有折痕的素色织物图像数据集,由素色织物图像数据集中所有折痕的最大宽度和平均对比度分别作为参考宽度和参考对比度,设置参考宽度和参考对比度,根据参考宽度和参考对比度设置检测参数,检测参数包括高斯函数标准差σ和筛选阈值th;
高斯函数标准差σ通过以下公式进行设置:
其中,w为参考宽度的一半;
筛选阈值th通过以下公式进行设置:
其中,c为参考对比度;
2.2)根据高斯函数标准差σ生成二维高斯函数,对二维高斯函数进行一阶偏导和二阶偏导,获得高斯一/二阶偏导卷积核gx,gy,gxx,gxy,gyy。
所述步骤3具体为:
3.1)根据预处理后的素色织物图像大小设置GPU的线程块block的数目及每个线程块block中的线程thread数目,预处理后的素色织物图像的每个像素点均对应唯一的线程thread,每个线程thread中预设同一个核函数,进行GPU并行运算;
3.2)在每个线程thread的核函数中分别利用高斯一/二阶偏导卷积核完成每个像素点的5次高斯偏导卷积,获得每个像素点的一/二阶偏导数,根据每个像素点的二阶偏导数计算每个像素点的Hessian矩阵,再计算Hessian矩阵的全部特征值,计算绝对值最大的特征值对应的单位特征向量,单位特征向量作为折痕在该像素点处的法线方向,确定折痕中心线亚像素位置;
3.3)建立中心线预备点集,根据检测参数的另一部分对所有像素点的Hessian矩阵的绝对值最大的特征值进行筛选,将筛选获得的像素点加入中心线预备点集,获得中心线预备点集。
所述步骤3.2)具体为:
S1:在每个像素点对应的线程thread的核函数中依次实现每个像素点及其周围像素与对应的五个高斯一/二阶偏导卷积核的卷积,获得该像素点处的一阶偏导数rx、ry和二阶偏导数rxx、rxy、ryy,由一阶偏导数rx、ry和二阶偏导数rxx、rxy、ryy组成该像素点处的一/二阶偏导数;
S2:每个像素点对应的Hessian矩阵为H,Hessian矩阵H通过以下公式进行设置:
计算Hessian矩阵H的全部特征值;
S3:选择绝对值最大的特征值ev,计算特征值ev对应的单位特征向量(nx,ny),单位特征向量(nx,ny)的方向为折痕在该像素点处的法线方向;
S4:预处理后的素色织物图像在像素点(x0,y0)处沿法线方向(nx,ny)进行二阶泰勒展开,获得亚像素点(x0+tnx,y0+tny),亚像素点(x0+tnx,y0+tny)处像素值通过以下公式进行设置:
其中,(x0+tnx,y0+tny)为像素点(x0,y0)沿着法线方向(nx,ny)上的亚像素点位置,tnx和tny分别为亚像素点(x0+tnx,y0+tny)相对于像素点(x0,y0)在x方向和y方向上的距离偏移量,f(x0+tnx,y0+tny)为亚像素点(x0+tnx,y0+tny)处的像素值,t为偏移参数;
根据预设的中心线条件对每个像素点在x方向上的距离偏移量tnx和y方向上的距离偏移量tny进行判断,如果满足预设的中心线条件,则该像素点是折痕中心线位置,计算该像素点的折痕中心线亚像素位置。
所述步骤3.3)具体为:
折痕在预处理后的素色织物图像上表现出较背景更亮的亮折痕或较背景更暗的暗折痕,亮折痕中心线和暗折痕中心线分别为亮线和暗线;建立第一亮线预备点集、第二亮线预备点集、第一暗线预备点集和第二暗线预备点集,亮线预备点集包括第一亮线预备点集和第二亮线预备点集,暗线预备点集包括第一暗线预备点集和第二暗线预备点集;根据检测参数中的筛选阈值th对所有像素点的绝对值最大的特征值ev进行筛选:
满足ev≤-th的像素点加入第一亮线预备点集,满足-th<ev≤-th/3的像素点加入第二亮线预备点集;
满足ev≥th的像素点加入第一暗线预备点集,满足th/3≤ev<th的像素点加入第二暗线预备点集;
主要由第一亮线预备点集、第二亮线预备点集、第一暗线预备点集和第二暗线预备点集组成中心线预备点集。
所述步骤4具体为:
4.1)在第一亮线预备点集中取像素点作为亮折痕中心线的起点,根据亮线预备点集中像素点的一阶偏导数、特征值ev、法线方向和折痕中心线亚像素位置,利用Steger的线条中心线提取法中的连线方法在亮线预备点集中进行亮折痕中心线的提取,直至遍历完第一亮线预备点集,输出亮折痕中心线;
4.2)在第一暗线预备点集中取像素点作为暗折痕中心线的起点,根据暗线预备点集中像素点的一阶偏导数、特征值ev、法线方向和折痕中心线亚像素位置,利用Steger的线条中心线提取法中的连线方法在暗线预备点集中进行暗折痕中心线的提取,直至遍历完第一暗线预备点集,输出暗折痕中心线;
4.3)折痕相关特征包括折痕的长度,设定折痕的长度阈值,对亮/暗折痕中心线进行筛选,筛选出长度大于长度阈值的亮/暗折痕中心线,输出最终的亮/暗折痕中心线。
本发明采用以上技术方案,具有以下有益效果:
本发明基于Steger的中心线提取算法的提出了一种素色织物的折痕提取方法,对Steger算法的计算效率低、实时性难度大的问题基于GPU并行计算予以改进,有效地提取织物折痕的中心线,提高了计算效率;
本发明提出的改进Steger算法用于素色织物的折痕中心线提取,算法同时对亮线和暗线进行提取,且能有效应对折痕的宽度波动及织物纹理背景的影响,具有较强的普适性与鲁棒性,能有效地从织物疵点中分离因为折痕带来的误检,可应用于对实时性要求较高的织物疵点在线检测系统。
附图说明
图1为本发明的方法流程示意图;
图2为本发明的提取关键步骤结果示意图;图2的(a)为素色织物图像(同时包含亮暗折痕),图2的(b)为亮线预备点集,图2的(c)为暗线预备点集,图2的(d)为像素点的法线方向示意图(局部),图2的(e)为中心线预备点集的提取后的亮/暗折痕中心线输出结果(折痕相关特征筛选前),图2的(f)为折痕相关特征筛选后的亮/暗折痕中心线输出结果;
图3为本发明中GPU使用到的主要逻辑结构与内存分布示意图;
图4为本发明中步骤3中基于Hessian矩阵的中心线提取原理示意图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步详细说明:
本实施例基于以下假设,实现对素色织物的折痕中心线进行提取:
1、折痕在正面光照采集的素色织物图像中因凸起表现为较背景更高的亮折痕以及因凹陷表现为较背景更暗的暗折痕;
2、折痕具有一定的长度和宽度;
3、折痕除交叉部分外呈现出较为光滑的曲线;
基于以上假设,利用素色织物上的亮暗折痕与背景间的灰度差异性。本实施例对素色织物图像预处理之后,在GPU上并行计算各像素点的一/二阶偏导数、特征值、法线方向和中心线亚像素位置,对所有像素点的特征值进行筛选,获得中心线预备点集;之后在CPU上遍历中心线预备点集,同时对亮/暗折痕中心线进行连线提取,并对提取结果根据折痕相关特征进行筛选。本实施例不严格要求素色布的背景纹理,具有很好的普适性,CPU+GPU通用异构并行处理架构来实现折痕中心线的快速提取,具有较高的实时性。
本实施例具体包括以下步骤:
如图1和2所示,本发明包括以下步骤:
步骤1:对采集的素色织物图像进行预处理,预处理包括均值滤波和尺寸变换,获得预处理后的素色织物图像;
步骤1具体为:
1.1)如图2的(a)所示,利用一个长宽与素色织物图像的背景纹理横纵周期相同的矩形均值滤波核与素色织物图像卷积进行均值滤波,去除噪声,消除素色织物图像的背景纹理,获得滤波后的素色织物图像;背景纹理横纵周期是指背景纹理横向和纵向重复出现的周期。
1.2)素色织物的幅宽一般较大,采集的素色织物图像尺寸较大,依据所用GPU的计算资源大小,对滤波后的素色织物图像进行尺寸变换,将滤波后的素色织物图像的分辨率缩小至50~100DPI,可以减少素色织物图像的数据处理量,获得预处理后的素色织物图像。
步骤2:根据预先采集的带有折痕的素色织物图像数据集设置参考宽度和参考对比度,根据参考宽度和参考对比度设置检测参数,根据检测参数的一部分利用二维高斯函数生成高斯一/二阶偏导卷积核;
步骤2具体为:
2.1)根据预先采集的带有折痕的素色织物图像数据集,由素色织物图像数据集中所有折痕的最大宽度和平均对比度分别作为参考宽度和参考对比度,设置参考宽度和参考对比度,根据参考宽度和参考对比度设置检测参数,检测参数包括高斯函数标准差σ和Hessian矩阵特征值的筛选阈值th;
高斯函数标准差σ通过以下公式进行设置:
其中,w为参考宽度的一半(宽度以像素为单位);
Hessian矩阵特征值的筛选阈值th通过以下公式进行设置:
其中,c为参考对比度;
2.2)根据高斯函数标准差σ生成二维高斯函数,对二维高斯函数进行一阶偏导和二阶偏导,获得矩形结构元素的高斯一/二阶偏导卷积核gx,gy,gxx,gxy,gyy。其中,二维高斯函数为在点(x,y)处,二维高斯函数g(x,y)的各阶偏导具体为
步骤3:在GPU中,采用基于Steger的线条中心线提取法利用高斯一/二阶偏导卷积核并行计算预处理后的素色织物图像中各像素点的一/二阶偏导数、特征值、法线方向和折痕中心线亚像素位置,根据检测参数的另一部分对所有像素点的特征值进行筛选,获得折痕中心线预备点集;每个像素点的计算均对应一个CUDA核函数完成,实现对预处理后的素色织物图像的一次访问完成全部计算;
步骤3具体为:
3.1)根据预处理后的素色织物图像大小设置GPU的线程块block的数目及每个线程块block中的线程thread数目,预处理后的素色织物图像的每个像素点均对应唯一的线程thread,每个线程thread中预设同一个核函数,本实施例中输入预处理后的素色织物图像与计算结果存储在全局内存中,五个高斯偏导卷积核存储在访问更快的shared memory中,使用NVIDIA的CUDA平台进行GPU并行运算,如图3所示;
3.2)在每个线程thread的核函数中分别利用高斯一/二阶偏导卷积核完成每个像素点的5次高斯偏导卷积,获得每个像素点的一/二阶偏导数,根据每个像素点的二阶偏导数计算每个像素点的Hessian矩阵,再计算Hessian矩阵的全部特征值,计算绝对值最大的特征值对应的单位特征向量,单位特征向量作为折痕在该像素点处的法线方向,确定折痕中心线亚像素位置;
步骤3.2)具体为:
S1:在每个像素点对应的线程thread的核函数中依次实现每个像素点及其周围像素与对应的五个高斯一/二阶偏导卷积核的卷积,获得该像素点处的一阶偏导数rx、ry和二阶偏导数rxx、rxy、ryy,由一阶偏导数rx、ry和二阶偏导数rxx、rxy、ryy组成该像素点处的一/二阶偏导数;
S2:每个像素点对应的Hessian矩阵为H,Hessian矩阵H通过以下公式进行设置:
计算Hessian矩阵H的全部特征值;
S3:如图2的(d)所示,选择绝对值最大的特征值ev,计算特征值ev对应的单位特征向量(nx,ny),单位特征向量(nx,ny)的方向为折痕在该像素点处的法线方向,如图4所示;预处理后的素色织物图像在像素点(x0,y0)处的法线方向是像素点(x0,y0)二阶方向导数绝对值取极大值的方向;
S4:预处理后的素色织物图像在像素点(x0,y0)处沿法线方向(nx,ny)进行二阶泰勒展开,获得亚像素点(x0+tnx,y0+tny),亚像素点(x0+tnx,y0+tny)处像素值通过以下公式进行设置:
其中,(x0+tnx,y0+tny)为像素点(x0,y0)沿着法线方向(nx,ny)上的亚像素点位置,tnx和tny分别为亚像素点(x0+tnx,y0+tny)相对于像素点(x0,y0)在x方向和y方向上的距离偏移量,f(x0+tnx,y0+tny)为亚像素点(x0+tnx,y0+tny)处的像素值,t为偏移参数;
根据预设的中心线条件对每个像素点在x方向上的距离偏移量tnx和y方向上的距离偏移量tny进行判断,如果满足预设的中心线条件,则该像素点附近存在折痕中心线位置,计算该像素点的折痕中心线亚像素位置。具体实施中,预设的中心线条件为和若同时满足,则像素点(x0,y0)附近存在一个折痕中心线亚像素位置(x0+tnx,y0+tny),否则像素点(x0,y0)附近不存在折痕中心线的亚像素位置。
3.3)建立中心线预备点集,根据检测参数的另一部分对所有像素点的Hessian矩阵的绝对值最大的特征值进行筛选,将筛选获得的像素点加入中心线预备点集,获得中心线预备点集。
步骤3.3)具体为:
折痕在预处理后的素色织物图像上表现出较背景更亮的亮折痕或较背景更暗的暗折痕,亮折痕中心线和暗折痕中心线分别为亮线和暗线;如图2的(b)和(c)所示,建立第一亮线预备点集、第二亮线预备点集、第一暗线预备点集和第二暗线预备点集,亮线预备点集包括第一亮线预备点集和第二亮线预备点集,暗线预备点集包括第一暗线预备点集和第二暗线预备点集;根据检测参数中的筛选阈值th对所有像素点的绝对值最大的特征值ev进行筛选:
满足ev≤-th的像素点加入第一亮线预备点集,满足-th<ev≤-th/3的像素点加入第二亮线预备点集;
满足ev≥th的像素点加入第一暗线预备点集,满足th/3≤ev<th的像素点加入第二暗线预备点集;
主要由第一亮线预备点集、第二亮线预备点集、第一暗线预备点集和第二暗线预备点集组成中心线预备点集。
步骤4:在CPU上,遍历折痕中心线预备点集,根据折痕中心线预备点集中各像素点的一/二阶偏导数、法线方向和折痕中心线亚像素位置进行亮/暗折痕中心线的连线提取,输出亮/暗折痕中心线;根据折痕相关特征对亮/暗折痕中心线进行筛选,输出最终的亮/暗折痕中心线。
步骤4具体为:
如图2的(e)所示,4.1)在第一亮线预备点集中取像素点作为亮折痕中心线的起点,根据亮线预备点集中像素点的一阶偏导数、特征值ev、法线方向和折痕中心线亚像素位置,利用Steger的线条中心线提取法中的连线方法在亮线预备点集中进行亮折痕中心线的提取,直至遍历完第一亮线预备点集,输出亮折痕中心线;
4.2)在第一暗线预备点集中取像素点作为暗折痕中心线的起点,根据暗线预备点集中像素点的一阶偏导数、特征值ev、法线方向和折痕中心线亚像素位置,利用Steger的线条中心线提取法中的连线方法在暗线预备点集中进行暗折痕中心线的提取,直至遍历完第一暗线预备点集,输出暗折痕中心线;
4.3)折痕相关特征包括折痕的长度,设定折痕的长度阈值,对亮/暗折痕中心线进行筛选,筛选出长度大于长度阈值的亮/暗折痕中心线,输出最终的亮/暗折痕中心线,如图2的(f)所示。
Claims (7)
1.一种基于GPU的素色织物折痕提取方法,其特征在于:包括以下步骤:
步骤1:对采集的素色织物图像进行预处理,预处理包括均值滤波和尺寸变换,获得预处理后的素色织物图像;
步骤2:根据预先采集的带有折痕的素色织物图像数据集设置参考宽度和参考对比度,根据参考宽度和参考对比度设置检测参数,根据检测参数的一部分利用二维高斯函数生成高斯一/二阶偏导卷积核;
步骤3:在GPU中,采用基于Steger的线条中心线提取法利用高斯一/二阶偏导卷积核并行计算预处理后的素色织物图像中各像素点的一/二阶偏导数、特征值、法线方向和折痕中心线亚像素位置,根据检测参数的另一部分对所有像素点的特征值进行筛选,获得折痕中心线预备点集;
步骤4:在CPU上,遍历折痕中心线预备点集,根据折痕中心线预备点集中各像素点的一/二阶偏导数、法线方向和折痕中心线亚像素位置进行亮/暗折痕中心线的连线提取,输出亮/暗折痕中心线;根据折痕相关特征对亮/暗折痕中心线进行筛选,输出最终的亮/暗折痕中心线。
2.根据权利要求1所述的一种基于GPU的素色织物折痕提取方法,其特征在于:所述步骤1具体为:
1.1)利用一个长宽与素色织物图像的背景纹理横纵周期相同的矩形均值滤波核与素色织物图像卷积进行均值滤波,获得滤波后的素色织物图像;
1.2)对滤波后的素色织物图像进行尺寸变换,将滤波后的素色织物图像的分辨率缩小至50~100DPI,获得预处理后的素色织物图像。
3.根据权利要求1所述的一种基于GPU的素色织物折痕提取方法,其特征在于:所述步骤2具体为:
2.1)根据预先采集的带有折痕的素色织物图像数据集,由素色织物图像数据集中所有折痕的最大宽度和平均对比度分别作为参考宽度和参考对比度,设置参考宽度和参考对比度,根据参考宽度和参考对比度设置检测参数,检测参数包括高斯函数标准差σ和筛选阈值th;
高斯函数标准差σ通过以下公式进行设置:
其中,w为参考宽度的一半;
筛选阈值th通过以下公式进行设置:
其中,c为参考对比度;
2.2)根据高斯函数标准差σ生成二维高斯函数,对二维高斯函数进行一阶偏导和二阶偏导,获得高斯一/二阶偏导卷积核gx,gy,gxx,gxy,gyy。
4.根据权利要求1所述的一种基于GPU的素色织物折痕提取方法,其特征在于:所述步骤3具体为:
3.1)根据预处理后的素色织物图像大小设置GPU的线程块block的数目及每个线程块block中的线程thread数目,预处理后的素色织物图像的每个像素点均对应唯一的线程thread,每个线程thread中预设同一个核函数,进行GPU并行运算;
3.2)在每个线程thread的核函数中分别利用高斯一/二阶偏导卷积核完成每个像素点的5次高斯偏导卷积,获得每个像素点的一/二阶偏导数,根据每个像素点的二阶偏导数计算每个像素点的Hessian矩阵,再计算Hessian矩阵的全部特征值,计算绝对值最大的特征值对应的单位特征向量,单位特征向量作为折痕在该像素点处的法线方向,确定折痕中心线亚像素位置;
3.3)建立中心线预备点集,根据检测参数的另一部分对所有像素点的Hessian矩阵的绝对值最大的特征值进行筛选,将筛选获得的像素点加入中心线预备点集,获得中心线预备点集。
5.根据权利要求4所述的一种基于GPU的素色织物折痕提取方法,其特征在于:所述步骤3.2)具体为:
S1:在每个像素点对应的线程thread的核函数中依次实现每个像素点及其周围像素与对应的五个高斯一/二阶偏导卷积核的卷积,获得该像素点处的一阶偏导数rx、ry和二阶偏导数rxx、rxy、ryy,由一阶偏导数rx、ry和二阶偏导数rxx、rxy、ryy组成该像素点处的一/二阶偏导数;
S2:每个像素点对应的Hessian矩阵为H,Hessian矩阵H通过以下公式进行设置:
计算Hessian矩阵H的全部特征值;
S3:选择绝对值最大的特征值ev,计算特征值ev对应的单位特征向量(nx,ny),单位特征向量(nx,ny)的方向为折痕在该像素点处的法线方向;
S4:预处理后的素色织物图像在像素点(x0,y0)处沿法线方向(nx,ny)进行二阶泰勒展开,获得亚像素点(x0+tnx,y0+tny),亚像素点(x0+tnx,y0+tny)处像素值通过以下公式进行设置:
其中,(x0+tnx,y0+tny)为像素点(x0,y0)沿着法线方向(nx,ny)上的亚像素点位置,tnx和tny分别为亚像素点(x0+tnx,y0+tny)相对于像素点(x0,y0)在x方向和y方向上的距离偏移量,f(x0+tnx,y0+tny)为亚像素点(x0+tnx,y0+tny)处的像素值,t为偏移参数;
根据预设的中心线条件对每个像素点在x方向上的距离偏移量tnx和y方向上的距离偏移量tny进行判断,如果满足预设的中心线条件,则该像素点是折痕中心线位置,计算该像素点的折痕中心线亚像素位置。
6.根据权利要求4所述的一种基于GPU的素色织物折痕提取方法,其特征在于:所述步骤3.3)具体为:
折痕在预处理后的素色织物图像上表现出较背景更亮的亮折痕或较背景更暗的暗折痕,亮折痕中心线和暗折痕中心线分别为亮线和暗线;建立第一亮线预备点集、第二亮线预备点集、第一暗线预备点集和第二暗线预备点集,亮线预备点集包括第一亮线预备点集和第二亮线预备点集,暗线预备点集包括第一暗线预备点集和第二暗线预备点集;根据检测参数中的筛选阈值th对所有像素点的绝对值最大的特征值ev进行筛选:
满足ev≤-th的像素点加入第一亮线预备点集,满足-th<ev≤-th/3的像素点加入第二亮线预备点集;
满足ev≥th的像素点加入第一暗线预备点集,满足th/3≤ev<th的像素点加入第二暗线预备点集;
主要由第一亮线预备点集、第二亮线预备点集、第一暗线预备点集和第二暗线预备点集组成中心线预备点集。
7.根据权利要求6所述的一种基于GPU的素色织物折痕提取方法,其特征在于:所述步骤4具体为:
4.1)在第一亮线预备点集中取像素点作为亮折痕中心线的起点,根据亮线预备点集中像素点的一阶偏导数、特征值ev、法线方向和折痕中心线亚像素位置,利用Steger的线条中心线提取法中的连线方法在亮线预备点集中进行亮折痕中心线的提取,直至遍历完第一亮线预备点集,输出亮折痕中心线;
4.2)在第一暗线预备点集中取像素点作为暗折痕中心线的起点,根据暗线预备点集中像素点的一阶偏导数、特征值ev、法线方向和折痕中心线亚像素位置,利用Steger的线条中心线提取法中的连线方法在暗线预备点集中进行暗折痕中心线的提取,直至遍历完第一暗线预备点集,输出暗折痕中心线;
4.3)折痕相关特征包括折痕的长度,设定折痕的长度阈值,对亮/暗折痕中心线进行筛选,筛选出长度大于长度阈值的亮/暗折痕中心线,输出最终的亮/暗折痕中心线。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110241411.XA CN112884750B (zh) | 2021-03-04 | 2021-03-04 | 一种基于gpu的素色织物折痕提取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110241411.XA CN112884750B (zh) | 2021-03-04 | 2021-03-04 | 一种基于gpu的素色织物折痕提取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112884750A true CN112884750A (zh) | 2021-06-01 |
CN112884750B CN112884750B (zh) | 2022-03-25 |
Family
ID=76055416
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110241411.XA Active CN112884750B (zh) | 2021-03-04 | 2021-03-04 | 一种基于gpu的素色织物折痕提取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112884750B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115684197A (zh) * | 2022-07-14 | 2023-02-03 | 荣耀终端有限公司 | 折叠屏的测试方法、电子设备及装置 |
CN115684197B (zh) * | 2022-07-14 | 2024-05-31 | 荣耀终端有限公司 | 折叠屏的测试方法、电子设备及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030012441A1 (en) * | 2001-07-02 | 2003-01-16 | Jasc Software, Inc. | Detection of lines in images |
CN101178812A (zh) * | 2007-12-10 | 2008-05-14 | 北京航空航天大学 | 一种结构光光条中心线提取的混合图像处理方法 |
US9924867B2 (en) * | 2011-01-20 | 2018-03-27 | University Of Iowa Research Foundation | Automated determination of arteriovenous ratio in images of blood vessels |
CN111462214A (zh) * | 2020-03-19 | 2020-07-28 | 南京理工大学 | 一种基于Hough变换的线结构光条纹中心线提取方法 |
CN111862181A (zh) * | 2019-04-25 | 2020-10-30 | 中国科学院沈阳自动化研究所 | 一种缝隙宽度和阶差检测方法 |
CN111932506A (zh) * | 2020-07-22 | 2020-11-13 | 四川大学 | 一种提取图像中非连续直线的方法 |
CN112241964A (zh) * | 2020-09-22 | 2021-01-19 | 天津大学 | 一种用于线结构光非接触测量的光条中心提取方法 |
-
2021
- 2021-03-04 CN CN202110241411.XA patent/CN112884750B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030012441A1 (en) * | 2001-07-02 | 2003-01-16 | Jasc Software, Inc. | Detection of lines in images |
CN101178812A (zh) * | 2007-12-10 | 2008-05-14 | 北京航空航天大学 | 一种结构光光条中心线提取的混合图像处理方法 |
US9924867B2 (en) * | 2011-01-20 | 2018-03-27 | University Of Iowa Research Foundation | Automated determination of arteriovenous ratio in images of blood vessels |
CN111862181A (zh) * | 2019-04-25 | 2020-10-30 | 中国科学院沈阳自动化研究所 | 一种缝隙宽度和阶差检测方法 |
CN111462214A (zh) * | 2020-03-19 | 2020-07-28 | 南京理工大学 | 一种基于Hough变换的线结构光条纹中心线提取方法 |
CN111932506A (zh) * | 2020-07-22 | 2020-11-13 | 四川大学 | 一种提取图像中非连续直线的方法 |
CN112241964A (zh) * | 2020-09-22 | 2021-01-19 | 天津大学 | 一种用于线结构光非接触测量的光条中心提取方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115684197A (zh) * | 2022-07-14 | 2023-02-03 | 荣耀终端有限公司 | 折叠屏的测试方法、电子设备及装置 |
CN115684197B (zh) * | 2022-07-14 | 2024-05-31 | 荣耀终端有限公司 | 折叠屏的测试方法、电子设备及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112884750B (zh) | 2022-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114529549B (zh) | 一种基于机器视觉的布匹缺陷标注方法及系统 | |
Liu et al. | A fabric defect detection method based on deep learning | |
CN110349146B (zh) | 基于轻量级卷积神经网络的织物缺陷识别系统的搭建方法 | |
Zhu et al. | Yarn-dyed fabric defect detection based on autocorrelation function and GLCM | |
CN103234969B (zh) | 一种基于机器视觉的织物纬密度测量新方法 | |
CN111402197B (zh) | 一种针对色织物裁片缺陷区域的检测方法 | |
CN110889837A (zh) | 一种具有瑕疵分级功能的布匹瑕疵检测方法 | |
CN104021561A (zh) | 基于小波变换及形态学运算的织物起毛起球图像分割方法 | |
CN111080574A (zh) | 一种基于信息熵和视觉注意机制的织物疵点检测方法 | |
CN111862027B (zh) | 基于低秩稀疏矩阵分解的纺织品瑕疵检测方法 | |
CN116523899A (zh) | 一种基于机器视觉的纺织品瑕疵检测方法及系统 | |
Zhang et al. | Defect detection of yarn-dyed shirts based on denoising convolutional self-encoder | |
CN113222992A (zh) | 基于多重分形谱的裂纹特征表征方法及系统 | |
Jia et al. | Fabric defect inspection based on lattice segmentation and lattice templates | |
CN112884750B (zh) | 一种基于gpu的素色织物折痕提取方法 | |
CN115131353A (zh) | 平网印花纺织品生产异常识别定位方法及系统 | |
CN111724376A (zh) | 一种基于纹理特征分析的纸病检测方法 | |
CN101976440A (zh) | 一种用于表征织物纹理的基于Sobel算子的概貌与细节混合特征向量提取方法 | |
CN107886549B (zh) | 一种基于编织纹理细节增强的织物纹样色彩转移方法 | |
CN113838040A (zh) | 一种针对彩色纹理织物缺陷区域的检测方法 | |
CN111709429B (zh) | 一种基于卷积神经网络的机织物结构参数识别方法 | |
CN116912338A (zh) | 一种用于纺织品的像素图片矢量化方法 | |
Li et al. | Spatio-temporal fusion network for video super-resolution | |
He et al. | Research on Fabric defect detection based on deep fusion DenseNet-SSD network | |
CN114001674B (zh) | 一种自由视角下的线束弯曲半径机器视觉测量方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |