信号范围
沿袭自模拟信号的历史,Y’CbCr仍然继承了“动态余量”(headroom)的概念。模拟信号动态余量的存在是为了让这些信号更稳健,减少可见的图像伪影。
在电视直播中,摄像机信号可能会(暂时性地)超出“常规”范围,比如当摄像机摇移拍摄到现场灯光的时候。当信号超过模拟电路安全范围时,模拟分量就会产生失真或发生“振铃”效应,同时产生信号裁切。这样的失真就会导致各种各样肉眼可见的图像问题。为避免这些问题,模拟视频系统技术参数定义了一些信号动态余量。动态余量为视频系统增加了“非关键”信号范围——而动态余量并不会被用于携带可视信号。*
(*在模拟信号中,类似于亮部而规定的动态余量,也有出于不同原因为暗部而规定的动态余量“toe room”,但动态余量的概念和结果是相同的,无论是亮部还是暗部我们都使用“headroom”这个术语表示动态余量。)
有了动态余量的规范,模拟信号的裁切问题就迎刃而解了:摄影机可以偶尔过度拍摄让信号进入动态余量的范围,而系统处理这些信号并不会造成图像失真。虽然那些信号会超过电视可以显示出来的最高亮度,但电视仍然可以安全地在动态余量当中显示出这类信号的白色峰值——并不会增加图像伪影的问题。
SDI信号的Y’CbCr编码仍然在以“不会被使用到的编码值”的形式应用动态余量,比如10bit的SDI信号。10bit信息可以编码为1024个不同状态(2^10 = 1024),通常以编号0到1023的编码码值进行使用。
- Y’通道编码(亮度)的“常规”值范围规定在64到940之间。那个范围被称为“合法范围”。还有其他的叫法,包括“视频范围”(video range)、“SMPTE范围”(SMPTE range)或“狭窄范围”(narrow range)。
- 合法范围之外就是动态余量。**
(**在SDI信号Y’CbCr编码中,编码值0到3以及1020到1023不可用于表示图像信息,甚至余量中也不可使用。这些编码值专用于信号的定时和同步。在基于Y’CbCr的文件编解码器中,整个0到1023的范围都可用于“全范围”应用。)
在遵循“合法范围”标准的同时,码值64代表着显示设备可以产生的最黑的黑,而码值940代表最亮的白。因此,所有低于64的码值所产生的黑都与码值64的黑相同,而所有高于940的码值所产生的白也与码值940的白相同。
但是,在模拟动态余量范围内的信号可以被“恢复”,通过简单的gain控制(通常在电视和模拟视频设备上标为“对比度”)就能实现,而动态余量中的数字码值也存在其中,它们可能会被实际图像内容(错误)应用。
这个部分可能比较模棱两可,我们稍后继续说这个问题。但在那之前,先来聊一聊应用查找表和在“合法范围”Y’CbCr与RGB之间来回转换的问题。
出处:Patrick Renner / Pomfort
翻译:盖雅翻译小组
系列阅读