结合图像处理做缺陷检测的一些思考

论文一.工件表面微小缺陷的检测与识别方法

地址:http://journal.seu.edu.cn/oa/DArticle.aspx?type=view&id=201404010

针对微小缺陷在复杂背景图像情形下分割难的问题,提出了一种基于像元搜索算法的微小缺陷检测方法.首先采用直方图均衡化提升背景与缺陷目标的对比度,在分析噪声分布特点的基础上,利用基于中值和均值滤波的改进滤波算法对图像进行去噪等前期预处理;然后根据背景灰度分布,在目标分割过程中采用分块、按方差大小排除背景图像块、初定目标和剔除伪目标的缺陷像元搜索算法;最后采用矩形度和区域占空比进行缺陷特征提取.结果表明,对于背景不均匀、目标与背景区分不明显这类复杂背景图像,所提出算法相对于传统的Otsu等算法能够更好地分割出弱小缺陷目标,提高了检测缺陷的准确性.

重点:基于缺陷像元搜索的目标分割算法

适用场景:

  1. 图像的背景区和目标区在整体上灰度对比不明显,但在小范围内背景和目标是可分的。
  2. 图像的方差能够反映图像灰度值的变化幅度
  3. 相邻像元灰度差值的大小能反映它们的归属区域
  4. 目标区域不会孤立存在,同时满足均匀性和连通性的原则

步骤:

(1)首先把经预处理后图像 X 分割成均匀的若 干小块 X = { X1,X2,…,Xn } . 在分割时,每个小块可 以全部为背景,也可以是背景和缺陷的组合,但不 能全部为缺陷. 接着计算每小块图像的方差,并按 方差由小到大的顺序排列成有序序列{ σ2 1 ( j) } ; 然 后从{ σ2 1 ( j) } 中去掉由小到大 60% ( 微小缺陷的区 域面积与整幅图像的面积比值小于 0. 5) 的方差值 对应的图像块,再将{ σ2 1 ( j) } 中剩余的 40% 的方差组成新的方差序列,此时{ σ2 1c ( j) } 所对应的图像 块中,一部分是包含缺陷的图像块,同时还有一部 分是背景区域图像块。

(2) 对{ σ2 1c ( j) } 对应的每一个图像块进行如下 操作. 首先初步确定缺陷目标点,计算每个图像块的均值,记为 fmean . 从左到右、从上到下遍历每个图 像块的像元,若像元 fi,j满足下面条件,则标记为背 景点: fi,j > fmean,遍历 fi,j后的像元若满足下面条件: fi,j + 1 - fi,j < αfmean则认为像元 fi,j + 1同前一个像元 fi,j 性质相同,同标 记为背景点或缺陷目标点,否则当前像元与前一个像元性质相反。

(3) 在初次遍历结束后,每一小块图像中的像 元被分割为背景和缺陷目标 2 部分,在这个过程 中,有少部分背景被错分为缺陷目标,所以需要剔 除初次遍历后的伪目标点. 缺陷目标以一定大小的 连通域存在,为了判断初次遍历中所标记的缺陷像 元是否为真正的缺陷,以当前像元为核心,在形成 3 × 3 窗口中,若至少包含有一半以上的缺陷像元, 则认为该像元为缺陷点,并利用式( 5) 重新判断其 后的像元性质。

 

 

相关资料:

知乎“缺陷检测”话题:https://www.zhihu.com/topic/20231924/top-answers

https://github.com/Eatzhy/surface-defect-detection

https://github.com/abin24/Saliency-detection-toolbox

posted @ 2023-01-08 23:12  小金乌会发光-Z&M  阅读(117)  评论(0编辑  收藏  举报