什么是阈值化 (Binarization)

AI解读 9小时前 硕雀
2 0

阈值化Binarization)概述


1. 什么是阈值化

阈值化是把灰度图像的像素值按照设定的阈值 T 划分为两类——通常是 0(黑)‍ 与 255(白)‍,从而得到仅包含两种颜色的二值图像。在机器学习中,阈值化也指把数值特征通过阈值转化为布尔型(0/1)特征。

2. 基本原理

对每个像素的灰度值 gray 进行比较,当灰度小于阈值时像素设为黑(0),否则设为白(255)。阈值的选取决定了前景(目标)与背景的分离效果。

3. 常见阈值化方法

方法 说明 典型应用
全局阈值(Global Threshold) 对整幅图像使用同一阈值,适用于光照均匀、对比度明显的场景。 文档二值化、简单目标分割
自适应阈值(Adaptive / 局部阈值) 根据局部窗口的统计量(均值、加权均值)动态计算阈值,能处理光照不均的图像。OpenCV 的 adaptiveThreshold() 就是典型实现
Otsu 方法 自动寻找使类间方差最大的阈值,常用于直方图呈双峰分布的图像。常配合最大类间方差法确定阈值
多阈值(Multi‑level Threshold) 将灰度划分为多于两类的多个阈值,得到多级灰度图(不完全二值化)。在某些医学或遥感图像中使用。

4. 实现步骤(以 OpenCV 为例)

  1. 灰度化cv2.cvtColor(src, cv2.COLOR_BGR2GRAY)
  2. 选择阈值化方式
    • 固定阈值:_, binary = cv2.threshold(gray, T, 255, cv2.THRESH_BINARY)
    • 自适应阈值:binary = cv2.adaptiveThreshold(gray, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY, blockSize, C)
  3. 后处理(可选)‍:形态学开/闭运算去噪,连通组件分析等。

5. 应用场景

领域 具体用途
图像分割 提取目标物体、去除背景,常用于 OCR 前处理、医学影像(血管、细胞)分割
文档处理 将扫描文档转为纯黑白,提高字符识别率(如 Tesseract
机器学习特征工程 将连续特征二值化为 0/1,适用于逻辑回归朴素贝叶斯等模型
深度学习 二值化网络(Binary Neural Network)中,将激活或权重二值化以降低计算成本
工业检测 通过阈值化快速定位缺陷、裂纹等异常区域

6. 优缺点

  • 优点
    • 实现简单、计算代价低。
    • 能显著压缩信息量,便于后续二值化分析(连通组件、形态学操作)。
  • 缺点
    • 对光照变化敏感,阈值选取不当会导致前景/背景混淆。
    • 只能表达二元信息,细节损失较大,复杂场景需结合更高级分割方法。

7. 小结

阈值化是图像处理与特征工程中最基础且常用的技术之一。通过合适的阈值选取(固定、Otsu、或自适应),可以将灰度图像快速转化为二值图,帮助实现目标提取、噪声抑制和特征离散化。实际使用时,往往结合预处理(平滑、直方图均衡)和后处理(形态学)以提升鲁棒性

来源:www.aiug.cn
声明:文章均为AI生成,请谨慎辨别信息的真伪和可靠性!