【图像处理】-1.图像二值化

1. 阈值概念

阈值:根据这个值将整张图像分割成不同的前后背景,在二值化处理中,有固定阈值和自适应阈值两种形式;

两种阈值使用情况区分:

  1. 当图像质量好,且目标和背景容易区分时,可以使用固定阈值;
  2. 当图像质量差,且阴影过度,虽然使用大津法和三角形法也可以自己寻找阈值,但整个图像阈值都是相同的,最终分割效果较差;
  3. 所以如果是将一整个图像分割成几行几列,对每个部分再运用大津法或三角形法,最后再将图像整合,这样每一个部分的阈值就不相同,分割效果也会越好。
2. opencv中的固定阈值二值化threshold()
cpp 复制代码
   double threshold(                  
                    InputArray src,
                    OutputArray dst,
                    double thresh,
                    double maxval,
                    int type 
                   )
3. 阈值类型

大津法和三角形法是两种常用于图像处理中自动确定阈值的方法。

cpp 复制代码
    type                            作用
THRESH_BINARY             灰度值高于阈值的为最大,其余为0
THRESH_BINARY_INV         灰度值高于阈值的为0,其余为最大
THRESH_TOZERO             高于阈值的值为0,低于阈值的保留
THRESH_TOZERO_INV         高于阈值的值保留,低于阈值的值为0
THRESH_TRUNC              高于阈值的为阈值,低于阈值的保留
THRESH_OTSU               大津法自动求阈值,可以配合其他阈值使用,适用于双波峰
THRESH_TRIANGLE           三角形法自动求阈值,根据直方图自行计算阈值,最适用于单个波峰,医                
                          学分割细胞等。
4. 大津法原理

一种基于直方图的自适应阈值确定方法,原理是寻找一个阈值,使得根据该阈值将图像分割成前景(目标) 和背景两部分后,目标与背景之间的类间方差最大。类间方差用于衡量目标和背景之间的差异度,方差越大表示目标和背景之间的差异越大,分割效果越好。

  1. 计算图像的灰度直方图;
  2. 对每一个可能的阈值,计算目标和背景的像素数目和像素值的平均值;
  3. 根据当前的阈值t,计算类间方差作为衡量指标:类间方差=目标像素数目*背景像素数目*(目标平均值-背景平均灰度)^2;
  4. 找到使得雷剑方差最大的阈值作为最终阈值。
5. 三角形法原理

同样是基于直方图的阈值选择方法,基本原理是找到直方图的峰值处对应的阈值,通过将直方图峰值对应的斜率定义为三角形的高,并找到使得该三角形面积最大的阈值作为最终阈值。

  1. 计算图像的灰度直方图;
  2. 找到直方图的峰值处,即直方图中像素数目最多的灰度级别;
  3. 以峰值处对应的灰度级别为基准,向两侧寻找直方图中像素数目小于峰值处像素数目的一半的两个灰度级别作为边界;
  4. 计算准基灰度级别和两个边界之间的直方图的斜率,斜率定义为三角形的高,在这种情况下,可以将这两个边界之间的距离作为三角形的底部;
  5. 找到三角形面积最大的斜率对应的阈值作为最终阈值。
6. 自适应阈值处理adaptiveThreshold()

主要功是边缘提取,并且参数C主要来控制边缘的类型和粗细;将blocksize选得大就是二值化,小就是提取边缘。

7. 二值化处理的经验:
  1. THRESH_BINARY:适用于对比度明显的图像,目标与背景之间有明显的灰度差异;
  2. THRESH_TRUNC:适用于保留目标灰度信息同时进行部分抑制的情况;
  3. THRESH_TOZERO:适用于保留亮度较高的区域的细节信息情况;
  4. THRESH_OTSU:适用于图像的目标与背景之间有明显的灰度分离,但具体阈值不确定的情况;
  5. THRESH_TRIANGLE:适用于图像目标与背景之间有明显的灰度分离,但具体阈值不确定的情况;
  6. ADAPTIVE_THRESH_MEAN_C:适用于图像中不同区域具有不同光照条件的情况,有明显噪声或者需要更好的平滑效果;
  7. ADAPTIVE_THRESH_GAUSSIAN_C:适用于图像中不同区域具有不同光照条件情况,简单是直接,更快的计算速度。
相关推荐
墨染天姬1 天前
【AI】端侧AIBOX可以部署哪些智能体
人工智能
AI成长日志1 天前
【Agentic RL】1.1 什么是Agentic RL:从传统RL到智能体学习
人工智能·学习·算法
2501_948114241 天前
2026年大模型API聚合平台技术评测:企业级接入层的治理演进与星链4SAPI架构观察
大数据·人工智能·gpt·架构·claude
小小工匠1 天前
LLM - awesome-design-md 从 DESIGN.md 到“可对话的设计系统”:用纯文本驱动 AI 生成一致 UI 的新范式
人工智能·ui
黎阳之光1 天前
黎阳之光:视频孪生领跑者,铸就中国数字科技全球竞争力
大数据·人工智能·算法·安全·数字孪生
小超同学你好1 天前
面向 LLM 的程序设计 6:Tool Calling 的完整生命周期——从定义、决策、执行到观测回注
人工智能·语言模型
智星云算力1 天前
本地GPU与租用GPU混合部署:混合算力架构搭建指南
人工智能·架构·gpu算力·智星云·gpu租用
jinanwuhuaguo1 天前
截止到4月8日,OpenClaw 2026年4月更新深度解读剖析:从“能力回归”到“信任内建”的范式跃迁
android·开发语言·人工智能·深度学习·kotlin
xiaozhazha_1 天前
效率提升80%:2026年AI CRM与ERP深度集成的架构设计与实现
人工智能
枫叶林FYL1 天前
【自然语言处理 NLP】7.2.2 安全性评估与Constitutional AI
人工智能·自然语言处理