ドキュメンテーション

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

entropyfilt

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

説明

J = entropyfilt(I) は、配列 J を返します。ここで、各出力ピクセルは、入力イメージ I 内の対応するピクセル周辺に 9 行 9 列の近傍のエントロピー値を含んでいます。

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

J = entropyfilt(I,nhood) は、入力イメージ I のエントロピー フィルター処理を行います。その際、nhood で近傍を指定します。nhood は 0 と 1 の多次元配列であり、非ゼロ要素が近傍を指定します。

すべて折りたたむ

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

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

I = imread('circuit.tif');

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

J = entropyfilt(I);

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

imshow(I)
title('Original Image')

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

入力引数

すべて折りたたむ

フィルター処理されるイメージ。実数の非スパース数値配列として指定します。I は任意の次元になります。I の次元数が 3 以上の場合、entropyfilt はそれをトゥルーカラー (RGB) イメージではなく多次元グレースケール イメージとして扱います。

データ型: double | uint8 | uint16 | uint32 | logical

近傍。0 と 1 を含む多次元の logical 配列または数値配列として指定します。nhood のサイズは各次元で奇数でなければなりません。

既定の設定では、entropyfilt は、近傍 true(9) を使用します。entropyfilt は、floor((size(NHOOD) + 1)/2) により近傍の中心要素を決定します。

円板などの他の形状の近傍を指定するには、関数 strel を使用して目的の形状の構造化要素オブジェクトを作成します。その後、構造化要素オブジェクトの neighborhood プロパティから近傍を抽出します。

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

出力引数

すべて折りたたむ

フィルター処理されたイメージ。サイズが入力イメージと同じでクラスが double の数値配列として返されます。

アルゴリズム

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

参照

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

R2006a より前に導入