请选择 进入手机版 | 继续访问电脑版

ChinaFFmpeg

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 7108|回复: 1

[Linux] 如何理解yuv420

[复制链接]
发表于 2014-6-28 13:03:16 | 显示全部楼层 |阅读模式
4)YUV4:2:0
4:2:0并不意味着只有Y,Cb而没有Cr分量。它指得是对每行扫描线来说,只有一种色度分量以2:1的抽样率存储。相邻的扫描行存储不同的色度分量,也就是说,如果一行是4:2:0的话,下一行就是4:0:2,再下一行是4:2:0...以此类推。对每个色度分量来说,水平方向和竖直方向的抽样率都是2:1,所以可以说色度的抽样率是4:1。对非压缩的8比特量化的视频来说,每个由2x2个2行2列相邻的像素组成的宏像素需要占用6字节内存。
下面八个像素为:[Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]
[Y5 U5 V5] [Y6 U6 V6] [Y7U7 V7] [Y8 U8 V8]
存放的码流为:Y0 U0 Y1 Y2 U2 Y3
Y5 V5 Y6 Y7 V7 Y8
映射出的像素点为:[Y0 U0 V5] [Y1 U0 V5] [Y2 U2 V7] [Y3 U2 V7]
[Y5 U0 V5] [Y6 U0 V5] [Y7U2 V7] [Y8 U2 V7]

以上的结果是怎么算出来的?
回复

使用道具 举报

发表于 2014-7-8 09:16:03 | 显示全部楼层
我是这么理解,4:2:0表示一个横向上Y分量、U分量和V分量的比例。相应的隔行取分量(各行取的分量是类型是一致的),如第一行取了Y和U分量,那么第2行就取Y和V分量(因为第2横行和第一横行是隔行,第一行去了U分量,第2行就取另一个)。同样的对应垂直方向,若第一列取了Y和U分量或Y和V分量,那么第2列就不取(他是第一列的临行),第三列接着取。映射像素点的时候按照一个2x2的矩阵组合进行映射。

不知道这么说可不可以。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|Archiver|ChinaFFmpeg

GMT+8, 2024-3-29 20:28 , Processed in 0.048330 second(s), 14 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表