Camera开发-相机输出常用数据格式

news2024/10/7 5:24:47

作者简介: 一个平凡而乐于分享的小比特,中南民族大学通信工程专业研究生在读,研究方向无线联邦学习
擅长领域:驱动开发,嵌入式软件开发,BSP开发
作者主页:一个平凡而乐于分享的小比特的个人主页
文章收录专栏:IMX8MP,本专栏记录imx8mp开发板,学习开发过程中的问题及解决方法记录
欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖

Camera开发-相机输出常用数据格式

视觉相机常见的数据输出格式有: RGB格式、YUV格式、Rawdata格式。

1. RGB 格式

采用这种编码方法,每种颜色都可用三个变量来表示红色、绿色以及蓝色的强度。每一个像素有三原色 R 红色、G 绿色、B 蓝色组成。

1.1 RGB文件存储格式

RGB555

每个像素用16比特位表示,占2个字节,RGB分量都使用5位(最高位不用)

在这里插入图片描述

RGB1555

RGBA(ARGB)中的一种,一位用于表示透明度。0完全透明,1完全不透明

在这里插入图片描述

RGB565

每个像素用16比特位表示,占2个字节,RGB分量分别使用5位、6位、5位。

在这里插入图片描述

RGB24/RGB888

RGB24图像每个像素用24比特位表示,占3个字节,在内存中RGB各分量的排列顺序为:BGR BGR …

在这里插入图片描述

RGB32/RGBA8888

RGB32图像每个像素用32比特位表示,占4个字节,R,G,B分量分别用8个bit表示,存储顺序为B,G,R,最后8个字节保留。在内存中RGB各分量的排列顺序为:BGRA BGRA BGRA …
在这里插入图片描述

RGB222

RGB222是一种8位的RGB格式,各分量占用2bit位,剩下的2bit位不用

1.2 典型应用场景

常用的 RGB 格式包括颜色通道的信息位数、每种颜色可以表示的颜色数量和典型应用场景等。

RGB 格式颜色通道信息位数可表示的颜色数量典型应用场景
RGB888每种通道均为 8 位16,777,216数字图像处理、计算机游戏、电影和摄影等
RGB565R: 5位, G: 6位, B: 5位65,536嵌入式应用、机器视觉、数字标志等
RGBA8888R,G,B 各 8 位,A 通道为 8 位16,777,216图像编辑、视觉效果、移动应用等
RGB332每个通道均为 3 位,共 8 位256简单图形、低成本设备、老式显示器等

注意,这里列出的应用场景只是典型的用途,实际应用还要根据具体情况进行选择。

2. YUV 格式

其中“Y”表示明亮度(Luminance 或 Luma),就是灰阶值;而“U”和“V”表示色度(Chrominance 或 Chroma),是描述影像色彩及饱和度,用于指定像素的颜色。

2.1 YUV的存储格式

YUV在存储格式上通常分为:平面格式(Planar),半平面格式(Semi-Planar),打包格式(Packed)。

平面格式(Planar):即Y、U、V是分开存储的,每个分量占一块地方,即YYY… UUU… VVV…
半平面格式(Semi-Planar):即Y单独占一块地方,但其后U、V又紧挨着排在一起,即YYYYYY… UVUVUV…
打包格式(Packed):即YUV是按像素点存储的,即YUYVYUYV…这样顺序存储。

2.2 采样方式

采样是将4个像素作为一组进行的,原因在于:图像每行所占字节数必须是4的倍数,才能保证无误的转换。
YUV 主流的采样方式有三种,YUV4:4:4,YUV4:2:2,YUV4:2:0。
下面三个图比较直观的显示了三种采样方式,其中黑点表示采样像素点的Y分量,空心圆表示采样像素点的UV分量。
在这里插入图片描述

YUV444,YUV 4:4:4采样,每一个Y对应一组UV分量8+8+8 = 24bits,3个字节
YUV422,YUV 4:2:2采样,每两个Y共用一组UV分量,一个YUV占8+4+4 = 16bits 2个字节
YUV420,YUV 4:2:0采样,每四个Y共用一组UV分量一个YUV占8+2+2 = 12bits 1.5个字节

2.3 YUV420,YUV420P和YUV420SP

YUV420,YUV 4:2:0采样,每四个Y共用一组UV分量一个YUV占8+2+2 = 12bits 1.5个字节。

