常见的图像格式介绍:RAW、RGB、YUV
常见的图像格式有RAW、RGB、YUV这三大类
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 编码将图像的颜色信息和亮度信息分开存储,通常用于视频压缩和传输中,以减小数据量并提高压缩效率。
- Y(亮度):Y 通道表示图像的亮度信息。它代表了像素的明亮度或灰度级别,因此可以看作是黑白图像的亮度分量。Y 通道的值通常范围在 0 到 255 之间,其中 0 表示黑色,255 表示白色。Y 通道的高质量表示对于人眼的图像感知至关重要。
- U(色度-蓝色差异):U 通道表示图像中的蓝色和亮度之间的差异。它衡量了像素的颜色偏差,具体来说,它测量了像素的蓝色与亮度之间的偏差。U 通道的值通常在 -128 到 127 之间。
- 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等
相关文章:

常见的图像格式介绍:RAW、RGB、YUV
常见的图像格式有RAW、RGB、YUV这三大类 1. RAW raw图像指的是sensor输出的原始数据,常见的有8位、10位、12位之分,分别表示一个像素点所占的字节数为8bit、10bit、12bit。 raw数据常见的有四种Bayer模式:GRBG、RGGB、BGGR(下图…...

极简极速-Bitset (bitmap)实现考勤打卡场景
文章目录 1. redis命令行操作bitmap2. RedisTemplate操作bitmap3. Java中的Bitset 1. redis命令行操作bitmap 2. RedisTemplate操作bitmap bitmap的常见业务场景主要有日活统计(类似的月考勤)、点赞、BloomFilter等,以用户mj考勤统计为例&am…...

word如何插入图片?3种常用的方法
word作为一款常用的办公软件,不仅可以处理文本内容,还能够轻松地插入图片以丰富文档内容。插入图片可以使文档更具吸引力、可读性和信息传达能力。本文将为您介绍word如何插入图片的3种方法,帮助您在文档中灵活、高效地添加图像元素。 word插…...
Python/C API - 模組,型別,Tuple,例外和引用計數
Python/C API - 模組,型別,Tuple,例外和引用計數 前言Python/C API - Common Object StructuresPyObjectPyMethodDefPyGetSetDef Python/C API - Module ObjectsPyModuleDefPyModule_CreatePyModule_AddObjectPyModule_AddObjectRef Initiali…...

人工智能轨道交通行业周刊-第59期(2023.9.4-9.10)
本期关键词:无锡智慧地铁、无人车站、钢轨打磨、混元大模型、开源大模型 1 整理涉及公众号名单 1.1 行业类 RT轨道交通人民铁道世界轨道交通资讯网铁路信号技术交流北京铁路轨道交通网上榜铁路视点ITS World轨道交通联盟VSTR铁路与城市轨道交通RailMetro轨道世界…...

ASP.NET Core 中的 MVC架构
MVC 架构 MVC架构把 App 按照逻辑分成三层: Controllers,接收 http request,配合 model,通过http response 返回 view,尽量不做别的事Models, 负责业务逻辑,App 的状态,以及数据处理Views&…...

C# PSO 粒子群优化算法 遗传算法 随机算法 求解复杂方程的最大、最小值
复杂方程可以自己定义,以下是看别人的题目,然后自己来做 以下是计算结果 private void GetMinResult(out double resultX1, out double min){double x1, result;Random random1 new Random(DateTime.Now.Millisecond* DateTime.Now.Second);min 99999…...

网络协议从入门到底层原理学习(三)—— 路由
网络协议从入门到底层原理学习(三)—— 路由 1、简介 路由(routing)是指分组从源到目的地时,决定端到端路径的网络范围的进程 在不同网段之间转发数据,需要有路由器的支持 默认情况下,路由器…...
2023/9/6 -- C++/QT
一、输出流对象cout 1> 该对象是来自于ostream的类对象,功能上类似于printf函数 2> 该类对象本质上调用成员函数插入运算符重载函数 3> 输出数据时,无需使用格式控制符:%d、%c、%s。。。,直接输出即可 4> 换行使用…...
python爬虫,多线程与生产者消费者模式
使用队列完成生产者消费者模式使用类创建多线程提高爬虫速度 https://sc.chinaz.com/tupian/index.html https://sc.chinaz.com/tupian/index_2.html https://sc.chinaz.com/tupian/index_3.html from threading import Thread from queue import Queue import requests from b…...
WordPress 提示“此站点遇到了致命错误”的解决方法
WordPress 提示“此站点遇到了致命错误”的解决方法 WordPress 网站博客提示“此站点遇到了致命错误。”如何解决?今天老唐不幸遇到了这个问题,搜了一下解决方法,发现致命错误原因有很多,所以需要先打开 WordPress 的 WP_DEBUG 功…...

Vue3,Typescript中引用组件路径无法找到模块报错
是这么个事,我在vue3新创建的项目里,写了个组件叫headerIndex.vue,放到app.vue中import就会报错 路径肯定没写错,找到了解决方法,但是也没想明白为什么 解决方法如下 在vite-env.d.ts文件中加入 declare module &qu…...

科技成果鉴定之鉴定测试报告
鉴定测试 由于软件类科技成果的复杂、内部结构难以鉴别等特点,我们提供了软件类科技成果鉴定测试服务。软件类科技成果鉴定测试是依据其科研项目计划任务书或技术合同书,参照相应的国家标准对要申请鉴定的软件类科技成果进行的一种符合性测试࿰…...

NFTScan 浏览器正式版上线 2 周年!
NFTScan 成立于 2021 年 4 月份,总部位于香港。在 2021 年的 7 月份,NFTScan 团队对外发布了 NFTScan 浏览器公测版,并在同年的 9 月 4 号,对外发布了 NFTScan 浏览器正式版,同步启用了全球品牌域名:NFTSCA…...

为什么要使用Token
传统的session认证 我们知道,http协议是一种无状态的协议,这就意味着当用户向我们的应用提供了用户名和密码进行用户认证,那么在下一次登录的时候,用户还要再进行验证,因为根据http协议,浏览器并不知道是谁…...

前端面试的话术集锦第 8 篇:高频考点(JS性能优化 性能优化琐碎事)
这是记录前端面试的话术集锦第八篇博文——高频考点(JS性能优化 & 性能优化琐碎事),我会不断更新该博文。❗❗❗ 1. 从V8中看JS性能优化 注意:该知识点属于性能优化领域。 1.1 测试性能⼯具 Chrome已经提供了⼀个⼤⽽全的性能测试⼯具Audits。 点我们点击Audits后,可…...

【数据分析】Python:处理缺失值的常见方法
在数据分析和机器学习中,缺失值是一种常见的现象。在实际数据集中,某些变量的某些条目可能没有可用的值。处理缺失值是一个重要的数据预处理步骤。在本文中,我们将介绍如何在 Pandas 中处理缺失值。 我们将探讨以下内容: 什么是缺…...

“批量随机字母命名文件,轻松管理你的文件库“
你是否曾经遇到过文件命名混乱,难以管理的问题?为了解决这个问题,我们推出了一款全新的文件改名工具,它可以帮助你批量给文件名添加一个随机字母,让你的文件库更加有序、易于管理。 首先第一步,我们要进入…...

elasticsearch的数据聚合
聚合可以让我们极其方便的实现对数据的统计、分析、运算。例如: 什么品牌的手机最受欢迎? 这些手机的平均价格、最高价格、最低价格? 这些手机每月的销售情况如何? 实现这些统计功能的比数据库的sql要方便的多,而且…...

【网络编程·数据链路层】MAC帧/以太网协议/ARP协议/RARP协议
需要云服务器等云产品来学习Linux的同学可以移步/-->腾讯云<--/-->阿里云<--/-->华为云<--/官网,轻量型云服务器低至112元/年,新用户首次下单享超低折扣。 目录 一、MAC帧 1、IP地址和MAC地址的区别 2、MAC帧协议 3、MTU对IP协议的…...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...

基于Flask实现的医疗保险欺诈识别监测模型
基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施,由雇主和个人按一定比例缴纳保险费,建立社会医疗保险基金,支付雇员医疗费用的一种医疗保险制度, 它是促进社会文明和进步的…...

SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现
摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序,以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务,提供稳定高效的数据处理与业务逻辑支持;利用 uniapp 实现跨平台前…...
Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!
一、引言 在数据驱动的背景下,知识图谱凭借其高效的信息组织能力,正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合,探讨知识图谱开发的实现细节,帮助读者掌握该技术栈在实际项目中的落地方法。 …...
CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云
目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...

多种风格导航菜单 HTML 实现(附源码)
下面我将为您展示 6 种不同风格的导航菜单实现,每种都包含完整 HTML、CSS 和 JavaScript 代码。 1. 简约水平导航栏 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport&qu…...

selenium学习实战【Python爬虫】
selenium学习实战【Python爬虫】 文章目录 selenium学习实战【Python爬虫】一、声明二、学习目标三、安装依赖3.1 安装selenium库3.2 安装浏览器驱动3.2.1 查看Edge版本3.2.2 驱动安装 四、代码讲解4.1 配置浏览器4.2 加载更多4.3 寻找内容4.4 完整代码 五、报告文件爬取5.1 提…...

【p2p、分布式,区块链笔记 MESH】Bluetooth蓝牙通信 BLE Mesh协议的拓扑结构 定向转发机制
目录 节点的功能承载层(GATT/Adv)局限性: 拓扑关系定向转发机制定向转发意义 CG 节点的功能 节点的功能由节点支持的特性和功能决定。所有节点都能够发送和接收网格消息。节点还可以选择支持一个或多个附加功能,如 Configuration …...
LOOI机器人的技术实现解析:从手势识别到边缘检测
LOOI机器人作为一款创新的AI硬件产品,通过将智能手机转变为具有情感交互能力的桌面机器人,展示了前沿AI技术与传统硬件设计的完美结合。作为AI与玩具领域的专家,我将全面解析LOOI的技术实现架构,特别是其手势识别、物体识别和环境…...
如何配置一个sql server使得其它用户可以通过excel odbc获取数据
要让其他用户通过 Excel 使用 ODBC 连接到 SQL Server 获取数据,你需要完成以下配置步骤: ✅ 一、在 SQL Server 端配置(服务器设置) 1. 启用 TCP/IP 协议 打开 “SQL Server 配置管理器”。导航到:SQL Server 网络配…...