Image Matlab位移矢量场
给定两个不同的图像,如何计算和绘制这两个图像之间位移的向量场 我知道matlab有一个叫做opticalflow的工具,它可以让我做一些类似于我所要求的事情,但看起来它对我不起作用 除了opticalflow,还有什么可以帮助我的吗 也许我做错了什么,所以我将发布一个我正在做的例子:Image Matlab位移矢量场,image,matlab,vector,opticalflow,image-registration,Image,Matlab,Vector,Opticalflow,Image Registration,给定两个不同的图像,如何计算和绘制这两个图像之间位移的向量场 我知道matlab有一个叫做opticalflow的工具,它可以让我做一些类似于我所要求的事情,但看起来它对我不起作用 除了opticalflow,还有什么可以帮助我的吗 也许我做错了什么,所以我将发布一个我正在做的例子: fixed = rgb2gray(imread('Fixed_2.jpg')); moving = rgb2gray(imread('Moved_2.jpg')); fixed= fixed(:, 100:400)
fixed = rgb2gray(imread('Fixed_2.jpg'));
moving = rgb2gray(imread('Moved_2.jpg'));
fixed= fixed(:, 100:400);
moving= moving(:, 100:400);
[optimizer, metric] = imregconfig('monomodal');
movingRegistered = imregister(moving, fixed, 'rigid', optimizer, metric);
figure
imshow(movingRegistered);
opticFlow = opticalFlowHS;
flow = estimateFlow(opticFlow,fixed);
flow = estimateFlow(opticFlow,movingRegistered);
hold on
plot(flow,'DecimationFactor',[5 5],'ScaleFactor',25)
hold off
非常感谢。那么您的代码有什么问题吗?有任何警告/错误/输出错误吗?@SardarUsama没有。但我从情节中得到的是一束向各个方向的箭。所以我得出一个结论,也许我做错了什么。@SardarUsama我上传了我从matlab得到的输出,我真的不明白我做的是好的(或者至少是好的方向)还是完全错了。@SardarUsama有什么建议吗?我做得对吗?谢谢。通常是提问者告诉我们正确的答案。我不是这个领域的专家。如果你不确定的话,我无法证实。很抱歉