主题:RAW详解
正序浏览
主题图片汇总
主题内检索
浏览:14425 回帖:296
游客没有回帖权限
泡菜
泡网分: 0.041
主题: 0
帖子: 31
注册: 2018年10月
stevenkoh 发表于 2021-5-1 14:16
看了这位摄友,对色彩原理的探索也很主动,也很深入,可见这位摄友也一定曾经被错误理论带入坑里,才会这么自己钻研。但毕竟业余,很多认知难免有局限性——过于纠结细节了,其实就像摄友自己所言,“要真正弄明白具体细节我感觉相当困难”。

我非常理解这种感觉,发烧友自己深入研究原理,所希望的是,找到一种极致的“无损”或者“最低限度”的低损编辑方式,可随时复原,保证宽容度。但这种方式的门槛是极高的,因为只有你真正的去操弄代码,实际的去解决一些工程问题(而不是“写代码”为了自己研究好玩),你才能真正的去理解,自己操作图像的实际的数据损失是多少?哪些损失是可以接受的,哪些是不能接受的?

而这造实际结果如下:

1.普通人自己摆弄RAW的出片,大部分人不如相机直出JPG的品质
   例子链接1:用户自己怎么调都达不到直出图那种锐度和宽容度,怎么看都是直出图好太多了
   例子链接2:下图在链接2中的附图,是相机直出的JPG(内嵌于RAW文件,可以提取),而在例子作者 ...


@stevenkoh 非常感谢您的热情帮助。

其实,严格地讲,我既不是摄影爱好者,也不是码农,也不是色彩相关的工作者,充其量只是对色彩相关的知识有点兴趣,正象您所说,想知其所以然。

就拿ACR来说,通过前面的DNG逻辑图,我们算是明白了用ACR打开一个RAW文件时底层的工作流程,也就是我们在ACR中不进行任何操作的情形。那么我想知道的是,假如我们在ACR中进行某种操作,这种操作在流程中的哪个位置执行?可能的话,具体的算法或退而求其次算法的基本逻辑又如何?比如最简单的一个问题:PS※※有6种典型的颜色,而且这6种颜色与RGB的关系是十分明确的,而ACR※※有8种典型的颜色,那么这8种典型颜色与RGB的关系又是如何定义的?诸如此类,就是我想知道的,虽然我觉的这方面比较困难,因为这些算法毕竟算是商业秘密,不象DNG解码一样有公开的协议摆在哪。如果您对这方面有所了解,烦请您指点一下,非常感谢。

您推荐的这本由BruceFrasce写的《色彩管理》我在好几年前就读过,算是有所了解,但我感觉这本书无助于解决我上面的这些问题。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
老坛泡菜
泡网分: 47.392
主题: 0
帖子: 9358
注册: 2002年10月
stevenkoh 发表于 2021-5-1 14:16
看了这位摄友,对色彩原理的探索也很主动,也很深入,可见这位摄友也一定曾经被错误理论带入坑里,才会这么自己钻研。但毕竟业余,很多认知难免有局限性——过于纠结细节了,其实就像摄友自己所言,“要真正弄明白具体细节我感觉相当困难”。
。。。。。。

好好的一个讨论算法原理的技术贴.,非要搅合进来怎么调图 -- 风马牛都能往一起去讲,也是一个奇葩。

退一万步说:线性调整,和线性空间,能是一回事吗?人家明明讨论RAW从线性到非线性空间的转换过程,从来没说要建立另一个完全线性的映射。你这里树立一个稻草人说人家错了。真是不知所云 。。。 本帖最后由 logical 于 2021-5-1 23:56 编辑
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 3.752
主题: 45
帖子: 3302
注册: 2013年1月
逐色追影 发表于 2021-4-18 11:41
1、关于RAW解码过程中的非线性操作,我觉的不仅仅只有影调曲线和gamma曲线,诸如3DLUT之类的操作以及象ACR中HSL调整、渐变滤镜、径向滤镜等都应该是非线性操作。因此,只进行影调曲线和gamma曲线的逆变换还不能真正还原到线性值。把非线性的JPG还原到线性的RAW,在计算机视觉领域目前似乎还是一个极具挑战性的内容。

