MATLAB Answers


Reading camera raw file

Asked by tam
on 27 Apr 2013


I am trying to import camera raw file in the Matlab and do further processing.

I read the article below and successfully convert the DNG file.

After that,I applied the code below to the file,as the article mentioned.

    info = imfinfo('books.dng')
    warning off MATLAB:tifflib:TIFFReadDirectory:libraryWarning
    t = Tiff('books.dng','r');
    offsets = getTag(t,'SubIFD');
    cfa = read(t);

The warning below is come out and the 'cfa'file contain nothing.

      Warning: JPEGLib: Must downscale data from 16 bits to 8. 
      Warning: JPEGPreDecode: Improper JPEG strip/tile size, expected 256x256, got 128x256. 

I tried raw file from Nikon D40x and Sony Nex-3, also cannot get any improve.

What is the problem?

Thank you.

Andrew Tam


So your file is also called books.dng right? Then what is the output of imfinfo('books.dng')?

on 5 Jul 2013

Thanks for viewing, Thomas Stone's answer solve the problem

Log in to comment.


1 Answer

Answer by Thomas Stone on 5 Jul 2013
 Accepted Answer

I had the same problem, but fixed by making sure the image was uncompressed. If you are using Adobe DNG converter make sure the "compatibility" is set to custom, with "Uncompressed" ticked.

  1 Comment

on 5 Jul 2013

Thanks!!! I successfully crack the file to bayer array. Now I can buy a super zoom DC and use Matlab to process its image, try to beat photo from DSLR on rookie's hand. Very thanks!

Log in to comment.

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Win prizes and improve your MATLAB skills

Play today