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

imtophat

トップ ハット フィルター処理

説明

J = imtophat(I,SE) は、グレースケールまたはバイナリ イメージ I 上でモルフォロジー トップハット フィルター処理を行い、フィルター済みイメージ J を返します。トップハット フィルター処理を実行するとイメージのモルフォロジー オープニングが計算され (imopen を使用)、次に元のイメージから結果が減算されます。SE は、関数 strel または offsetstrel で返される 1 つの構造化要素オブジェクトです。

オプションで、トップハット フィルター処理を GPU を使用して実行できます (Parallel Computing Toolbox™ が必要)。

J = imtophat(I,nhood) は、イメージ I をトップハット フィルター処理します。ここで、nhood は、構造化要素近傍を指定する 01 から構成される行列です。関数 imtophat は、floor((size(nhood)+1)/2) で近傍の中心要素を決定します。

この構文は、imtophat(I,strel(nhood)) と等価です。

すべて折りたたむ

この例では、円板型の構造化要素と共にトップ ハット フィルター処理を使用して、背景が暗いイメージから背景の不均一な照度を除去する方法を説明します。

イメージを読み取り、それを表示します。

original = imread('rice.png');
imshow(original)

構造化要素を作成します。

se = strel('disk',12);

トップ ハット フィルター処理を実行して、イメージを表示します。

tophatFiltered = imtophat(original,se);
figure
imshow(tophatFiltered)

imadjust を使用して、結果の可視状態を改良します。

contrastAdjusted = imadjust(tophatFiltered);
figure
imshow(contrastAdjusted)

入力引数

すべて折りたたむ

入力イメージ。任意の次元のグレースケール イメージまたはバイナリ イメージとして指定します。

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

構造化要素。単一の strel オブジェクトまたは offsetstrel のオブジェクトとして指定します。イメージ I がデータ型 logical である場合、構造化要素はフラットでなければなりません。

構造化要素近傍。01 から成る行列として指定します。

例: [0 1 0; 1 1 1; 0 1 0]

出力引数

すべて折りたたむ

トップハット フィルター済みイメージ。グレースケール イメージまたはバイナリ イメージとして返されます。J は入力イメージ I と同じクラスです。

拡張機能

参考

関数

オブジェクト

R2006a より前に導入