2、ACR不仅可以解码RAW,还可以对JPG进行编辑,那么ACR载入JPG时,是否会尝试进行这种线性还原呢?理论上有两种选择:一种是不进行这种线性还原,直接将JPG的色彩空间转换到ACR的工作空间即线性ProPhotoRGB,以此作为起点进行编辑(相当于以前RAW解码时所进行的各种编辑调整都已经固化到图像数据中)。另一种是尝试进行线性还原。这基本上相当于把JPG还原到RAW一样,原来解码时各种编辑调整并没有固化到图像数据中,而是作为元数据一样存在,ACR的后续编辑调整相当于只是相当于修改这些元数据。在RAW解码时的各种编辑调整参数不可知的情况下,后一种方案的实现目前来看似乎是不可能的事。还有一种情况,假如RAW解码的JPG又在PS中进行了大量的编辑操作,或者干脆在PS中从空画布开始随意涂鸦几笔直接创建一个JPG,那么ACR又该如何处置呢?还会试图进行线性还原吗?

3、您在帖中提到ACR处理JPG时会尝试进行影调曲线的还原,而且还提到“如果JPEG不是Lightroom、ACR解码的结果,或者根本没有内嵌XMP元数据,Camera Raw滤镜只能用一条套用的影调曲线还原。”我想知道的是,您的这个结论是基于您实际验证的结果呢,还是来自某个权威资料?如果是您实际验证的结果,那么您是如何验证的呢?


看了这位摄友,对色彩原理的探索也很主动,也很深入,可见这位摄友也一定曾经被错误理论带入坑里,才会这么自己钻研。但毕竟业余,很多认知难免有局限性——过于纠结细节了,其实就像摄友自己所言,“要真正弄明白具体细节我感觉相当困难”。

我非常理解这种感觉,发烧友自己深入研究原理,所希望的是,找到一种极致的“无损”或者“最低限度”的低损编辑方式,可随时复原,保证宽容度。但这种方式的门槛是极高的,因为只有你真正的去操弄代码,实际的去解决一些工程问题(而不是“写代码”为了自己研究好玩),你才能真正的去理解,自己操作图像的实际的数据损失是多少?哪些损失是可以接受的,哪些是不能接受的?

而这造实际结果如下:

1.普通人自己摆弄RAW的出片,大部分人不如相机直出JPG的品质
   例子链接1:用户自己怎么调都达不到直出图那种锐度和宽容度,怎么看都是直出图好太多了
   例子链接2:下图在链接2中的附图,是相机直出的JPG(内嵌于RAW文件,可以提取),而在例子作者的原帖中,有大量本论坛网友的自己出图。可以比较一下,大家个人出图质量和机内直出JPG的对比。就是结论1的例证。
2.真正知道原理的,其实早就这么建议“无损/低损”地去做了,只不过曲高和寡,不如一些PS大师的培训课热闹。例子参见 安全的调色流程。看看,这都是2007年的老文的,但原理一直没变!只不过,林老师和我都无法简单直观的告诉大家,哪些操作“很伤RAW”,不存在简单的“三板斧”。

所以跳出细节,摄友您可以这么简单想想,“假如存在这种理想的线性空间,那为何不开放给普通用户使用呢?”。其实就是说,RAW-〉JPG的各类流程还挺复杂抽象的,可以说您尽管了解,但不理解,知其然不知其所以然,所以以后还会有“误操作”,因为您不知其所以然。客观说,即便楼主也“不知所以然”。我说一下关键,这不需要代码,但需要“真正理解”。理解了,可以说色彩管理就可以完全解决,你再也没有“色彩管理”的问题了,能驾驭这个事情。而不理解,不管是媒体软文,或者民科的执念,都会对您造成理解偏差。

关键就是“色彩的起点”,抓住“色彩”的起点,这个牛鼻子。

您老是提及“线性空间”,好像“线性空间”就能无损了,我在32位线性RGB色彩空间曾解释过。这里再进一步补充一下。

1.数据。RAW数据本身,是线性的(有一些压缩的cRAW,但最终是还原线性操作的,也就是您说“线性还原”)。
2.颜色。码农用户,也需要“线性操作”,就是上面我解释过的32位线性RGB色彩空间。我在75楼提到的,那些搞3D操作的码农,如果不线性操作会混色出其他颜色来。
3.感知。摄影师/用户,也需要“线性操作”。人眼感知的线性,提亮20%,这也是“线性”。

