不同分辨率的两幅图像之间的Matlab自动特征匹配

Matlab Automated Feature Matching Between Two Images in Different Resolution

我目前正在研究不同分辨率图像的多模式配准问题。对于具有相对相同分辨率的图像,我可以通过使用 Matlab 多模式配准管道很好地匹配我的目标(中间的立方体对象)。

但是,如果运动图像和固定图像之间存在大尺度变化,则基于强度的多模态配准将不起作用。

我尝试使用 sift/surf 特征匹配来恢复比例,但由于两张图像来自非常不同的设备,我无法获得正确的结果。我一直在考虑深度学习方法,但不确定如何开始。欢迎任何想法或建议。

我在下面附上了我的代码,所以你可以随意测试它。

moving = imread('moving.png');
fixed = imread('fixed1.png');

figure
subplot(311)
imshowpair(fixed,moving,'montage')
title('Before Registration')

 % Optimizer and Metric setting
optimizer = registration.optimizer.OnePlusOneEvolutionary;
optimizer.GrowthFactor = 1.05; %1.0001
optimizer.Epsilon = 1.5e-06;
optimizer.InitialRadius = 0.00625; %0.0022 0.0015
optimizer.MaximumIterations = 200; %500


metric = registration.metric.MattesMutualInformation;
metric.NumberOfSpatialSamples = 500;
metric.NumberOfHistogramBins = 25; 


tformRigid = affine2d([1 0 0;0 1 0; 0 0 1]);
[movingRegistered,~,tform] = imregister2(moving,fixed,'affine',optimizer,metric,'DisplayOptimization',false);


subplot(312)
imshowpair(fixed,movingRegistered,'montage')
title('After Rigid Transform (Fix Spatial Difference)')

我看到一个类似平行六面体的物体,而不是立方体。我会坚持使用经典 CV 而不是 DL,并使用几何计算机视觉。

你想做的是找到一个转换(函数),使两个对象不变量(即,它们是相同的)。在 CV 中,您可以处理图像的不同方面(颜色、强度、渐变、mipmap 等);我看到的是常见的,即,这将帮助您找到您的功能,是形状(2D 和 3D),对象的几何形状。

我建议您尝试使用 几何计算机视觉 [1] 中的一些算法并复习 测地线方法 [2], [3],后者将允许您处理不同的体积形状,而不仅仅是某种平面形状(例如,比率为:=width/height 的矩形)。我会执行以下步骤:

  • 准备图像使它们尽可能相似(实际上使它们的 space 表达尽可能相似)(降维;例如,归一化对比度和亮度,添加低通滤波器,检测边界)
  • 然后使用分类器(SVM、AdaBoost ...)进行学习;你需要准备你的groundtruth、学习集和测试集(有大量参考资料)。

注册可能对准备步骤有用;这取决于您的管道。

DL 的特点是所有东西都是一次性构建的(如果你寻求模块化,这很不方便,如果你想要 "easier" 准备,它是一个优势),但它也需要非常大的集合,而且它是非常计算密集型(需要时间和计算能力)。根据您的要求(时间、金钱、结果质量),您可能会找到一种方法更适合您的项目,但您可能想尝试另一种方法或所有方法(例如 benchmark/review)。

[1] 几何计算机视觉元素,Andrea Fusiello http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/FUSIELLO4/tutorial.html

[2] 计算机视觉和图形中的测地线方法,Gabriel Peyré、Mickael Péchaud、Renaud Keriven 和 Laurent D. Cohen https://www.researchgate.net/publication/47523356_Geodesic_Methods_in_Computer_Vision_and_Graphics

[3] https://scholar.google.com/scholar?hl=en&num=100&ie=UTF-8&q=computer+vision+geodesic