当前位置: 首页 > news >正文

【python】RGB to YUV and YUV to RGB

在这里插入图片描述

文章目录

  • 1、YUV
  • 2、YUV vs RGB
  • 3、RGB to YUV
  • 4、YUV to RGB
  • 附录——YUV NV12 vs YUV NV21
  • 参考

1、YUV

YUV 颜色空间,又常被称作 YCbCr 颜色空间,是用于数字电视的颜色空间,在 ITU-R BT.601、BT.709、BT.2020 标准中被明确定义,这三种标准分别针对标清、高清、超高清数字电视。Y是亮度,Cb(U)、Cr(V)表示色度,三个分量是相互独立的,它们分别表示图像的亮度、蓝色色差和红色色差。

Y 分量表示图像的亮度信息,它描述了图像的明暗程度,是黑白电视信号需要的内容。

U 分量表示蓝色色差,它描述了蓝色和绿色之间的差异,用于还原图像中的蓝色和绿色。

V分量表示红色色差,它描述了红色和绿色之间的差异,用于还原图像中的红色和绿色。

在广播电视中,使用 YCbCr 可解决黑白电视和彩色电视之间的信号兼容问题。


YUV 格式的发展初衷是为了解决彩色电视机与黑白电视的兼容问题。在彩色电视出现之前,电视信号只有亮度(Y)信息,即黑白信号。

彩色电视规格制定时,采用 YUV/YIQ 格式来处理彩色电视图像,把 UV 视作表示彩度的C(Chrominance或Chroma)。

如果忽略 C 信号,剩下的 Y 信号就跟之前的黑白电视信号相同,这样彩色电视机就能与黑白电视机兼容。

此外,利用人类眼睛对亮度变化的敏感性高于对颜色变化的敏感性这一生理特性,YUV 格式允许降低色度的带宽,从而降低了传输带宽。

2、YUV vs RGB

在这里插入图片描述

3、RGB to YUV

以 BT601: 标清数字电视(SDTV) 8bit 为例

在这里插入图片描述

import cv2
import numpy as npdef merge(u, v):if u.shape == v.shape:uv = np.zeros(shape=(u.shape[0], u.shape[1] * 2))for i in range(u.shape[0]):for j in range(u.shape[1]):uv[i, 2 * j] = u[i, j]uv[i, 2 * j + 1] = v[i, j]return uvelse:print("u 和 v 的 shape 不相等")def img2yuv(img, dtype):if img.ndim == 3:b = img[:, :, 0]g = img[:, :, 1]r = img[:, :, 2]y = (0.299*r + 0.587*g + 0.114*b)u = (-0.169*r - 0.331*g + 0.5*b + 128)[::2, ::2]v = (0.5*r - 0.419*g - 0.081*b + 128)[::2, :
http://www.xdnf.cn/news/923707.html

相关文章:

  • 使用python实现奔跑的线条效果
  • 【八股消消乐】MySQL存储引擎InnoDB知识点汇总
  • 深入解析快速排序算法:原理、优化与应用
  • java内存模型JMM
  • 图上合成:用于大型语言模型持续预训练的知识合成数据生成
  • Python: 告别 ModuleNotFoundError, 解决 pipx 环境下 sshuttle 缺少 pydivert 依赖的终极指南
  • Redis Key过期策略
  • 关于 ​​Thread 与 Runnable​​ 以及 ​​线程生命周期​​ 的详细说明与示例
  • Protobuf 中的类型查找规则
  • ADB识别手机系统弹授权框-如何处理多重弹框叠加和重叠问题
  • 现代C++特性(一):基本数据类型扩展
  • Unity的日志管理类
  • 东芝Toshiba e-STUDIO2110AC打印机信息
  • 用电脑通过USB总线连接控制keysight示波器
  • csrf攻击学习
  • Java 8 Stream API 入门到实践详解
  • Robot Framework 一个通用的 自动化测试框架
  • 【DAY42】Grad-CAM与Hook函数
  • 大模型Agent智能体介绍和应用场景
  • SpiritTools:一款小而精的实用工具箱
  • nonlocal 与global关键字
  • BeckHoff--MES数据交互 MQ TRANCE API (MQ 追溯 API - 系统概述和命令参考)
  • YOLOv8 升级之路:主干网络嵌入 SCINet,优化黑暗环境目标检测
  • gawk 指令
  • NPOI Excel用OLE对象的形式插入文件附件以及插入图片
  • 元器件基础学习笔记——结型场效应晶体管 (JFET)
  • 实战二:开发网页端界面完成黑白视频转为彩色视频
  • 15-Oracle 23ai Vector Search Similarity Search-向量相似性和混合搜索-实操
  • Golang——10、日志处理和正则处理
  • 自制操作系统(五、重写引导部分和C语言的使用)