title: Matlab write image with floating point values?
body: <p>I have a <code>.tif</code> image where each pixel value (single channel) is floating point. Is there anyway to read it with matlab (<code>imread</code>) do some operation and write it back in floating point ? </p>
  
  <p>If i do <code>imwrite(I,'img.tif')</code> it gets converted to 8 bit single channel (0...255)</p>
  
  <p>I only found this sample on mathworks:</p>
  
  <pre><code>info = imfinfo(filename); 
  t = Tiff(filename, 'w'); 
  tagstruct.ImageLength = size(timg, 1); 
  tagstruct.ImageWidth = size(timg, 2); 
  tagstruct.Compression = Tiff.Compression.None; 
  tagstruct.SampleFormat = Tiff.SampleFormat.IEEEFP; 
  tagstruct.Photometric = Tiff.Photometric.MinIsBlack; 
  tagstruct.BitsPerSample = info.BitsPerSample; % 32; 
  tagstruct.SamplesPerPixel = info.SamplesPerPixel; % 1; 
  tagstruct.PlanarConfiguration = Tiff.PlanarConfiguration.Chunky; 
  t.setTag(tagstruct); 
  t.write(timg); 
  t.close();
  </code></pre>
  
  <p>Imfinfo:</p>
  
  <pre><code>   info = 
  
                   Filename: [1x110 char]
                FileModDate: '04-dic-2012 12:02:07'
                   FileSize: 45720930
                     Format: 'tif'
              FormatVersion: []
                      Width: 2724
                     Height: 4193
                   BitDepth: 32
                  ColorType: 'grayscale'
            FormatSignature: [73 73 42 0]
                  ByteOrder: 'little-endian'
             NewSubFileType: 0
              BitsPerSample: 32
                Compression: 'Uncompressed'
  PhotometricInterpretation: 'BlackIsZero'
               StripOffsets: [4193x1 double]
            SamplesPerPixel: 1
               RowsPerStrip: 1
            StripByteCounts: [4193x1 double]
                XResolution: 100
                YResolution: 100
             ResolutionUnit: 'None'
                   Colormap: []
        PlanarConfiguration: 'Chunky'
                  TileWidth: []
                 TileLength: []
                TileOffsets: []
             TileByteCounts: []
                Orientation: 1
                  FillOrder: 1
           GrayResponseUnit: 0.0100
             MaxSampleValue: 4.2950e+09
             MinSampleValue: 0
               Thresholding: 1
                     Offset: 45720696
               SampleFormat: 'IEEE floating point'
         ModelPixelScaleTag: [3x1 double]
           ModelTiepointTag: [6x1 double]
         GeoKeyDirectoryTag: [52x1 double]
         GeoDoubleParamsTag: [3x1 double]
  </code></pre>