其实,大家都希望“线性”,只有“线性”才可预知预判。记住一点“下层非线性是为了上层的线性”。为了“感知”线性,“颜色”是不线性操作的;而为了“颜色”线性,“数据”对颜色而言是“非线性的”(这个就是影调曲线的意义);但归根结底,数据RAW都是线性的,因为这是物理。颜色本质上是一种基于人眼生物特征的统计,而“感知”则是IT层面,PS的一些数值/滑块的线性操作。这些都“言必称线性”,但你一定要知其然,搞清楚原理。到底什么是“什么东西”的线性,尽管他们都叫“线性”。

比如一个搞动画3D,游戏引擎开发的码农。他根本不需要了解“RAW数据“层面的事情,根本不搞"色卡”这种东西,所有的一切都是“色彩”,他们不需要接触“影调曲线”的东西,他们全部在色彩空间内操作。上面提到的“32位线性RGB色彩空间”,就说的这个。一般而言,摄影师能了解到这个层次就够了。过多了解,反而会误操作。

但一个搞ISP影像芯片开发,搞ACR开发,搞打印RIP开发的,搞显示器开发的码农,就需要了解RAW数据了。同样是码农,对他们来说,色彩空间的数据就是“非线性”的,RAW数据才是。他们需要折腾“色卡”、校色,这类繁琐的苦逼事情。不管是哪一类码农,他们都不善言辞,也没有多余的空闲去科普。而且他们的认知和“摄影师”区别很大。

对于你来说,我建议你要记住以下几点:
1.记住ACR以后载入的,才是“颜色”,保持16位工作数据精度,是一切的基础;
2.最终的导出的工作成果文件,保持8为的数据精度,是最具有通用型的。也足够了,从生理上说,8位不会导致色阶断裂。能保持足够的可见宽容度。
3.正确的标识色彩链路上,每一个色彩配置文件。并在正确的显示设备上显示。
4.记住ProPhoto RGB不是一个“可显示”的色彩空间。今天没有,今后也不会存在一个ProPhoto RGB显示器。选择ProPhoto RGB,需要记住自己在“盲操作”,有一定的危险性。

你当务之急,是根据 DNG 的逻辑图,清晰地辨析出“色彩”的起始点。这样,就能打通色彩管理的。而不要去拘泥于一些细枝末节的概念。这个你搞出来也没啥意义,你又不写代码,举个例子,人眼均质色差ΔE的计算之繁琐远远超过你的想象,而且目前仍在发展,并没有确定中。但是去搞清楚这些代码的设计目的,这才是你要最需要了解的。

一切的知识,都在这个贴里,经典教程——色彩管理。虽然很多人说读不懂比较难,但知识本身是不骗人的,知识不需要你信任人,他需要你去“真正”理解。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.041
主题: 0
帖子: 31
注册: 2018年10月
rivershaw 发表于 2021-4-28 06:24
我猜ACR的算法可能都是修改影调曲线。

比如,对比度调整,+100、-100各确定出一条曲线,然后按照滑块的具体数值,用这两条曲线中的一条和对比度为0的标准影调曲线做内插,滑块位置是内插的权重。两条曲线内插后的曲线,作为影调曲线应用。

我曾经用这样的算法验证过,初步的结果能够吻合,但是后来因为生病就中断了,没有继续下去。


1、之前提到的基于DNG SDK的流程图,相当于解码软件不进行任何显式调整时的流程(即只是按照dcp文件解码)。在解码软件中由用户进行的显式调整,理论上有两种设计思路,一种是在原有流程的某个环节中执行,一种是在流程中新增一个独立的环节来执行,我觉的这两种设计思路都是合理的。在ACR中,或许有些调整是在固有环节中执行,有些是在新增环节中执行,但要真正弄明白具体细节我感觉相当困难。

