常见的图像格式介绍:RAW、RGB、YUV

常见的图像格式有RAWRGBYUV这三大类

1. RAW

raw图像指的是sensor输出的原始数据,常见的有8位、10位、12位之分,分别表示一个像素点所占的字节数为8bit、10bit、12bit。

raw数据常见的有四种Bayer模式:GRBG、RGGB、BGGR(下图)、GBRG。

数码相机中用raw数据较多,不同厂商导出的raw数据又有不同的格式,如.CR2(Canon)、.NEF(Nikon)、.ARW(Sony)。而普通安防相机,很少有支持直接导出RAW格式的,一般都需要配合ISP厂商的工具才能够实现RAW数据导出。

2. RGB

RGB格式:即每一个像素由三原色R红色、G绿色、B蓝色组成。通过三种颜色的混合,基本就能够混合出人类视力所能感受到的所有颜色。

常见的RGB颜色格式:

  • RGB888:RGB888是一种标准的RGB格式,其中每个像素用24位(3字节)来表示。这种格式支持16,777,216种不同的颜色。
  • RGB565:每个像素仅用16位(2字节)表示。它使用5位来表示红色通道、6位来表示绿色通道和5位来表示蓝色通道。虽然它不支持与RGB888相同数量的颜色,但仍然提供了65536种不同的颜色。
  • sRGB:sRGB(标准红绿蓝)是一种标准化的RGB颜色空间,广泛用于计算机显示器、数字相机和互联网图像。sRGB使用与RGB888相同的颜色深度,但具有特定的颜色范围和伽马校正,以确保在不同设备上显示一致的颜色。

JPEG(JPG)和PNG 都可以存储 RGB 格式的图像,但它们在图像编码和压缩方面有所不同。JPEG 图像通常是基于 RGB 颜色模型的,其中每个像素由红色(R)、绿色(G)、蓝色(B)三个通道的颜色信息组成。JPEG 使用有损压缩方法,通过减少图像中的冗余信息来压缩文件大小。PNG 图像也可以包含 RGB 通道,但 PNG 是一种无损图像格式,不会丢失图像质量。

3. YUV

YUV 是一种用于表示图像的颜色编码方式,与常见的 RGB(红绿蓝)颜色编码方式不同。YUV 编码将图像的颜色信息和亮度信息分开存储,通常用于视频压缩和传输中,以减小数据量并提高压缩效率。

  1. Y(亮度):Y 通道表示图像的亮度信息。它代表了像素的明亮度或灰度级别,因此可以看作是黑白图像的亮度分量。Y 通道的值通常范围在 0 到 255 之间,其中 0 表示黑色,255 表示白色。Y 通道的高质量表示对于人眼的图像感知至关重要。
  2. U(色度-蓝色差异):U 通道表示图像中的蓝色和亮度之间的差异。它衡量了像素的颜色偏差,具体来说,它测量了像素的蓝色与亮度之间的偏差。U 通道的值通常在 -128 到 127 之间。
  3. V(色度-红色差异):V 通道表示图像中的红色和亮度之间的差异。它类似于 U 通道,但测量了像素的红色与亮度之间的偏差。V 通道的值也通常在 -128 到 127 之间。

YUV 编码的主要优点在于它分离了亮度和颜色信息,这使得在图像或视频压缩中可以更有效地处理和压缩亮度和色度信息。这种分离还可以用于调整图像的亮度和对比度,以及处理彩色信息,而不会影响亮度信息。在广播、视频流和数字视频领域,YUV 编码常常被用来降低数据传输和存储的需求,同时保持较高的图像质量。

常见的YUV格式:

  • YUV444:这是一种无损 YUV 格式,每个像素都有独立的 Y、U 和 V 通道,没有子采样。这意味着每个像素都包含完整的亮度和色度信息,不会损失颜色细节。通常用于无损图像和视频存储。
  • YUV422:这种格式每两个像素共享一个 U 和 V 通道,但每个像素都有独立的 Y 通道。这减小了色度分辨率,但仍然保持了较高的颜色质量。常见于一些视频压缩格式和广播。
  • YUV420:在这种格式中,每四个像素共享一个 U 和 V 通道,并且每个像素都有独立的 Y 通道。这是一种更强烈的色度子采样,通常用于视频压缩,如 MPEG 和 H.264。YUV420格式又根据不同的存储排列方式分为YUV420P_YU12、YUV420P_YV12、YUV420SP_NV21(海思ISP常用、安卓手机常用)、YUV420SP_NV12

