缺陷检测解析和实战

缺陷检测解析和实战 缺陷检测解析和实战 缺陷检测解析和实战

一 缺陷类型

1 产品外部缺陷:凸凹:毛刺等

2 产品内部缺陷:污点、内部凸凹点、瑕疵、孔洞、破损

3 划痕

二 打光

划痕–低角度环形光,划痕打白,背景打暗
划痕–同轴光

凸点,角度光

凹点,垂直光


blob分析的核心在于阈值分割(图像分割)

blob分析之阈值分割算子

阈值分割

threshold (Image, Region, 128, 255)
对应参数分别为输入图像、输出区域、阈值下限、阈值上限

动态阈值分割

mean_image (Image, ImageMean1, 9, 9)
dyn_threshold (Image, ImageMean1, RegionDynThresh, 5, 'light')
对应参数分别为原始图像、阈值图像、输出区域、偏移量、输出类型

当LightDark = 'light' 时 g0 >= gt+Offset;
当LightDark = 'dark' 时 g0 <= gt-Offset;
当LightDark = 'equal' 时 gt-Offset <= g0 <= gt+Offset;
当LightDark = 'not_equal' 时 gt+Offset < g0 或者 g0 < gt-Offset;

二值化分割

非常适用于在均匀照明的背景下分割

binary_threshold (Image, Region, 'max_separability', 'dark', UsedThreshold)
对应参数分别为输入图像、输出区域、使用方法、选择前景还是背景、输出使用的阈值

使用二值阈值分割图像,binary_threshold使用自动确定的全局阈值分割单通道图像,并在region中返回分割后的区域,分割所使用的阈值由method中给出的方法确定,非常适用于在均匀照明的背景下分割字符;
目前,method总共提供两种方法:'max_separability''smooth_histo',这两种方法都只能用于具有双峰直方图的图像:
 'smooth_histo' 方法和bin_threshold的功能一致,可以参考bin_threshold的分割过程;
'max_separability' 方法是靠UsedThreshold来决定最小阈值的,速度比'smooth_histo'要快,对于干扰也不是很敏感;

直方图阈值分割

*直方图阈值分割
auto_threshold (Image, Regions, 2)
对应参数分别为输入图像、输出区域、高斯参数
利用直方图确定的阈值分割图像,通过多阈值分割单通道图像,会返回多个区域;首先输入图像的绝对直方图的灰度值是确定的,然后高斯平滑(Sigma)后从直方图中提取相关的最小值

Sigma越大,提取的区域就越小;

快速分割

fast_threshold (Image, Region, 128, 255, 20)
对应参数分别为输入图像、输出区域、阈值下限、阈值上限、处理参数(MinSize)
在理解MinSize的时候,可以直接理解为就是一个加速参数,把图像分成两块来分别处理,MinSize决定了两块的比例;
MinSize越大,速度越快

var_threshold

在不均匀的,嘈杂的,或不均匀照明的背景上分割区域是比较合适的;

var_threshold (Image, Region, 15, 15, 0.2, 2, 'dark')
var_threshold(Image : Region : MaskWidth, MaskHeight, StdDevScale, AbsThreshold, LightDark : )

输入图像、输出区域、掩膜宽度、掩膜高度、灰度值的标准差因子、与平均值的最小灰度差值、阈值类型
LightDark:提取像素的局部灰度值是亮的还是暗的
MaskWidth和MaskHeight的最小值应该要大于等于3,值3可以被认为是最小的敏感值
StdDevScale :较高的值意味着只选择与周围环境非常不同的像素,建议值是在-1.01.0之间,0.2是建议值
如果StdDevScale是正值,那么像素灰度值需要具有较高的标准偏差(不均匀的图像);如果StdDevScale是负值,那么像素灰度值需要具有较低的标准偏差(均匀的图像);StdDevScale 局部标准差被用来衡量图像中的噪声,标准差可以通过StdDevScale进行缩放
StdDevScale的值过于小,导致很多像素没有被选中,值过大,导致不需要的像素值被选中

AbsThreshold 在均匀的图像中,标准差较低;因此,单个灰度值的影响较大,为了减小算子的灵敏度,需要调整AbsThreshold的值,这样单个灰度值的变化就可以被忽略;

如果StdDevScale是负值,AbsThreshold也应该选择为负值,因为标准差比较低,

标准差可以通过StdDevScale进行缩放


解决策略

一 blob分析+特征分析

二 blob分析+特征分析+差分

三 频域+空域

四 光度立体法

五 特征提取+分类器训练

六 测量和拟合

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值