图像二值化

您正在查看最新版本(V2.2.0)的文档。如果您想查阅其他版本的文档,可以点击页面右上角“切换版本”按钮进行切换。

■ 如果您不确定当前使用的产品是哪个版本,请随时联系梅卡曼德技术支持

功能描述

该步骤可按设定方法对高于或低于阈值的像素分别进行二值化处理。

当图像中的像素灰度值只有最大值和最小值两种取值时,即“非黑即白”,这种图像称为二值图像。

将非二值图像经过计算变成二值图像的过程称为图像的二值化。

使用场景

该步骤为通用的图像处理步骤,一般用于在 2D 图像上根据阈值分割像素。

输入与输出

输入

输入端口 数据类型 说明

图像

Image

此端口输入的图像会被进行二值化处理。

输出

输出端口 数据类型 说明

处理后的图像

Image

二值化处理后的图像。

参数说明

参数 解释

二值化方法

参数解释:该参数用于选择图像二值化的方法。

值列表:

默认值:全局自适应阈值分割

二值图反转

参数解释:勾选后,将对整张图像的二值化结果进行反转。例如,原本被设置为 255 的像素将被设置为 0,原本被设置为 0 的像素将被设置为 255。

默认值:不勾选

全局自适应阈值分割

选择全局自适应阈值分割方法后,相关参数说明如下。

参数 解释

图像通道类型

参数解释:阈值分割时,步骤将基于不同的图像通道进行计算。

值列表:灰度图、色相通道、饱和度通道、明度通道

阈值计算方法

参数解释:该参数用于选择为图像中每个像素计算阈值的方法。

值列表:均值、加权平均

  • 均值:阈值为像素邻域的均值减去常数。

  • 加权平均:阈值为像素邻域的加权均值减去常数。

阈值分割类型

参数解释:该参数用于确定实现图像二值化的规则。

值列表:二值化、反二值化

  • 二值化:当像素灰度值大于计算阈值时,将该像素的灰度值设为 255,否则设为 0。

  • 反二值化:当像素灰度值大于计算阈值时,将该像素的灰度值设为 0,否则设为 255。

核大小

参数解释:该参数表示计算阈值时考虑的邻域范围,单位为像素(px)。

默认值:21

常数

参数解释:该参数表示计算阈值时使用的常数。增大该值可使输出图像整体变暗,减小该值则使图像变亮。

默认值:0

双阈值分割

选择双阈值分割方法后,相关参数说明如下。

参数 解释

阈值 1、阈值 2

参数解释:

如果阈值 1 < 阈值 2,则介于两个阈值之间的像素将被设置为 255,其他像素设置为 0。

如果阈值 1 > 阈值 2,则超出阈值区间的像素将被设置为 255,其他像素设置为 0。

如果阈值 1 = 阈值 2,则阈值处的像素将被设置为 255,其他像素设置为 0。

动态阈值分割

选择动态阈值分割方法后,相关参数说明如下。

参数 解释

阈值分割类型

参数解释:该参数用于确定实现图像二值化的规则。

值列表:

  • 亮区:若 P ≥ P' + offset,则将 P 设置为 255,否则设置为 0。

  • 暗区:若 P ≤ P' - offset,则将 P 设置为 255,否则设置为 0。

  • 范围内:若 P' - offset ≤ P ≤ P' + offset,则将 P 设置为 255,否则设置为 0。

  • 范围外:若 P < P' - offset 或 P > P' + offset,则将 P 设置为 255,否则设置为 0。

滤波器类型

参数解释:该参数用于选择图像滤波的方法。

值列表:

  • 均值滤波:通过将图像中每个像素替换为邻域内像素的均值来进行滤波,从而实现平滑图像、减少随机噪声的效果。

  • 高斯滤波:可有效消除图像中的部分噪声,在平滑图像的同时尽可能保留边缘和细节,因此常用于图像平滑、噪声去除以及边缘检测前的预处理。

  • 中值滤波:通过将图像中每个像素替换为邻域内像素的中值来进行滤波,能够有效减少图像中的噪声,尤其是椒盐噪声(通常表现为随机的黑白点)。

像素值偏置

参数解释:在滤波时,给像素值额外加上或减去一个常量,以调整二值化的结果。

核大小

参数解释:该参数表示图像滤波时窗口的边长,单位为像素(px)。由于窗口中心始终存在一个中心像素,所以请将该值设置为奇数。若设置为偶数,偶数值将加 1。

全局固定阈值分割

选择全局固定阈值分割方法后,相关参数说明如下。

参数 解释

图像通道类型

参数解释:阈值分割时,步骤将基于不同的图像通道进行计算。

值列表:灰度图、色相通道、饱和度通道、明度/亮度通道

阈值(0~255)

参数解释:手动设定一个固定阈值,分割满足阈值条件的像素。

阈值分割类型

