Matlab矢量场位移

时间:2018-06-13 18:46:46

标签: image matlab vector opticalflow image-registration

给出两个不同的图像,如何计算和绘制这两个图像之间位移的矢量场?

我知道matlab有一个名为光流的工具,可以让我做一些类似于我所要求的事情,但看起来它对我不起作用。

除了光流之外还有什么可以帮助我吗?

也许我做错了所以我会发布一个我正在做的事情的例子:

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

This is my output

Vector field

非常感谢提前。

0 个答案:

没有答案