2、关于具体控件的算法要搞明白我感觉也同样相当困难,除非是线性调整。但实际上ACR使用了大量的非线性算法,尤其是新版的色调控件普遍采用了图像自适应机制,要搞明白具体算法几乎不可能。ACR中最容易搞明白的控件就是曲线面板到底是在哪个空间中执行的,另外通过您的提示,基于默认影调曲线的逆变换也搞明白了旧版曝光增加也是一种线性算法(相当于y=kx)。总之,对于具体控件的算法,我感觉只能做到从定性的角度有所了解,定量研究相当困难。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 7.428
主题: 47
帖子: 7212
注册: 2007年7月
年内主力装备
★ NIKON Z 8
逐色追影 发表于 2021-4-28 13:15
嗯,我隐隐感觉影调曲线并没有改变。

1、默认影调曲线的初衷在于得到人类视觉能够普遍接受的基于美感的影调效果,虽然它可能并没有什么特色。如果人类的视觉美感没有发生变化,那么默认的影调曲线理论上也就无需改变。

2、毕竟在ACR内部还是新旧两板共存,如果影调曲线变了,那就意味着ACR必须内置两条影调曲线,需要根据新版或旧版分别使用不同的影调曲线。这无疑会增加程序的复杂度。

3、ACR新版的算法已经进行了重大的改变,其中一个显著的变化就是所有色调控件都采用了图像自适应机制。也即是说,即使ACR的各项设置都相同,但随着图像的不同相应的调整曲线的形态也可能不同。如果把这些调整再累加到旧版默认曲线上作为新版默认曲线的话,那就意味着不同的图像会对应不同的默认影调曲线,这显然是不太可能的。

4、我在ACR中统一使用新版控件,但分别套用新旧版的影调曲线,分别得到曝光+1本身的模拟曲线(即排除了影调曲线的影响),如下图所示。从图中可以很明显地看到,旧版曲线的效果平滑流畅,而新版曲线的效果则显得突兀而不自然。 ...


你继续深入研究吧,对我来说,搞清楚RAW解码的原理就行了。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.041
主题: 0
帖子: 31
注册: 2018年10月
rivershaw 发表于 2021-4-28 03:59
没有注意过。

你的意思是影调曲线没变,缺省的调整数值变了,这个也有可能 。


嗯,我隐隐感觉影调曲线并没有改变。

1、默认影调曲线的初衷在于得到人类视觉能够普遍接受的基于美感的影调效果,虽然它可能并没有什么特色。如果人类的视觉美感没有发生变化,那么默认的影调曲线理论上也就无需改变。

2、毕竟在ACR内部还是新旧两板共存,如果影调曲线变了,那就意味着ACR必须内置两条影调曲线,需要根据新版或旧版分别使用不同的影调曲线。这无疑会增加程序的复杂度。

3、ACR新版的算法已经进行了重大的改变,其中一个显著的变化就是所有色调控件都采用了图像自适应机制。也即是说,即使ACR的各项设置都相同,但随着图像的不同相应的调整曲线的形态也可能不同。如果把这些调整再累加到旧版默认曲线上作为新版默认曲线的话,那就意味着不同的图像会对应不同的默认影调曲线,这显然是不太可能的。

4、我在ACR中统一使用新版控件,但分别套用新旧版的影调曲线,分别得到曝光+1本身的模拟曲线(即排除了影调曲线的影响),如下图所示。从图中可以很明显地看到,旧版曲线的效果平滑流畅,而新版曲线的效果则显得突兀而不自然。 本帖最后由 逐色追影 于 2021-4-28 13:22 编辑
登录后可直接显示原图
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 7.428
主题: 47
帖子: 7212
注册: 2007年7月
年内主力装备
★ NIKON Z 8
逐色追影 发表于 2021-4-27 21:46
您在制作新版曲线的时候,有个细节不知考虑到了没有。新版的默认设置(各个调整滑块为0)实际上并不是真正未经任何调整的情况,而是ACR已经在幕后进行了相当于旧版默认设置(黑色5、亮度50、对比度25、中对比度曲线)的调整,这就象BaselineExposure一样。


我猜ACR的算法可能都是修改影调曲线。

比如,对比度调整,+100、-100各确定出一条曲线,然后按照滑块的具体数值,用这两条曲线中的一条和对比度为0的标准影调曲线做内插,滑块位置是内插的权重。两条曲线内插后的曲线,作为影调曲线应用。

