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 contains an axes object. The axes object contains an object of type image.

figure
imshow(J)

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

入力引数

すべて折りたたむ

線形フィルター。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 より前に導入

すべて展開する