1.图像增强
图像增强分为频率域与空间域的图像增强。频率域的操作主要有低通滤波以及高通滤波。前者允许低频信号的通过,实现图像的去噪平滑处理;后者允许高频信号通过,对图像进行锐化实现图像的边缘增强。空间域的操作是对图像像素点进行处理。具有代表性的空间域算法有局部求平均值法和中值滤波法,用于去除或减弱噪音。
1.1图像滤波
图像滤波主要是为了去除图像在采集过程中产生的难以避免的噪声。为避免对后续图像处理过程产生影响,需要去除掉图像中的噪声。噪声主要包括白噪声、椒盐噪声、高斯噪声等。常用的滤波方法有均值滤波、高斯滤波、中值滤波、双边滤波等。
1.2对比度增强
对比度是画面黑与白的比值。比值越大,图像越显得色彩分明,比值越小,图像则不够清晰醒目。有时为了增强前景图像与背景的对比,通常会使用增强对比度的方法达到目的。增强对比度的方法主要有:灰度变换、直方图均衡、retinex(retina和cortex的组合)方法(基于视网膜皮层理论的增强方法)以及暗通道去雾。灰度变换又分为线性变换、对数变换以及指数变换。直方图均衡法目前也有多种算法可以实现。Retinex算法又分为单尺度(SSR)、多尺度(MSR)以及带色彩恢复的多尺度算法。值得一提的是retinex算法对于去除光照影响十分有效。同样能起到图像增强效果的还有去模糊化的多种算法
2.图像分割
图像分割指的是将图像细分为多个子区域的过程。图像分割通常用于定位图像中的物体和边界。更精确的,图像分割是对图像中的每个像素加标签的一个过程,这一过程使得具有相同标签的像素具有某种共同视觉特性。图像分割的结果是图像上子区域的集合,而这些子区域的全体覆盖了整个图像;或是从图像中提取的轮廓线的集合(例如边缘检测的结果)。
图像分割的方法主要有:阈值分割(threshold)、区域分割、边缘分割(边缘检测)、直方图法、聚类法、水平集法、基于小波变换的方法、基于图论的方法、基于能量泛函的方法以及基于神经网络的方法等。阈值分割又分为全局阈值、自适应阈值、大津算法(Otsu)等。边缘检测有多种检测算子,包括kirsch算子、laplacian-gauss(log)算子、canny算子、sobel算子、Robert算子、prewitt算子等。
3.形态学运算
完成图像分割后的图像可能出现保留多余噪声、边缘粗糙或不连贯等问题。可以通过形态学运算对图像进行进一步处理。图像的形态学运算常用于对图像中目标区域的轮廓修正。形态学运算的基础操作是腐蚀和膨胀,腐蚀和膨胀操作组合后形成了开运算和闭运算。腐蚀操作和膨胀操作在用于消除图像中噪声点、连接图像中相邻元素等方面有广泛应用。
4.轮廓提取
对形态学运算后的对象进行边缘轮廓提取,得到最终的区域轮廓。可以通过opencv中的cv2.findcontours函数进行轮廓的绘制。
5.特征信息提取
在完成特征区域的提取之后,就完成了图像处理过程。下一步便是进入到了图像识别部分,即对特征区域进行特征信息的提取并对特征进行分类。这也就完成了图像处理过程进入到了图像识别部分。特征信息主要包括:几何特征、灰度特征、纹理特征、不变矩和拓扑特征。其中几何特征包括:周长、面积、矩形度、分散度、重心坐标、圆形度、长宽比等。灰度特征包括:灰度均值、灰度标准差、平滑度和灰度熵。纹理特征包括能量、对比度、相关性以及逆矩差。通过收集整理样本的特征信息,设计合理的分类器并对其进行训练以实现根据特征信息对图像完成识别分类。