发明名称 一种基于样本库字典基的电子元器件表面缺陷检测方法
摘要 本发明涉及一种基于样本库字典基的电子元器件表面缺陷检测方法。目前电子元器件生产过程中的成品缺陷检测主要由人工完成,费时费力,不仅工作量大,而且易受检测人员主观因素的影响,容易造成误检和漏检,检测效率低,劳动强度大。如果在检测中操作不慎,还会对电子元器件造成二次损伤。本发明方法利用非接触式数字图像检测技术来提高电子元器件缺陷检测的效率,提出了一种基于样本库字典基的电子元器件表面缺陷检测方法。本发明方法通过构造合格及各类缺陷样本库字典基,自适应的对电子元器件的表面缺陷进行自动检测,并对缺陷类别进行自动判别,可以很好的克服人工目测检测方法的不足。
申请公布号 CN103954627A 申请公布日期 2014.07.30
申请号 CN201410160167.4 申请日期 2014.04.21
申请人 杭州电子科技大学 发明人 杨宇翔;高明煜;何志伟;吴占雄;黄继业;曾毓
分类号 G01N21/88(2006.01)I 主分类号 G01N21/88(2006.01)I
代理机构 杭州求是专利事务所有限公司 33200 代理人 杜军
主权项 一种基于样本库字典基的电子元器件表面缺陷检测方法,其特征在于该方法的具体步骤是:步骤(1)采集合格及存在缺陷的电子元器件图像,构造电子元器件图像样本库;对需要进行表面缺陷检测的电子元器件,选取200个合格的该元器件样品,同时选取表面存在气泡,破损,划痕和引脚油漆下挂的该元器件样品各100个;(a)将样本器件、照明系统、CCD相机全部置于封闭的暗箱中,采集上述合格及存在缺陷的电子元器件的表面图像;(b)对采集得到的图像f按如下方式提取梯度图像▽f作为各样本器件的特征图像:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mo>&dtri;</mo><mi>f</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>=</mo><mo>|</mo><mfrac><mrow><mi>f</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>-</mo><mi>f</mi><mrow><mo>(</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>-</mo><mn>1</mn><mo>)</mo></mrow></mrow><mn>2</mn></mfrac><mo>|</mo><mo>+</mo><mo>|</mo><mfrac><mrow><mi>f</mi><mrow><mo>(</mo><mi>i</mi><mo>+</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>)</mo></mrow><mo>-</mo><mi>f</mi><mrow><mo>(</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>j</mi><mo>)</mo></mrow></mrow><mn>2</mn></mfrac><mo>|</mo></mrow>]]></math><img file="FDA0000494116880000011.GIF" wi="1070" he="142" /></maths>(c)由经过上述预处理得到的各样本器件的梯度特征图像分别构造合格样本库,气泡样本库,破损样本库,划痕样本库和引脚油漆下挂样本库;步骤(2)对样本库进行学习,构造各个样本库的字典基;对于合格样本库,将合格样本库内的各图像进行分块处理,块大小为7×7,选取块内颜色方差大于阈值η<sub>1</sub>的分块为训练分块,阈值η<sub>1</sub>选为10;记<img file="FDA0000494116880000012.GIF" wi="366" he="74" />是各个训练分块的列向量化表示,记<img file="FDA0000494116880000019.GIF" wi="186" he="83" />是该合格样本库的字典基,<img file="FDA0000494116880000013.GIF" wi="45" he="68" />在字典Z下的表示可定义为:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><munder><mi>min</mi><msub><mover><mi>y</mi><mo>&RightArrow;</mo></mover><mi>i</mi></msub></munder><msubsup><mrow><mo>|</mo><mo>|</mo><msub><mover><mi>x</mi><mo>&RightArrow;</mo></mover><mi>i</mi></msub><mo>-</mo><mi>Z</mi><mo>&times;</mo><msub><mover><mi>y</mi><mo>&RightArrow;</mo></mover><mi>i</mi></msub><mo>|</mo><mo>|</mo></mrow><mn>2</mn><mn>2</mn></msubsup><mo>,</mo><mi>s</mi><mo>.</mo><mi>t</mi><mo>.</mo><msub><mover><mi>x</mi><mo>&RightArrow;</mo></mover><mi>i</mi></msub><mo>&ap;</mo><mi>Z</mi><mo>&times;</mo><msub><mover><mi>y</mi><mo>&RightArrow;</mo></mover><mi>i</mi></msub></mrow>]]></math><img file="FDA00004941168800000110.GIF" wi="692" he="94" /></maths>其中<img file="FDA0000494116880000014.GIF" wi="46" he="63" />是<img file="FDA0000494116880000015.GIF" wi="42" he="65" />在字典基下的表示系数,设定<img file="FDA0000494116880000016.GIF" wi="46" he="68" />的非零元素个数为1,非零元素的值为1;在已知训练集合<img file="FDA0000494116880000017.GIF" wi="200" he="77" />的情况下,按如下步骤构造该训练集的最优字典基:(a)由<img file="FDA0000494116880000018.GIF" wi="264" he="78" />张成初始字典基Z;(b)对于字典基中某一向量<img file="FDA0000494116880000021.GIF" wi="148" he="69" />字典基中其他向量<img file="FDA0000494116880000022.GIF" wi="128" he="73" />与<img file="FDA0000494116880000023.GIF" wi="42" he="60" />之间若满足如下公式,阈值η<sub>2</sub>选为5,则从字典基中移除向量<img file="FDA0000494116880000024.GIF" wi="74" he="70" />从而更新字典基;<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msubsup><mrow><mo>|</mo><mo>|</mo><msub><mover><mi>x</mi><mo>&RightArrow;</mo></mover><mi>j</mi></msub><mo>-</mo><msub><mover><mi>x</mi><mo>&RightArrow;</mo></mover><mi>i</mi></msub><mo>|</mo><mo>|</mo></mrow><mn>2</mn><mn>2</mn></msubsup><mo>&le;</mo><msub><mi>&eta;</mi><mn>2</mn></msub><mo>,</mo><msub><mover><mi>x</mi><mo>&RightArrow;</mo></mover><mi>j</mi></msub><mo>&Element;</mo><mi>Z</mi></mrow>]]></math><img file="FDA0000494116880000025.GIF" wi="435" he="103" /></maths>(c)对字典基中的向量按上述方式进行遍历,得到该训练集最终的字典基<img file="FDA00004941168800000220.GIF" wi="214" he="57" />对于气泡,破损,划痕和引脚油漆下挂样本库;同样将各图像进行分块处理,块大小为7×7,去除那些块内方差小于阈值η<sub>1</sub>的分块;分别得到气泡,破损,划痕和引脚油漆下挂训练集<img file="FDA0000494116880000026.GIF" wi="752" he="81" />和<img file="FDA0000494116880000027.GIF" wi="236" he="77" />按如下步骤分别构造气泡,破损,划痕和引脚油漆下挂字典基<img file="FDA0000494116880000028.GIF" wi="795" he="86" />和<img file="FDA00004941168800000223.GIF" wi="215" he="92" />:(a)由<img file="FDA0000494116880000029.GIF" wi="482" he="76" />和<img file="FDA00004941168800000210.GIF" wi="120" he="74" />张成各个初始的字典基Z<sub>Q</sub>,Z<sub>P</sub>,Z<sub>H</sub>和Z<sub>G</sub>;(b)对气泡字典基中的向量<img file="FDA00004941168800000211.GIF" wi="171" he="75" />如果合格字典基中存在向量<img file="FDA00004941168800000212.GIF" wi="122" he="69" />与<img file="FDA00004941168800000213.GIF" wi="46" he="59" />满足如下关系式,则从气泡字典基中移除该向量<img file="FDA00004941168800000214.GIF" wi="72" he="65" />更新气泡字典基,运用同样的方式对破损,划痕和引脚油漆下挂字典基进行更新;<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><mo>&Exists;</mo><msub><mover><mi>x</mi><mo>&RightArrow;</mo></mover><mi>j</mi></msub><mo>&Element;</mo><mi>Z</mi><mo>,</mo><mi>s</mi><mo>.</mo><mi>t</mi><mo>.</mo><msubsup><mrow><mo>|</mo><mo>|</mo><msub><mover><mi>q</mi><mo>&RightArrow;</mo></mover><mi>i</mi></msub><mo>-</mo><msub><mover><mi>x</mi><mo>&RightArrow;</mo></mover><mi>j</mi></msub><mo>|</mo><mo>|</mo></mrow><mn>2</mn><mn>2</mn></msubsup><mo>&le;</mo><msub><mi>&eta;</mi><mn>2</mn></msub></mrow>]]></math><img file="FDA00004941168800000215.GIF" wi="540" he="104" /></maths>(c)对气泡,破损,划痕和引脚油漆下挂字典基中的向量按上述方式进行遍历,得到各个训练集最终的字典基<img file="FDA00004941168800000216.GIF" wi="802" he="82" />和<img file="FDA00004941168800000217.GIF" wi="255" he="76" />步骤(3)采集待检测的电子元器件图像,基于样本库字典基判别待检测的电子元器件是否合格,若不合格判别该元器件存在哪类缺陷;在相同的检测环境下,采集待检测的电子元器件表面图像,由梯度算子提取得到梯度特征图像;将特征图像进行分块处理,块大小为7×7,去除那些块内方差小于阈值η<sub>1</sub>的分块,得到待检测分块集<img file="FDA00004941168800000218.GIF" wi="206" he="75" />按如下方式对分块集进行检测:(a)若在合格字典基Z中存在<img file="FDA00004941168800000222.GIF" wi="54" he="76" /><img file="FDA00004941168800000221.GIF" wi="47" he="78" />之间满足如下关系,则<img file="FDA00004941168800000219.GIF" wi="38" he="74" />为合格子分块,否则为不合格子分块:<maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><mo>&Exists;</mo><msub><mover><mi>x</mi><mo>&RightArrow;</mo></mover><mi>j</mi></msub><mo>&Element;</mo><mi>Z</mi><mo>,</mo><mi>s</mi><mo>.</mo><mi>t</mi><mo>.</mo><msubsup><mrow><mo>|</mo><mo>|</mo><msub><mover><mi>t</mi><mo>&RightArrow;</mo></mover><mi>i</mi></msub><mo>-</mo><msub><mover><mi>x</mi><mo>&RightArrow;</mo></mover><mi>j</mi></msub><mo>|</mo><mo>|</mo></mrow><mn>2</mn><mn>2</mn></msubsup><mo>&le;</mo><msub><mi>&eta;</mi><mn>2</mn></msub></mrow>]]></math><img file="FDA0000494116880000031.GIF" wi="524" he="104" /></maths>(b)若待检测分块集<img file="FDA0000494116880000032.GIF" wi="180" he="74" />中所有分块均是合格子分块,则判定待检测的电子元器件为合格元器件;若待检测分块集<img file="FDA0000494116880000033.GIF" wi="183" he="75" />中存在不合格子分块,则待检测的电子元器件为不合格元器件;(c)对于不合格子分块<img file="FDA0000494116880000034.GIF" wi="69" he="71" />求解如下优化问题,在缺陷字典基Z<sub>Q</sub>,Z<sub>P</sub>,Z<sub>H</sub>和Z<sub>G</sub>中寻找最优的<img file="FDA0000494116880000035.GIF" wi="76" he="60" /><maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><msub><mover><mi>o</mi><mo>&RightArrow;</mo></mover><mi>l</mi></msub><mo>=</mo><mi>arg</mi><munder><mi>min</mi><msub><mover><mi>o</mi><mo>&RightArrow;</mo></mover><mi>j</mi></msub></munder><msubsup><mrow><mo>|</mo><mo>|</mo><msub><mover><mi>t</mi><mo>&RightArrow;</mo></mover><mi>k</mi></msub><msub><mrow><mo>-</mo><mover><mi>o</mi><mo>&RightArrow;</mo></mover></mrow><mi>j</mi></msub><mo>|</mo><mo>|</mo></mrow><mn>2</mn><mn>2</mn></msubsup><mo>,</mo><msub><mover><mi>o</mi><mo>&RightArrow;</mo></mover><mi>j</mi></msub><mo>&Element;</mo><mo>{</mo><msub><mi>Z</mi><mi>Q</mi></msub><mo>,</mo><msub><mi>Z</mi><mi>P</mi></msub><mo>,</mo><msub><mi>Z</mi><mi>H</mi></msub><mo>,</mo><msub><mi>Z</mi><mi>G</mi></msub><mo>}</mo></mrow>]]></math><img file="FDA0000494116880000036.GIF" wi="890" he="120" /></maths>若<img file="FDA0000494116880000037.GIF" wi="465" he="86" />则<img file="FDA0000494116880000038.GIF" wi="40" he="74" />为存在气泡的缺陷分块;若<img file="FDA0000494116880000039.GIF" wi="460" he="97" />则<img file="FDA00004941168800000310.GIF" wi="46" he="70" />为存在破损的缺陷分块;若<img file="FDA00004941168800000311.GIF" wi="466" he="90" />则<img file="FDA00004941168800000312.GIF" wi="44" he="68" />为存在划痕的缺陷分块;若<img file="FDA00004941168800000313.GIF" wi="462" he="90" />则<img file="FDA00004941168800000314.GIF" wi="45" he="74" />为存在引脚油漆下挂的缺陷分块;若<img file="FDA00004941168800000315.GIF" wi="302" he="97" />则<img file="FDA00004941168800000316.GIF" wi="34" he="70" />为未知类型的缺陷分块;(d)若待检测分块集<img file="FDA00004941168800000317.GIF" wi="176" he="75" />中多个分块为缺陷分块,且经过步骤(c)的判断后均为同一类的缺陷分块,则判定该待检测的电子元器件存在该类的缺陷;若经过步骤(c)的判断后分别为不同类型的缺陷分块,则判定该待检测的电子元器件存在多种的缺陷。
地址 310018 浙江省杭州市下沙高教园区2号大街