YUV420(Packed),又叫YUYV420,存储:YUV交错存储,按像素点存储。如YUVYUVYUV…

YUV420(planar),根据U、V的顺序,又有2种,U前V后即YUV420P又叫I420YU12,V前U后,叫YV12(12表示一个像素 12 bits)。存储:YUV分开存储,如YYY… UUU… VVV…

YUV420(Semi-Planar),根据U、V的顺序,又有2种,U前V后叫NV12,也叫YUV420SP;V前U后叫NV21。存储:Y与UV分开存储,如YYYYYY… UVUVUV…

2.4 YUV422,YUV422P和YUV422SP

YUV422,即YUV 4:2:2采样,每两个Y共用一组UV分量,一个YUV占8+4+4 = 16bits 2个字节。

YUV422(Packed),又叫YUYV422, 存储:YUV交错存储,按像素点存储。如YUYVYUYVYUYV…

YUV422(planar),根据U、V的顺序,又有2种,U前V后即YUV422P又叫I422YU16,V前U后,叫YV16(16表示一个像素 16 bits)。存储:YUV分开存储,如YYY… UUU… VVV…

YUV422(Semi-Planar),根据U、V的顺序,又有2种,U前V后叫NV16,也叫YUV422SP;V前U后叫NV61。 存储:YUV分开存储,如YYYYYY… UVUVUV…

3. RAW DATA 格式

3.1 RAW

RAW 图像是指图像传感器数字图像,这种图像未经过任何处理,未压缩和未降噪,保留了其原始数据,以便后续的数字后期制作和处理。

3.2 采集过程

环境光/补光灯照在物理表面形成反射 –> 镜头汇聚光线 –> 图像传感器彩色滤镜阵列(CFA)将单色光照在光电二极管 –> 光电转换 –> ADC采集,其他模块转换排列为 设置的 bayer格式的RAW。

RAW 一般是使用 bayer 格式进行排列,每个像素实际只包含单种特定颜色 的光的强度(比如单个像素只能为R/G/B亮度信息)。

3.3 Bayer格式

由于人眼对于绿色更加敏感,所以加重了其在感光点的权重,Bayer格式中的G分量都是B、R分量的两倍。

bayer 序格式按照排列组合,一共分为4种:

排列1排列2排列3排列4
RG
GB
BG
GR
GR
BG
GB
RG

在这里插入图片描述

4. 总结

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

STM32HAL库--定时器篇(速记版)

STM32F429 有14个定时器,其中包括 2 个基本定时器(TIM6 和 TIM7)、 10 个通用定时器(TIM2~TIM5,TIM9~TIM14)、 2 个高级控制定时器(TIM1 和 TIM8)。 由上表知道:除了 TIM…

具备生成自签名文档证书能力的印章管理软件_电子骑缝章软件

最新版的e-章宝具体生成自签名文档证书的能力,这种证书可用内部文档发布的签名,文档一旦用证书签名并发布,具有不可抵赖性,阅读者也能确认所发布的文档是否是发布者发布的(即中途有没有被他人恶意修改过)&a…

成熟ICT测试系统与LabVIEW定制开发的比较

ICT(In-Circuit Test)测试系统是电子制造行业中用于电路板(PCB)组件检测的重要工具。市场上有许多成熟的ICT测试系统,如Keysight、Teradyne、SPEA等公司提供的商用解决方案。此外,LabVIEW作为一种强大的图形…

如何在ArcGIS Pro中提取行政区划

我们在《2024版有审图号的SHP行政区划》一文中,为你分享过全国省市县级的行政区划。 现在再为你分享一下,如何在ArcGIS Pro中提取目标范围行政区划的方法,你还可在以文末查看领取该行政区划数据的方法。 直接选择 在菜单栏上点击一下选择下…

如何使用AIGC降重工具轻松提升论文原创性?

论文查重和降重是确保学术成果原创性及学术诚信的关键步骤,直接影响我们的学业成果和毕业资格。传统的论文查重方法主要包括使用查重软件和个人自查,而论文降重通常涉及改写、使用同义词替换、内容的扩展和深化,以及正确的引用和注释等方式来…

定时推送邮件如何与自动化工作流程相结合?

定时推送邮件如何设置?怎么优化推送邮件的发送频率? 在现代商业环境中,自动化工作流程和定时推送邮件是提高效率和优化运营的重要工具。AoKSend将探讨如何将这两者结合起来,以实现更高效的工作流程和更好的客户沟通。 定时推送邮…

