本文共 1836 字,大约阅读时间需要 6 分钟。
图像二值化分割技术是图像处理中的核心任务之一,其基本目标是将灰度图像分割为前景和背景两部分。常见的二值化方法包括全局阈值法、局部阈值法、迭代方法以及基于直方图特性的各种阈值分割算法等。本文将从理论到实践,系统阐述图像二值化的主要方法及其应用场景。
二值化方法可以根据是否基于图像整体特性划分为以下几种:
全局阈值法
该方法通过分析图像整体特性,寻找最优阈值。常用的全局阈值法包括:局部阈值法
该方法适用于复杂背景或目标物体较多的图像,常用的方法包括:大津法是图像二值化中最负盛的全局阈值分割算法,由日本学者大津于1979年提出。其核心思想是通过选择使得背景和前景类间方差最大的阈值来进行图像分割。
原理:
图像灰度分布决定了类间方差大小。方差越大,说明两部分的差别越大。通过迭代选择使类间方差最大的阈值,能够最大限度地减少前景与背景的错分 probability。优点:
缺点:
应用:
大津法是求图像全局阈值的最佳方法,广泛应用于图像二值化分割中。OpenCV 简单阈值
使用 cv2.threshold 函数,通过设定阈值值来实现二值化。自适应阈值法
使用 cv2.adaptiveThreshold 函数,计算阈值时考虑图像本地均值或高斯均值。Otsu的二值化方法
OpenCV 中直接使用 Otsu 阈值方法时,阈值设为 0 并指定 THRESH_OTSU 标志位。Niblack 阈值法
该方法基于目标区域的平均亮度和假设的偏差比例 k,通过窗口统计计算最佳阈值。适用于有明显目标物体的图像。Sauvola 阈值法
基于均值和标准差的融合计算阈值,特别适用于复杂背景和小目标的图像分割。IntegralThreshold 法
该方法结合直方图的积分特性,通过平滑直方图后选择二值化阈值,显示良好的鲁棒性。迭代方法通过假设当前阈值并进行图像分割,计算各分区的均值或统计量,逐步优化阈值。常用方法包括:
Huang 阈值分割法
基于论文《ImageThresholding By minimizing the measure of fuzziness》,通过最小化模糊度函数来选择阈值。InterModes 阈值法
假设直方图是双峰分布的,通过平滑滤波后选择两峰的中值作为阈值。IsoData 阈值法
该方法基于 Ridler-Calvard 算法,通过迭代计算阈值,直到阈值与复合均值一致。Moments 阈值法
基于 Tsai 的论文《Moment-preserving thresholding: a new approach》,通过最小化前景和背景的高阶矩误差来选择阈值。Yen 阈值法
基于直方图的最大相关条件,通过优化直方图的相关性来选择阈值。最大熵阈值分割是首选方法之一,其核心思想是选择使得图像直方图熵最大化的阈值。
均值方法分割
计算图像所有像素的均值作为阈值,简单且高效。MinError 方法
基于 Kittler-Illingworth 算法,通过迭代最小化前景和背景的误差来选择阈值。Triangle 方法
基于直方图的三角装配,选择最大距离对应的灰度值作为阈值。Percentile 方法
假设前景像素为 ptile(通常为 50%),通过迭代找到最优阈值。图像二值化分割是图像处理中的核心任务之一,选择合适的二值化方法对图像分析结果至关重要。不同方法有不同的应用场景,例如大津法适用于全局二值化,Niblack 法适用于目标检测,最大熵值分割适用于复杂背景图像。
学习和实践这些方法有助于提升图像处理项目的效果。
转载地址:http://iqqiz.baihongyu.com/