Convert image datatype from uint16 to uint8

前端 未结 1 1225
日久生厌
日久生厌 2021-01-23 15:16

I have a tiff image stack in uint16 datatype and I’d like to convert this to uint8 datatype. I’m not sure how to do this in Fiji.

I have loaded the stack in Fiji and I tr

相关标签:
1条回答
  • 2021-01-23 16:08

    The im2uint8() function can be used to convert the image from uint16 (unsigned integer 16) to uint8 (unsigned integer 8) in MATLAB.

    For .tiff Files with a Single Image :

    Image = imread("Test_Image.tiff");
    Image = im2uint8(Image);
    imshow(Image);
    

    For .tiff Files with Multiple Images and Saving Transformed/Converted Images:

    Reading the images in a loop using the imread() function with second argument being the Image_Index corresponding to the image number within the .tiff image collection can be used to grab the entire image data stored in the file. Using imwrite() in append and WriteMode will allow each converted image to be saved into one file named in this example as Converted_Image.tiff.

    %Multiple image tiff conversion%
    
    File_Name = "Test_Image.tiff";
    Image_Data = imfinfo(File_Name);
    Number_Of_Images = length(Image_Data);
    
    
    Tiff_Structure = struct('Image_File',[]);  
    
    for Image_Index = 1: Number_Of_Images
        
          Image = imread(File_Name,Image_Index);
          Uint8_Image = im2uint8(Image);
    
          %For more information and plotting individual images%
          Tiff_Structure(Image_Index).Image_File = Uint8_Image;
          
          %Saving the converted images to one tiff file%
          imwrite(Uint8_Image,'Converted_Image.tiff','WriteMode','append');
    
    end
    

    Using MATLAB version: R2019b

    0 讨论(0)
提交回复
热议问题