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 ...
随机推荐
- shell 进制转换
包括: i.任意进制转化为十进制((num=base#number)) [base和number必须一致,是同一种进制] ii.十进制转化为任意进制`echo "obase=进制;值&quo ...
- fs-extra 文件管理
一.fs-extra 文件管理 $npm install fs-extra --save 1.创建一个目录 fs.mkdir(path, [mode], [callback(err)]) path 将 ...
- JDBC的驱动是如何加载的
注:本文出处:http://www.cnblogs.com/jiaoyiping/ 转载请保留出处 JDBC定义了一套接口,数据库产品的提供商会实现这些接口来提供自己的数据库驱动程序,这是个很好的面向 ...
- java.lang.instrument 中的premain 实现类的个性化加载(附源代码)
背景 想调用ASM API (用于字节码处理的开源API)对字节码进行处理,目标是实现对java程序运行时各种对象的动态跟踪,并进一步分析各个对象之间的关系(研究前提是目前的UML锁阐释的whole- ...
- 自动释放池autoreleasepool
自动释放池是NSAutoreleasePool的实例,其中包含了收到autorelease消息的对象.当一个自动释放池自身被销毁(dealloc)时,它会给池中每一个对象发送一个release消息(如 ...
- Web前端编码规范[转]
先插入一条广告,博主新开了一家淘宝店,经营自己纯手工做的发饰,新店开业,只为信誉!需要的亲们可以光顾一下!谢谢大家的支持!店名: 小鱼尼莫手工饰品店经营: 发饰.头花.发夹.耳环等(手工制作)网店: ...
- 9.4Django
2018-9-4 17:19:13 昨天和基友玩到了十点 一路溜着玩喝豆腐脑,谈谈人生!感触颇深! 越努力,越幸运! 关于 Django的一开始的配置东西! 2018-9-4 19:42:27 201 ...
- js跨域请求数据的3种常用的方法
由于js同源策略的影响,当在某一域名下请求其他域名,或者同一域名,不同端口下的url时,就会变成不被允许的跨域请求.那这个时候通常怎么解决呢,对此菜鸟光头我稍作了整理:1.JavaScript 在 ...
- 世界时区和Java时区详解
0.引言 Druid中时区的问题一直困扰着我们,所以我专门去研究了一下世界时区和Java中的时区,对使用Druid很用帮助. 1.UTC时间&GMT时间 UTC时间是时间标准时间(Univer ...
- Zabbix监控Nginx状态信息
首先要检查Nginx是否安装了 http_stub_status_module 模块,通过下面的命令可以看到编译参数.yum安装的默认会带有这个模块. [root@kafka60 ~]# /data/ ...