我目前正在研究具有不同分辨率的图像的多模式配准问题。对于具有相对相同分辨率的图像,我可以使用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)')
答案 0 :(得分:1)
我看到一个类似平行六面体的物体,而不是立方体。我会坚持使用经典的简历而不是DL,并且会使用几何计算机视觉。
您要尝试做的是找到一个转换(函数),该转换将使两个对象不变(即,它们是相同的)。在CV中,您可以处理图像的不同方面(颜色,强度,渐变,mipmap等);我认为这很常见,即可以帮助您找到功能的是形状(2D和3D),对象的几何形状。
我建议您尝试使用几何计算机视觉 [1]中的几种算法,并回顾大地测量方法 [2],[3],后者将允许您要处理不同的体积形状,而不仅仅是一个特定的平面形状(例如,比率为:=宽度/高度的矩形)。我将执行以下步骤:
注册对于准备步骤可能有用;这取决于您的管道。
与DL一起使用的是,所有内容都是一次构建的(如果您需要模块化,这是不便的,如果您想要“更轻松”的准备就很有利),但是它也需要非常大的集合,而且计算量很大(需要时间和计算能力)。根据您的需求(时间,金钱,结果的质量),您可能会找到一种更适合您的项目的方法,但是您想尝试另一种或所有方法(例如基准/审查)。
[1]几何计算机视觉的元素,Andrea Fusiello http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/FUSIELLO4/tutorial.html
[2]计算机视觉和图形学中的测地线方法,GabrielPeyré,MickaelPé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