ドキュメンテーション

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

imopen

イメージのモルフォロジー オープン処理

構文

IM2 = imopen(IM,SE)
IM2 = imopen(IM,NHOOD)
gpuarrayIM2 = imopen(gpuarrayIM,___)

説明

IM2 = imopen(IM,SE) は、構造化要素 SE を使用して、グレースケール、または、バイナリ イメージ IM でモルフォロジー オープン処理を行います。引数 SE は、オブジェクトの配列ではなく、1 つの構造化要素オブジェクトでなければなりません。モルフォロジー オープン処理は、収縮の後に膨張を行います。両方の処理に対して、同じ構造化要素を使用します。

IM2 = imopen(IM,NHOOD) は、構造化要素 strel(NHOOD) を使用してオープン処理を行います。ここで、NHOOD は、構造化要素近傍を指定する 0 と 1 の要素からなる配列です。

gpuarrayIM2 = imopen(gpuarrayIM,___) は、NHOOD が構造化要素の近傍を指定する 01 の配列である場合には構造化要素 strel(NHOOD) を使い、NHOOD が構造化要素の近傍を指定する gpuArray オブジェクトである場合には strel(gather(NHOOD)) を使用して、グラフィックス処理装置 (GPU) で処理を実行します。この構文では Parallel Computing Toolbox™ が必要です。

コード生成 サポート: あり。

MATLAB Function ブロック サポート: あり。

クラス サポート

IM は数値または論理クラスの任意の次元にすることができます。また、非スパースでなければなりません。IM が logical の場合、SE はフラットでなければなりません。

gpuarrayIMuint8 型または logical 型の gpuArray でなければなりません。gpuarray と併用する場合、構造化要素はフラットかつ 2 次元でなければなりません。

出力は入力と同じクラスになります。

すべて折りたたむ

イメージを MATLAB® ワークスペースに読み取って表示します。

original = imread('snowflakes.png');
figure, imshow(original);

半径 5 ピクセルの円板型の構造化要素を作成します。

se = strel('disk',5);

半径 5 ピクセル未満の雪片を、円盤型の構造化要素を使ったオープン処理によって除去します。

afterOpening = imopen(original,se);
figure, imshow(afterOpening,[]);

イメージを読み取ります。

 original = imread('snowflakes.png');

円盤型の構造化要素を作成します。

se = strel('disk',5);

GPU で gpuArray オブジェクトを使用してイメージのモルフォロジー オープン処理を行い、イメージを表示します。

afterOpening = imopen(gpuArray(original),se);
figure, imshow(original), figure, imshow(afterOpening,[])

詳細

すべて折りたたむ

コード生成

この関数では MATLAB Coder™ を使用した C コードの生成がサポートされています。汎用の MATLAB Host Computer ターゲット プラットフォームを選択した場合、プリコンパイルされたプラットフォーム固有の共有ライブラリを使用するコードが、この関数によって生成されます。共有ライブラリを使用するとパフォーマンスの最適化は維持されますが、コードを生成できるターゲット プラットフォームが限定されます。詳細は、「Image Processing Toolbox のコード生成について」を参照してください。

コードを生成する際、イメージ入力引数 IM は 2 次元または 3 次元で、構造化要素入力引数 SE はコンパイル時の定数でなければなりません。

MATLAB Function ブロック

この関数は Simulink の MATLAB Function ブロックで使用できます。

R2006a より前に導入

この情報は役に立ちましたか?