摄像头sensor的数据输出格式。
摄像头成像:外部光线穿过lens后,经过color filter滤波后照射到Sensor面上, Sensor将从lens上传导过来的光线转换为电信号,再通过内部的DA转换为数字信号。如果Sensor没有集成ISP,则传输到baseband(基带=未经处理的电信号),
此时的数据格式是RAW RGB data。
raw RGB的排列方式有两种。根据COLOR FILTER的结构,分为两种:STD Bayer pattern 与Pair pattern,其中STD Bayer pattern的结构是BG/GR的,而Pair Pattern顾名思义是指BGBG/GRGR的结构,即以四行为一个单位,前两行是BG的结构,后两行是GR的结构。对RAW DATA图像的 解码是按默认的结构来 解码的 ,如BG/GR,若不是则无法解码。
RAW RGB格式的图像每一个像素点只有一种颜色为R,G,或B。存储形式可能为8-14位。即每一个像素的值由8位存储。一般是sensor的bayer阵列获取的数据。
sensor输出分为四种,一种是YUV,一种是raw RGB.一种为RGB,一种为JPEG
第一种是RGB:从RAW RGB到RGB格式。RGB格式有
RGB565 每个像素用16位表示,RGB分量分别使用5位、6位、5位(常用也就是上说的RGB)
RGB555 每个像素用16位表示,RGB分量都使用5位(剩下1位不用)
RGB24 每个像素用24位表示,RGB分量各使用8位
RGB32 每个像素用32位表示,RGB分量各使用8位(剩下8位不用)
ARGB32 每个像素用32位表示,RGB分量各使用8位(剩下的8位用于表示Alpha通道值)。
RGB565是通过对RAW RGB中的每一个图像进行插值得到的。根据每一点周围的像素估计它的R,G,B值。RGB565输出格式是R5G3 G3B5会丢掉很多原始信息,可能是因为传输时会丢失信息。而YUV中的Y信号独立分出来很少丢失信息。所以常用。可以直接往屏幕上刷。一般500M以上sensor就只输出RAW数据以保证比较快的输出速度.。
第二种是YUV:从RAW RGB到YUV格式。CCIR601或656的格式。先说一下什么是YUV格式?
YUV三个字母中,其中"Y"表示明亮度(Lumina nce或Luma),也就是灰度值;而"U"和"V"表示的则是色度(Chrominance或Chroma),作用是描述影像色彩及饱和度,用于指定像素的颜色。YUV存储格式有两大类:planar和packed。平面和打包格式。对于planar的YUV格式,先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V。对于packed的YUV格式,每个像素点的Y,U,V是连续交叉存储的。YUV主流的采样方式有三种,YUV4:4:4,YUV4:2:2,YUV4:2:0,如何根据其采样格式来从码流中还原每个像素点的YUV值,因为只有正确地还原了每个像素点的YUV值,才能通过YUV与RGB的转换公式提取出每个像素点的RGB值,然后显示出来。
首先RAW RGB转换为RGB格式。RGB是交叉存储的。每一个像素由24位表示。然后将RGB转换为YUV格式。那么如何存储呢?根据以上可知有两种格式。首先根据不同的采样方式对YUV中数据进行采样,有YUV4:4:4,YUV4:2:2,YUV4:2:0这三种,采样完后再根据存储方式不同而存储。一般都是YUV422格式。首先分析一下:采样格式:
444就是对每一个像素Y,U,V值均取。4个像素每个像素的YUV值都要取。
原来四个像素为: [Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]
存放的码流为: [Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]
还原出像素点为: [Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]
422:原来四个像素为: [Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3]
存放的码流为: Y0 U0 Y1 V0 Y2 U2 Y3 V2
还原出像素点为:[Y0 U0 V0] [Y1 U0 V0] [Y2 U2 V2] [Y3 U2 V2]
420:原来四个像素为: [Y0 U0 V0] [Y1 U1 V1] [Y2 U2 V2] [Y3 U3 V3] 经采样后:
存放的码流为: Y0 U0 Y1 Y2 V2 Y3
还原出像素点为:[Y0 U0 V2] [Y1 U0 V2] [Y2 U0 V2] [Y3 U0 V2]
关于如何存储的。planar存储:使用三个数组分开存放YUV三个分量。YUV行顺序存储。关于packed存储:使用一个数组存储一个像素的YU或YV数据,彼此交叉。由以上可知由RGB转换为YUV分量时图像是有压缩的,损失了信息。
第三种:JPEG格式。首先转换为RGB格式,RGB再转换为YCBCR格式。YCbCr模型广泛应用在图片和视频的压缩传输中,比如你可以留意一下电视或者DVD后面的接口,就可以发现色差接口。一般人们所讲的YUV大多是指YCbCr。以前的YUV是用来看电视用的。两者的数学转换公式不同。经过离散余弦变换,数据还是可逆的,然后数据量化和霍夫曼编码实现数据压缩。
以上都是数据格式,而不是图像格式,下面还会分析图像格式,视频格式的区别。
YUV格式可经过X264编码为H264格式,然后封装为MP4格式。
摄像头sensor的数据输出格式。相关推荐
- 摄像头的数据输出格式
摄像头的数据输出格式一般分为CCIR601.CCIR656.RAW RGB等格式,此处说的RGB格式应该就是CCIR601或CCIR656格式.而RAW RGB格式与一般的RGB格式是有区别的. 我们 ...
- 图像--摄像头数据输出格式与传输接口
一. 数据输出格式 RAW data 格式: CMOS 在将光信号转换为电信号时的电平高低的原始记录,单纯地将没有进行任何处理的图像数据,即摄像元件直接得到的电信号进行数字化处理 ...
- 【Android RTMP】Android Camera 视频数据采集预览 ( 视频采集相关概念 | 摄像头预览参数设置 | 摄像头预览数据回调接口 )
文章目录 安卓直播推流专栏博客总结 一. Android 端数据采集涉及到的相关概念 二. Camera 预览图像尺寸设置 三. 获取摄像头采集的数据格式 安卓直播推流专栏博客总结 Android R ...
- Xcode中捕获iphone/ipad/ipod手机摄像头的实时视频数据
目的:打开.关闭前置摄像头,绘制图像,并获取摄像头的二进制数据. 需要的库 AVFoundation.framework .CoreVideo.framework .CoreMedia.framewo ...
- 树莓派4B摄像头推出流数据
树莓派4B摄像头推出流数据 树莓派摄像头调试 排线连接 摄像头权限激活 测试摄像头功能 树莓派原生推http流 使用vlc打开网络串流 树莓派原生推rtsp流 使用vlc打开网络串流 启动异常处理 f ...
- c编程十六进制数据输出格式_使用C编程语言处理十六进制值
c编程十六进制数据输出格式 Hexadecimal value has 16 alphanumeric values from 0 to 9 and A to F, with the base 16. ...
- 使用FFMpeg API 获取摄像头的图像数据
文章目录 1. 获取摄像头的信息 2. 打开并初始化摄像头 3. 获取摄像头数据及渲染 摄像头是我们比较常用的外设,很多场景我们都会用到摄像头.比如视频直播.视频监控等各个领域都会用到摄像头.摄像头图 ...
- 学习笔记(一)-古月ROS机器视觉开发入门 -ROS摄像头驱动及数据接口
ROS摄像头驱动及数据接口 二维摄像头 我们平常用的最多的就是二维摄像头,大部分笔记本上都会自带一个2d的摄像头,这种摄像头的接口一般是USB接口,市面上看到的罗技摄像头.RGB摄像头等,它们的底层协 ...
- Windows平台RTMP推送|轻量级RTSP服务实现本地摄像头|屏幕|叠加数据预览
背景 大家在做Windows平台RTMP推送或轻量级RTSP服务的时候,不管是采集屏幕还是采集摄像头,亦或屏幕摄像头的叠加模式,总会有这样的诉求,采集到的数据,希望能本地看看具体采集的数据或者图像实际 ...
最新文章
- bitcoin全节点部署及bitcoind bitcoin-cli命令使用解释
- NetDevOps — PyEZ
- 中国液冷数据中心发展白皮书
- Spring boot配置文件加载位置
- 【Python】matplotlib.pyplot 标题换行
- salad--8||9
- 暑期训练日志----2018.8.17
- linux 源码安装node 9,linux如何安装node?
- Java Web学习总结(10)——Session详解
- 【转】一些 SQLite技巧
- 使用docker安装easy-mock
- 2012-11-26 → 2012-12-02 周总结:项目又有新需求了,很兴奋
- linux 内核源码牛人分析 链接分享
- win7计算机文件移动硬盘,Win7系统下给移动硬盘分区方法是什么
- Mac下遇到的npm install失败问题 err!
- ElasticSearch7.3.0 集群搭建及配置安全认证
- 【071】张大妈计算器-工资计算器及各地薪资报告
- 京东评价系统更新190301
- Android Accessibility大致解析,通过adb运行纯java代码打开应用的辅助功能
- excel2007整体调整行间距