我曾经用这样的算法验证过,初步的结果能够吻合,但是后来因为生病就中断了,没有继续下去。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 7.428
主题: 47
帖子: 7212
注册: 2007年7月
年内主力装备
★ NIKON Z 8
逐色追影 发表于 2021-4-27 21:46
真是匠心独运,佩服!

我对比了一下新旧版的默认影调曲线,差别确实较大。新版较旧版亮部提亮了不少,黑点附近有轻微压暗,如附图所示。

您在制作新版曲线的时候,有个细节不知考虑到了没有。新版的默认设置(各个调整滑块为0)实际上并不是真正未经任何调整的情况,而是ACR已经在幕后进行了相当于旧版默认设置(黑色5、亮度50、对比度25、中对比度曲线)的调整,这就象BaselineExposure一样。


没有注意过。

你的意思是影调曲线没变,缺省的调整数值变了,这个也有可能 。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.041
主题: 0
帖子: 31
注册: 2018年10月
rivershaw 发表于 2021-4-27 14:03
完全正确!

我随便找一张有部分过曝的RAW照片,选出0-100亮度L值的像素做平均,再对曲线稍微修饰一下,a、b置零,转换成RGB,精度基本上够用了。


真是匠心独运,佩服!

我对比了一下新旧版的默认影调曲线,差别确实较大。新版较旧版亮部提亮了不少,黑点附近有轻微压暗,如附图所示。

您在制作新版曲线的时候,有个细节不知考虑到了没有。新版的默认设置(各个调整滑块为0)实际上并不是真正未经任何调整的情况,而是ACR已经在幕后进行了相当于旧版默认设置(黑色5、亮度50、对比度25、中对比度曲线)的调整,这就象BaselineExposure一样。 本帖最后由 逐色追影 于 2021-4-27 21:50 编辑
登录后可直接显示原图
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 7.428
主题: 47
帖子: 7212
注册: 2007年7月
年内主力装备
★ NIKON Z 8
469717806 发表于 2021-4-27 13:53
老师,用你介绍的方法拍布纹纸测高光最大档位的确好用,另外再问问为啥在camera raw里面显示没有过曝但是白色的羽毛上始终还是拉不回纹理尤其是高光的白色更为明显。


可能原因:

1、的确是过曝了,只是因为面积小,看不出来。

2、并没有过曝,只是白色的羽毛原本就没有纹理。比如,如果用正面光,羽毛就不容易看出纹理,用侧光有影子就容易出现纹理。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 7.428
主题: 47
帖子: 7212
注册: 2007年7月
年内主力装备
★ NIKON Z 8
逐色追影 发表于 2021-4-27 13:45
根据您的提示,我理解了一下,您看逻辑上是不是下面的步骤:

1、首先需要准备一个包含从黑到白全部亮度的RAW图像(比如灰梯尺之类),同时准备一个具有线性影调曲线的Adobe Standard.dcp。

2、在ACR中分别用线性Adobe Standard.dcp和正常Adobe Standard.dcp解码图像(需要将ACR的各项设置全部归零,也即在ACR中不作任何调整)。

3、分别计算上述两种配置文件解码后所有亮度的线性prophotoRGB值。

4、最后以线性Adobe Standard.dcp的值作为影调曲线的输入值,以正常Adobe Standard.dcp的值作为影调曲线的输出值。


完全正确!

我随便找一张有部分过曝的RAW照片,选出0-100亮度L值的像素做平均,再对曲线稍微修饰一下,a、b置零,转换成RGB,精度基本上够用了。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 3.266
主题: 11
帖子: 2595
注册: 2020年7月
rivershaw 发表于 2021-4-27 03:09
编辑Adobe Standard.dcp,添加一条线性的影调曲线,解码RAW,计算出所有的亮度,然后与正常的比较。

老师,用你介绍的方法拍布纹纸测高光最大档位的确好用,另外再问问为啥在camera raw里面显示没有过曝但是白色的羽毛上始终还是拉不回纹理尤其是高光的白色更为明显。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.041
主题: 0
帖子: 31
注册: 2018年10月
rivershaw 发表于 2021-4-27 03:09
编辑Adobe Standard.dcp,添加一条线性的影调曲线,解码RAW,计算出所有的亮度,然后与正常的比较。


根据您的提示,我理解了一下,您看逻辑上是不是下面的步骤:

