2020-11-27
总结各种RGB转YUV的转换公式
如果数据位宽都以8位来说.
ITU709:允许 0~255之间所有数据
ITU601:只允许 16~235之间数据,
601是SDTV的数据结构; 656是SDTV的interface
709是HDTV的数据结构 ;1120是HDTV的interface
最近在学习视频的颜色空间转换,由于摄像机拍出来的视频很多都是用YUV格式保存的,而颜色空间的转换必须在RGB颜色模型上才能完成,所以第一步自然就是将YUV颜色模型转成RGB颜色模型。在网上查到了许多的YUV与RGB互转的公式,但是总觉得有些杂乱,没有系统的总结。
首先说一说YUV颜色模型,单单就YUV颜色模型来说,就有很多中叫法,而且总是让人颇感困惑。一般来讲,我们把YUV、Y`UV、YCbCr, YPbPr包含在YUV颜色模型的范围内,其中Y都表示亮度,UV表示两个色度分量,但是具体的颜色模型的用途又各不相同,当然,他们与RGB的互转公式也就不尽相同。那就先说说这些不同叫法的YUV的用途和由来。在电视系统发展的早期,YUV和Y`UV都是颜色信息的模拟信号编码形式,虽然Y和Y`都表示亮度,但是两种亮度的意义却天差地别,Y用来代指luminance,表示的是自然颜色的亮度,而Y`代指luma,表示的是经过伽马压缩之后电信号的强度。在现在的计算机系统中,YUV一般用来代指YCbCr,用来表示文件的编码格式,用于数字视频的编码,而YPbPr颜色模型常常用在模拟分量视频中。所以YUV颜色模型到RGB颜色模型的转换,应该对应两种方式,分别是模拟YUV->模拟RGB、数字YUV->数字RGB。不过因为标清、高清、以及超清幅面,YUV转RGB的权重值各不相同,需要将模拟信号和数字信号再做一次幅面划分,就出现了2*3 = 6,6中转换公式。
1.模拟YUV->模拟RGB
1) BT601(标清国际定义)
1 2 3 4 5 6 7 8 |
|
2)BT709(高清)
1 2 3 4 5 6 7 8 |
|
2 数字YUV->数字RGB
1)BT601
1 2 3 4 5 6 7 8 |
|
2)BT709
1 2 3 4 5 6 7 8 |
|
至于超清幅面的计算公式,大家可以按照下面的推导方式自己推导一下。
模拟RGB转YUV的推导公式 :
1 2 3 4 |
|
数字RGB转YUV的推导公式:
1 2 3 4 |
|
BT601 Wr = 0.299 Wg = 0.587 Wb = 0.114
BT709 Wr = 0.2126 Wg = 0.7152 Wb = 0.0722
BT2020 Wr = 0.2627 Wg = 0.678 Wb = 0.0593
2020-11-27相关推荐
- 【你好,windows】Win10 X86x64 1709.2166企业G纯净版2020.11.27
1.母盘采用微软原版企业版G版,Windows 10 1709于2020年10月13日结束服务,打齐补丁包含(kb4580328累积更新.KB4578971NET 4.8.KB4565553服务堆栈更 ...
- 测试开发工作者日记:2020.11.27
好久没有记录这个系列了,最近有小伙伴在群里说想看,那么就继续记录一下: 工作上呢,进入了淡季,没那么多业务测试了,受上级指示,继续重启大规模的技术分享和培训,虽然说也不知道会有几个同事能认真听,但是这 ...
- 计算机视觉 数据集(更新于2020.11.27)
:::::::::::::::::::::: VIOLIN: 视频与语言推理,一个新的大规模数据集,总计15887个视频片段包含95322个视频假设对,超过582个小时的视频,这些视频内容丰富,时间跨 ...
- 淘宝直通车提取数据“_h”值 最新生成方案(2020.11.27)
近段时间,淘宝直通车进行了反采集升级,在各个需要post请求数据中,新增了一个"_h"的值的设置,如图 每次生成都不一样,如果计算出错,将无法请求到正常的数据,包含请求相关搜索词, ...
- 人工智能数据集(资源篇)(更新于2020.11.27)
收藏:全网最大机器学习数据集,视觉.NLP.音频都在这了 280万分割掩码,谷歌Open Images数据集再更新 从图像中检测和识别表格,北航&微软提出新型数据集TableBank 人类穿着 ...
- 2020.11.27哈尔滨理工大学软件与微电子学院程序设计竞赛(同步赛)
A 抗疫必胜1 水题 不解释 #include<bits/stdc++.h> using namespace std;int main() {cout<<"V&quo ...
- QIIME 2教程. 27语义类型Semantic(2020.11)
文章目录 语义类型 为什么定义语义类型 常用的语义类型 译者简介 Reference 猜你喜欢 写在后面 语义类型 Semantic types https://docs.qiime2.org/202 ...
- QIIME 2教程. 04人体微生物组分析Moving Pictures(2020.11)
文章目录 QIIME 2用户文档. 4人体各部位微生物组 本节视频视频教程 启动QIIME2运行环境 样本元数据 下载和导入数据 拆分样品 序列质控和生成特征表 方法1. DADA2 方法2. Deb ...
- QIIME 2教程. 01简介和安装 Introduction Install(2020.11开始更新)
写在前面 QIIME是微生物组领域最广泛使用的分析流程,10年来引用20000+次,2019年Nature杂志评为近70年来人体菌群研究的25个里程碑事件--里程碑16:生物信息学工具助力菌群测序数据 ...
- QIIME 2教程. 32如何写方法和引用Citing(2020.11)
文章目录 引用QIIME 2 引用插件 检索特定于插件的引用 Retrieving plugin-specific citations 使用来源追溯列出引用 Using provenance to l ...
最新文章
- HDU 1847 Good Luck in CET-4 Everybody!
- java通过ftp方式上传_通过FTP以Java方式上传文件
- Linux中包的管理与程序安装
- INVEST优秀用户故事的特点
- 20145204 《Java程序设计》第6周学习总结
- c语言保存文件格式如何改回来,急求如何将下列C语言程序数据存储到文件中?...
- html5与课程思政,“课程思政”怎样做
- 2019-03-18-算法-进化(删除链表的倒数第N个节点)
- html:(39):块级元素和内联块级元素
- 软件工程学习进度06
- 每天看到那么徒步直播的朋友,他们靠什么生活呢?
- 【qq语音获取好友ip】wireshark
- Linux下.run文件的安装和卸载
- 数据库mysql5.7 sqlyog的安装
- 阿里云ecs云服务器和域名的购买,绑定及备案教程
- java 字体变形_字符串变形-Java
- 打造综合娱乐性平台,TCL爱奇艺电视体验记
- Games101学习笔记(一)
- java arr转化为list
- 如何用Github API操作github和gist(v3)