主权项 |
一种基于图像融合分割的实木地板表面缺陷检测方法,其特征在于:所述方法的实现过程为:步骤一、图像预处理:由RGB模型中提取R分量再进行灰度图像变换;步骤二、图像缩小与缺陷定位:采用等间隔采样完成图像缩小;在低维空间搜索缺陷点并完成缺陷的初步定位;采用等间隔采样完成图像缩小的过程为:设原图像中的点f(x,y)在缩小后的图像中对应点g(x<sub>0</sub>,y<sub>0</sub>),则:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mfenced open = '[' close = ']'><mtable><mtr><mtd><mi>x</mi></mtd></mtr><mtr><mtd><mi>y</mi></mtd></mtr><mtr><mtd><mn>1</mn></mtd></mtr></mtable></mfenced><mo>=</mo><mfenced open = '[' close = ']'><mtable><mtr><mtd><msub><mi>k</mi><mi>x</mi></msub></mtd><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><msub><mi>k</mi><mi>y</mi></msub></mtd><mtd><mn>0</mn></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mn>0</mn></mtd><mtd><mn>1</mn></mtd></mtr></mtable></mfenced><mfenced open = '[' close = ']'><mtable><mtr><mtd><msub><mi>x</mi><mn>0</mn></msub></mtd></mtr><mtr><mtd><msub><mi>y</mi><mn>0</mn></msub></mtd></mtr><mtr><mtd><mn>1</mn></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000928030970000011.GIF" wi="782" he="227" /></maths>其中,k<sub>x</sub>、k<sub>y</sub>分别为x、y轴方向的缩放倍数;通过提取子块中的一个像素点来代替整个子块,进而组合成一幅图像;设缩小后的图像为g(x<sub>0</sub>,y<sub>0</sub>)则:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mi>g</mi><mrow><mo>(</mo><msub><mi>x</mi><mn>0</mn></msub><mo>,</mo><msub><mi>y</mi><mn>0</mn></msub><mo>)</mo></mrow><mo>=</mo><mi>f</mi><mrow><mo>(</mo><mfrac><mi>x</mi><msub><mi>k</mi><mi>x</mi></msub></mfrac><mo>,</mo><mfrac><mi>y</mi><msub><mi>k</mi><mi>y</mi></msub></mfrac><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000928030970000012.GIF" wi="790" he="143" /></maths>在低维空间搜索缺陷点并完成缺陷的初步定位的过程为:在低维空间搜索缺陷点,计算量将为原来的<img file="FDA0000928030970000013.GIF" wi="106" he="110" />并将缺陷置“1”,完成缺陷的初步定位;步骤三、图像放大、创建标记图像:图像放大是生成与原始图像大小一致的图像,为缺陷图像的融合分割提供标记图像,图像放大要在处理效率与结果的平滑度和清晰度上做一个权衡;图像放大的具体过程为:采用差分算法计算缩小后的图像g(x<sub>0</sub>,y<sub>0</sub>)上每一点(i,j)的梯度,在差分网格上令网格点(i,j)处的梯度为<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><mo>|</mo><mo>▿</mo><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>|</mo><mo>=</mo><msup><mfenced open = '(' close = ')'><mtable><mtr><mtd><msup><mrow><mo>(</mo><mi>g</mi><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>+</mo><mn>1</mn><mo>)</mo><mo>-</mo><mi>g</mi><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>-</mo><mn>1</mn><mo>)</mo><mo>)</mo></mrow><mn>2</mn></msup></mtd></mtr><mtr><mtd><mrow><mo>+</mo><mrow><mo>(</mo><mfrac><msup><mrow><mo>(</mo><mi>g</mi><mo>(</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>-</mo><mn>1</mn><mo>)</mo><mo>+</mo><mi>g</mi><mo>(</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>+</mo><mn>1</mn><mo>)</mo><mo>-</mo><mi>g</mi><mo>(</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>-</mo><mn>1</mn><mo>)</mo><mo>-</mo><mi>g</mi><mo>(</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>+</mo><mn>1</mn><mo>)</mo><mo>)</mo></mrow><mn>2</mn></msup><mn>16</mn></mfrac><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mfenced><mfrac><mn>1</mn><mn>2</mn></mfrac></msup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000928030970000014.GIF" wi="1308" he="287" /></maths>在待插值点(i,j),令插值方向为左右方向,即按行插值;令点(i,j‑1)、(i,j+1)的梯度分别为<img file="FDA0000928030970000021.GIF" wi="478" he="87" />且<img file="FDA0000928030970000022.GIF" wi="311" he="157" />则插值后得到的图像为s(i,j):s(i,j)=(1‑v(r))g(i,j‑1)+v(r)g(i,j+1) (5)其中<img file="FDA0000928030970000023.GIF" wi="538" he="127" />为双曲正切函数,且定义th(x)=(e<sup>x</sup>‑e<sup>‑x</sup>)/(e<sup>x</sup>+e<sup>‑x</sup>),函数v(r)的中心点为(1,0.5);创建标记图像的过程为:标记图像是针对原始图像的缺陷区域所创建的参考图像,对于原始输入的R分量图像I_im,定义Neighbor(I_im(x,y))为点I_im(x,y)的八邻域;对于图像中某一区域R,N(R)表示不属于R,是和R中某一像素相邻的集合:<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><mi>N</mi><mrow><mo>(</mo><mi>R</mi><mo>)</mo></mrow><mo>=</mo><mo>{</mo><mi>I</mi><mo>_</mo><mi>i</mi><mi>m</mi><mrow><mo>(</mo><mi>u</mi><mo>,</mo><mi>v</mi><mo>)</mo></mrow><mo>|</mo><mi>I</mi><mo>_</mo><mi>i</mi><mi>m</mi><mrow><mo>(</mo><mi>u</mi><mo>,</mo><mi>v</mi><mo>)</mo></mrow><mo>∉</mo><mi>R</mi><mo>,</mo></mrow>]]></math><img file="FDA0000928030970000024.GIF" wi="846" he="68" /></maths><maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><mo>∃</mo><mi>I</mi><mo>_</mo><mi>i</mi><mi>m</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>∈</mo><mi>R</mi><mo>;</mo></mrow>]]></math><img file="FDA0000928030970000025.GIF" wi="413" he="71" /></maths>使 (6)I_im(u,v)∈Neighbor(I_im(x,y))}定义标记图像Sign,其大小与原图像一致,满足公式(7)、(8),如下:size(Sign)=size(I_im) (7)<maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><mi>S</mi><mi>i</mi><mi>g</mi><mi>n</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>=</mo><mfenced open = '{' close = ''><mtable><mtr><mtd><mn>1</mn></mtd><mtd><mrow><mi>I</mi><mo>_</mo><mi>i</mi><mi>m</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>∈</mo><mi>R</mi></mrow></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mrow><mi>I</mi><mo>_</mo><mi>i</mi><mi>m</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>∉</mo><mi>R</mi></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>8</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000928030970000026.GIF" wi="1102" he="151" /></maths>其中,size返回图像的大小;对于某个像素,满足点I_im(m,n)∈N(R)且I_im(m,n)∈Neighbor(I_im(i,j))要将I_im(m,n)合并到区域R中,必须满足条件:<maths num="0007" id="cmaths0007"><math><![CDATA[<mrow><mfenced open = '{' close = ''><mtable><mtr><mtd><mrow><mi>S</mi><mi>i</mi><mi>g</mi><mi>n</mi><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow><mo>=</mo><mn>0</mn></mrow></mtd></mtr><mtr><mtd><mrow><mo>|</mo><mi>I</mi><mo>_</mo><mi>i</mi><mi>m</mi><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow><mo>-</mo><mi>I</mi><mo>_</mo><mi>i</mi><mi>m</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>|</mo><mo>≤</mo><msub><mi>T</mi><mn>1</mn></msub></mrow></mtd></mtr><mtr><mtd><mrow><mi>I</mi><mo>_</mo><mi>i</mi><mi>m</mi><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow><mo>≤</mo><msub><mi>T</mi><mn>2</mn></msub></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000928030970000027.GIF" wi="1060" he="247" /></maths>其中,T<sub>1</sub>、T<sub>2</sub>为搜索邻域的阈值限定条件;步骤四、缺陷的边缘检测:边缘检测用于在标记图像上找到缺陷边缘,确定边缘种子点图像seed(x,y),原图像将以种子点进行向外搜索;边缘检测的具体步骤为:步骤四(1)、构造小波函数;步骤四(2)、对图像S(x,y)做小波变换,计算模<img file="FDA0000928030970000028.GIF" wi="223" he="78" />与相角<img file="FDA0000928030970000029.GIF" wi="230" he="79" />步骤四(3)、沿相角搜索模的极值点,生成图像的边缘<img file="FDA0000928030970000031.GIF" wi="238" he="79" />步骤四(4)、将<img file="FDA0000928030970000032.GIF" wi="189" he="79" />中模、相角相似点连接,得到单像素的图像边缘<img file="FDA0000928030970000033.GIF" wi="223" he="70" />步骤四(5)、对<img file="FDA0000928030970000034.GIF" wi="174" he="70" />中的边缘,计算<img file="FDA0000928030970000035.GIF" wi="216" he="79" />中的匹配区域,得到下一尺度j‑1的边缘图像<img file="FDA0000928030970000036.GIF" wi="231" he="77" />步骤五、原始图像下的缺陷边界搜索;步骤六、检测结果输出。 |