图像基础01 丨 10bit 视频是什么?相比起 8bit 视频有什么优势?

转载声明


本文转载自知乎用户沈万马,仅做个人学习交流使用,侵删。

原文链接

正文内容


简单说,10bit视频是指一种视频编码的特征,意思是每个颜色通道用10个bit来表达。这样,每个颜色通道的色彩级数从8bit的256级提高到了1024级,就可以更细致地表达颜色。

实际体验上,更细致的颜色分级意味着渐变色更细腻。在8bit编码下,有些时候一些渐变色块由于色彩变化范围很小而面积很大,容易导致一端到另一端总共只出现了很少的几种颜色,这就使得画面看上去不是渐变色带而是几块颜色,这种现象叫做banding。10bit由于颜色级数是8bit的4倍,色块就不容易出现,同时由于相邻颜色区别更小,人眼也难以看出色块之间的界限。

图像基础01 丨 10bit 视频是什么?相比起 8bit 视频有什么优势?_第1张图片
从wiki偷来的banding效果图,左边是banding,中间是dithering,右边是高bit数下的效果

虽然直观上感觉10bit比8bit多占用25%的数据量,但实际上在实践中10bit往往能带来更高的压缩率。这是由于10bit更能准确地描述颜色,提升了信噪比。例如为了解决banding,8bit编码技术可以通过一种称为dither(抖动)的方法,也就是在色块边缘混入细碎的相邻色的色点,来模糊色块边缘。但是由于这些色点的存在大幅提高了画面的复杂度,产生了许多冗余信息量。由于8bit必须采用这些技术来提高视觉观感,所以8bit编码往往要引入大量冗余信息,而10bit不需要dither也能实现一样的画面感受,所以往往10bit编码出来的视频大小小于同等质量的8bit视频。

一张关于各种dithering算法的图

有人可能关心10bit编码并没有意义,因为最终用户的屏幕可能只有6bit或者8bit。这不会使10bit变得没有意义,因为最终在输出阶段画面会经由输出硬件或渲染软件抖动。这样就能够在6bit/8bit的设备上实现类似10bit的输出效果。

当然10bit不是没有缺点。首先,计算机系统处理数据的单位往往是byte,也就是8bit。使用10bit,可能会浪费一部分硬件数据传输和处理能力,使得处理性能低于8bit编码。这也是为什么一直以来使用8bit的原因。同时,该技术较新,很多硬件和软件尚没有提供较好的支持,使得应用起来往往存在播放困难、消耗太多资源等等问题。

你可能感兴趣的:(图像基础01 丨 10bit 视频是什么?相比起 8bit 视频有什么优势?)