ドキュメンテーション

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

registration.metric.MeanSquares クラス

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

二乗平均誤差メトリクス構成オブジェクト

説明

MeanSquares オブジェクトは、イメージ レジストレーションの問題を解決するために関数 imregister に渡す平均二乗誤差メトリクスの構成を記述します。

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

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

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

構築

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

コピーのセマンティクス

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

すべて展開する

MeanSquares オブジェクトを作成し、これを使用して類似の輝度とコントラストをもつ 2 つのイメージのレジストレーションを行います。

参照イメージを読み取って、レジストレーションが行われていないコピーを作成します。

fixed  = imread('pout.tif');
moving = imrotate(fixed, 5, 'bilinear', 'crop');

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

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

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

metric = registration.metric.MeanSquares
metric = 
  registration.metric.MeanSquares

  This class has no properties.

オプティマイザー構成オブジェクトを作成します。

optimizer = registration.optimizer.RegularStepGradientDescent;

より良い精度を得るために、メトリクス構成を変更します。

optimizer.MaximumIterations = 300;
optimizer.MinimumStepLength = 5e-4;

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

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

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

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

ヒント

  • 平均二乗メトリクスは、2 つの入力イメージ間の要素単位の差を示します。理想値は 0 です。imregister を呼び出すときに 'DisplayOptimization' を有効にすると、平均二乗誤差の計算値を調べることができます。たとえば、movingRegistered = imregister(moving,fixed,'rigid',optimizer,metric,'DisplayOptimization',true); のようにします。

アルゴリズム

平均二乗のイメージ類似度メトリクスは、各イメージで対応するピクセルの差を二乗し、二乗した差の平均値を取ることで計算します。

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