如何在MATLAB中重新缩放并保存图像?

时间:2019-05-16 21:45:19

标签: matlab image-processing matlab-figure pixel rescale

我正在读取“ MHD”文件,该文件为我提供了如下信息:

Filename: 'patient0001_2CH_ED_gt.mhd'
             Format: 'MHA'
     CompressedData: 'false'
         ObjectType: 'image'
 NumberOfDimensions: 3
         BinaryData: 'true'
          ByteOrder: 'false'
    TransformMatrix: [1 0 0 0 1 0 0 0 1]
   CenterOfRotation: [0 0 0]
 AnatomicalOrientation: 'RAI'
             Offset: [0 0 0]
    PixelDimensions: [0.3080 0.1540 1.5400]
         Dimensions: [549 778 1]
ElementNumberOfChannels: '1'
           DataType: 'uchar'
           DataFile: 'patient0001_2CH_ED_gt.raw'
           BitDepth: 8
         HeaderSize: 384

然后通过另一个功能,我将读取信息,然后生成图像。然后,我需要使用pixel dimension ( PixelDimensions: [0.3080 0.1540 1.5400])重新缩放图像尺寸,并且使用imagesc来完成此操作,如下面的代码所示,但是它更改了图像的唯一值。

在没有imagesc的情况下是否可以重新缩放图像? imagesc也会产生3个我不想要的频道,而且显然所有频道都是相同的。

rows = 1:info.Dimensions(1);
cols = 1:info.Dimensions(2);
Im2 = imagesc(rows.*info.PixelDimensions(1),cols.*info.PixelDimensions(2),Im(:,:)');
saveas(gcf,'Output_filename.png')

0 个答案:

没有答案
相关问题