我以提到的https://blogs.mathworks.com/steve/2011/03/08/tips-for-reading-a-camera-raw-file-into-matlab/编写了matlab代码,以读取我的DNG文件的滤色器阵列,代码如下:
Info=imfinfo('xxx.dng');
tiffHandle=Tiff(('xxx.dng'),'r');
offsets=TiffHandle.getTag('SubIFD');
setSubDirectory(TiffHandle,offsets(1));
CFA=double(read(TiffHandle));
生成的CFA是全零矩阵,绘制为纯黑色图像。我想知道如何解决此问题并读取DNG图像的拜耳数组?预先感谢!
答案 0 :(得分:0)
此问题的当前答案是,您应该将DNG图片的向后版本更改为1.3,而不是1.4,并在Adobe DNG Converter中打开“未压缩”选项,或者在命令行中使用-dng1.3 -u
,然后cfa数组可以正常读取。