Why does my 16 bit grayscale JPEG not open outside MATLAB?

1 view (last 30 days)
I am creating a 16-bit JPG file using IMWRITE:
X = uint16(65535 * rand(1024,1024));
imwrite(X,'noise.jpg','jpeg','BitDepth',16,'Quality',100);
However, I can only access and use the file in MATLAB. All other programs outside MATLAB recognize the file as corrupt.

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 12 Oct 2019
The 16-bit grayscale JPEG file being created is not corrupt, but 16-bit lossless grayscale files are supported in such a limited fashion (mostly used inside DICOM files) that most applications that support reading and writing JPEG files do not read these properly.
If you need to save 16-bit grayscale image data, TIFF format is a much better choice.

More Answers (0)

Tags

No tags entered yet.

Products


Release

R2012b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!