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

ROI 作成の概要

ツールボックスには、円、楕円、多角形、ライン、四角形、手描きの形状など、さまざまな形状の関心領域を作成するための一連のオブジェクトが用意されています。ベースのイメージの "補助機能" を使用して、エッジの輪郭に自動的に従うフリーハンド形状を描画することもできます。次の図は、イメージ上に描画された多角形 ROI を示しています。

以下は、現在サポートされているすべての ROI オブジェクトのリストです。

ROI オブジェクト

ツールボックスには、円、楕円、多角形、四角形、手描きの形状など、さまざまな形状の ROI を作成するために使用できる一連の ROI オブジェクトが含まれています。これらのオブジェクトを使用すると、ROI のサイズと形状に関する情報を指定して、マウスを使う対話形式かプログラミングによって ROI を描画できます。ROI オブジェクトを作成したら、ROI に対してマスクの作成などの操作を実行できます。その動作や外観などの特性を制御したり、マウスのクリックや移動など、ROI で発生するイベントに応答することもできます。

ROI オブジェクトを対話形式で使用するときの基本的なワークフローでは、オブジェクトを作成した後に、オブジェクト関数 draw を呼び出して対話形式での形状の描画を開始します。

  1. イメージを MATLAB® ワークスペースに読み取り Figure に表示します。

    I = imread('pears.png');
    imshow(I)
  2. イメージ上に楕円 ROI を作成します。この例では、StripeColor パラメーターを使用してエッジの外観をカスタマイズして、楕円 ROI オブジェクトを作成します。簡易関数 drawellipse はオブジェクト関数 draw を自動的に呼び出して、イメージ上での形状の描画を開始します。

    roi = images.roi.ellipse('StripeColor','m');
  3. 楕円オブジェクトのオブジェクト関数 draw を呼び出して、座標軸上に ROI を描画します。マウス ポインターをイメージ上に移動すると、カーソルが十字に変わります。カーソルをイメージ上でクリックして移動し、楕円形状を作成します。楕円の移動と楕円の形状の変更は対話形式で行うことができます。

    draw(roi)

ROI 作成簡易関数

便宜上、ツールボックスには、ROI オブジェクトの作成に使用できる一連の関数が用意されています。images.roi.Rectangle などの ROI オブジェクトを使用して、オブジェクトを作成した後に、オブジェクト関数 draw を呼び出して形状の描画を開始します。または、drawrectangle などの対応する簡易関数を呼び出すこともできます。簡易関数は ROI オブジェクトを作成してから、オブジェクト関数 draw を自動的に呼び出します。どのような方法を使用して ROI オブジェクトを作成する場合でも、同じオブジェクト プロパティ、オブジェクト関数、およびイベントのサポートを使用して、その動作や機能をカスタマイズします。

ROI 簡易関数を使用するときの基本的なワークフローでは、関数を使用してオブジェクトを作成します。簡易関数は draw オブジェクト メソッドを自動的に呼び出します。

  1. イメージを MATLAB ワークスペースに読み取り Figure に表示します。

    I = imread('pears.png');
    imshow(I)
  2. ROI を作成します。この例では、簡易関数 drawellipse を使用して楕円 ROI を作成します。この例では、StripeColor パラメーターを指定してエッジの外観をカスタマイズします。

    roi = drawEllipse('StripeColor','m');

App Designer を使って作成したアプリでの ROI の使用

UIAxes 内で ROI を親にすることにより、App Designer を使って作成したアプリで ROI を使用できます。ROI 作成関数を呼び出す場合、入力引数として指定するか名前と値のペア 'Parent' を使用して、UIAxes を明示的に指定しなければなりません。この方法でアプリで ROI を使用する場合には、いくつかの制限があります。

  • マウス カーソルは ROI 上に移動させても更新されません。カーソルは常に矢印です。

  • マウス カーソルを ROI 上に移動させても ROI の色は変化しません。

  • ROI の右クリック メニュー (UIContextMenu) はサポートされていません。

次のコードは、典型的なアプリ作成ワークフローではありませんが、アプリ (UIFigure) で UIAxes に ROI を指定する方法を示しています。

  1. UIAxes を作成します。関数 uiaxes を呼び出すと、UIFigure が自動的に作成されます。

    uax = uiaxes;

  2. UIAxes に ROI を作成します。drawcircle などの ROI 作成関数のいずれか、または images.roi.Circle などの ROI クラスのいずれかを呼び出します。引数として UIAxes を指定します。カーソルを座標軸上に移動し、マウスをクリック アンド ドラッグして ROI を描画します。UIAxes で使用する場合、カーソルの形状は変化しません。

    h = drawcircle(uax);

    images.roi.Circle など、いずれかの ROI 作成クラスを使用して、ROI を作成することもできます。クラスを使用する場合、ROI オブジェクトを引数として指定して関数 draw も呼び出さなければなりません。

関連する例

詳細