1

我有一些来自视频序列的帧,用于估计其间的光流场:

[u, v] = compute_optical_flow(series);

我可以使用以下方式播放视频序列implay

implay(series);

我可以使用以下方法在单个图像上绘制单个流quiver

imshow(series(123,:,:));
hold on;
quiver(u(123,:,:), v(123,:,:));

但是,我还希望能够播放存储在 u 和 v 中的整个时间序列的速度矢量(如果可能的话,在相应的图像帧之上)。所以我要寻找的implay只是速度场而不是图像。

有任何想法吗?

谢谢!

4

1 回答 1

3

The simple hack is to use the pause MATLAB function. You code should look something like this:

framesPerSecond = 30;

for n = 1:N %# Here N is the number of frames you have
    imshow(series(n,:,:));
    hold on;
    quiver(u(n,:,:), v(n,:,:));
    hold off;
    pause(1/framesPerSecond);
end
于 2012-04-23T14:03:13.140 回答