1、首先需要准备一个包含从黑到白全部亮度的RAW图像(比如灰梯尺之类),同时准备一个具有线性影调曲线的Adobe Standard.dcp。

2、在ACR中分别用线性Adobe Standard.dcp和正常Adobe Standard.dcp解码图像(需要将ACR的各项设置全部归零,也即在ACR中不作任何调整)。

3、分别计算上述两种配置文件解码后所有亮度的线性prophotoRGB值。

4、最后以线性Adobe Standard.dcp的值作为影调曲线的输入值,以正常Adobe Standard.dcp的值作为影调曲线的输出值。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 7.428
主题: 47
帖子: 7212
注册: 2007年7月
年内主力装备
★ NIKON Z 8
逐色追影 发表于 2021-4-26 21:46
嗯。非常好奇您是如何实测的,能否大概说一下。


编辑Adobe Standard.dcp,添加一条线性的影调曲线,解码RAW,计算出所有的亮度,然后与正常的比较。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.041
主题: 0
帖子: 31
注册: 2018年10月
rivershaw 发表于 2021-4-26 20:42
两个旧版差别不是太大,好像有一个就是用DNG_Profile_Editor弄出来的,时间太长实在是记不清楚了。

新版是不久前实测的,大约去年底、今年初的样子。


嗯。非常好奇您是如何实测的,能否大概说一下。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 7.428
主题: 47
帖子: 7212
注册: 2007年7月
年内主力装备
★ NIKON Z 8
逐色追影 发表于 2021-4-26 20:19
@rivershaw 收到,太感谢您了

发现里边有两个旧版,请问它们有什么区别?

我前几天是照着DNGProfile_Editor中的ACR默认曲线临摹了一个曲线预设,精度可能不高。请问DNGProfile_Editor中的ACR默认曲线对应于您提供的三个版本中的哪个呢?


两个旧版差别不是太大,好像有一个就是用DNG_Profile_Editor弄出来的,时间太长实在是记不清楚了。

新版是不久前实测的,大约去年底、今年初的样子。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.041
主题: 0
帖子: 31
注册: 2018年10月
@rivershaw 收到,太感谢您了

发现里边有两个旧版,请问它们有什么区别?

我前几天是照着DNGProfile_Editor中的ACR默认曲线临摹了一个曲线预设,精度可能不高。请问DNGProfile_Editor中的ACR默认曲线对应于您提供的三个版本中的哪个呢?
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 7.428
主题: 47
帖子: 7212
注册: 2007年7月
年内主力装备
★ NIKON Z 8
ipiger 发表于 2021-4-26 15:56
楼主研究的很深入,佩服。
看你的帖子,爬楼爬了一两个小时,基本概念已经有了。

对于拍照片来说,用RAW可以无视白平衡,后期白平衡无损调整,因为最关键的是RAW存储的是线性数据。
苹果的ProRAW,就是解马赛克后的线性数据, 所以白平衡也可以无损调整。

最近我玩视频玩的比较多,视频用RAW负担会非常重,所以一般是拍Log视频。
Log视频存储的不是线性数据,应该白平衡调整没那么自由了吧?
RAW视频相比Log视频,是不是最大的优势就是白平衡调整这一块?
另外RAW视频大部分都是12bit的,Log视频,高端机器是10bit数据,低端的是8bit。


log就相当于RAW解码成TIFF,把影调曲线去掉,Gamma换成log函数,再按视频编码格式打包。

https://forum.xitek.com/thread-1922274-1-1.html
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.724
主题: 15
帖子: 573
注册: 2014年10月
楼主研究的很深入,佩服。
看你的帖子,爬楼爬了一两个小时,基本概念已经有了。

对于拍照片来说,用RAW可以无视白平衡,后期白平衡无损调整,因为最关键的是RAW存储的是线性数据。
苹果的ProRAW,就是解马赛克后的线性数据, 所以白平衡也可以无损调整。

最近我玩视频玩的比较多,视频用RAW负担会非常重,所以一般是拍Log视频。
Log视频存储的不是线性数据,应该白平衡调整没那么自由了吧?
RAW视频相比Log视频,是不是最大的优势就是白平衡调整这一块?
另外RAW视频大部分都是12bit的,Log视频,高端机器是10bit数据,低端的是8bit。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.041
主题: 0
帖子: 31
注册: 2018年10月
rivershaw 发表于 2021-4-26 13:42
实测的结果,你给个邮箱我发给你。


