在数字图像处理领域中,色度抽样是指在表示图像时使用较亮度信息为低的分辨率来表示色彩(色度)信息。当对模拟分量视频或者yuv信号进行数字抽样时,一般会用到色度抽样。
由于人眼对色度的敏感度不及对亮度的敏感度,图像的色度分量不需要有和亮度分量相同的清晰度,所以许多视频系统在色差通道上进行较低(相对亮度通道)清晰度(例如,抽样频率)的抽样。这样在不明显降低画面质量的同时降低了视频信号的总带宽。因抽样而丢失的色度值用内插值,或者前一色度值来替代。
视频系统的抽样率通常用一个三分比值表示。第一个值是亮度(y)分量样本的数量,后两个值是两个色彩(“色度”)分量样本的数量:u/cb分量在前,v/cr分量在后。在比较图像质量时,这三个值之间的比值才是重要的,所以4:4:4可以简化为1:1:1;但是习惯上亮度样本的数量值总为4,其他两个值依此类推。
4:4:4
三个通道的抽样率相同,因此在生成的图像里,每个象素的三个分量信息完整(每个分量通常8比特或10比特),经过8比特量化之后,未经压缩的每个象素3个字节。
映射:
码流
y0 u0 v0 y1 u1 v1 y2 u2 v2 y3 u3 v3
将被映射为下面的四个像素:
[y0 u0 v0] [y1 u1 v1] [y2 u2 v2] [y3 u3 v3]
这是最好的色度抽样比率(实际上它完整的表示了原先的色度信息),作为一种中间格式,它被用在高端的底片扫描仪和影片后期处理上。需要注意的是,有时候4:4:4(就像在hdcam sr的某些模式中那样)也表示在rgb色度空间中,每个分量都采用相同的抽样频率。
4:2:2
每个色差通道的抽样率是亮度通道的一半,所以水平方向的色度抽样率只是4:4:4的一半。对非压缩的8比特量化的视频来说,每个由两个水平方向相邻的像素组成的宏像素需要占用4字节内存。
映射:
码流
y0 u0 y1 v1 y2 u2 y3 v3
将被映射为下面的四个像素:
[y0 u0 v1] [y1 u0 v1] [y2 u2 v3] [y3 u2 v3]
4:2:2仍旧是质量相当高的色度抽样方法,大多数高端数字视频格式采用这一比率,如:
数码 betacam
dvcpro50
d-9
ccir 601 / 串行数字接口(serial digital interface) / d1
4:1:1
4:1:1的色度抽样,是在水平方向上对色度进行4:1抽样。对于低端用户和消费类产品这仍然是可以接受的。对非压缩的8比特量化的视频来说,每个由4个水平方向相邻的像素组成的宏像素需要占用6字节内存。
映射:
码流
y0 u0 y1 y2 v2 y3
将被映射为下面的四个像素:
[y0 u0 v2] [y1 u0 v2] [y2 u0 v2] [y3 u0 v2]
使用4:1:1色度抽样的包括:
dvcpro
ntsc dv and dvcam
d-7
4:2:0
4:2:0并不意味着只有y,cb而没有cr分量。它指得是对每行扫描线来说,只有一种色度分量以2:1的抽样率存储。相邻的扫描行存储不同的色度分量,也就是说,如果一行是4:2:0的话,下一行就是4:0:2,再下一行是4:2:0...以此类推。对每个色度分量来说,水平方向和竖直方向的抽样率都是2:1,所以可以说色度的抽样率是4:1。pal制式和secam制式的色彩系统特别适合于用这种方式来存储。绝大多数视频编解码器都采用这种格式作为标准的输入格式。对非压缩的8比特量化的视频来说,每个由2x2个2行2列相邻的像素组成的宏像素需要占用6字节内存。
映射:
码流
yo0 uo0 yo1 yo2 uo2 yo3
ye0 ve0 ye1 ye2 ve2 ye3
将被映射为下面的两行各四个像素:
[yo0 uo0 ve0] [yo1 uo0 ve0] [yo2 uo2 ve2] [yo3 uo2 ve2]
[ye0 uo0 ve0] [ye1 uo0 ve0] [ye2 uo2 ve2] [ye3 uo2 ve2]
使用这种方法的质量很接近于 4:1:1, 通常应用于下面的格式:
dvd 和其他 mpeg-2 的 main profile 的实现
pal dv 和 dvcam
常见的 jpeg格式和 mjpeg 格式
4:1:0
这种格式虽然是存在的( 也确实有些编解码器支持这种格式),但是并没有得到广泛的应用,因为它在色度方面的清晰度比传统的vhs录像带还要差。这种方法对水平方向进行4:1的色度抽样,对竖直方向进行2:1的色度抽样。比起4:4:4,它的色度数据量仅仅是1/8大小。对非压缩的8比特量化的视频来说,每个由4x2个2行4列相邻的像素组成的宏像素需要占用10字节内存。
映射:
码流
yo0 uo0 yo1 yo2 yo3
ye0 ve0 ye1 ye2 ye3
将被映射为下面的两行各四个像素:
[yo0 uo0 ve0] [yo1 uo0 ve0] [yo2 uo0 ve0] [yo3 uo0 ve0]
[ye0 uo0 ve0] [ye1 uo0 ve0] [ye2 uo0 ve0] [ye3 uo0 ve0] |
|
|