音视频编解码之yuv详解

这段时间看了yuv的一些相关知识,怕忘记了,copy了一些博客的关键知识点,记录下来,如需更全面了解,请点击后面的参考链接。

1.yuv图解

图倒是我做的,希望有个框架

2.yuv由来

yuv的出现是为了解决黑白电视和彩色电视兼容的问题,当时黑白电视只有Y(Luma,Luminance)视频,也就是灰阶值。到了彩色电视规格的制定,是以YUV/YIQ的格式来处理彩色电视图像,把UV视作表示彩度的C(Chrominance或Chroma),如果忽略C信号,那么剩下的Y(Luma)信号就跟之前的黑白电视频号相同,这样一来便解决彩色电视机与黑白电视机的兼容问题。Y'UV最大的优点在于只需占用极少的带宽。

 

3.yuv概念

YUV是一种颜色编码方法,是指亮度参量和色度参量分开表示的像素格式,Y'UV,YUV,YCbCrYPbPr等专有名词都可以称为YUV;其中Y指的是明亮度,也就是灰度值,亮度分量,亮度信号;U表示色度,偏蓝分量,cb;V表示浓度,偏红分量;cb,cr中c是color,b是blue,r是red的意思。

 

4.yuv采样

yuv的采样是uv的采样率比y低,但又不会降低视觉质量,因为人眼对于亮度会敏感度较高,对于彩色信息的敏感度较低,色度信号并不是用全分辨率存储的,所以没必要全采样。

目前有YUV444,YUV422,YUV420,YUV411等采样方式。

YUV444:表示每4点Y采样,就有4点Cb和4点Cr,每个象素都有与之对应的色度和亮度采样信息;

YUV422:表示每4点Y采样,就有2点Cb和2点Cr,当4:2:2信号被解码的时候,“缺失”的色度采样,通常由一定的内插补点算法通过它两侧的色度信息运算补充;

YUV420:按照字面上理解,4:2:0应该是每4点Y采样,就有2点Cb和0点Cr,但事实上完全不是 这样。事实上,4:2:0的意思是,色度采样在每条横向扫描线上只有亮度采样的一半,扫描线的条数上,也只有亮度的一半!换句话说,无论是横向还是纵向, 色度信号的分辨率都只有亮度信号的一半。举个例子,如果整张画面的尺寸是720*480,那么亮度信号是720*480,色度信号只有360*240。在 4:2:0中,“缺失”的色度采样不单单要由左右相邻的采样通过内插补点计算补充,整行的色度采样也要通过它上下两行的色度采样通过内插补点运算获得

YUV411:表示每4点Y采样,就有1点Cb和1点Cr,但不是主流的采样方式,这里不祥解;

 

5.yuv存储格式

YUVY 格式 (属于YUV422):为YUV422采样的存储格式中的一种,相邻的两个Y共用其相邻的两个Cb、Cr,分析,对于像素点Y'00、Y'01 而言,其Cb、Cr的值均为 Cb00、Cr00,其他的像素点的YUV取值依次类推。

UYVY 格式 (属于YUV422):也是YUV422采样的存储格式中的一种,只不过与YUYV不同的是UV的排列顺序不一样而已,还原其每个像素点的YUV值的方法与上面一样。

YUV422P格式(属于YUV422):也属于YUV422的一种,它是一种Plane模式,即平面模式,并不是将YUV数据交错存储,而是先存放所有的Y分量,然后存储所有的U(Cb)分量, 最后存储所有的V(Cr)分量,如上图所示。其每一个像素点的YUV值提取方法也是遵循YUV422格式的最基本提取方法,即两个Y共用一个UV。比如, 对于像素点Y'00、Y'01 而言,其Cb、Cr的值均为 Cb00、Cr00。

YV12、YU12格式(属于YUV420):YU12和YV12属于YUV420格 式,也是一种Plane模式,将Y、U、V分量分别打包,依次存储。其每一个像素点的YUV数据提取遵循YUV420格式的提取方式,即4个Y分量共用一 组UV。注意,上图中,Y'00、Y'01、Y'10、Y'11共用Cr00、Cb00,其他依次类推。

NV12、NV21(属于YUV420):NV12和NV21属于YUV420格式,是一种two-plane模式,即Y和UV分为两个Plane,但是UV(CbCr)为交错存储,而不是分为三个plane。其提取方式与上一种类似,即Y'00、Y'01、Y'10、Y'11共用Cr00、Cb00

 

 

参考链接:

https://www.cnblogs.com/ALittleDust/p/5935983.html

https://www.cnblogs.com/adong7639/p/5238515.html

https://blog.csdn.net/book_zhouqingjun216/article/details/51706133

 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值