YUV的格式解析软件有开源的YUView,解析RAW格式的有LibRaw等

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

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

相关文章

【力扣每日一题】2023.9.9 课程表

目录 题目: 示例: 分析: 代码: 题目: 示例: 分析: 题目给我们一些课程的先修关系,也就是有些课我们需要先去学其他的课程才能学习,问我们是否可以学习完所有的课程。…

浅谈能源汽车下乡充电桩建设优化建议及解决方案

1.趋势分析 新能源汽车下乡已经成为提振汽车市场表现、推动汽车行业发展的重要措施。国家发改委日前也提出,汽车消费是支撑消费的“大头”,将加快推进充电桩和城市停车设施建设,大力推动新能源汽车下乡,鼓励汽车企业开发更适宜县…

算法与设计分析--实验一

蛮力算法的设计与分析&#xff08;暴力&#xff09; 这次是某不知名学院开学课程的第一次实验&#xff0c;一共5道题&#xff0c;来自力扣 第一题.216组合总和*力扣题目链接 第一道题是经典的树型回溯 class Solution { public:vector<vector<int>> combinatio…

Vagrant + VirtualBox + CentOS7 + WindTerm 5分钟搭建本地linux开发环境

1、准备阶段 将环境搭建所需要的工具和文件下载好&#xff08;页面找不到可参考Tips部分&#xff09; Vagrant 版本&#xff1a;vagrant_2.2.18_x86_64.msi 链接&#xff1a;https://developer.hashicorp.com/vagrant/downloads VirtualBox 版本&#xff1a;VirtualBox-6.1.46…

k8s集群中ETCD备份和恢复

文章目录 [toc]一、etcd 概述二、安装etcdctl工具三、kubeadm部署方式部署1&#xff09;备份2&#xff09;恢复四、定时备份 五、二进制部署备份1&#xff09;备份2&#xff09;恢复1、停止apiserver和etcd2、etcd_1恢复3、etcd_2恢复4、etcd_3恢复5、启动etcd和apiserver6、检…

[docker]笔记-存储管理

1、docker数据存储分为非永久性存储和永久性存储。 非永久性存储&#xff1a;容器创建会默认创建非永久性存储&#xff0c;该存储从属于容器&#xff0c;生命周期与容器相同&#xff0c;会随着容器的关闭而消失&#xff08;可理解为内存中数据&#xff0c;会随关机而消失&…

手写Spring:第18章-数据类型转换工厂设计实现

文章目录 一、目标&#xff1a;数据类型转换工厂二、设计&#xff1a;数据类型转换工厂三、实现&#xff1a;数据类型转换工厂3.1 工程结构3.2 数据类型转换工厂类图3.3 定义类型转换接口3.3.1 类型转换处理接口3.3.2 类型转换工厂3.3.3 通用类型转换接口3.3.4 类型转换注册接口…

『Bug挖掘机 - 赠书02期』|〖Effective软件测试〗

大家好&#xff0c;我是洋子&#xff0c;前段时间给大家推荐了《测试设计思想》&#xff0c;今天再给大家推荐一本软件测试领域的新书 这本书就比较接地气了&#xff0c;是一本软件测试的入门书籍&#xff0c;但同样适用于1-3年软件测试经验的读者阅读 这本书第一章就用Java代…

LinuxUbuntu安装OpenWAF

Linux&Ubuntu安装OpenWAF 官方GitHub地址 介绍 OpenWAF&#xff08;Web Application Firewall&#xff09;是一个开源的Web应用防火墙&#xff0c;用于保护Web应用程序免受各种网络攻击。它通过与Web服务器集成&#xff0c;监控和过滤对Web应用程序的流量&#xff0c;识…

优化VUE Element UI的上传插件

