YUV编码格式
YUV是被欧洲电视系统采用的一种颜色编码方法。在现代彩色电视系统中,通常采用三管彩色摄影机或彩色CCD摄像机取像,然后把取
得的彩色图像信号经过分色,分别放大校正后得到RGB,在经过矩阵变换电路,得到亮度信号Y和两个色度信号R-Y(U),B-Y(V),最后
发送端将亮度和色差三个信号分别编码,在同一通道发送出去。
YUV主要用在优化彩色视频信号的传输,同时向后兼容黑白电视。“Y”表示灰度值(Luma),RGB信号取平均。“U”“V”表示色度
(Chroma),分别定义了颜色的色调和饱和度。
YUV格式有两大类,planar和packed。对于planar的YUV格式,先连续存储所有像素点的Y,然后是所有像素点的U,所有像素点的
V。对于packed的YUV格式,每个像素点的Y,U,V是连续交叉存储的。常见采样方式的一般都是packed的存储方式,如YUV4:4:4,
YUV4:2:2,YUV4:2:0等。对于没一路YUV,8位分辨率来看,bpp(bit per pixel):
YUV4:4:4采样,每一个Y对应一组UV分量; 32bpp; 储存方式Y0 U0 V0 A0,Y1 U1 V1 A1,
YUV4:2:2采样,每两个Y共用一组UV分量; 16bpp; 存储方式Y0 U0,Y1 V1,Y2 U2,Y3 V3,或者一种UV和Y顺序相反的存储
YUV4:2:0采样,每四个Y共用一组UV分量。 12bpp; 存储方式与每一行的像素点有关系。
其中采样比率:以YUV4:2:0为例来说明,并不是说只有YU而没有V,真正含义是水平采样率和垂直采样率均为2:1。第一行的采样是4:2:0没有V元素,下一行就是4:0:2没有U元素。
以YUV4:2:2为例,水平采样率为2:1,即UV元素的采样率只有Y元素的一半。
YCbCr是DVD,摄像机,数字电视等消费类视频产品中常用的色彩编码方案,广泛应用在JPEG,MPEG中,是YUV压缩和偏移的版本。
RGB,YUV,YCrCb三者之间可以线性转换。
参考http://blog.chinaaet.com/detail/18189
http://blog.chinaaet.com/detail/18321
http://blog.chinaaet.com/detail/18185
http://www.cnblogs.com/azraelly/archive/2013/01/01/2841269.html
http://blog.csdn.net/searchsun/article/details/2443867
YUV编码格式的更多相关文章
- Android 显示YUV编码格式
ByteArrayOutputStream out = new ByteArrayOutputStream(); String path = "res/drawable/sample.yuv ...
- 音视频处理基础知识扫盲:数字视频YUV像素表示法以及视频帧和编解码概念介绍
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt+moviepy音视频剪辑实战 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一. ...
- YUV颜色编码格式
YUV 颜色编码采用的是 明亮度 和 色度 来指定像素的颜色,而色度又定义了颜色的两个方面:色调和饱和度. 其中: Y 表示明亮度(Luminance.Luma) U 和 V 表示色度(Chromin ...
- YCbCr 编码格式(YUV)---转自Crazy Bingo的博客
YCbCr是DVD.摄像机.数字电视等消费类视频产品中,常用的色彩编码方案. YCbCr 有时会称为 YCC..Y'CbCr 在模拟分量视频(analog component video)中也常被称为 ...
- FFmpeg YUV视频序列编码为视频
上一篇已经写了如何配置好开发环境,这次就先小试牛刀,来个视频的编码.搞视频处理的朋友肯定比较熟悉YUV视频序列,很多测试库提供的视频数据都是YUV视频序列,我们这里就用用YUV视频序列来做视频.关于Y ...
- YUV数据格式
概要: 与RGB编码方法类似,YUV也是一种颜色编码方法,主要用于电视系统以及模拟视频领域,它是指将亮度参量(Y:Luminance或Luma)和色度参量(UV:Chrominance或Chroma) ...
- 像素数据YUV简介与觉存储格式介绍
主要学习链接:博客园.51CTO 前言 照例是先废话几句,下面的内容都是在学习时从网上找来的,并非我原创,我之所以要写这篇笔记是因为网的内容都很分散,找的时候要从各个地方看,很不方便,所以就自己总结了 ...
- Android中使用MediaCodec硬件解码,高效率得到YUV格式帧,快速保存JPEG图片(不使用OpenGL)(附Demo)
MediaCodec的使用demo: https://github.com/vecio/MediaCodecDemo https://github.com/taehwandev/MediaCodecE ...
- (转) 从ffmpeg中提取出YUV数据
有时需要从ffmpeg中提取出YUV数据用作预览,另存什么的. ffmpeg是先解码成YUV, 再以这个YUV作为输入进行编码,所以YUV数据有两种: 解码后的YUV数据, 以及 编码重建的YUV ...
随机推荐
- mysql语句性能分析案例
写法不一样而功能完全相同的两条 SQL 的在性能方面的差异.示例一需求:取出某个 group(假设 id 为 100)下的用户编号(id),用户昵称(nick_name).用户性别( sexualit ...
- Rope整理(可持久化神器)
rope是什么?STL的内置的可持久化的数组.其最为方便的就是可以O1复制原来的数组.事实上rope的内置实现也是平衡树,由于只需要复制根结点,O1可以做到复制历史版本. 然而这个东西常数特大,不开O ...
- 使用DnsCat反弹shell
DnsCat技术特点 Dns隧道反弹shell DnsCat服务器的安装 #git clone https://github.com/iagox86/dnscat2.git #cd dnscat2 # ...
- C程序设计语言习题(3-5)
编写函数itob(n,s,b),将整数n转换为以b为底的数,并将转换结果以字符的形式保存到字符串s中.e.g.itob(n,s,16)把整数n格式化为十六进制整数保存在s中. #include< ...
- 【BZOJ4919】[Lydsy六月月赛]大根堆 线段树合并
[BZOJ4919][Lydsy六月月赛]大根堆 Description 给定一棵n个节点的有根树,编号依次为1到n,其中1号点为根节点.每个点有一个权值v_i. 你需要将这棵树转化成一个大根堆.确切 ...
- Unity3D笔记 GUI 一
要实现的功能: 1.个性化Windows界面 2.减少个性化的背景图片尺寸 3.个性化样式ExitButton和TabButton 4.实现三个选项卡窗口 一.个性化Windows界面 1.1.创建一 ...
- ThreadLocal Java并发
ThreadLocal 文章来源:http://con.zhangjikai.com/ThreadLocal.html ThreadLocal 主要用来提供线程局部变量,也就是变量只对当前线程可见. ...
- Springmvc配置文件application.xml 和 spring-servlet.xml
文章来源:http://blog.csdn.net/tengdazhang770960436/article/details/48395885 1.SpringMVC 的配置分为两部分 applica ...
- 利用n和nvm管理Node的版本
写在前面 Node版本的迭代速度很快,版本很多(横跨0.6到0.11),升级Node版本成为了一个问题.目前有n和nvm这两个工具可以对Node进行无痛升级,本文简单介绍一下二者的使用. n n是No ...
- React 属性和状态的一些总结
一.属性 1.第一种使用方法:键值对 <ClaaNameA name = “Tom” /> <ClaaNameA name = {Tom} /> <ClaaNameA n ...