首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >命令行读取DNG图像

命令行读取DNG图像
EN

Stack Overflow用户
提问于 2017-09-01 02:33:12
回答 2查看 1.5K关注 0票数 2

过了一段时间,我尝试了这里这里这里这里这里中的“提示”、“提示”、“猜测”和“试验”,甚至通过这里和其他方面给出的SO问题,并使用这里这里这里中的几个软件,我仍然无法找到一个函数示例E 210如何通过命令行转换DNG原始图像文件。

我不是寻找一个所有的情况解决方案,只是一个功能命令行的例子转换任何给定的DNG图像。

是最好的,但是,很好,不要运行,因为“一个人会错过这个重要的一步”(谢谢!)

不过是一个“提示”,在没有任何文件实际转换的情况下省略了。从这里开始,我无法进一步进行所需的适当转换(图像看起来太“暗”了)。

dcraw命令行程序需要一些“配置”(哪一个?)以避免颜色偏离,以及“阴影环从图片中心到外部”,同时将其tiff输出与适当的Adobe转换器进行比较,不幸的是,它不是命令行(命令行调用):

代码语言:javascript
复制
dcraw -T filename

最好的函数不完整代码应该是一个简单的dngread函数,如下(Matlab ):

代码语言:javascript
复制
function img=dngread(filename,options)
%% READ DNG IMAGE FILES

% READ BASIC INFO
info = imfinfo(filename);
info.SubIFDs{1};

% READ COLOR FILTER ARRAY
warning off MATLAB:tifflib:TIFFReadDirectory:libraryWarning
t = Tiff(filename,'r');
offsets = getTag(t,'SubIFD');
setSubDirectory(t,offsets(1));
cfa = read(t);
close(t);

% LINEARIZATION TABLE
%curve = info.SubIFDs{1}.LinearizationTable

% DEMOSAIC COLOR FILTER ARRAY
options.filter='rggb'
img=demosaic(cfa,options.filter);
% Image in here looks "dark"
imshow(img);
EN

回答 2

Stack Overflow用户

发布于 2017-09-01 21:40:16

您可以尝试这个函数。

代码语言:javascript
复制
function [rawData, tinfo]= loadDNG(dngFilename)   
    if(exist(dngFilename,'file'))
        tinfo = imfinfo(dngFilename);
        t = Tiff(dngFilename,'r');
        rawData = t.read();
        t.close();
    else
        if(nargin<1 || isempty(dngFilename))
            dngFilename = 'File';
        end
        fprintf(1,'%s could not be found\n',dngFilename);
        rawData = [];
    end
end

为了测试它,我从这个网站下载了'L1004235.DNG‘,并将它放在与此函数相同的目录中。

代码语言:javascript
复制
rawData = loadDNG('L1004235.DNG'); % load it "functionally" from the command line
imtool(rawData);                   % display it as proof of concept.

引用:我基于您引用的这个博客帖子help Tiff将这些代码放在一起。

票数 1
EN

Stack Overflow用户

发布于 2017-09-04 21:25:14

raw2dng做你想要的- Linux命令行工具来转换任何原始格式(包括。改为DNG/JPG/TIFF。

请注意,原始格式的转换/“开发”并不是一个定义明确的过程,您将通过不同的程序得到不同的结果。此外,照相机(尤指))将各种处理应用于其DNG中缺失的JPG (例如锐化)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45992585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档