ドキュメンテーション

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

imref2d クラス

ワールド座標に対する 2 次元イメージの参照

説明

imref2d オブジェクトは、2 次元イメージの列と行に固定されている固有座標と、同じ行と列の位置のワールド座標系における空間位置との関係をカプセル化します。イメージは、固有の x 値がワールド x 値と一致し、固有の y 値がワールド y 値と一致するように、座標系平面のワールド x およびワールド y の座標で等間隔にサンプリングされます。行と行の間のピクセル間隔が列と列の間のピクセル間隔と同じである必要はありません。

どのピクセルでも、中心点の固有座標値 (x,y) は、そのピクセルに対する列と行の添字の値と同一です。たとえば、5 行 3 列目のピクセルの中心点の固有座標は、x = 3.0、y = 5.0 です。ただし、座標指定 (3.0,5.0) の順序は、固有座標においてピクセルの添字 (5,3) と逆になることに注意してください。固有座標は連続平面上で定義される一方、添字の位置は整数値をもつ離散位置です。

構築

R = imref2d() は、既定のプロパティ設定を使用して imref2d オブジェクトを作成します。

R = imref2d(imageSize) は、与えられたイメージ サイズで imref2d オブジェクトを作成します。この構文は、ワールド座標系が固有座標系と相互に位置調整される既定のケースに対し、空間参照オブジェクトを作成します。

R = imref2d(imageSize,pixelExtentInWorldX,pixelExtentInWorldY) は、与えられたイメージ サイズと、pixelExtentInWorldX および pixelExtentInWorldY で指定される各次元の解像度を用いて imref2d オブジェクトを作成します。

R = imref2d(imageSize,xWorldLimits,yWorldLimits) は、与えられたイメージ サイズと、xWorldLimits および yWorldLimits で指定される各次元のワールド座標範囲を用いて imref2d オブジェクトを作成します。

入力引数

すべて展開する

オブジェクトに関連付けられているイメージのサイズ。2 要素の正の行ベクトルとして指定します。関数 size で返されるベクトルを使用できます。

例: imageSize = [128 128];

データ型: double | single | uint8 | uint16 | uint32 | int8 | int16 | int32

ワールド座標系で測定される x 次元の単一ピクセルのサイズ。正のスカラーとして指定します。

データ型: double | single

ワールド座標系で測定される y 次元の単一ピクセルのサイズであり、正のスカラーとして指定されます。

データ型: double | single

ワールド座標系の x 次元の最大座標値と最小座標値。2 要素の数値の行ベクトルとして指定します。

例: xWorldLimits = [0.5 256.5];

データ型: double | single

ワールド座標系の y 次元の最大座標値と最小座標値であり、2 要素の数値の行ベクトルとして指定されます。

例: yWorldLimits = [0.5 256.5];

データ型: double | single

プロパティ

すべて展開する

ワールド座標系の x 次元でのイメージの範囲。数値スカラーとして指定します。imref2d オブジェクトは、この値を PixelExtentInX * ImageSize(2) として計算します。

データ型: double

ワールド座標系の y 次元でのイメージの範囲であり、数値スカラーとして指定されます。imref2d オブジェクトは、この値を PixelExtentInY * ImageSize(1) として計算します。

データ型: double

各空間次元の要素の数。2 要素の正の行ベクトルとして指定します。ImageSize の形式は size によって返されるものと同じです。

データ型: double

ワールド座標系で測定される x 次元の単一ピクセルのサイズ。正のスカラーとして指定します。

データ型: double

ワールド座標系で測定される y 次元の単一ピクセルのサイズであり、正のスカラーとして指定されます。

データ型: double

ワールド x 次元におけるイメージの範囲。2 要素の数値の行ベクトル [xMin xMax] として指定します。

データ型: double

ワールド y 次元におけるイメージの範囲。2 要素の数値の行ベクトル [yMin yMax] として指定します。

データ型: double

x 次元における固有座標の単位でのイメージの範囲。2 要素の行ベクトル [xMin xMax] として指定します。m 行 n 列のイメージ (または、m x n x p のイメージ) の場合、XIntrinsicLimits[0.5, n + 0.5] と等しくなります。

データ型: double

y 次元における固有座標の単位でのイメージの範囲であり、2 要素の行ベクトル [yMin yMax] として指定されます。m 行 n 列のイメージ (または、m x n x p のイメージ) の場合、YIntrinsicLimits[0.5, m + 0.5] と等しくなります。

データ型: double

メソッド

contains イメージにワールド座標系の点が含まれている場合は true
intrinsicToWorld 固有座標からワールド座標への変換
sizesMatchオブジェクトとイメージのサイズが共通の場合は true
worldToIntrinsicワールド座標から固有座標への変換
worldToSubscript ワールド座標から行と列の添字への変換

コピーのセマンティクス

値。値クラスがコピー操作に与える影響については、MATLAB® ドキュメンテーションの「オブジェクトのコピー」 (MATLAB)を参照してください。

すべて展開する

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

A = imread('pout.tif');

オブジェクトを関連付けるイメージのサイズとワールド座標範囲を指定して、imref2d オブジェクトを作成します。

xWorldLimits = [2 5];
yWorldLimits = [3 6];
RA = imref2d(size(A),xWorldLimits,yWorldLimits);

空間参照オブジェクトを指定して、イメージを表示します。座標軸座標にワールド座標がどのように反映されているかに注意してください。

figure, imshow(A,RA);

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

m = dicominfo('knee1.dcm');
A = dicomread(m);

ピクセルのサイズを指定して、イメージと関連付けられた imref2d オブジェクトを作成します。DICOM ファイルには、各次元のイメージ解像度を 1 ピクセルあたりのミリメートル単位で指定するメタデータ フィールド PixelSpacing が含まれます。

RA = imref2d(size(A),m.PixelSpacing(2),m.PixelSpacing(1))
RA = 

  imref2d with properties:

           XWorldLimits: [0.1563 160.1563]
           YWorldLimits: [0.1563 160.1563]
              ImageSize: [512 512]
    PixelExtentInWorldX: 0.3125
    PixelExtentInWorldY: 0.3125
    ImageExtentInWorldX: 160
    ImageExtentInWorldY: 160
       XIntrinsicLimits: [0.5000 512.5000]
       YIntrinsicLimits: [0.5000 512.5000]

各次元のイメージの範囲をミリメートル単位で調べます。

RA.ImageExtentInWorldX
RA.ImageExtentInWorldY
ans =

   160


ans =

   160

拡張機能

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