谢谢。[email]1073214025@qq.com[/email]
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 7.428
主题: 47
帖子: 7212
注册: 2007年7月
年内主力装备
★ NIKON Z 8
逐色追影 发表于 2021-4-26 12:51
@rivershaw 关于新旧版ACR使用的默认影调曲线不同:
1、请问您是从哪获得这一资讯的,可否提供一下出处。

2、您有没有新旧版ACR默认曲线的对比图,如果有相应的曲线数据的话就更好了。如果有的话,也烦请提供一下。

谢谢!


实测的结果,你给个邮箱我发给你。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.041
主题: 0
帖子: 31
注册: 2018年10月
rivershaw 发表于 2021-4-22 04:56
2、新、旧ACR版本使用的影调曲线不同,影调曲线不同就无法把RGB真正还原到线性空间。

@rivershaw 关于新旧版ACR使用的默认影调曲线不同:
1、请问您是从哪获得这一资讯的,可否提供一下出处。

2、您有没有新旧版ACR默认曲线的对比图,如果有相应的曲线数据的话就更好了。如果有的话,也烦请提供一下。

谢谢!
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 7.428
主题: 47
帖子: 7212
注册: 2007年7月
年内主力装备
★ NIKON Z 8
逐色追影 发表于 2021-4-24 20:37
@rivershaw  您太客气了!您渊博的学识令我折服,您诲人不倦的精神令我感动,能够向您叨叨请教倍感荣幸。关于MATLAB,教程中也有一个基于MATLAB平台的处理流程图,和前面的流程是一样的,只不过没有详细展开说明。现把图附上,供您参考。


