前面介绍完一些常规项目所需要用的内容知识:一维码二维码读取,OCR识别,测量,定位等。其中大部分的思路或者说是套路是:
一、获取图像(获取信息)
二、预处理
预处理主要是从两方面进行:提高对比度、去噪。
提高对比度的算子:scale_image、emphasize、gray_range_rectangle(模板矩阵对应的最大值最小值的差替代中心点像素值)、equ_histo_image等。
去噪的算子:均值滤波mean_image、中值滤波median_image、高斯滤波gauss_image、频域滤波。
三、分割图像
图像分割就是要提取出感兴趣区域。
分割的算子:threshold、binary_threshold、dyn_threshold、var_threshold等等。
四、形态学处理
腐蚀,膨胀之类的
五、特征提取
提取出图像或区域的特征,作为判断的依据。
特征包括:面积、宽度、高度、矩形度、圆度等等。
六、输出结果
基本掌握这些流程之后,我们就能对付大部分的图像处理的情况。但在我们实际工作中,碰到的这种常规项目还是比较少的,现在大部分都是缺陷检测,这一类水浅水深只有自己经历过才知道,当然了不是所有缺陷检测都是很难的,也有很简单的就比如正反面辨别啊之类的,做这类项目没有固定的章法,主要视情况而定。接下来我在着重讲解下预处理部分的频域内容,这个在处理一些缺陷类的项目中还是比较实用的。
下面我就介绍下频域的基础内容:
**1.**空间域与频域
空间域:对像素的灰度处理
频域:傅里叶变换和小波变换
频域检测缺陷的思路