【发布时间】:2014-09-20 15:59:20
【问题描述】:
对于演示文稿,我希望显示一系列图像(基本上是电影的帧),每个帧显示在后面并相对于前一个偏移。
只有第一帧是完全可见的,但您会看到剩余帧的一部分。
这可以在 matlab 或某些(免费软件)程序中完成吗?
【问题讨论】:
-
Matlab 可以做到E V E R Y T H I N G!!
对于演示文稿,我希望显示一系列图像(基本上是电影的帧),每个帧显示在后面并相对于前一个偏移。
只有第一帧是完全可见的,但您会看到剩余帧的一部分。
这可以在 matlab 或某些(免费软件)程序中完成吗?
【问题讨论】:
假设您的图像序列存储在元胞数组seq 中,并且所有图像的大小相同。
这就是你的想法吗?
sz=size(seq{1}); %// assuming all frames are of the same size
m = 20; %// size of "margin" to show from each frame
n = numel( seq ); %// number of frames in sequence
fh = figure('Position', [100 100 sz(2)+(n-1)*m sz(1)] );
ah=axes('Units','pixels','Position', [ 0 0 sz(2)+(n-1)*m sz(1)] );
hold on;
%// show frames from last to first
for fi=n:-1:1
imshow( seq{fi}, 'Parent', ah, 'XData', (fi-1)*m + (1:sz(2)));
end
我正在使用imshow 的XData 属性来相对于彼此移动框架。
您可能还想探索YData 以创建垂直移位...
【讨论】: