我很难理解如何利用例如色度子采样来计算数据速率。一个Y'UV图像:

我有以下示例进行计算:

352*288
频率:25 fps

对于(4:4:4),示例计算如下:

(352px * 288px) * 3 color channels * 25 fps * 8 bit = 60 825 600 bit/s

到目前为止一切顺利。

但现在出现了(4:2:0):

(352px*288px) * 1.5 color channels * 25 * 8 = 30 412 800 bit/s

现在,尝试将此示例转移到例如(4:1:1)我意识到我不确定我是否正确地理解了如何计算1.5个颜色通道的比率。

我的第一个猜测是(4:2:0):
2/4*3=1.5 color channels
对于(4:1:1),我将计算颜色通道为:

1/4*3=0.75 color channels

但是我不确定这是否是正确的方法。
作为替代,我在思考以下行:

颜色通道(4:1:1):1 Y' + 1/4 UV = 1.25 color channels

现在正确地执行此操作的正确方法是吗?

评论

@jattr您如何计算颜色通道的?我很困惑,您在哪里获得了颜色通道的(4:2:0)和1/4(4:1:1)的值2/4?

#1 楼

这里是了解差异的参考。我还添加了基本图:



您意识到的是4:1:1具有完整的垂直分辨率,但具有水平分辨率的1/4,其中4:2:0具有一半的垂直分辨率和一半的水平分辨率。

但是,总体而言,4:2:0和4:1:1的采样数相同,因此位也相同率。

评论


$ \ begingroup $
4:2:0图片是错误的。色度值已放入有效值之间。如果将它们放在一行(如此处所示的一半行)上,那将是正确的。
$ \ endgroup $
– Nikos
17年7月7日在2:48

$ \ begingroup $
这是另一篇包含有用图像的文章:Provideocoalition.com/color_subsampling_or_what_is_444_or_422 | archive.org链接
$ \ endgroup $
– Galdin
20 Dec 11'在14:02

#2 楼

4:4:4方案令人困惑。例如Yuv420视频。

第一个数字指定“ Y”亮度值的数量-“ 4”表示全分辨率
第二个数字表示U和V的水平间距(色度) values-2表示每个交替的水平像素都有一个颜色值。
第3位数字表示值之间的垂直步进,0表示每行具有Y,U和V值的行均不丢失。

在4:1:1的垂直和水平方向上,每个第4个像素只有一个U和V值。

请参见http://blogs.adobe.com/VideoRoad/2010/06/ color_subsampling_or_what_is_4.html

#3 楼

我在wolfcrow-blog中找到了很好的解释


使用色度采样数来计算数据大小

我个人计算出丢失了多少信息,如下所示:

最大可能的质量是4 + 4 + 4 = 12

全彩色图像是4:4:4 = 4 + 4 + 4 = 12,或100%最高质量。由此可以得出其余部分:


4:2:2 = 4 + 2 + 2 = 8,即4:4:4(12)的66.7%
4:2:0 = 4 + 2 + 0 = 6,占4:4:4(12)的50%
4:1:1 = 4 + 1 + 1 = 6,即50 4:4:4(12)的百分比
3:1:1 = 3 + 1 + 1 = 5,即4:4:4(12)的42%