yuv和yCbCr的差异

yuv和yCbCr的差异
 

 

一、和rgb之间换算公式的差异

yuv<-->rgb

Y'= 0.299*R' + 0.587*G' + 0.114*B'

U'= -0.147*R' - 0.289*G' + 0.436*B' = 0.492*(B'- Y')

V'= 0.615*R' - 0.515*G' - 0.100*B' = 0.877*(R'- Y')

R' = Y' + 1.140*V'

G' = Y' - 0.394*U' - 0.581*V'

B' = Y' + 2.032*U'

yCbCr<-->rgb

Y’ = 0.257*R' + 0.504*G' + 0.098*B' + 16

Cb' = -0.148*R' - 0.291*G' + 0.439*B' + 128

Cr' = 0.439*R' - 0.368*G' - 0.071*B' + 128

R' = 1.164*(Y’-16) + 1.596*(Cr'-128)

G' = 1.164*(Y’-16) - 0.813*(Cr'-128) - 0.392*(Cb'-128)

B' = 1.164*(Y’-16) + 2.017*(Cb'-128)

Note: 上面各个符号都带了一撇,表示该符号在原值基础上进行了gamma correction

 

二、来源上的差异

yuv色彩模型来源于rgb模型,

该模型的特点是将亮度和色度分离开,从而适合于图像处理领域。

应用:basic color model used in analogue color TV broadcasting.

 

YCbCr模型来源于yuv模型。YCbCr is a scaled and offset version of the YUV color space.

应用:数字视频,ITU-R BT.601 recommendation

 

ps:

通过上面的比较可以确定,我们在h.264,mpeg等编码标准中用的yuv其实是YcbCr,大家不要被名称搞混淆了

 

4.1.3.3 彩色空间的线性变换标准
为了使用人的视角特性以降低数据量,通常把RGB空间表示的彩色图像变换到其他彩色空间。目前采用的彩色空间变换有三种:YIQ, YUV和YCrCb。每一种彩色空间都产生一种亮度分量信号和两种色度分量信号,而每一种变换使用的参数都是为了适应某种类型的显示设备。其中,YIQ适用于NTSC彩色电视制式YUV适用于PAL和SECAM彩色电视制式而YCrCb适用于计算机用的显示器。
1、 YUV与YIQ模型
  在彩色电视制式中,使用YUVYIQ模型来表示彩色图像。在PAL彩色电视制式中使用YUV模型,其中的YUV不是那几个英文单词的组合词,而是符号,Y表示亮度,UV用来表示色差,UV是构成彩色的两个分量;在NTSC彩色电视制式中使用YIQ模型,其中的Y示亮度,IQ是两个彩色分量
YUV的优点:
1YUV表示法的重要性是它的亮度信号(Y)和色度信号(UV)相互独立的
2YUV表示法的另一个优点是可以利用人眼的特性来降低数字彩色图像所需要的存储容量。
在考虑人的视觉系统和阴极射线管(CRT)的非线性特性之后,RGB和YUV的对应关系可以近似地用下面的方程式表示:
Y = 0.299R + 0.587G + 0.114B
U = - 0.147R- 0.289G + 0.436B
V = 0.615R - 0.515G - 0.100B
3 \YIQ与RGB彩色空间变换
RGB和YIQ的对应关系用下面的方程式表示:
Y = 0.299R + 0.587G + 0.114B
I = 0.596R - 0.275G - 0.321B
Q = 0.212R - 0.523G + 0.311B
或者写成矩阵的形式,
4 YCrCb与RGB彩色空间变换
   数字域中的彩色空间变换与模拟域的彩色空间变换不同。它们的分量使用Y、Cr和Cb来表示,与RGB空间的转换关系如下:
Y=0.299R+0.578G+0.114B
Cr=(0.500R-0.4187G-0.0813B)+128
Cb=(-0.1687R-0.3313G+0.500B)+128
或者写成矩阵的形式,
4. ITU-R BT.601标准摘要
   ITU-R BT.601用于对隔行扫描电视图像进行数字化,对NTSC和PAL制彩色电视的采样频率和有效显示分辨率都作了规定。下表给出了ITU-R BT.601推荐的采样格式、编码参数和采样频率。
    ITU-R BT.601推荐使用4∶2∶2的彩色电视图像采样格式。使用这种采样格式时,Y用13.5 MHz的采样频率,Cr,Cb用6.75 MHz的采样频率。采样时,采样频率信号要与场同步和行同步信号同步。
