主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

イメージの領域分割アプリ入門

イメージの領域分割アプリではイメージをセグメント化する多様な方法にアクセスできます。イメージの領域分割は、いくつかのセグメンテーション オプションを試すために反復して実行することもできます。セグメンテーション手法の中には特定の種類のイメージで他より良い結果を出すものもあります。イメージのセグメント化が完了したら、バイナリ マスクを保存できます。また、マスクの作成にイメージの領域分割で使用したコードを取得することもできます。

イメージ領域分割アプリの実行とデータの読み込み

アプリを開き,セグメント化するイメージを読み込みます。イメージの領域分割アプリは,imreadで読み取り可能なファイルであれば開くことができます。

イメージの領域分割アプリはコマンドラインから開くことができます。ワークスペースのイメージまたはファイルの名前を指定します。

我= imread (“coins.png”);imageSegmenter(我)

または,[アプリ]タブの[イメージ処理とコンピュータービジョン]からアプリを開きます。次に,(読み込み]メニューから,ワークスペース変数の名前,またはイメージを含むファイルの名前を選択します。

イメージを読み込んだ後は,オプションで既存のバイナリマスクを読み込むことができます。たとえば,色のしきい値アプリでRGBイメージのマスクを過去に作成しており,このセグメンテーションを調整したいとします。既存のマスクを読み込むには,[マスクの読み込み]をクリックします。セグメンテーションマスクイメージは,セグメンテーションを行うイメージと同じサイズの論理イメージにしなければなりません。

領域の作成とセグメント化されたマスクへの追加

初期マスクを作成するには,[マスクの作成)メニューおよび[マスクに追加)メニューにあるツールのいずれかを使用します。マスクの作成後に新しいセグメンテーションを開始する場合は,(新規セグメンテーション]をクリックします。アプリを使用して複数のセグメンテーションを実行できます。それぞれのセグメンテーションがサムネイルと共にデータ ブラウザーに表示されます。

セグメント化された領域を既存のマスクに追加するには,[マスクに追加)メニューにあるツールを使用します。セグメンテーション作成中の手順がデータブラウザーの[履歴]パネルに表示されます。

ツール 説明
しきい値

分離する強度値を指定する自動手法です。この手法は,セグメント化するイメージ内の複数のオブジェクトが同程度のピクセル強度値をもっており,背景などイメージ内の他の領域と簡単に区別できる場合に役立ちます。詳細については,イメージの領域分割でのしきい値処理を使用したイメージのセグメント化を参照してください。

グラフカット

前景要素と背景要素にセグメント化可能な半自動セグメンテーション手法です。この手法はシードポイントの配置にあまり注意する必要がなく,対話形式でセグメンテーションを調整できます。詳細については,イメージの領域分割でのグラフカットを使用したイメージのセグメント化を参照してください。

自動クラスター

アプリが自動的にイメージの特徴をバイナリセグメンテーションにグループ分けする手法です。このオプションは统计和机器学习工具箱™がインストールされている場合にのみ使用できます。詳細については,イメージの領域分割での自動クラスターを使用したイメージのセグメント化を参照してください。

円の検索

検出する円形オブジェクトの最小および最大の直径を指定する自動手法です。詳細については,イメージの領域分割での円の検索を使用したイメージのセグメント化を参照してください。

ローカルグラフカット(grabcut)

前景要素と背景要素にセグメント化可能な,グラフカット手法に類似した半自動セグメンテーション手法です。ローカルグラフカット(grabcut)では、セグメント化するイメージ内のオブジェクトを取り囲む ROI を最初に定義します。イメージの領域分割は ROI でオブジェクトを自動的にセグメント化します。ROI 内で前景と背景を識別するためにイメージに線を描くことでセグメンテーションを調整できます。ROI の外側にあるものはすべて背景と見なされます。詳細については、イメージの領域分割でのローカルグラフカット(Grabcut)を使用したイメージのセグメント化を参照してください。

塗りつぶし

開始点を指定する自動手法で,同じような強度値の領域をセグメント化するメソッドです。

ROIの描画

セグメント化するオブジェクト領域の輪郭となる形を手動で描画する手法です。マウスを使用して,四角形,楕円,多角形,またはフリーハンド図形を描画できます。詳細については,イメージの領域分割を使用した領域描画によるイメージのセグメント化を参照してください。

自動クラスタリンググラフカット,および塗りつぶしセグメンテーションツールを使用する場合,テクスチャを追加でセグメンテーションの考慮に含めることができます。テクスチャフィルター処理は,前景と背景を区別するとき役に立ちます。テクスチャオプションのオンとオフを切り替えるには,[テクスチャの特徴を含める]をクリックします。有効な場合,イメージの領域分割はガボールフィルターを使用して,イメージのテクスチャをセグメンテーションの前処理ステップとして分析します。ガボールフィルターに関する詳細については,ガボールフィルターを使用したテクスチャのセグメンテーションを参照してください。

セグメント化されたマスクの調整

イメージの領域分割には,作成したマスクを調整するために使用できるいくつかのツールが用意されています。

ツール 説明
モルフォロジー

膨張と収縮など多数のモルフォロジー技術です。たとえば,イメージの領域分割でのモルフォロジーを使用したセグメンテーションの調整を参照してください。

動的輪郭(別名蛇)

イメージの領域を拡大または縮小する反復メソッドです。シードポイントで領域を識別します。たとえば,イメージの領域分割で動的輪郭を使用したイメージのセグメント化を参照してください。

境界のクリア

イメージのエッジにある小さな領域を高速で削除する方法です。

穴の塗りつぶし

前景領域にある小さな穴をすばやく塗りつぶす方法です。たとえば,イメージの領域分割でのモルフォロジーを使用したセグメンテーションの調整を参照してください。

マスクの反転

前景と背景を反転すると,セグメンテーションを簡単に評価できることがあります。たとえば,イメージの領域分割での自動クラスターを使用したイメージのセグメント化を参照してください。

セグメンテーション結果のエクスポート

条件を満たすセグメンテーションが見つかった場合,最終セグメンテーションのマスクイメージおよび元のイメージをセグメント化したバージョンをワークスペースにエクスポートできます。マスクとセグメンテーションをワークスペースにエクスポートするには,[エクスポート]をクリックして[イメージのエクスポート]を選択します。

また,セグメンテーションの実行に使用したコードを生成することもできます(统计和机器学习工具箱が必要)。このコードを使用して,同じセグメンテーションアルゴリズムを同様のイメージに適用します。コードを取得するには,[エクスポート]をクリックして[関数の生成)を選択します。MATLAB®エディターが開き,自動生成コードを含む関数が表示されます。コードを保存するには,MATLABエディターで[保存]をクリックします。

参考