ドキュメンテーション

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

registration.metric.MattesMutualInformation クラス

パッケージ: registration.metric
スーパークラス:

マテス相互情報量メトリクス構成オブジェクト

説明

MattesMutualInformation オブジェクトは、イメージ レジストレーションの問題を解決するために関数 imregister に渡す相互情報量メトリックの構成を記述します。

MattesMutualInformation オブジェクトは以下の方法を使用して作成できます。

  • imregconfig — マルチモーダル イメージのレジストレーションに使用する MattesMutualInformation オブジェクトを返す

  • MattesMutualInformation クラス コンストラクター

構築

metric = registration.metric.MattesMutualInformation()MattesMutualInformation オブジェクトを作成します。

プロパティ

すべて展開する

相互情報量メトリクスの計算に使用する空間サンプル数。正の整数スカラーとして指定します。NumberOfSpatialSamples は、imregister がメトリクスの計算に使用するランダム ピクセルの数を定義します。この値を大きくすると、(パフォーマンスは低下しますが) レジストレーション結果の再現性がより高まります。imregister は、UseAllPixels = 0 (false) の場合のみ NumberOfSpatialSamples を使用します。

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

相互情報量メトリクスの計算に使用するヒストグラムのビン数。正の整数スカラーとして指定します。NumberOfHistogramBins は、imregister が結合分布ヒストグラムの計算に使用するビンの数を定義します。最小値は 5 です。

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

相互情報量メトリクス計算時にイメージのオーバーラップ領域内のすべてのピクセルを使用してメトリクスを計算するオプション。論理スカラーとして指定します。

このプロパティを 0 (false) に設定すると、パフォーマンスを大幅に向上させることができます。UseAllPixels = 0 の場合、imregister がメトリクスの計算に使用するランダム ピクセル位置の数は NumberOfSpatialSamples プロパティで制御します。UseAllPixels = 0 の場合、レジストレーションの結果を再現できないことがあります。これは、imregister がイメージからピクセルのランダムなサブセットを選択してメトリクスを計算するためです。

コピーのセマンティクス

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

すべて展開する

MattesMutualInformation オブジェクトを作成し、これを使用して、異なるプロトコルを使って取得された膝の 2 枚の MRI イメージのレジストレーションを行います。

イメージをワークスペースに読み取ります。輝度およびコントラストが異なるため、イメージはマルチモーダルになります。

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

位置のずれたイメージを表示します。

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

マルチモーダル イメージのレジストレーションに適しているオプティマイザー構成オブジェクトを作成します。

optimizer = registration.optimizer.OnePlusOneEvolutionary;

マルチモーダル イメージのレジストレーションに適しているメトリクス構成オブジェクトを作成します。

metric = registration.metric.MattesMutualInformation
metric = 
  registration.metric.MattesMutualInformation

  Properties:
    NumberOfSpatialSamples: 500
     NumberOfHistogramBins: 50
              UseAllPixels: 1

問題が大域的最大値に収束するように、オプティマイザーのプロパティを調整します。オプティマイザーが問題を解くために使用する反復の数を増やします。

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

レジストレーションを実行します。

movingRegistered = imregister(moving,fixed,'affine',optimizer,metric);

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

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

定義

すべて展開する

ヒント

  • 相互情報量の値が大きいほど、レジストレーションの結果が良くなります。次の例のように imregister を呼び出すときに 'DisplayOptimization' を有効にすると、マテス相互情報量の計算値を調べることができます。

    movingRegistered = imregister(moving,fixed,'rigid',optimizer,metric,'DisplayOptimization',true);

アルゴリズム

相互情報量メトリクスは、2 つの変数の関連性を測定するための情報理論の手法です。これらのアルゴリズムは 2 つのイメージから抽出したピクセルのサンプリングの結合確率分布を使用して、あるピクセル セットの値が別のイメージ内にある類似値にマッピングされる確実性を測定します。この情報は、イメージの類似度を示す定量的な尺度です。相互情報量が多い場合、2 つの分布間の不確実性 (エントロピー) が大幅に下がり、イメージが一致する可能性が高いことを示します。

マテス相互情報量アルゴリズムは反復ごとに新しいセットのピクセル位置に描画するのではなく、最適化の処理全体を通じて 1 セットのピクセル位置を使用します。確率密度推定の計算に使用されるサンプル数と、エントロピーの計算に使用されるビン数は、どちらもユーザーが選択することができます。周辺および結合確率密度関数は、等間隔のビンでサンプルを使用して評価されます。エントロピー値はこれらのビンを合計することで求められます。固定イメージと移動イメージの確率密度関数を計算するには、0 次および 3 次の B スプライン カーネルがそれぞれ使用されます。[1]

参照

[1] Rahunathan, Smriti, D. Stredney, P. Schmalbrock, and B.D. Clymer. Image Registration Using Rigid Registration and Maximization of Mutual Information. Poster presented at: MMVR13. The 13th Annual Medicine Meets Virtual Reality Conference; 2005 January 26–29; Long Beach, CA.

[2] D. Mattes, D.R. Haynor, H. Vesselle, T. Lewellen, and W. Eubank. "Non-rigid multimodality image registration." (Proceedings paper).Medical Imaging 2001: Image Processing. SPIE Publications, 3 July 2001. pp. 1609–1620.

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