2017-01-18 13 views
2

マルチモーダル画像登録技術を使用して2つのマルチスペクトル画像をアライメントしようとしています。マルチモーダル画像アライメント問題

次のようにIは、第optimizermetricオブジェクトを作成することにより、MATLABでプロトタイプを構築し:

[optimizer, metric] = imregconfig('Multimodal'); 

これはタイプOnePlusOneEvolutionaryOptimizerとタイプMattesMutualInformationのメトリックのオプティマイザ・オブジェクトを作成します。次のように画像が並んでいる。

tform = imregtform(movingImage, fixedImage, 'rigid', optimizer, metric); 

aligned = imwarp(movingImage,tform,'OutputView',imref2d(size(fixedImage))); 

その後、私はITK v4ライブラリにone of the examplesによって提供されているのと同じアルゴリズムのC++実装のために行ってきました。

この例でも正しい結果が得られますが、ここに問題があります... ITKのバージョンはMATLABバージョンよりも遅いです。私はオプティマイザのパラメータを使って遊んでいましたが、MATLABのバージョンと比べると少し速くすることができました。 OnePlusOneEvolutionaryOptimizer

MATLABドキュメンテーションは、InitialRadiusプロパティの値が直接、アルゴリズムの実行速度(堅牢性に妥協する)に比例であると述べています。ここでの混乱は、ITKでは、InitialRadiusの値がで逆にであり、実行速度に比例することがわかりました。

InitialRadiusGrowthFactorなどのオプティマイザパラメータがITKでどのように解釈されるかを説明する文献やドキュメントが見つかりませんでした。これらのパラメータの説明を提供し、アルゴリズムのスピードアップを助けてください。

答えて

0

まず、デバッグモードではなくリリースモードでプログラムをコンパイルしていることを確認してください。

Documentationおよびsource code1 + 1 ITKのオプティマイザはオンラインで入手できます。