2011-12-28 188 views
1

我在一个循环中使用imagesc创建100个图像。据我所知,每个图像中的色阶是单独的。MATLAB:Imagesc和缩放所有图像使用一个比例

所以我的第一个问题是......每幅图像的尺寸是否不同?

(我的结果将表明这一点,但我需要澄清)

结果是7x7xt矩阵。显示出这是循环的

部分...

t=100; 

for j=1:t 
    figure; 
    imagesc(result(:,:,j)); 
    filename = sprintf('model.png', j); 
end 

我的第二个问题是......如果他们有不同的尺度,有一个简单的方法,使他们都使用相同的适度规模?

回答

2

问题1:是的。

问题2:

如果你读了manual page,你会看到它说:

imagesc(...,clims)标准化在C值由clims并显示C指定为图像的范围。 clims是一个二元向量,它限制了C中的数据值范围。这些值映射到当前颜色映射中的全部值。

+0

因为我一直在使用手册页,所以我必须先读错了。我必须放弃这一点。谢谢! – Tetra 2011-12-29 16:33:34

4

您还可以使用CAXIS函数更改IMAGESC以外的颜色限制。

for j=1:t 
    %# ... 
    imagesc(result(:,:,j)); 
    if j==1 
     cl = caxis; %# get color limits from the 1st image 
    else 
     caxis(cl) %# apply the same color limits to other images 
    end 
    %# ... 
end 
+0

辉煌,正是我想要的!谢谢! – Tetra 2011-12-29 16:32:10