参数解释:该参数用于确定实现图像二值化的规则。

值列表:

  • 二值化:当像素灰度值大于设定阈值时,将该像素的灰度值设为 255,否则设为 0。

  • 反二值化:当像素灰度值大于设定阈值时,将该像素的灰度值设为 0,否则设为 255。

  • 截断阈值:当像素灰度值大于设定阈值时,将该像素的灰度值截断为阈值,否则保留原始灰度值。

  • 归零阈值:当像素灰度值大于设定阈值时,保留原始灰度值,否则将该像素的灰度值设为 0。

  • 反归零阈值:当像素灰度值大于设定阈值时,将该像素的灰度值设为 0,否则保留原始灰度值。

  • 大津法:使用 Otsu 算法自动计算全局阈值。

  • 三角法:使用三角形算法自动计算全局阈值。

调参案例

案例 1:背景干净,目标与背景对比度高

  • 场景:检测场景中,目标物体与背景的灰度差异明显,光照条件稳定,例如检测黑色物体在白色背景上的位置。

  • 推荐做法:优先选择全局固定阈值分割方法,手动设置一个固定的阈值值,便于快速有效地分离目标与背景。

  • 调参思路:

    1. 先观察图像的灰度直方图,确定目标和背景的灰度值范围。

    2. 选择在两者灰度值中间的一个值作为初始阈值(例如目标范围为 0-80,背景范围为 150-255,可设初始阈值为 115)。

    3. 在过程中调整阈值,逐步优化分割效果。

    4. 若目标被分割不完整,降低阈值;若背景噪声过多,提高阈值。

    5. 根据需要选择"二值化"或"反二值化"来调整前景与背景的颜色。

案例 2:光照不均匀,背景存在渐变

  • 场景:自然光照环境或有阴影的场景中,图像的不同区域亮度差异大,使用全局阈值容易导致欠分割或过分割问题。

  • 推荐做法:选择全局自适应阈值分割方法,系统基于像素邻域动态计算阈值,能自适应光照变化。

  • 调参思路:

    1. 设置“核大小”初始值为 21 像素,观察分割效果。

    2. 若目标轮廓模糊或边界检测不清晰,增大核大小(如 31 或 41),使邻域更大、阈值计算更平稳。

    3. 若目标细节丢失,减小核大小(如 11 或 15),使阈值更敏感。

    4. 调整“常数”参数:增大常数使图像整体变暗(前景更多),减小常数使图像变亮(背景更多)。

    5. 根据图像通道(灰度图、色相、饱和度等)选择合适的通道以获得最佳分割。

案例 3:图像中存在噪声,需要去除椒盐噪声

  • 场景:低质量摄像头或恶劣环境中采集的图像,含有随机的黑白噪点(椒盐噪声),直接二值化会保留噪声。

  • 推荐做法:采用动态阈值分割方法,配合中值滤波可有效去除椒盐噪声。

  • 调参思路:

    1. 选择"动态阈值分割"方法。

    2. 选择“中值滤波”作为滤波器类型,中值滤波特别适合去除椒盐噪声。

    3. 设置“核大小”为 5 或 7(奇数),用于定义滤波窗口大小。

    4. 根据目标特征选择“阈值分割类型”:

      • 若要检测较亮的目标,选择“亮区”。

      • 若要检测较暗的目标,选择“暗区”。

      • 若要检测落在某个范围内的像素,选择“范围内”。

      • 若要检测落在某个范围外的像素,选择“范围外”。

    5. 调整“像素值偏置”(offset)来控制分割的宽松度:增大偏置值会包括更多像素,减小偏置值则更严格。

    6. 观察效果,逐步微调核大小和偏置值。

案例 4:需要提取特定范围的亮度值

  • 场景:目标物体的灰度值集中在某个特定范围内,需要精确地提取这个范围内的像素,例如检测半导体芯片表面特定亮度的区域。

  • 推荐做法:使用双阈值分割方法,通过设置两个阈值边界来精确控制像素范围。

  • 调参思路:

    1. 观察目标区域的灰度值范围,例如目标像素灰度为 100-180。

    2. 设置阈值 1 为范围的下界,阈值 2 为范围的上界(例如阈值 1 = 100,阈值 2 = 180)。

    3. 此时会提取介于两个阈值之间的像素为 255,其他像素为 0。

    4. 若需要反向提取(提取范围外的像素),调整阈值 1 和阈值 2,使阈值 1 > 阈值 2。

    5. 根据分割效果逐步调整两个阈值的边界值,实现精确的灰度范围筛选。

该页面是否有帮助?

可以通过以下方式反馈意见:

我们重视您的隐私

我们使用 cookie 为您在我们的网站上提供最佳体验。继续使用该网站即表示您同意使用 cookie。如果您拒绝,将使用一个单独的 cookie 来确保您在访问本网站时不会被跟踪或记住。