我在matlab中有一堆2D矩阵(它们应该组成3D维度为时间的3D矩阵),并且我正在尝试从图像数据制作视频。

我知道我可以使用surf()使用2D矩阵之一制作表面图,但是我不确定要调用哪个命令来获取所有2D矩阵并将它们转换为表面图的视频。

有人可以帮忙吗?

最佳答案

内置函数 immovie(X,map) 是您想要的选项之一。该函数需要一个m-by-n-by-1-by-k 4D矩阵,其中第4维是电影的帧。由于您是从3D矩阵开始的,因此请先使用置换:

Orig; % 3D matrix
X = permute(Orig,[1 2 4 3]); % 4D matrix
movie = immovie(X,map); % map is the colormap you want to use

implay(movie);

关于matlab - 如何在Matlab中从3D矩阵制作视频,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16533922/

10-12 18:03