ヘルプ センターヘルプ センター
ボトム ハット フィルター処理
J = imbothat(I,SE)
J = imbothat(I,nhood)
例
J = imbothat(I,SE) は、構造化要素 SE を使用して、グレースケール イメージまたはバイナリ イメージ I 上でモルフォロジー ボトムハット フィルター処理を行います。ボトムハット フィルター処理を実行するとイメージのモルフォロジー クロージングが計算され (imclose を使用)、次に結果から元のイメージが減算されます。
J
I
SE
imclose
J = imbothat(I,nhood) は、イメージ I をボトムハット フィルター処理します。ここで、nhood は、構造化要素近傍を指定する 0 と 1 から構成される行列です。
nhood
0
1
この構文は、imbothat(I,strel(nhood)) と等価です。
imbothat(I,strel(nhood))
strel
すべて折りたたむ
イメージをワークスペースに読み取って表示します。
I = imread('pout.tif'); imshow(I)
円板型の構造化要素を作成します。
se = strel('disk',3);
元のイメージ I をトップ ハット フィルター処理したイメージに追加し、ボトム ハット フィルター処理したイメージを取り除きます。
J = imsubtract(imadd(I,imtophat(I,se)),imbothat(I,se)); figure imshow(J)
入力イメージ。任意の次元のグレースケール イメージまたはバイナリ イメージとして指定します。
データ型: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | logical
single
double
int8
int16
int32
uint8
uint16
uint32
logical
offsetstrel
構造化要素。単一の strel オブジェクトまたは offsetstrel のオブジェクトとして指定します。イメージ I がデータ型 logical である場合、構造化要素はフラットでなければなりません。
構造化要素近傍。0 と 1 から成る行列として指定します。
例: [0 1 0; 1 1 1; 0 1 0]
[0 1 0; 1 1 1; 0 1 0]
ボトムハット フィルター処理済みイメージ。グレースケール イメージまたはバイナリ イメージとして返されます。J のデータ型は入力イメージ I と同じです。
イメージ I の次元が構造化要素の次元より高い場合、関数 imbothat は、高次元のすべての平面に対して同じモルフォロジー クロージングを適用します。
imbothat
この動作を使用して、RGB イメージのボトムハット フィルター処理を行うことができます。カラー チャネル別に処理を行うには、RGB イメージの 2 次元構造化要素を指定します。
構造化要素近傍を指定した場合、imbothat は、floor((size(nhood)+1)/2) によって nhood の中心要素を決定します。
floor((size(nhood)+1)/2)
使用上の注意および制限:
imbothat では C コードの生成がサポートされています (MATLAB® Coder™ が必要)。汎用の MATLAB Host Computer ターゲット プラットフォームを選択した場合、プリコンパイルされたプラットフォーム固有の共有ライブラリを使用するコードが、imbothat によって生成されます。共有ライブラリを使用するとパフォーマンスの最適化は維持されますが、コードを生成できるターゲット プラットフォームが限定されます。詳細については、Image Processing Toolbox でサポートされているコード生成のタイプを参照してください。
MATLAB Host Computer
入力イメージ I は 2 次元または 3 次元でなければなりません。
backgroundPool
ThreadPool
この関数は、スレッドベースの環境を完全にサポートします。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
gpuArray 入力は uint8 型または logical 型でなければなりません。
gpuArray
構造化要素 SE はフラットで 2 次元でなければなりません。
詳細については、GPU でのイメージ処理を参照してください。
すべて展開する
imbothat は、スレッドベースの環境をサポートするようになりました。
imdilate
imerode
imopen
imtophat
この例の変更されたバージョンがあります。編集された方の例を開きますか?
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Contact your local office