ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

entropyfilt

グレースケール イメージの局所的なエントロピー

構文

J = entropyfilt(I)
J = entropyfilt(I,NHOOD)

説明

J = entropyfilt(I) は配列 J を返します。この配列の各出力ピクセルには、入力イメージ I の対応するピクセルの 9 行 9 列近傍のエントロピー値が含まれます。I は任意の次元にすることができます。I の次元数が 3 以上の場合、entropyfilt はそれをトゥルーカラー (RGB) イメージではなく多次元グレースケール イメージとして扱います。出力イメージ J は、入力イメージ I と同じサイズです。

I の境界上のピクセルの場合、entropyfilt は対称性を利用したパディング方式を使用します。対称性を利用したパディング方式では、パディング ピクセルの値は I の境界ピクセルの鏡面反射です。

J = entropyfilt(I,NHOOD) は、入力イメージ I のエントロピー フィルター処理を行います。その際、NHOOD で近傍を指定します。NHOOD は 0 と 1 の多次元配列であり、非ゼロ要素が近傍を指定します。NHOOD' s のサイズは各次元で奇数でなければなりません。

既定の設定では、entropyfilt は、近傍 true(9) を使用します。entropyfilt は、floor((size(NHOOD) + 1)/2) により近傍の中心要素を決定します。さまざまな形状 (円盤など) の近傍を指定するには、関数 strel を使用してまず構造化要素オブジェクトを作成します。次に、関数 getnhood を使用してこの構造化要素オブジェクトから近傍を抽出します。

クラス サポート

Ilogicaluint8uint16 または double となりますが、実数で非スパースでなければなりません。NHOOD は論理値または数値をとり、0 または 1 が含まれていなければなりません。出力配列 J のクラスは double です。

entropyfilt はヒストグラム数計算のために logical 以外のクラスを uint8 に変換します。その結果、ピクセル値は離散的になりビン値に直接対応します。

すべて折りたたむ

この例では、entropyfilt を使用したエントロピー フィルター処理の実行方法を説明します。フィルター後のイメージ内の明るいピクセルは、元のイメージにあるエントロピーが高い近傍に対応します。

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

I = imread('circuit.tif');

entropyfilt を使用してエントロピー フィルター処理を実行します。

J = entropyfilt(I);

元のイメージと処理後のイメージを表示します。

imshow(I)
title('Original Image')

figure
imshow(J,[])
title('Result of Entropy Filtering')

参考文献

[1] Gonzalez, R.C., R.E. Woods, S.L. Eddins, Digital Image Processing Using MATLAB, New Jersey, Prentice Hall, 2003, Chapter 11.

R2006a より前に導入

この情報は役に立ちましたか?