自适应阈值
完整代码
这段代码实现了基于全局阈值和局部阈值的图像二值化处理。主要步骤如下:
- 初始化环境并加载图像:
- 全局阈值处理:
- 使用Otsu方法计算全局阈值,并将图像二值化。
- 设置局部阈值处理的参数:
stepSize
:步长(决定局部窗口的移动步幅)。tileSize
:局部窗口大小(决定每次处理的区域)。varThresh
:方差阈值(决定是否使用局部Otsu阈值或局部均值)。
- 局部自适应阈值处理:
- 初始化输出图像和掩码矩阵。
- 遍历图像的每一个局部区域。
- 显示结果图像:
- 显示全局二值化图像和局部二值化图像。
- 显示原始图像加上统一掩码和局部阈值图像。
- 保存结果图像:
- 保存全局和局部二值化图像,以及掩码图像和局部阈值图像。
总结:
- 全局阈值处理使用Otsu方法来找到整个图像的最佳阈值,并将图像二值化。
- 局部阈值处理则将图像分成若干小区域,根据每个小区域的方差和局部阈值进行二值化。
- 如果区域内的方差较高,使用局部Otsu阈值。
- 如果区域内的方差较低,使用局部均值进行二值化。
- 最后,显示并保存处理后的图像。