默认ElmentUI的文件列表只有一个删除按钮&#xff0c;我需要加预览、下载、编辑等&#xff0c;就需要优化显示结果。 优化后没用上传进度条&#xff0c;又加了一个进度条效果 代码 <template><div><el-uploadclass"upload-demo"action"/"…

09_瑞萨GUI(LVGL)移植实战教程之拓展练习

本系列教程配套出有视频教程&#xff0c;观看地址&#xff1a;https://www.bilibili.com/video/BV1gV4y1e7Sg 9. 拓展练习 本节安排三个实验检验学习成果&#xff0c;实验示例源码在资料包的这个位置&#xff1a; DShanMCU-RA6M5配套学习资料\2_配套源码\02_瑞萨电子MCU GUI(…

《Tree of Thoughts: Deliberate Problem Solving with Large Language Models》中文翻译

《Tree of Thoughts: Deliberate Problem Solving with Large Language Models》- 思维树&#xff1a;用大型语言模型有意识地解决问题 论文信息摘要1. 介绍2. 背景3. 思想树&#xff1a;用 LM 有意识地解决问题4. 实验4.1 24 人游戏4.2 创意写作4.3 迷你填字游戏 5. 相关工作6…

基于大规模测量和多任务深度学习的电子鼻系统目标识别、浓度预测和状态判断

Target discrimination, concentration prediction, and status judgment of electronic nose system based on large-scale measurement and multi-task deep learning 摘要 为了实现响应特征的自动提取&#xff0c;简化模型的训练和应用过程&#xff0c;设计了一种双块知识…

【数据结构--二叉树】平衡二叉树

题目描述&#xff1a; 代码实现&#xff1a; /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/ int TreeHeight(struct TreeNode* root) {if(rootNULL)return 0;//左右子树中大的…

Linux 中的 chpasswd 命令及示例

chpasswd命令用于更改密码,尽管passwd命令也可以执行相同的操作。但它一次更改一个用户的密码,因此对于多个用户,使用chpasswd 。下图显示了passwd命令的使用。使用passwd我们正在更改来宾用户的密码。首先,您必须输入当前签名用户的密码,然后更改任何其他用户的密码。必须…

Java认识异常(超级详细)

目录 异常的概念和体系结构 异常的概念 异常的体系结构 异常的分类 1.编译时异常 2.运行时异常 异常的处理 防御式编程 LBYL EAFP 异常的抛出 异常的捕获 异常声明throws try-catch捕获并处理 finally 异常的处理流程 异常的概念和体系结构 异常的概念 在Java中…

RabbtiMQ的安装与在Springboot中的使用!!!

一、安装Erlang与Rabbitmq 安装教程本教程是在centos8下试验的&#xff0c;其实linux系统的都差不多RabbitMQ官方&#xff1a;Messaging that just works — RabbitMQRabbitMQ是开源AMQP实现&#xff0c;服务器端用Erlang语言编写&#xff0c;Python、Ruby、 NET、Java、JMS、c…

二十、MySQL多表关系

1、概述 在项目开发中&#xff0c;在进行数据库表结构设计时&#xff0c;会根据业务需求以及业务模块之间的关系&#xff0c;分析并设计表结构&#xff0c;由于业务之间相互关联&#xff0c;所以各个表结构之间也存在着各种对应关系 2、多表关系分类 &#xff08;1&#xff0…

你用过 Maven Shade 插件吗?

文章首发地址 Maven Shade插件是Maven构建工具的一个插件&#xff0c;用于构建可执行的、可独立运行的JAR包。它解决了依赖冲突的问题&#xff0c;将项目及其所有依赖&#xff08;包括传递依赖&#xff09;合并到一个JAR文件中。 下面是对Maven Shade插件的一些详解&#xff…

202330读书笔记|《中国百年文学经典桥梁书(全8册)》——故乡,匆匆,春,背影,白鹅,百草园

202330读书笔记|《中国百年文学经典桥梁书&#xff08;全8册&#xff09;》——故乡&#xff0c;匆匆&#xff0c;春&#xff0c;背影&#xff0c;白鹅&#xff0c;百草园 《中国百年文学经典桥梁书&#xff08;全8册&#xff09;》作者朱自清&#xff0c;鲁迅等。很多都是小学…