8.9 图像二值化
问题描述
将一张图像转换成仅包含黑色和白色的简化版本。
解决方案
图像二值化是指对图像进行阈值处理(thresholding),即将强度大于某个阈值的像素设置为白色并将小于该值的像素设置为黑色的过程。还有一种更先进的技术,叫作自适应阈值处理(adaptive thresholding),在这种方法中,一个像素的阈值是由其相邻像素的强度决定的。当图像中不同区域的光照条件有差异时,用这种方法处理会很有帮助。
讨论
上面调用的adaptiveThreshold方法有4个重要的参数。参数max_output_value用于确定输出像素的最大强度。参数cv2.ADAPTIVE_THRESH_GAUSSIAN_C将像素的阈值设置为相邻像素强度的加权和,其权重由高斯窗口确定。我们可以将该参数设置为cv2.
ADAPTIVE_THRESH_MEAN_C,使用相邻像素的平均值作为阈值:
最后两个参数分别是块大小(用于确定像素阈值的邻域大小)和一个用来手动调整阈值的常数(从计算出的阈值中减去该常数)。
对图像进行阈值处理的一个主要优点是可以对图像去噪——只保留最重要的元素。例如,我们通常对印有文本的照片进行阈值处理,以提取照片上的字母。
本书评论