我正在使用Matlab2014b中的一些MRI数据,但这些数据是由强度值组成的,而不是RGB。为了解决这个问题,我使用下面的代码从MRI帧中形成一部电影(这里我正在处理动态数据)
我的问题是,图像需要更改像素的显示值,因为默认值仅显示在-Inf和Inf之间,而我需要介于0和0.25之间才能从我的数据中获得合理的图像。
有没有什么方法可以将脚本中的更改传递到电影中,然后写入文件?我似乎只能做到这一点每个图像在暗示,我想要一个自动化的方式来编辑每个图像,然后存储为一部电影的帧。
%Code for producing movie.
graymap = gray(256);
for i = 1:32
a(:,:,i) = cmunique(Reformed_Data_Colourmap(:,:,i));
end
for i = 1:32
b = im2frame(a(:,:,i),graymap);
a(:,:,1) = ((b.cdata));
image(a(:,:,1))
colormap 'gray'
%The change needs to be here, to display pixel values from 0 to 0.25, to allow for a sensible image from the MR data.
frames(1,i) = getframe;
end
movie(frames)发布于 2015-03-04 20:06:31
提供了解决方案:
for i = 1:32
b = im2frame(a(:,:,i),graymap);
a(:,:,1) = ((b.cdata));
clims = [0 250];
%image(a(:,:,1),clims)
colormap 'gray'
imagesc(a(:,:,1),clims);
%set('window', [0 400])
frames(1,i) = getframe;
end气候解决了这个问题。
https://stackoverflow.com/questions/28852494
复制相似问题