1. 彩色空间之间的转换
  在数字域而不是模拟域中RGB和YCbCr两个彩色空间之间的转换关系用下式表示:
Y = 0.299R + 0.587G + 0.114B
Cr = (0.500R - 0.4187G - 0.0813B) + 128
Cb = (-0.1687R - 0.3313G + 0.500B) + 128

 

4.1.4.2  彩色电视信号的类型
1、 复合电视信号
    包含亮度信号、色差信号和所有定时信号的单一信号叫做复合电视信号(composite video signal),或者称为全电视信号。
2、 分量电视信号
分量电视信号(component video signal)是指每个基色分量作为独立的电视信号。每个基色既可以分别用R、G和B表示,也可以用亮度-色差表示,如Y、I和Q,Y、U和V。使用分量电视信号是表示颜色的最好方法,但需要比较宽的带宽和同步信号。
3、 S-Video信号
分离电视信号S-Video(Separated video-VHS)是亮度和色差分离的一种电视信号,是分量模拟电视信号和复合模拟电视信号的一种折中方案。使用S-Video有两个优点:
(1) 减少亮度信号和色差信号之间的交叉干扰。
(2) 不须要使用梳状滤波器来分离亮度信号和色差信号,这样可提高亮度信号的带宽。
2、 电视扫描和同步
扫描有隔行扫描(interlaced scanning)和非隔行扫描之分。非隔行扫描也称逐行扫描,图4-08表示了这两种扫描方式的差别。黑白电视和彩色电视都用隔行扫描而计算机显示图像时一般都采用非隔行扫描

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/253659.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

配置zentaophp

原理&#xff1a; 首先&#xff0c;我们要明白为什么访问localhost就可以访问到我们的apache主页。 解析域名的时候&#xff0c;首先是从本地的hosts文件开始的。 如果查不到&#xff0c;才会去DNS服务器查询。 如果你在这里面写一行&#xff1a;127.0.0.1 www.baidu.com 百…

Android开发——RecyclerView特性以及基本使用方法(二)

0. 前言随着Android的发展&#xff0c;虽然ListView依旧重要&#xff0c;但RecyclerView确实越来越多的被大家使用。但显然并不能说RecyclerView就一定优于ListView&#xff0c;而是应该根据不同的需求选择最合适的进行使用。本篇将介绍我们为什么要使用RecyclerView&#xff…

pycharm中使用scrapy命命

2019独角兽企业重金招聘Python工程师标准>>> 这篇博客写的不错&#xff0c;亲测 https://blog.csdn.net/MAOZEXIJR/article/details/80678133 转载于:https://my.oschina.net/u/2511906/blog/1934993

PrimeTime指南——合理设置约束

完整的STA需要满足以下两点&#xff1a; 完整的设计约束&#xff08;完整并不意味着正确&#xff09;运行所有需要的时序检查可以用以下两条命令来进行完整性的检查&#xff1a; check_timing // 检查是否缺少了约束条件 report_analysis_cove…

Matlab增加块注释

1&#xff09;方法一选中你要加注释的内容&#xff0c;然后选择工具菜单“text|comment”就可以了&#xff0c;如果要把注释变为语句&#xff0c;同样选中要转变的语句&#xff0c;然后用鼠标选择“text|uncomment”就可以了。用键盘的快捷键是"CtrlR".或者选中你要加…

理解正向代理和反向代理

首先&#xff0c;大家可以看一下这里https://www.zhihu.com/question/24723688 其实答复的非常清楚了。 知乎网友阿笠硕士图画的很形象&#xff0c;地址为https://www.zhihu.com/question/24723688/answer/48369770 其次&#xff0c;我自己根据专家的解释&#xff0c;总结如下…

tablayout支持改变选中文字大小,支持左右滑动,支持viewpager,支持三角可移动指示器...

