有问题加QQ:1691965689
问题:一个数字图像处理的matlab程序,输入拍摄好的简单pcb板图片(例如左图),和altium designer软件中的pcb设计图(例如右图),对比两者后显示出检测结果:哪里短路,断路(即因刻板机精度问题导致线路间粘连或者断开)。基于matlab的pcb电路板故障检测
pcb拍摄照片以下程序中命名为1,pcb设计图以下程序中命名为2
解决步骤:
一、 基于top-hat 变换对比度增强算法的图片1的自适应形态学图像增强:
运行step1.m,得到结果如下图。
基于matlab的pcb电路板故障检测
主要原理是:创建多尺度亮top-hat变换 ,提取亮细节特征。
通过对比,自适应形态学图像增强的效果优于其他效果,故采用此方法。
通过步骤一处理后的上图在以下程序中命名为11
二、 基于同态滤波的图片11的降噪及二值化处理:
主要步骤为:

  1. 读入图像
  2. 采用傅里叶变换
  3. 数据矩阵平衡
  4. 进行同态滤波
  5. 二值化处理
    运行step2.m,得到结果如下图。
    基于matlab的pcb电路板故障检测
    通过该步骤处理后的上图在以下程序中命名为333
    三、 标准电路板图片2的灰度化及二值化处理:
    运行step2.m,对图片2的灰度化及二值化处理得到结果如下图。
    基于matlab的pcb电路板故障检测
    通过该步骤处理后的上图在以下程序中命名为444.
    至此,将该问题转化为对比333和444。
    四、 对比检测结果:

最终运行得出17处断路,0处凹陷,0处阻塞。
基于matlab的pcb电路板故障检测
![](https://img-blog.csdnimg.cn/20200301214955462.JPG?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzMxNDM0NTM3,size_16,color_FFFFFF,t_70
 分析结果:
整体pcb检测的识别率较好,由于噪声的原因,有的线路印刷不清晰也被错误识别,包括pcb的四周印刷不清晰,也被识别为断路。基本没有受到pcb板中间指纹的影响,主要是pcb左下角光影不足造成的影响,但是通过滤波器也得到了较好地处理。
 改进建议:
方法一:如果时间充足,通过调整识别的中心点,还能实现更好的效果。见下图红框。

方法二:如果能够创建足够多的训练集,用机器学习的方法训练识别器,还能得到更好的方法,当然这也需要更深入的研究。

相关文章:

  • 2021-10-16
  • 2022-12-23
  • 2021-12-18
  • 2022-12-23
  • 2022-01-21
  • 2022-12-23
  • 2021-07-15
  • 2022-12-23
猜你喜欢
  • 2021-08-23
  • 2021-05-31
  • 2021-10-02
  • 2022-12-23
  • 2021-12-31
  • 2021-10-17
  • 2021-11-11
相关资源
相似解决方案