静态HDR和动态HDR有什么区别?

时间:2019-10-26 00:05:45

标签: video-processing hdr

HDR是高动态范围,广泛用于视频设备中,以提供更好的观看体验。 静态HDR和动态HDR有什么区别?

1 个答案:

答案 0 :(得分:1)

动态HDR可以在各种 显示。

以下演示文稿:SMPTE ST 2094 and Dynamic Metadata总结了动态元数据的主题:

  

用于色彩量转换(DMCVT)的动态元数据
  -可以在各种显示器上保留HDR媒体中的创意意图
  -携带文件,视频流,打包媒体
  -在SMPTE ST 2094中标准化

这一切都始于数字化的量化
假设您只需要使用1000个可能的值来近似介于0到1,000,000之间的数字即可。
您的第一个选择是使用统一量化:
范围[0,999]中的值映射为0,范围[1000,1999]中的值映射为1,[2000,2999]中的值映射为2,依此类推...

当您需要还原原始数据时,您无法准确地还原它,因此您需要以最小的平均误差来获取值。
0映射到500(到[0,999]范围的中心)。
1映射到1500(到[1000,1999]范围的中心)。
还原分类后的数据时,您正在丢失大量信息。
您松散的信息称为“量化错误”。

常见的HDR视频对每个颜色分量应用10位(Y分量为10位,U分量为10位,V分量为10位)。或在RGB色彩空间中,红色代表10位,绿色代表10位,蓝色代表10位。
10位可以存储1024个可能的值(范围为[0,1023]的值)。

假设您有一台非常好的显示器,可以显示1,000,001个不同的亮度级别(0最暗,1000000最亮)。
现在您需要将1,000,001个级别量化为1024个值。

由于人类视觉系统对亮度水平的响应不是线性的,因此上述均匀量化是次优的。

应用伽马函数后,将量化为10位。
伽玛函数的示例:将每个值除以1000000(新范围是[0,1]),计算每个值的平方根,然后将结果乘以1000000。
在伽玛函数之后应用量化。
结果是:在较暗的值和较宽的较亮值上保持更高的准确性。
监视器执行相反的操作(反量化和反伽马)。
应用伽马函数后执行量化会为人类视觉系统带来更好的质量。

实际上,平方根并不是最好的伽玛函数。
标准的 HDR静态伽玛函数共有三种类型:

我们可以做得更好吗?
如果我们可以为每个视频帧选择最佳的“伽玛函数”怎么办?

动态元数据的示例:
考虑图像中所有亮度级别都在[500000,501000]范围内的情况:
现在我们可以将所有级别映射到10位,而无需进行任何量化。
我们要做的就是在图像元数据中发送500000作为最低级别,并发送501000作为最低级别。
代替量化,我们可以从每个值中减去500000。
接收图像,读取元数据并知道向每个值添加500000的监视器-这样就可以进行完美的数据重建(没有量化错误)。
假设下一张图片的级别在400000到401000之间,因此我们需要(动态)调整元数据。

  • DMCVT-用于色彩量转换的动态元数据
    DMCVT的真实数学比上面的示例复杂得多(并且远远超过量化),但是它基于相同的原理-根据场景和显示动态调整元数据,与静态伽玛(或静态元数据)。

如果您仍在阅读...


我真的不确定DMCVT的主要优势是减少量化误差。
(给出一个减少量化误差的例子就更简单了)。

减少转换错误:
从输入的数字表示形式(例如BT.2100到显示器的最佳像素值(如像素的RGB电压)的准确转换需要“大量数学运算”。
转换过程称为色彩量转换
显示用数学上的近似值代替了繁重的计算(使用查找表和内插法[我想])。

DMCVT的另一个优点是将“大量数学”从显示转移到视频后期制作过程。
视频后期制作阶段的计算资源要比显示资源高几个数量级。
在后期制作阶段,计算机可以计算元数据,从而帮助显示器执行更准确的颜色体积转换(使用较少的计算资源),并显着减少转换错误。


presentation中的示例:
Dynamic Tone Mapping


为什么“ HDR静态伽玛函数”称为静态?
与DMCVT相反,静态伽玛函数固定在整个影片中,或者固定(预定义)在整个“系统”中。
例如:大多数PC系统(PC和显示器)正在使用sRGB色彩空间(而非HDR)。
sRGB标准使用以下固定的伽玛功能:
sRGB gamma function
PC系统和显示器都事先知道它们正在sRGB标准下工作,并且知道这是所使用的伽玛功能(不添加任何元数据,也没有添加一个字节的元数据来将视频数据标记为sRGB)。 。

相关问题