在matlab中逐帧逐步浏览电影

时间:2012-03-10 21:30:53

标签: matlab video plot frame

我希望plot一个在matlab中随时间变化的数字。然后,我希望能够逐帧地逐步完成时间步骤。我怎样才能实现这一目标?我创建了一个movie,但似乎没有办法以简单的方式逐步完成它。我以前见过这个,所以我知道有一个解决方案。

1 个答案:

答案 0 :(得分:2)

如果您的电影是使用“getframe”创建的,则可以使用以下代码:

这会设置一个示例电影:

Z = peaks; surf(Z); 
axis tight
set(gca,'nextplot','replacechildren');
% Record the movie
for j = 1:20 
    surf(sin(2*pi*j/20)*Z,Z)
    F(j) = getframe;
end
% Play the movie
figure(1);clf;
movie(F)

这一次检查每个框架:

for j=1:20
    [X,map] = frame2im(F(j));
    figure(2);clf;
    image(X);
    pause; 
end

按空格键将释放“暂停”,以便您可以独立检查每个帧。