1 绪论
本文通过对由相机获取的 PCB 图片,在 MATLAB 软件中对图像进行必要处理,并对各种处理方法进行比较,从而找到较好的PCB 图片处理方法。使电路板的质量检测水平提高,PCB 的印刷效率得到有效提高。本文中对 PCB 图片的处理大致如下:a.PCB 原图像采集;b.图像平滑处理;c.比较并选取合适的滤波方法;d.图像增强;e.比较各种算子处理后的 PCB 图像。
2 图像预处理
对印刷电路板图片的拍照过程中,相机的电子扰动、周围环境光照的变动等因素会产生噪声,进而使图片的质量下降。图像预处理可使噪声污染得到缓减,信噪比得到提高。对于 PCB 图片而言,主要受到两类噪声污染,分别为椒盐噪声以及高斯噪声。通过平滑方法处理图像上混杂的噪声,但去噪能力越强,损失的图像细节就越多,从而图像变得越模糊。所以平滑处理图片的时候,需要据情况平衡滤波效果和图像细节。
中值滤波:先设计滑动窗口,求出像素点灰度值的中值 m.用 m 代替窗口中全部像素的灰度值 ai.当窗口内的像素点数目为单数,中值 m 就是灰度值 ai按递增或递减的顺序排列后处于中心的灰度值;若像素点数目为偶数,中值 m 是将灰度值 ai按递增或递减的顺序排列后处于中心的二像素灰度值的期望。
3 图像增强
图像锐化就是为了使图像中物体的边缘与轮廓更明显,通过灰度差分法提取边缘及轮廓。但是由于边缘和轮廓的方向有任意性,而差分运算的方向是一定的,拉普拉斯,梯度,Sobel,Prewitt 等是具有各向同性特性的锐化方法。
3.1 Sobel 尖锐化
其中前面的算子是用于横向的锐化,后面的算子则是用于纵向的锐化。
3.2 拉普拉斯锐化算法
拉普拉斯锐化算法是典型的与边界方向没关系的二阶微分算法,对噪声的敏感系数比一阶微分算子高,采用二阶微分算子能够获得较丰富的原图片详情。下面为二阶微分锐化的推理:
由以上的推导,写成模板系数形成就是拉普拉斯算子,具体形式如下:
现简单地对照二阶与一阶微分的图片锐化效果。以 Sobel 与拉普拉斯为例做对照。Sobel 算子只提取较少的边缘细节,它提取的边缘较为粗糙,而拉普拉斯算子反映的边缘信息中包含了很多的细节,但是它所提取的边缘有些许模糊。边缘检测的内容有两点:检验目标的边界点、补充部分边界点或者去掉部分边界点,然后使这些边界点用完整的线相连。
4 印刷电路板图片的具体处理
5 结论
对于本文中所选的 PCB 图片以及类似的 PCB 图片,中值滤波是较理想的滤波方式;Sobel、拉普拉斯锐化算法比 Sobel 方法更加尖锐化,但是由于原图片质量不太理想,导致偶尔有断点。因此检测印刷电路板,原始图片的采集也很关键。可以运用本文的中值滤波与拉普拉斯算子去处理类似文中的 PCB 图片。从而有效提高 PCB板错误检测水平。
参考文献:
[1]阮秋琦。数字图像处理基础[M].北京:清华大学出版社,2009.
[2]唐向宏,岳恒立,郑雪峰。MATLAB 及在电子信息类课程中的应用[M].北京:电子工业出版社,2009.
[3]胡永光,和卫星。印刷电路板图像边缘检测算法的研究及软件实现[J].南京工业职业技术学院学报,2004,4(4)。
[4]刘阳。基于图像处理的 PCB 焊接缺陷检测技术研究[D].大连:大连理工大学,2009.