imbinarize

文章目录

    • Syntax
    • Description
    • Examples
      • Binarize Image Using Global Threshold
    • 使用局部自适应阈值对图像进行二值化
      • Binarize 3-D Volume Using Global Thresholding
    • method — Method used to binarize image
    • Name-Value Pair Arguments
      • 'Sensitivity' — Sensitivity factor for adaptive thresholding
    • 'ForegroundPolarity' — Determine which pixels are considered foreground pixels

imbinarize:通过阈值二值化2D灰度图像或3D体积

Syntax

BW = imbinarize(I)
BW = imbinarize(I,method)
BW = imbinarize(I,T)
BW = imbinarize(I,'adaptive',Name,Value)

Description

BW = imbinarize(I)通过用1s替换全局确定的阈值之上的所有值并将所有其他值设置为0s,从2D或3D灰度图像I创建二进制图像。 默认情况下,inbinarize使用Otsu方法,该方法选择阈值以最小化阈值黑白像素的类内方差。 imbinarize使用256-bin图像直方图来计算Otsu的阈值。 要使用其他直方图,请参见otsuthresh。

BW = imbinarize(I,method)使用方法“ global”或“ adaptive”指定的阈值处理方法从图像I创建二进制图像。

BW = imbinarize(I,T)使用阈值T从图像I创建二进制图像。T可以是全局图像阈值(指定为标量亮度值),也可以是局部自适应阈值(指定为亮度值矩阵)。

BW = imbinarize(I,‘adaptive’,Name,Value)使用名称-值对从图像I创建二进制图像,以控制自适应阈值的各个方面。

Examples

Binarize Image Using Global Threshold

BW = imbinarize(I);

在二进制版本旁边显示原始图像。

figure
imshowpair(I,BW,'montage')

imbinarize_第1张图片

使用局部自适应阈值对图像进行二值化

I = imread('printedtext.png');
figure
imshow(I)
title('Original Image')

imbinarize_第2张图片
使用自适应阈值将图像转换为二进制图像。 使用ForegroundPolarity参数指示前景比背景暗。

BW = imbinarize(I,'adaptive','ForegroundPolarity','dark','Sensitivity',0.4);
figure
imshow(BW)
title('Binary Version of Image')

imbinarize_第3张图片

Binarize 3-D Volume Using Global Thresholding

将3-D灰度强度数据加载到工作区中。

load mristack;
V = mristack;

查看3D体积。

figure
slice(double(V),size(V,2)/2,size(V,1)/2,size(V,3)/2)
colormap gray 
shading interp

imbinarize_第4张图片
将强度体积转换为3D二进制体积。

J = imbinarize(V);

查看3-D二进制卷。

figure
slice(double(J),size(J,2)/2,size(J,1)/2,size(J,3)/2)
colormap gray 
shading interp

imbinarize_第5张图片

method — Method used to binarize image

‘global’ (default) | ‘adaptive’
用于将图像二值化的方法,指定为以下值之一。

Values Meaning
>'global' 使用Otsu方法计算全局图像阈值。 有关大津法的更多信息,请参见Graythresh。
'adaptive' 计算使用每个像素周围的局部一阶图像统计信息选择的局部自适应图像阈值。 有关详细信息,请参见Adaptthresh。 如果图像包含Infs或NaN,则“自适应”方法的imbinarize行为是不确定的。 Infs或NaN的传播可能不会被局限在Inf和NaN像素周围。
## T — Threshold numeric scalar | numeric array 阈值亮度值,指定为数值标量或数值数组,值范围为[0,1]。

如果T是数字标量,则inbinarize将T解释为全局图像阈值。 使用Graythresh或otsuthresh计算全局图像阈值。

如果T是数字数组,则inbinarize将T解释为局部自适应阈值。 使用adaptthresh计算本地自适应阈值。

Name-Value Pair Arguments

指定可选的以逗号分隔的Name,Value参数对。 Name是参数名称,Value是相应的值。 名称必须出现在引号中。 您可以按任意顺序指定多个名称和值对参数,例如Name1,Value1,…,NameN,ValueN。

Example: BW = imbinarize(I,'adaptive','Sensitivity',0.4);

‘Sensitivity’ — Sensitivity factor for adaptive thresholding

0.50 (default) | number in the range [0, 1]
自适应阈值的敏感度因子,指定为逗号分隔的一对,由“ Sensitivity”和范围为[0,1]的数字组成。 高灵敏度值导致将更多像素阈值化为前景,存在包括一些背景像素的风险。

‘ForegroundPolarity’ — Determine which pixels are considered foreground pixels

‘bright’ (default) | ‘dark’
确定哪些像素被视为用于自适应阈值的前景像素,并指定为由“ ForegroundPolarity”和以下值之一组成的逗号分隔对。

Value Meaning
'bright' 前景比背景明亮。
'dark' 前景比背景暗

你可能感兴趣的:(matlab常用函数)