Windows应急响应靶机 - Web3

一、靶机介绍 应急响应靶机训练-Web3 前景需要:小苕在省护值守中,在灵机一动情况下把设备停掉了,甲方问:为什么要停设备?小苕说:我第六感告诉我,这机器可能被黑了。 这是他的服务器&#xff…

车载系统类 UI 风格品质非凡

车载系统类 UI 风格品质非凡

Visio文件编辑查看工具:Visio Viewer for Mac 激活版

Visio Viewer 软件通过该软件,用户可以在没有Visio软件的情况下查看使用Visio创建的绘图和图表,方便用户对复杂信息的可视化、分析和交流。Visio Viewer 2007是一个功能强大的软件,它可以帮助IT和商务专业人员轻松地可视化、分析和交流复杂信…

堆箱子00

题目链接 堆箱子 题目描述 注意点 将箱子堆起来时,下面箱子的宽度、高度和深度必须大于上面的箱子 解答思路 初始想到深度优先遍历,最后超时了参照题解使用动态规划,先将盒子从小到大进行排序,dp[i]存储的是到第i个箱子时堆箱…

Redis Stream Redisson Stream

目录 一、Redis Stream1.1 场景1:多个客户端可以同时接收到消息1.1.1 XADD - 向stream添加Entry(发消息 )1.1.2 XREAD - 从stream中读取Entry(收消息)1.1.3 XRANGE - 从stream指定区间读取Entry(收消息&…

ubuntu24 安装 docker

更新 apt-get sudo apt-get update 安装软件包 sudo apt-get install apt-transport-https ca-certificates curl software-properties-common 添加Docker的官方GPG密钥 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - 添加 Docker 仓库 …

不锈钢氩弧焊丝ER316L

说明:TG316L 是超低碳的不锈钢焊丝。熔敷金属耐蚀、耐热、抗裂性能优良。防腐蚀性能良好。 用途:用于石油化工、化肥设备等。也可用于要求焊接后不进行热处理的高Cr钢的焊接。

Dynamic-Link库 (动态链接库)

一、动态链接库(DLL)的基本概念 二、动态链接库的优势 三、动态链接库的实现方法 四、动态链接库的版本冲突问题(DLL地狱) 五、动态链接库与静态链接库的区别 一、动态链接库(DLL)的基本概念 定义&…

数据结构(Java):ArrayList的应用

1、引言 上一篇博客,已经为大家讲解了集合类ArrayList。 这篇博客,就来帮助大家学会使用ArrayList。 2、题1: 删除字符(热身题) 题目:给出str1和str2两个字符串,删除str1中出现的所有的str2…

kafka进阶核心原理详解:案例解析(第11天)

系列文章目录 kafka高级(重点) kafka核心概念汇总 kafka的数据位移offset Kafka的基准/压力测试 Kafka的分片副本机制 kafka如何保证数据不丢失 kafka的消息存储及查询机制 生产者数据分发策略 消费者负载均衡机制 kafka的监控工具:kafka-eagle…

基于Java的多元化智能选课系统-计算机毕业设计源码040909

摘 要 多元化智能选课系统使用Java语言的Springboot框架,采用MVVM模式进行开发,数据方面主要采用的是微软的Mysql关系型数据库来作为数据存储媒介,配合前台技术完成系统的开发。 论文主要论述了如何使用JAVA语言开发一个多元化智能选课系统&a…

本地调试时不将服务挂到nacos

本地调试的时候不将服务挂到nacos从而影响前端和测试使用,需要在edit Configurations...加入一句配置信息。 -Dspring.cloud.nacos.discovery.register-enabledfalse

Flutter Navigator.popUntil 参数传递

Flutter 使用页面传参 以下是 在flutter 中页面传参的常用形式,都可以有有直接的传值参数提供。 Navigator.push #跳转到指定页面 压栈路由表Navigator.pushReplacement #关闭当前页面 跳转到指定页面压栈路由表Navigator.pus…

JMeter安装与使用

安装包下载:https://pan.xunlei.com/s/VNigSM9IEjqNBVkw8by6i-LoA1?pwdu6gq# 也可以官网下载: 1.解压安装包 2.打开方式 (1)bin->ApacheJMeter.jar->打开界面 (2)如果(1)打…