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

news/2024/7/21 6:51:28 标签: 计算机视觉, 人工智能, 图像处理

常见的图像格式有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.niftyadmin.cn/n/5015922.html

相关文章

Yarn的主要的异步调度器分析

Yarn的主要的异步调度器分析 采用的事件驱动模型进行编程,实现组件之间的松耦合/解耦、实现异步任务、跟踪状态变化。 简化之后的类图 #mermaid-svg-zG9eBlBDTjeUyoFE {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;…

扫地僧万能HTML模板站群【搜狗站群单站模式内页收录】配置教程

浅测【搜狗内页收录较好】可自行进行测试对比 [测试的域名有搜狗蜘蛛,但是不收录] [一换程序嘎嘎乱叫] [测试的为内页收录,非泛站] [泛站容易被端,搜狗不建议泛站] 第一步配置SEO设置如图: 站群模式:单站 泛站…

【C++】STL-常用算法-常用遍历算法

0.前言 1.for_each #include <iostream> using namespace std;// 常用遍历算法 for_each #include<vector> #include<algorithm>//普通函数 void print01(int val) {cout << val << " "; }//仿函数 class Print02 { public:void oper…

建站系列(七)--- 常用前后端框架

目录 相关系列文章前言一、何为框架&#xff1f;二、为什么使用框架三、常用框架&#xff08;一&#xff09;Bootstrap&#xff08;二&#xff09;Layui&#xff08;三&#xff09;JQuery&#xff08;四&#xff09;Vue.js&#xff08;四&#xff09;ThinkPHP&#xff08;五&am…

工作流-flowable

1. 工作流概述 1.1 概念 工作流(Workflow)&#xff0c;就是通过计算机对业务流程自动化执行管理。它主要解决的是“使在多个参与者之间按照某种预定义的规则自动进行传递文档、信息或任务的过程&#xff0c;从而实现某个预期的业务目标&#xff0c;或者促使此目标的实现”。 …

@Autowired和@Resource

文章目录 简介Autowired注解什么是Autowired注解Autowired注解的使用方式Autowired注解的优势和不足 Qualifier总结&#xff1a; Resource注解什么是Resource注解Resource注解的使用方式Resource注解的优势和不足 Autowired vs ResourceAutowired和Resource的区别为什么推荐使用…

【云原生】Docker-compose部署flink

docker-compose 部署flink集群_docker-compose flink-CSDN博客 Apache Flink的数据流编程模型在有限和无限数据集上提供单次事件&#xff08;event-at-a-time&#xff09;处理。在基础层面&#xff0c;Flink程序由流和转换组成。 Apache Flink的API&#xff1a;有界或无界数据流…

第一章 计算机系统概述 二、操作系统的特征

一、分类 注意&#xff1a;并发和共享&#xff0c;是两个最基本的特征&#xff0c;二者互为存在条件。 1、并发 &#xff08;1&#xff09;定义&#xff1a; 并发指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的&#xff0c;但微观上是交替发生的。 &a…