为什么YUV全为0的图像是绿色的
Q: 为什么YUV 全为0 的图像是绿色的
A: 图像中常见的颜色编码有两种方式。
1. YUV - 灰度(亮度) + 色差分量
2. RGB - 红绿蓝 三色分量
通常电视, 视频等都采用yuv编码方式, 由于人类对灰度/亮度比较敏感, 而对色差分量不是很敏感。
所以通过yuv编码方式, 可以减少U, V 也即Cb, Cr分量的数量。
故yuv编码方式常见有 YUV 4:4:4, 4:2:2, 4:2:0, 4:1:1, 4:0:0
其中4:4:4 就是完全没压缩的。
4:0:0为完全没有色差分量的, 即我们以前的黑白电视^^
其他都是压缩了部分UV色差分量的。
具体格式可参考fourcc等网站。(后续补充详细)
比如
https://www.fourcc.org/
https://www.jianshu.com/p/6a361e86ccd5
http://liuyang1.github.io/2015/12/29/yuv/
关于YUV全0的图像是绿色图像的原因?
需要提下yuv和rgb之间的转换公式。
根据协议/规范不同, 有挺多种转换公式。
可参考
https://www.fourcc.org/fccyvrgb.php
我取其中一种试试看...
YUV和RGB的转换:Y = 0.299 R + 0.587 G + 0.114 BU = -0.1687 R - 0.3313 G + 0.5 B + 128V = 0.5 R - 0.4187 G - 0.0813 B + 128R = Y + 1.402 (V-128)G= Y - 0.34414 (U-128) - 0.71414 (V-128)B= Y + 1.772 (U-128)
将YUV全0带入公式2,
得出
R = 1.402 * (-128) = -126.598
G = -0.34414(-128) - 0.71414(-128) = 44.04992 + 91.40992 = 135.45984
B = 1.772 * (-128) = -126.228
ok, 差不多就是R = -126, G = 135, B = -126
其中RGB有取值范围, 都是[0, 255]
所以最后就是R=0, G=135, B=0
查看颜色表...
嗯, 是一种深绿色, 和电视和视频种经常会遇到的那种绿色一样!!
为什么YUV全为0的图像是绿色的相关推荐
- 【Android FFMPEG 开发】FFMPEG AVFrame 图像格式转换 YUV - RGBA ( 获取 SwsContext | 初始化图像数据存储内存 | 图像格式转换 )
文章目录 I . FFMPEG AVFrame 图像数据帧处理 前置操作 II . FFMPEG 解码 AVPacket 数据到 AVFrame 流程 III. FFMPEG 解码前后的图像格式 IV ...
- pandas删除dataframe中行内容全是0的数据行(remove rows with all zeros in dataframe)
pandas删除dataframe中行内容全是0的数据行(remove rows with all zeros in dataframe) 目录 pandas删除dataframe中行内容全是0的数据 ...
- pandas创建内容全是0的dataframe、pandas基于随机整数、随机浮点数创建dataframe(random numbers)
pandas创建内容全是0的dataframe.pandas基于随机整数.随机浮点数创建dataframe(random numbers) 目录 pandas创建内容全是0的dataframe.pan ...
- 为什么权重初始化要非对称?为什么权重初始化不能全为0?为什么初始化值不能太大或者太小?介绍下He初始化以及Xavier初始化?
为什么权重初始化要非对称?为什么权重初始化不能全为0?为什么初始化值不能太大或者太小?介绍下He初始化以及Xavier初始化? 目录
- [异常解决] MPU6050启动异常读出陀螺仪和加速度计的值全为0的解决办法
在调试一个自己做的手环,每次用keil烧写好程序运行的蓝牙.陀螺仪都是正常的.但是掉电再上电之后蓝牙是好的.陀螺仪可以读出ID但是读出的加速度和角速度数据全为0. 下面是发生问题时main函数的前面部 ...
- 【PAT甲级 补全前导0 vector作为函数参数】1025 PAT Ranking (25 分) Java、C++
如何补全前导0 Java String idStr = String.format("%013d", out.id); //用0补全13位 System.out.println(i ...
- Relu神经网络输出预测全为0或1,对所有输入样本的预测概率也相同
现有一个使用Relu激活函数的网络,训练过程中发现,它对所有的输入样本都输出一样的预测概率,比如二分类,对所有样本的预测概率都是[0.4,0.6].由于预测概率都一样,因此预测标签也都一样,全预测为0 ...
- u盘插入后计算机内没有选项,U盘插到电脑,无法读取,属性里面空间全是0是怎么回事?...
U盘插到电脑,无法读取,属性里面空间全是0有二种情况,第一种是USB接口有问题,第二种 你的U盘已经中了病毒.想解决记得关注快启动头条号,和小编一起探讨啊. 第一种方法: 1.将准备好的快启动u盘启动 ...
- 水星路由器wan口ip显示0_路由器wan口状态全是0 路由器wan口状态ip为0-192路由网
问:无线路由器WAN口状态IP全是0是怎么回事?有什么办法可以解决?路由器设置完成后,在"运行状态"下,查看到WAN口状态IP地址全部是0,如下图所示. 答:路由器WAN口状态IP ...
最新文章
- Swift 注释规范和文档注释
- [转载]细说Java反射
- Hive的基本操作总结
- RabbitMQ的5种队列_订阅模式_入门试炼_第7篇
- git config设置用户名_git从安装到多账户操作一套搞定(二)多账户使用
- ROBOTS.TXT在SEO优化中的运用(ROBOTS.TXT SEO优化实战)
- 用L2TP与OpenSwan构建IPSec ×××(使用X.509证书认证)
- php5.6 mongo 扩展,docker php5.6镜像创建,包括常用扩展安装
- 用python调用r包
- 什么是大规模集成电路计算机,大规模集成电路是什么
- i7 8750h支持linux,i7-9750H和i7-8750H性能对比:差距仅5%,日常使用无区别
- linux 安装云锁
- WEB-QTP随想录—李密的猜想
- Ubuntu18.04 鼠标键盘失灵
- 小目标检测的一些理解
- 医疗器械行业数据分析必备软件--全球可查
- 颜色的前世今生13·RGB显色系统详解(下)
- 形象标识 新松机器人_沈阳新松机器人面试体验贴!
- c语言检测tft是否有触摸,带有触摸数据(包括各种历史记录的全套数据)的2.4英寸TFT_LCD...
- 2022-2028全球汽车内部连接器行业调研及趋势分析报告
热门文章
- 例题5-3安迪的第一个字典 UVa10815--C++STL库映射set的应用
- App Store审核规则简要汇总
- python中for c in s是什么意思_以下程序s=3for c in Python:s=s+2print(s)的输出结果是:()...
- 爱奇艺、新英体育宣布成立合资公司,共造超级在线体育平台
- 科创人·望繁信创始人索强:中国版流程挖掘注定有完全不同的活法
- 【优秀论文解读】UV-SLAM: Unconstrained Line-based SLAM Using Vanishing Points for Structural Mapping
- centos7 访问php 该网页无法正常运作 目前无法处理此请求
- 链路追踪译文学习记录(Dapper!!!非原创!!!学习记录)
- 开源代码学习之persepolis【一】
- 【用于图像修复、数据增强等】结合官方代码教程,在Windows 10下运行pix2pix-tensorflow(tensorflow==1.4.0 python=3.6)