【VS开发】【图像处理】RGB各种格式
RGB格式
RGB组合格式
名字
RGB组合格式
描述
此格式用来匹配PC图形帧缓存。每个像素占据8,16,24或32个位,他们都是组合像素格式,其意为在内存中所有像素数据都是相邻排列的。当使用这些格式之一时,驱动应该上报颜色空间为V4L2_COLORSPACE_SRGB。
表2.6 组合RGB图像格式
定义 | 码 | Byte 0 | Byte 1 | Byte 2 | Byte 3 |
---|---|---|---|---|---|
V4L2_PIX_FMT_RGB332 | RGB1 | r2 r1 r0 g2 g1 g0 b1 b0 | - | - | - |
V4L2_PIX_FMT_RGB444 | R444 | g3 g2 g1 g0 b3 b2 b1 b0 | a3 a2 a1 a0 r3 r2 r1 r0 | - | - |
V4L2_PIX_FMT_RGB555 | RGBO | g2 g1 g0 b4 b3 b2 b1 b0 | a r4 r3 r2 r1 r0 g4 g3 | - | - |
V4L2_PIX_FMT_RGB565 | RGBP | g2 g1 g0 b4 b3 b2 b1 b0 | r4 r3 r2 r1 r0 g5 g4 g3 | - | - |
V4L2_PIX_FMT_RGB555X | RGBQ | a r4 r3 r2 r1 r0 g4 g3 | g2 g1 g0 b4 b3 b2 b1 b0 | - | - |
V4L2_PIX_FMT_RGB565X | RGBR | r4 r3 r2 r1 r0 g5 g4 g3 | g2 g1 g0 b4 b3 b2 b1 b0 | - | - |
V4L2_PIX_FMT_BGR666 | BGRH | b5 b4 b3 b2 b1 b0 g5 g4 | g3 g2 g1 g0 r5 r4 r3 r2 | r1 r0 | - |
V4L2_PIX_FMT_BGR24 | BGR3 | b7 b6 b5 b4 b3 b2 b1 b0 | g7 g6 g5 g4 g3 g2 g1 g0 | r7 r6 r5 r4 r3 r2 r1 r0 | - |
V4L2_PIX_FMT_RGB24 | RGB3 | r7 r6 r5 r4 r3 r2 r1 r0 | g7 g6 g5 g4 g3 g2 g1 g0 | b7 b6 b5 b4 b3 b2 b1 b0 | - |
V4L2_PIX_FMT_BGR32 | RGR4 | b7 b6 b5 b4 b3 b2 b1 b0 | g7 g6 g5 g4 g3 g2 g1 g0 | r7 r6 r5 r4 r3 r2 r1 r0 | a7 a6 a5 a4 a3 a2 a1 a0 |
V4L2_PIX_FMT_RGB32 | RGB4 | a7 a6 a5 a4 a3 a2 a1 a0 | r7 r6 r5 r4 r3 r2 r1 r0 | g7 g6 g5 g4 g3 g2 g1 g0 | b7 b6 b5 b4 b3 b2 b1 b0 |
第7位是符号位,a(alpha)的值在读取驱动时并未定义,所以编写驱动时忽略它吧,除非是在Overlay或输出Overlay时候协商了透明度,又或是在使用V4L2_CID_ALPHA_COMPONENT控制视频捕捉时候设置透明度部分。
例2.2 V4L2_PIX_FMT_BGR24 4 x 4像素图像
start + 00: B00 G00 R00 B01 G01 R01 B02 G02 R02 B03 G03 R03
start + 12: B10 G10 R10 B11 G11 R11 B12 G12 R12 B13 G13 R13
start + 24: B20 G20 R20 B21 G21 R21 B22 G22 R22 B23 G23 R23
start + 36: B30 G30 R30 B31 G31 R31 B32 G32 R32 B33 G33 R33
V4L2_PIX_FMT_SBGGR8('BA81')
名字
V4L2_PIX_FMT_SBGGR8 贝尔RGB格式
描述
这一般是数字相机的本地格式,与CCD设备的传感器阵列对应。每个像素只有一个值或是红色、绿色、蓝色,丢失的部分必须由相邻像素插值而来。第一行从左到右由蓝色和绿色组成,第二行是绿色和红色,每两行/列以此类推。
例2.3 V4L2_PIX_FMT_SBGGR8 4 x 4像素图像
start + 0: B00 G01 B02 G03
start + 4: G10 R11 G12 R13
start + 8: B20 G21 B22 G23
start +12: G30 R31 G32 R33
V4L2_PIX_FMT_SGBRG8 ('GBRG')
名字
V4L2_PIX_FMT_SGBRG8 贝尔RGB格式
描述
贝尔格式描述基本相同,只是像素排列规则不同。此格式是第一行从做到有包含绿色和蓝色,第二行是红色和绿色,每两行/列依此类推。
例2.4 V4L2_PIX_FMT_SGBRG8 4 x 4像素图像
start + 0: G00 B01 G02 B03
start + 4: R10 G11 R12 G13
start + 8: G20 B21 G22 B23
start +12: R30 G31 R32 G33
V4L2_PIX_FMT_SGRBG8 ('GRBG')
名字
V4L2_PIX_FMT_SGRBG8 贝尔RGB格式
描述
第一行从左到右包含绿色和蓝色,第二行包含红色和绿色,每两行/列依此类推。
例2.5 V4L2_PIX_FMT_SGRBG8 4 x 4像素图像
start + 0: G00 R01 G02 R03
start + 4: R10 B11 R12 B13
start + 8: G20 R21 G22 R23
start +12: R30 B31 R32 B33
V4L2_PIX_FMT_SRGGB8 ('RGGB')
名字
V4L2_PIX_FMT_SRGGB8 贝尔RGB格式
描述
第一行从左到右包含红色和绿色,第二行包含绿色和蓝色,每两行/列依此类推。
例2.6 V4L2_PIX_FMT_SRGGB8 4 x 4像素图像
start + 0: R00 G01 R02 G03
start + 4: G10 B11 G12 B13
start + 8: R20 G21 R22 G23
start +12: G30 B31 G32 B33
V4L2_PIX_FMT_SBGGR16 ('BYR2')
名字
V4L2_PIX_FMT_SBGGR16 贝尔RGB格式
描述
此格式与V4L2_PIX_FMT_SBGGR8很相似,不同是每个像素拥有16位深度。低数据存储在小地址内存中(低位机)。实际采样精度可能会比16位低,必须每个像素10位,值范围0~1023(如MT9T001)。
例2.7 V4L2_PIX_FMT_SBGGR16 4 x 4像素图像
start + 0: B00low B00high G01low G01high B02low B02high G03low G03high
start + 8: G10low G10high R11low R11high G12low G12high R13low R13high
start +16: B20low B20high G21low G21high B22low B22high G23low G23high
start +24: G30low G30high R31low R31high G32low G32high R33low R33high
V4L2_PIX_FMT_SRGGB10 ('RG10'), V4L2_PIX_FMT_SGRBG10 ('BA10'), V4L2_PIX_FMT_SGBRG10 ('GB10'), V4L2_PIX_FMT_SBGGR10 ('BG10')
名字
V4L2_PIX_FMT_SRGGB10 ('RG10'), V4L2_PIX_FMT_SGRBG10 ('BA10'), V4L2_PIX_FMT_SGBRG10 ('GB10'), V4L2_PIX_FMT_SBGGR10 ('BG10') 10bit贝尔格式扩展的16位格式
描述
这4个像素格式是每个颜色10位的raw sRGB/贝尔格式。每个颜色部分都存储在16位字段中,高6位是不用的,填充0。每n像素行包含n/2个绿色取样和n/2个蓝色取样或红色取样,红色和蓝色行交替。字节以低位机序列存储。他们通常是来描述如GRGR...BGBG...或RGRG...GBGB...等等。以下是其中的一个例子。
例2.8 V4L2_PIX_FMT_SBGGR10 4 x 4像素图像
每个代表一个字节,高字节的高6位为0
start + 0: B00low B00high G01low G01high B02low B02high G03low G03high
start + 8: G10low G10high R11low R11high G12low G12high R13low R13high
start +16: B20low B20high G21low G21high B22low B22high G23low G23high
start +24: G30low G30high R31low R31high G32low G32high R33low R33high
V4L2_PIX_FMT_SBGGR10ALAW8 ('aBA8'), V4L2_PIX_FMT_SGBRG10ALAW8 ('aGA8'), V4L2_PIX_FMT_SGRBG10ALAW8 ('agA8'), V4L2_PIX_FMT_SRGGB10ALAW8 ('aRA8')
名字
V4L2_PIX_FMT_SBGGR10ALAW8 , V4L2_PIX_FMT_SGBRG10ALAW8 , V4L2_PIX_FMT_SGRBG10ALAW8 , V4L2_PIX_FMT_SRGGB10ALAW8 10位贝尔格式压缩至8位。
描述
这些格式是每个颜色10位的raw sRGB/贝尔格式压缩到8位,使用A-LAW算法。每个颜色部分在内存中占据8位,其他与V4L2_PIX_FMT_SRGGB8特性类似。
V4L2_PIX_FMT_SBGGR10DPCM8 ('bBA8'), V4L2_PIX_FMT_SGBRG10DPCM8 ('bGA8'), V4L2_PIX_FMT_SGRBG10DPCM8 ('BD10'), V4L2_PIX_FMT_SRGGB10DPCM8 ('bRA8')
名字
V4L2_PIX_FMT_SBGGR10DPCM8, V4L2_PIX_FMT_SGBRG10DPCM8, V4L2_PIX_FMT_SGRBG10DPCM8, V4L2_PIX_FMT_SRGGB10DPCM8 10位贝尔格式压缩至8位。
描述
使用DPCM将每个颜色部分压缩至8位。DPCM调整是有损耗的,每个颜色在内存中占用8位,其他部分与V4L2_PIX_FMT_SRGGB10 ('RG10'), V4L2_PIX_FMT_SGRBG10 ('BA10'), V4L2_PIX_FMT_SGBRG10 ('GB10'), V4L2_PIX_FMT_SBGGR10 ('BG10')类似。
V4L2_PIX_FMT_SRGGB12 ('RG12'), V4L2_PIX_FMT_SGRBG12 ('BA12'), V4L2_PIX_FMT_SGBRG12 ('GB12'), V4L2_PIX_FMT_SBGGR12 ('BG12')
名字
V4L2_PIX_FMT_SRGGB12, V4L2_PIX_FMT_SGRBG12, V4L2_PIX_FMT_SGBRG12, V4L2_PIX_FMT_SBGGR12 12位贝尔格式扩展为16位
描述
每个颜色12位的raw sRGB/贝尔格式,每个颜色部分被保存在16位的字段中,高6位为0。每个n像素行包含n/2个绿色取样及n/2个蓝色或红色取样,红、蓝行交替。字节按低位机顺序存储在内存中,通常用来描述如GEGE...BGBG...或RGRG...RBRB...等。下边是其中一个的例子。
例2.9 V4L2_PIX_FMT_SBGGR12 4 x 4像素图片
start + 0: B00low B00high G01low G01high B02low B02high G03low G03high
start + 8: G10low G10high R11low R11high G12low G12high R13low R13high
start +16: B20low B20high G21low G21high B22low B22high G23low G23high
start +24: G30low G30high R31low R31high G32low G32high R33low R33high
【VS开发】【图像处理】RGB各种格式的更多相关文章
- 【转】 RGB各种格式
转自:https://blog.csdn.net/LG1259156776/article/details/52006457?locationNum=10&fps=1 RGB组合格式 名字 ...
- 《阿里巴巴Java开发手册》代码格式部分应用——idea中checkstyle的使用教程
<阿里巴巴Java开发手册>代码格式部分应用--idea中checkstyle的使用教程 1.<阿里巴巴Java开发手册> 这是阿里巴巴工程师送给各位软件工程师的宝典,就像开车 ...
- < python PIL - 批量图像处理 - RGB图像生成灰度图像 >
< python PIL - 批量图像处理 - RGB图像生成灰度图像 > 直接用python自带的PIL图像库,将一个文件夹下所有jpg/png的RGB图像转换成灰度/黑白图像 from ...
- 记录我第一次在Android开发图像处理算法的经历
大概是四月底的时候.有人加我QQ问我是否做能做一些基于图像皮肤检測的算法, 主要是实现对皮肤六项指标: 1. 水分 2. 有份 3. 痤疮与痘痘 4. 色斑与肤 ...
- MATLAB图像处理_Bayer图像处理 & RGB Bayer Color分析
Bayer图像处理 Bayer是相机内部的原始图片, 一般后缀名为.raw. 很多软件都可以查看, 比如PS. 我们相机拍照下来存储在存储卡上的.jpeg或其它格式的图片, 都是从.raw格式转化 ...
- yuv rgb 像素格式1
===========大小============= 一般,直接采集到的视频数据是RGB24的格式 RGB24一帧的大小size=width×heigth×3 Byte, RGB32的size=wid ...
- java开发编译器:中间语言格式
阅读博客的朋友可以到我的网易云课堂中,通过视频的方式查看代码的调试和执行过程: http://study.163.com/course/courseMain.htm?courseId=10028300 ...
- iOS 开发图片资源选择png格式还是jpg格式
对于iOS本地应用程序来说最简单的答案就是始终使用PNG,除非你有非常非常好的理由不用它. 当iOS应用构建的时候,Xcode会通过一种方式优化.png文件而不会优化其它文件格式.它优化得相当的好 他 ...
- 操作系统开发系列—11.ELF格式 ●
ELF文件的结构如下图所示: ELF文件由4部分组成,分别是ELF头(ELF header).程序头表(Program header table).节(Sections)和节头表(Section he ...
随机推荐
- k8spod探测
一.pod存活性探测 pod spec为容器列表中的相应容器定义其专用的探针即可启用存活性探测,目前,k8s的容器支持存活性探测的方法包含:ExecAction.TCPSocketActon和HTTP ...
- 【转载】Java项目中常用的异常处理情况总结
一,JDK中与异常相关的类 分析: Java中的异常分类: Throwable类有两个直接子类: Exception:出现的问题是可以被捕获的: Error:系统错误,通常由JVM处理. 可捕获的异常 ...
- 【NOIP2017提高A组模拟9.5】心灵治愈
题目 好吧,我表示比赛时完全看不懂题目 题目解释 良心的出题人为一道两三句可以讲清楚的题目,又写了一大坨恶心的解释. 容斥 其实题目就是有个数组a[1~n+1],已知a[n+1]=m,1<=a[ ...
- 一种sqlor的拆分
原脚本declare @Phone nvarchar(50)declare @CompanyNO nvarchar(50)set @Phone='13914124223'set @CompanyNO= ...
- 并行计算基础(1)(GPU架构介绍)
一.常用术语 Task:任务.可以完整得到结果的一个程序,一个程序段或若干个程序段.例如搬砖. Parallel Task:并行任务.可以并行计算的任务.多个人搬砖. Serial Execution ...
- 10、堆叠窗口StackedWidget
新建项目,基类选择QMainWindow,勾选ui 堆叠窗口有三个page,每个page有个label button处,快捷菜单,转到槽,添加代码 void MainWindow::on_push ...
- HDU 6438 Buy and Resell ( 2018 CCPC 网络赛 && 贪心 )
题目链接 题意 : 给出一些数.你可以从左到右对这些数进行三种操作花费 Ai 买入东西.以 Ai 价格卖出你当前有的东西.或者什么都不做.现在问你可以获取的最大利益是多少? 分析 : 和 CF 867 ...
- UVA 10491 Cows and Cars (全概率公式)
#include<bits/stdc++.h> #include<stdio.h> #include<iostream> #include<cmath> ...
- Linux服务器pxe+kickstart部署无人值守安装
一. 使用光盘镜像安装好一台Redhat6.8系统的虚拟机(图形化界面) 二. 部署相关服务程序 1. 安装并配置dhcpd服务程序 a)安装dhcp服务程序 b)对dhcp服务进 ...
- JavaWeb_Get和Post方法传输数据区别
Get方法和Post方法传输数据区别: 传送门 GET在浏览器回退时是无害的,而POST会再次提交请求 GET产生的URL地址可以被Bookmark,而POST不可以 GET请求会被浏览器主动cach ...