ドキュメンテーション

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

imregtform

2 つの 2 次元イメージまたは 3 次元イメージを位置合わせする幾何学的変換の推定

構文

tform = imregtform(moving,fixed,transformType,optimizer,metric)
tform = imregtform(moving,Rmoving,fixed,Rfixed,transformType,optimizer,metric)
tform = imregtform(___,Name,Value)

説明

tform = imregtform(moving,fixed,transformType,optimizer,metric) は移動イメージ moving を固定イメージ fixed に位置合わせする幾何学的変換を推定します。transformType は推定する変換のタイプを定義する文字ベクトルです。optimizer はメトリクスを最適化するための方法を記述するオブジェクトです。metric は最適化するイメージ間の類似度の定量的な尺度を定義するオブジェクトです。出力 tform は、movingfixed にマッピングする幾何学的変換オブジェクトです。

tform = imregtform(moving,Rmoving,fixed,Rfixed,transformType,optimizer,metric) は幾何学的変換を推定します。ここで、Rmoving および Rfixedmoving イメージおよび fixed イメージに関連付けられている空間参照オブジェクトを指定します。出力 tform は、空間参照オブジェクト Rmoving および Rfixed で定義されている単位で表された幾何学的変換オブジェクトです。

tform = imregtform(___,Name,Value) は、処理の特性を制御する名前と値のペアを使用して、幾何学的変換を推定します。

すべて折りたたむ

異なったプロトコルを使用して取得された、わずかに位置のずれた、膝の磁気共鳴画像を 2 つ読み取り、重ね合わせて表示します。

fixed  = dicomread('knee1.dcm');
moving = dicomread('knee2.dcm');

imshowpair(fixed, moving,'Scaling','joint');

異なるセンサーから得たイメージのレジストレーションに適した、オプティマイザーとメトリクスの既定の構成 (‘multimodal') を取得します。続いて、問題が大域的最大値に落ち着き、より多くの反復が可能となるように、オプティマイザーのプロパティを調整します。

[optimizer, metric] = imregconfig('multimodal')

optimizer.InitialRadius = 0.009;
optimizer.Epsilon = 1.5e-4;
optimizer.GrowthFactor = 1.01;
optimizer.MaximumIterations = 300;

レジストレーションを行うイメージ (moving) を参照イメージ (fixed) にマッピングする幾何学的変換を見つけます。

tform = imregtform(moving, fixed, 'affine', optimizer, metric)
tform = 

  affine2d with properties:

                 T: [3x3 double]
    Dimensionality: 2

関数 imwarp を使用してレジストレーションするイメージ (moving) に変換を適用します。この例では 'OutputView' パラメーターを使用し、変換されたイメージの形成に際して固定イメージのワールド座標範囲と解像度を維持しています。

movingRegistered = imwarp(moving,tform,'OutputView',imref2d(size(fixed)));

レジストレーションされたイメージを表示します。

figure
imshowpair(fixed, movingRegistered,'Scaling','joint');

入力引数

すべて折りたたむ

レジストレーションされるイメージであり、2 次元または 3 次元のグレースケール イメージとして指定されます。

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

レジストレーションされるイメージに関連付けられている空間参照情報であり、imref2d タイプまたは imref3d タイプの空間参照オブジェクトとして指定されます。

ターゲット方向の参照イメージであり、2 次元または 3 次元のグレースケール イメージとして指定されます。

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

参照 (固定) イメージに関連付けられている空間参照情報であり、imref2d タイプまたは imref3d タイプの空間参照オブジェクトとして指定されます。

レジストレーションされるイメージに適用される幾何学的変換。次のいずれかの値に指定します。

説明
'translation'(x,y) の平行移動。
'rigid'平行移動と回転を含む剛体変換。
'similarity'平行移動、回転およびスケーリングを含む無反射相似変換。
'affine'平行移動、回転、スケーリングおよびせん断を含むアフィン変換。

'similarity' および 'affine' の変換タイプには、常に無反射変換が伴います。

類似度メトリクスを最適化するメソッドであり、optimizer オブジェクトとして指定されます。imregconfig を使用して、optimizer オブジェクト registration.optimizer.RegularStepGradientDescent または registration.optimizer.OnePlusOneEvolutionary を作成します。

レジストレーション時に最適化されるイメージの類似度メトリクスであり、metric オブジェクトとして指定されます。imregconfig を使用して、metric オブジェクト registration.metric.MeanSquares または registration.metric.MattesMutualInformation を作成します。

名前/値のペアの引数

オプションの Name,Value 引数のペアをコンマ区切りで指定します。ここで、Name は引数名で、Value は対応する値です。Name は単一引用符 (' ') で囲まなければなりません。Name1,Value1,...,NameN,ValueN のように、複数の名前と値のペアの引数を任意の順番で指定できます。

例: 'DisplayOptimization',1 は詳細な最適化モードを有効にします。

すべて折りたたむ

詳細な最適化フラグであり、論理値として truefalse のいずれかに指定されます。レジストレーション プロセスにおいて imregister が最適化情報をコマンド ウィンドウに表示するかどうかを制御します。

データ型: logical

開始する空間変換。affine2d または affine3d 幾何学的変換オブジェクトとして指定します。

レジストレーション プロセスで使用されるピラミッド レベルの数であり、正の整数として指定されます。

例: 'PyramidLevels',4 は、ピラミッド レベル数を 4 に設定します。

出力引数

すべて折りたたむ

幾何学的変換であり、幾何学的変換オブジェクト affine2d または affine3d として指定されます。入力行列が 3 次元である場合、imregtformaffine3d オブジェクトを返します。

ヒント

  • 空間参照情報がある場合は、空間参照オブジェクトを使用してこの情報を必ず imregtform に渡します。この情報によってスケールの差が考慮に入れられるため、imregtform でより適切な結果にすばやく収束するようになります。

  • imregtformimregister はいずれも同じ基礎となるレジストレーション アルゴリズムを使用しています。imregister は、moving をリサンプリングする追加ステップを実行し、imregtform で計算された幾何学的変換の推定からレジストレーションされた出力イメージを生成します。movingfixed に関連付ける幾何学的変換にアクセスするには、imregtform を使用します。レジストレーションされた出力イメージが必要なときは、imregister を使用します。

  • 通常、最適化ベースのイメージのレジストレーションで適切な結果を得るには、レジストレーションされるイメージのペアについて、オプティマイザーやメトリクスの設定を変更する必要があります。関数 imregconfig によって提供される既定の構成は、単なる開始点にすぎません。変更できる各種のパラメーターについての詳細は、imregconfig の出力を参照してください。

R2013a で導入

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