2017-01-18 49 views
2

我想使用多模式图像配准技术来对齐两个多光谱图像。多模式图像对齐问题

我建立了一个原型在MATLAB通过首先创建optimizermetric目的如下:

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

这创建OnePlusOneEvolutionaryOptimizer类型的优化器对象和公制MattesMutualInformation类型。图像被排列如下:

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

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

然后我去了一个C++实现是由one of the examplesITK v4库提供的相同的算法。

这个例子也给出了正确的结果,但这里是问题...... ITK版本比MATLAB版本慢。我玩弄了优化器参数,并且能够加快它的速度,但与MATLAB版本没有可比性。的OnePlusOneEvolutionaryOptimizer

MATLAB文档指出InitialRadius属性的值是直接正比于算法的执行速度(上鲁棒性损害)。这里的困惑是,在ITK中,根据我测试的结果,InitialRadius的值是反过来与执行速度成正比。

我找不到描述如何在ITK中解释优化器参数InitialRadiusGrowthFactor的文档/文档。请帮助提供这些参数的解释并加快算法。

回答

0

首先要检查的是确保您在发布模式而不是调试模式下编译您的程序。

Documentation and source code for 1 + 1 ITK的优化器可在线获得。