0

尝试从 4D 矩阵制作动画时,我不断收到错误消息。

这是代码:

>> %movie...fail
    c = zeros([size(u_filt1), 339]); %input number of frames
    for ii=1:size(c,3)
        c(:,:,ii)=eval(['u_filt', num2str(ii)]);
    end 

x=permute(c,[1 2 4 3]); %4D matrix
immovie(x,jet);

Error using im2uint8 (line 83)
Invalid indexed image: an index was less than 1.

Error in immovie>parse_inputs (line 89)
    X = im2uint8(X,'indexed');

Error in immovie (line 39)
[X,map] = parse_inputs(varargin{:});
4

1 回答 1

4

无符号整数数据类型的索引图像从 0 开始。双精度数据类型的索引图像从 1 开始。因此,将无符号整数u_filtX放入双精度数组的代码使c数据无效。使用正确的类分配 c

c = zeros([size(u_filt1), 339],class(u_filt));
于 2016-03-16T20:46:22.537 回答