I have a matix of class double but when i am converting it to an image by imwrite it's class changes to uint8 but i want it to be double type what should i do?
7 次查看(过去 30 天)
显示 更早的评论
回答(2 个)
Walter Roberson
2018-11-21
There is no supported way to write double precision images in matlab . There are supported ways to write single precision tiff and dicom. Only tiff and png and dicom support double precision at all in their standards but matlab does not support creating them (unless possibly tiff support was added recently ) . One of the links above leads to aa File Exchange contribution that claims to support double precision tiff.
In my experience everyone who has asked for imwrite to support double precision has had a weak understanding of image file formats . The people who have had good reason to deal with double precision images have directly asked about the tiff class or about dicom transfer syntaxes.
10 个评论
Guillaume
2018-11-23
And, yes I don't think matlab lets you access private chunks of a PNG. Perhaps, they ought to provide a PNG interface similar to the TIFF interface. Or since, libpng is shipped with matlab, you could always directly interact with it.
Walter Roberson
2018-11-23
Hence my "at all".
Though looking again with jpeg II guess you could use aa private exif tag which would get you 4 bytes worth of chunk length . (matlab provides no way to write exif. there is aa fex contribution to call an external program to write exif)
Image Analyst
2018-11-21
Save it as a .mat file with save(). Any problem with that? What app is going to read these in after you write it out? If it's just MATLAB again, simply use save() and load().
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Image Processing Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!