Main Content

roifilt2

グレースケール イメージの関心領域 (ROI) のフィルター

説明

J = roifilt2(h,I,BW) は、2 次元線形フィルター h を使用して 2 次元グレースケール イメージ I 内の関心領域 (ROI) をフィルター処理します。バイナリ マスク BW は、I 内の ROI を定義します。roifilt2 は、BW1 が格納されている場所のピクセルについてはフィルター処理された値、加えて BW0 が格納されている場所のピクセルについてはフィルター処理されていない値で構成されるイメージを返します。

J = roifilt2(I,BW,fun) は、関数 fun を使用して I の ROI のデータを処理します。

すべて折りたたむ

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

I = imread('eight.tif');

マスクの多角形の頂点を定義します。

c = [222 272 300 270 221 194];
r = [21 21 75 121 121 75];

バイナリ マスク イメージを作成します。

BW = roipoly(I,c,r);

マスク BW で指定されたイメージ I の領域をフィルター処理します。

H = fspecial('unsharp');
J = roifilt2(H,I,BW);

元のイメージとフィルター処理されたイメージを表示します。

imshow(I)

figure
imshow(J)

入力引数

すべて折りたたむ

線形フィルター。2 次元数値行列として指定します。

データ型: double

グレースケール イメージ。2 次元数値行列として指定します。

  • フィルター h を指定する場合、I は以下にリストされたいずれかのデータ型を指定できます。

  • 関数ハンドル fun を指定する場合、Ifun でサポートされる任意のデータ型です。

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

マスク。I と同じサイズの 2 次元 logical 行列または 2 次元数値行列として指定します。数値入力の場合、非ゼロのピクセルは 1 (true) であると見なされます。

関数ハンドル。ハンドルとして指定します。関数ハンドルの詳細については、関数ハンドルの作成を参照してください。

出力引数

すべて折りたたむ

フィルター処理されたイメージ。2 次元行列として返されます。

  • フィルター h を指定すると、J は、入力イメージ I と同じデータ型になります。

  • 関数ハンドル fun を指定した場合は、J のデータ型は fun で決定されます。

アルゴリズム

フィルター h を指定すると、roifilt2imfilter を呼び出してフィルターを実装します。

拡張機能

バージョン履歴

R2006a より前に導入

すべて展開する