TabLayout [简书地址] (https://www.jianshu.com/p/2c3f868266e8) 基于大神的FlycoTabLayout [传送地址和基本用法](https://github.com/H07000223/FlycoTabLayout) 用法和属性和这个库一样 效果图如下 主要添加一个属性 tl_text_select_size 控制选中文字大小 看代码截图 然后…

Design Compiler指南——概述和基本流程

综合是前端模块设计中的重要步骤之一&#xff0c;综合的过程是将行为描述的电路、RTL级的电路转换到门级的过程&#xff1b;Design Compiler是Synopsys公司用于做电路综合的核心工具&#xff0c;它可以方便地将HDL语言描述的电路转换到基于工艺库的门级网表。本文将简单介绍综合…

linux常用网络命令

关键词&#xff1a;linux网络命令、ifconfig、route、ip、netstat、socket flag 引言&#xff1a; 想成为真正的高手&#xff0c;必须要熟练掌握linux系统的命令行操作&#xff0c;今天就回顾一下linux在网络上的常用命令相关知识&#xff0c; 另外&#xff0c;实践才是最终的方…

图像增强汇总

1、 图像增强技术包括 1&#xff09; 图像灰度变换方法 2&#xff09; 直方图修正方法 3&#xff09; 图像平滑处理 4&#xff09; 图像尖锐化处理 5&#xff09; 彩色处理技术 2、 图像增强技术基本上分为两大类&#xff1a;频域处理法和时域处理法。 3、 频…

javaweb(三十八)——mysql事务和锁InnoDB(扩展)

MySQL/InnoDB的加锁分析&#xff0c;一直是一个比较困难的话题。我在工作过程中&#xff0c;经常会有同事咨询这方面的问题。同时&#xff0c;微博上也经常会收到MySQL锁相关的私信&#xff0c;让我帮助解决一些死锁的问题。本文&#xff0c;准备就MySQL/InnoDB的加锁问题&…

Design Compiler指南——预综合过程

预综合过程是指在综合过程之前的一些为综合作准备的步骤&#xff0c;包括Design Compiler的启动、设置各种库文件、创建启动脚本文件、读入设计文件、DC中的设计对象、各种模块的划分以及Verilog的编码等等。 一、Design Compiler的启动 目前&#xff0c;DC的启动方式有三种&a…

KAFKA介绍(分布式架构)

2019独角兽企业重金招聘Python工程师标准>>> 介绍 Kafka是一个分布式的、可分区的、可复制的消息系统。它提供了普通消息系统的功能&#xff0c;但具有自己独特的设计。这个独特的设计是什么样的呢&#xff1f; 首先让我们看几个基本的消息系统术语&#xff1a; Kaf…

jquery 回车事件

简单地记下jquery实现回车事件&#xff0c;代码如下&#xff1a;全局&#xff1a; $(document).keydown(function(e){if(e.keyCode13){$(".login-li input[typebutton]").trigger("click");} });某个控件&#xff1a; $("body").keydown(functio…

Three.js 详细解析(持续更新)

1、简介&#xff1b; Three.js依赖一些要素&#xff0c;第一是scene&#xff0c;第二是render&#xff0c;第三是carmea npm install --save three import * as THREE from "three"; import { GLTFLoader } from "three/examples/jsm/loaders/GLTFLoader.js&quo…

[js高手之路]构造函数的基本特性与优缺点

上文,通过基本的对象创建问题了解了构造函数&#xff0c;本文&#xff0c;我们接着上文继续了解构造函数的基本特性&#xff0c;以及优缺点. 每个对象上面都有一个constructor属性( 严格意义上来说&#xff0c;是原型上的&#xff0c;对象是通过查找到原型找到 constructor属性…

Design Compiler指南——施加设计约束

Design Compiler是一个约束驱动(constrain-driven)的综合工具&#xff0c;它的结果是与设计者施加的约束条件密切相关的。在本文里&#xff0c;我们主要讨论怎样给电路施加约束条件&#xff0c;这些约束主要包括——时序和面积约束、电路的环境属性、时序和负载在不同模块之间的…

Python:eval的妙用和滥用

时间 2014-07-08 13:05:24 CSDN博客 原文 http://blog.csdn.net/zhanh1218/article/details/37562167主题 Python eval()函数十分强大&#xff0c;官方demo解释为&#xff1a;将字符串str当成有效的表达式来求值并返回计算结果。 so&#xff0c;结合math当成一个计算器很好用…

程维柳青发布道歉声明:滴滴顺风车业务将无限期下线

雷锋网(公众号&#xff1a;雷锋网)消息&#xff0c;8 月 28 日晚间&#xff0c;滴滴创始人兼 CEO 程维和滴滴总裁柳青正式发出道歉声明&#xff0c;向受害者和受害者家属道歉——这已经离本次滴滴顺风车悲剧的发生整整四天的时间。 声明表示&#xff0c;滴滴不再以规模和增长作…

MATLAB图像增强程序举例

1.灰度变换增强程序&#xff1a; % GRAY TRANSFORM clc; Iimread(pout.tif); imshow(I); Jimadjust(I,[0.3 0.7],[0 1],1); %transforms the walues in the %intensity image I to values in J by linealy mapping %values between 0.3 and 0.7 to values between 0 and 1. fi…