Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

adaptthresh

局所的な 1 次統計量を使用する適応的なイメージのしきい値

説明

T= adaptthresh(I)は、2 次元グレースケール イメージまたは 3 次元グレースケール ボリュームIのための局所的な適応しきい値を計算します。関数adaptthreshは各ピクセルの近傍の局所的な平均強度 (1 次統計量) に基づいてしきい値を選択します。しきい値Tは、グレースケール イメージをバイナリ イメージに変換する関数imbinarizeで使用できます。

T= adaptthresh(I,sensitivity)は、sensitivityで指定される感度係数を使用して局所的な適応しきい値を計算します。sensitivityは感度を示す範囲 [0,1] のスカラーであり、より多くのピクセルが前景としてしきい値処理されるようにします。

T= adaptthresh(___,Name,Value)は、しきい値処理の特性を制御する名前と値のペアを使用して局所的な適応しきい値を計算します。

すべて折りたたむ

イメージをワークスペースに読み取ります。

I = imread('rice.png');

adaptthreshにより 2 値化演算で使用するしきい値を決定します。

T = adaptthresh(I, 0.4);

しきい値を指定してイメージをバイナリ イメージに変換します。

BW = imbinarize(I,T);

元のイメージとバイナリ バージョンを並べて表示します。

figure imshowpair(I, BW,'montage')

Figure contains an axes object. The axes object contains an object of type image.

イメージをワークスペースに読み取ります。

I = imread('printedtext.png');

adaptthreshを使用して適応しきい値を計算し,局所的なしきい値イメージを表示します。これは背景の平均照度を推定したものです。

T = adaptthresh(I,0.4,'ForegroundPolarity','dark'); figure imshow(T)

Figure contains an axes object. The axes object contains an object of type image.

局所的な適応しきい値を使用してイメージを 2 値化します。

BW = imbinarize(I,T); figure imshow(BW)

Figure contains an axes object. The axes object contains an object of type image.

3 次元ボリュームをワークスペースに読み込みます。

loadmristack; V = mristack;

データを表示します。

figure slice(double(V),size(V,2)/2,size(V,1)/2,size(V,3)/2) colormapgrayshadinginterp

Figure contains an axes object. The axes object contains 3 objects of type surface.

しきい値を計算します。

J = adaptthresh(V,'neigh',[3 3 3],'Fore','bright');

しきい値を表示します。

figure slice(double(J),size(J,2)/2,size(J,1)/2,size(J,3)/2) colormapgrayshadinginterp

Figure contains an axes object. The axes object contains 3 objects of type surface.

入力引数

すべて折りたたむ

グレースケール イメージまたはボリューム。2 次元数値行列または 3 次元数値配列として指定します。

イメージにInfまたはNaNが含まれている場合、adaptthreshの動作は定義されません。InfまたはNaNの伝播をInfまたはNaNのピクセルの近傍のみに制限することはできない場合があります。

データ型:single|double|int8|int16|int32|uint8|uint16|uint32

どのピクセルが前景ピクセルとしてしきい値処理されるかを決定します。範囲 [0, 1] の数値として指定します。感度の値を高くすると、前景としてしきい値処理されるピクセルが多くなります。ただし、一部の背景ピクセルが含まれる危険性もあります。

データ型:single|double|int8|int16|int32|int64|uint8|uint16|uint32|uint64

名前と値の引数

例:T = adaptthresh(I,0.4,'ForegroundPolarity','dark');

オプションの引数Name,Valueのコンマ区切りペアを指定します。Nameは引数名で、价值は対応する値です。Nameは引用符で囲まなければなりません。Name1,Value1,...,NameN,ValueNのように、複数の名前と値のペアの引数を、任意の順番で指定できます。

各ピクセル周囲の局所的な統計量を計算するために使用される近傍のサイズ。正の奇数の整数、または正の奇数の整数から成る 2 要素ベクトルとして指定します。

データ型:single|double|int8|int16|int32|int64|uint8|uint16|uint32|uint64

どのピクセルが前景ピクセルと見なされるかを決定します。次のいずれかを使用して指定します。

平均

'bright'

前景が背景より明るい。

'dark'

前景が背景より暗い。

データ型:char|string

各ピクセルの局所的なしきい値の計算に使用される統計量。次のいずれかに指定します。

平均

'mean'

近傍の局所的な平均強度。この手法はブラッドリー法とも呼ばれます[1]

'median'

近傍の局所的な中央値。この統計量の計算は遅くなる可能性があります。結果をより高速に取得するためには、使用する近傍のサイズを小さくしてください。

'gaussian'

近傍のガウス加重平均。

データ型:char|string

出力引数

すべて折りたたむ

正規化された強度値。入力イメージまたはボリュームIと同じサイズの数値行列または数値配列として返されます。値は、[0, 1] の範囲に正規化されます。

データ型:double

参照

[1]Bradley, D., G. Roth, "Adapting Thresholding Using the Integral Image,"Journal of Graphics Tools. Vol. 12, No. 2, 2007, pp.13–21.

拡張機能

バージョン履歴

R2016a で導入