(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 2.644
主题: 25
帖子: 2502
注册: 2016年3月
技术贴,必须得顶起
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.041
主题: 0
帖子: 31
注册: 2018年10月
rivershaw 发表于 2021-4-24 19:10
抱歉,我前面说错了!

我以前是把曝光补偿放到白平衡之前的,刚刚看了一下代码,现在改成与你的图一致了,是应该放在HSV与LookTable之间。好像DNG协议有个新版本建议这样做。人老了记性不好,实在抱歉。

我没有用过DNG SDK,因为用的是MATLAB,不是C++。我都是参考DNG的协议说明,没读过DNG SDK。

你的图与我的流程基本一致,区别是我没做镜头校正、降噪,在Demosaic之后增加了高光扩展算法。


@rivershaw  您太客气了!您渊博的学识令我折服,您诲人不倦的精神令我感动,能够向您叨叨请教倍感荣幸。关于MATLAB,教程中也有一个基于MATLAB平台的处理流程图,和前面的流程是一样的,只不过没有详细展开说明。现把图附上,供您参考。

登录后可直接显示原图
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 7.428
主题: 47
帖子: 7212
注册: 2007年7月
年内主力装备
★ NIKON Z 8
逐色追影 发表于 2021-4-24 18:15
我上面的想法是来源于CVPR2016上一个老外教程中的插图,基于DNG SDK得出的DNG处理流程,如附图所示。
我觉的,图中第七步“Exposure Curve Application”应该对应于解码时的曝光补偿(逻辑上也就是ACR中的曝光滑块),BaselineExposureOffset标签和BaselineExposure标签本质上也是对曝光补偿的一种调整,因此感觉三者应该在图中第七步合并执行。

您对DNG SDK应该比较熟悉,可以考证一下老外提供的这个流程图是否准确,以及我上面的理解是否正确。


抱歉,我前面说错了!

我以前是把曝光补偿放到白平衡之前的,刚刚看了一下代码,现在改成与你的图一致了,是应该放在HSV与LookTable之间。好像DNG协议有个新版本建议这样做。人老了记性不好,实在抱歉。

我没有用过DNG SDK,因为用的是MATLAB,不是C++。我都是参考DNG的协议说明,没读过DNG SDK。

你的图与我的流程基本一致,区别是我没做镜头校正、降噪,在Demosaic之后增加了高光扩展算法。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.041
主题: 0
帖子: 31
注册: 2018年10月
rivershaw 发表于 2021-4-24 17:03
1、我不知道ACR是在哪个环节做的,我是放在RAW的归一化之后,白平衡之前,在近可能早的地方。肯定要在HSV校准之前,因为HSV是对RGB限幅的,RGB限幅后再调整曝光就不对了。这还跟采用的计算方法有关,我采用的是浮点算法,如果采用定点算法可能曝光补偿的位置不同。

2、对,协议规定是合并处理。我是与解码时调整的曝光补偿都一起做。


我上面的想法是来源于CVPR2016上一个老外教程中的插图,基于DNG SDK得出的DNG处理流程,如附图所示。
我觉的,图中第七步“Exposure Curve Application”应该对应于解码时的曝光补偿(逻辑上也就是ACR中的曝光滑块),BaselineExposureOffset标签和BaselineExposure标签本质上也是对曝光补偿的一种调整,因此感觉三者应该在图中第七步合并执行。

您对DNG SDK应该比较熟悉,可以考证一下老外提供的这个流程图是否准确,以及我上面的理解是否正确。
登录后可直接显示原图
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 7.428
主题: 47
帖子: 7212
注册: 2007年7月
年内主力装备
★ NIKON Z 8
逐色追影 发表于 2021-4-24 16:27
谢谢!

1、ACR解码时,针对BaselineExposure的内部自动补偿发生在RAW解码流程中的哪个环节呢?感觉应该是在转换到proPhotoRGB并通过HSV查找表进一步校准之后,应用ProfileLookTable标签之前,不知是不是这样?

2、BaselineExposureOffset标签和BaselineExposure标签是不是在同一个环节合并执行?或者是二者分别在不同的环节单独执行?


1、我不知道ACR是在哪个环节做的,我是放在RAW的归一化之后,白平衡之前,在近可能早的地方。肯定要在HSV校准之前,因为HSV是对RGB限幅的,RGB限幅后再调整曝光就不对了。这还跟采用的计算方法有关,我采用的是浮点算法,如果采用定点算法可能曝光补偿的位置不同。

2、对,协议规定是合并处理。我是与解码时调整的曝光补偿都一起做。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 0.041
主题: 0
帖子: 31
注册: 2018年10月
rivershaw 发表于 2021-4-24 02:55
完全正确!BaselineExposure是相机内部的曝光调整,ACR解码时内部自动补偿,用户不可控。


谢谢!

1、ACR解码时,针对BaselineExposure的内部自动补偿发生在RAW解码流程中的哪个环节呢?感觉应该是在转换到proPhotoRGB并通过HSV查找表进一步校准之后,应用ProfileLookTable标签之前,不知是不是这样?

2、BaselineExposureOffset标签和BaselineExposure标签是不是在同一个环节合并执行?或者是二者分别在不同的环节单独执行?
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
泡菜
泡网分: 7.428
主题: 47
帖子: 7212
注册: 2007年7月
年内主力装备
★ NIKON Z 8
逐色追影 发表于 2021-4-23 20:13
OK,这样理解起来就很顺畅了,非常感谢。再请教一下您关于BaselineExposure的一些疑惑:

1、BaselineExposure是相机前期拍摄时内置曝光补偿的一个指标,而且您也提到需要在RAW解码时回调到正常曝光位置。那么BaselineExposure的值究竟指的是相机前期拍摄时内置的曝光补偿呢,还是指RAW解码时的回调量呢?因为这两个的正负应该正好相反。

2、BaselineExposure应该就是相机内部向左曝光或向右曝光的反应吧?如果BaselineExposure的值指的是RAW解码时的回调量,那么如果BaselineExposure值为正,相机内部就是负曝光补偿(即向左曝光);反之如果BaselineExposure值为负,相机内部就是正曝光补偿(即向右曝光)。

3、ACR解码时,基于BaselineExposure的回调量并没有体现在曝光滑块上,那么它体现在什么地方?难道是在底层自动进行了回调而且用户不可控?


完全正确!BaselineExposure是相机内部的曝光调整,ACR解码时内部自动补偿,用户不可控。
(0)
(0)
只看该作者
不看该作者
加入黑名单
举报
返回顶部
个人图文集
个人作品集
回复主题: RAW详解
功能受限
游客无回复权限,请登录后再试