camera,摄像头已经在生活各个地方应用。
根据不同参数,摄像头有多种分类方式:
一个常见的监控用的摄像头包括:外壳、感光芯片电路、镜头座、镜头、红外灯板。
而对于手机上的摄像头,很多厂家往往是设计为一个摄像头模组(CameraCompact Module),简称CCM。CCM 包含四大件: 镜头(lens)、传感器(sensor)、软板(FPC)、图像处理芯片(DSP)
景物(SCE)通过镜头(LENS)生成的光学图像投射到图像传感器(Sensor)表面上
然后转为电信号,经过A/D(模数转换)转换后变为数字图像信号
再送到数字信号处理芯片(DSP)中加工处理,转换成标准的RGB、YUV等格式图像信号
再通过I/O接口传输到CPU中处理,通过display就可以看到图像了
(joint photographic expert group)静态图像压缩方式。一种有损图像的压缩方式。压缩比越大,图像质量也就越差。 当图像精度要求不高存储空间有限时,可以选择这种格式。目前大部分数码相机都使用JPEG格式。
指的是图像中的杂点干扰,表现为图像中有固定的彩色杂点。文本_
白平衡指不管在任何光源下,都能将白色物体还原为白色。
白平衡是描述显示器或相机中红、绿、蓝三基色混合生成后白色精确度的一项指标。
色温表示光谱成份,光的颜色。色温低表示长波光成分多。当色温改变时,光源中三基色(红、绿、蓝)的比例会发生变化,需要调节三基色的比例来达到彩色的平衡,这就是白平衡调节的实际。
图象传感器的图象数据被读取后,系统将对其进行针对镜头的边缘畸变的运算修正,然后经过坏像处理后被系统送进去进行白平衡处理(在不同的环境光照下,人类的眼睛可以把一些“白”色的物体都看成白色,是因为人眼进行了修正。但是SENSOR没有这种功能,因此需要对SENSOR输出的信号进行一定的修正,这就是白平衡处理技术)。
反映对色彩的识别能力和成像的色彩表现能力,就是用多少位的二进制数字来记录三种原色。实际就是A/D转换器的量化精度,是指将信号分成多少个等级,常用色彩位数(bit)表示。彩色深度越高,获得的影像色彩就越艳丽动人。
非专业的SENSOR一般是24位;专业型SENSOR至少是36位。24位的SENSOR,感光单元能记录的光亮度值最多有2^8=256级,每一种原色用一个8位的二进制数字来记录,最多记录的色彩是256×256×256约16,77万种。
36位的SENSOR,感光单元能记录的光亮度值最多有2^12=4096级,每一种原色用一个12位的二进制数字来记录,最多记录的色彩是4096×4096×4096约68.7亿种。
*
像素格式,比如: RGB24,RGB565,RGB444,YUV4:2:2等。 RGB24,I420是目前最常用的两种图像格式。
存储方式举例:
YUV 4:2:0其颜色的一种存放格式如图所示:
所谓分辨率就是指画面的解析度,由多少象素构成的数值越大,图像也就越清晰。
分辨率不仅与显示尺寸有关,还会受到显像管点距、视频带宽等因素的影响。
我们通常所看到的分辨率都以乘法形式表现的,比如1024*768,其中的1024表示屏幕上水平方向显示的点数,768表示垂直方向的点数。
### 帧率
帧率指的就是1秒钟时间里传输、显示图片的帧数,每一帧就是一个画面,快速连续的多帧就形成了运动的动态效果。
高的帧率可以得到更加流畅,更加逼真的画面。
码流就是指视频数据在单位时间内的数量大小,也叫码率,是视频编码画面质量控制中最重要的部分,同样的分辨率和帧率下,视频码流越大,画面质量越高,对应的存储容量也就越大。
曝光就是图像的明暗程度 ,照片太暗称为曝光不足 ,照片太亮称为曝光过度。曝光由光圈、曝光时间、ISO三者共同决定。
光圈: 控制进光量。
曝光时间: 光到达的时间长度。
ISO: 增益,或称为感光度。
摄像头常用接口包括:USB、DVP、MIPI
USB
我们常用的电脑摄像头接口是USB接口,这种摄像头比较常见,需要支持UVC(USB Video Class)协议。
DVP
还有一部分的摄像头(比如说某些支持DVP接口的硬件)是DVP(Digital Video Port)摄像头数据并口传输协议,
DVP是并口,提供8-bit或10-bit并行传输数据线、HSYNC(Horizontal sync)行同步线、VSYNC(Vertical sync)帧同步线和PCLK(Pixel Clock)时钟同步线。
DVP总线PCLK极限约在96M左右,而且走线长度不能过长,所有DVP最大速率最好控制在72M以下,PCB layout较容易画
以OV3640摄像头为例: DVP分为三个部分:
移动产业处理器接口(Mobile Industry Processorinterface,MIPI)
常见的智能手机上的摄像头是MIPI接口,CSI是相机串行接口(CMOS Sensor Interface)的简称。
MIPI总线速率lvds接口耦合,走线必须差分等长,并且需要保护,故对PCB走线以及阻抗控制要求高一点(一般来讲差分阻抗要求在85欧姆~125欧姆之间)MIPI是LVDS低压差分串口,只需要要CLKP/N、DATAP/N——最大支持4-lane,一般2-lane即可。MIPI接口比DVP的接口信号线少,由于是低压差分信号,产生的干扰小,抗干扰能力也强。DVP接口在信号完整性方面受限制,速率也受限制。500W还可以勉强用DVP,800W及以上都采用MIPI接口。所以高清摄像头我们都选用MIPI接口 。
缩略语 |
---|
AE(Auto Exposure):自动曝光。 |
AF(Auto Focus) :自动对焦。 |
AWB(Auto White Balance):自动白平衡。 |
3A :指自动曝光(AE)、自动对焦(AF)和自动白平衡(AWB)算法。 |
Async Sub Device:在Media Controller结构下注册的V4L2异步子设备, |
例:Sensor、MIPI DPHY。 |
Bayer Raw(或Raw Bayer) :Bayer是相机内部的原始图片,一般后缀为.raw。 |
.raw格式内部的存储方式有:RGGB、BGGR、GRBG等。 |
CIF :Rockchip芯片中的VIP模块,接收Sensor数据并保存到内存中, |
仅转存数据,无ISP功能。 |
DVP(Digital Video Port) :一种并行数据传输接口。 |
Entity :Media Controller架构下的各节点。 |
Frame :帧。 |
HSYNC :行同步信号,HSYNC有效时,接收到的信号属于同一行。 |
IOMMU(Input Output Memory Management Unit):Rockchip芯片中的 |
IOMMU模块,用于将物理上分散的内存页映射成CIF、ISP可见的连续内存。 |
IQ(Image Quality) :指为Bayer Raw Camera调试的IQ xml,用于3A tunning。 |
ISP(Image Signal Processing) :图像信号处理。 |
Media Controller :Linux内核中的一种媒体框架,用于拓扑结构的管理。 |
MIPI-DPHY :Rockchip芯片中符合MIPI-DPHY协议的控制器。 |
MP(Main Path):Rockchip芯片ISP驱动的一个输出节点,一般用来拍照和抓取Raw图。 |
PCLK(Pixel Clock) :指Sensor输出的Pixel Clock。 |
Pipeline :Media Controller架构的各Entity之间相互连接形成的链路。 |
SP(Self Patch) :Rockchip芯片ISP驱动的一个输出节点。 |
V4L2(Video4Linux2) :指Linux内核的视频处理模块。 |
VICAP(Video Capture) :视频捕获。 |
VIP(Video Input Processor):在Rockchip芯片中,曾作为CIF的别名 |
VSYNC :场同步信号,VSYNC有效时,接收到的信号属于同一帧。 |
MIPI:移动产业处理器接口(Mobile Industry Processorinterface)
是MIPI联盟发起的为移动应用处理器制定的开放标准。图片MIPI官网
https://www.mipi.org
CSI
MIPI-CSI-2协议是MIPI联盟协议的子协议,专门针对摄像头芯片的接口而设计。
由于其高速,低功耗的特点,MIPI-CSI2协议极大的支持了高清摄像头领域的发展.
正是由于它的普及,手机上五百万像素的摄像头才得以变为前置摄像头,该类接口技术主要掌握在日本东芝,韩国三星以及美国豪威三家公司。
MIPI联盟即移动产业处理器接口(MIPI)联盟,由美国德州仪器(TI)、 意法半导体(ST)、 英国ARM和芬兰诺基亚(Nokia)4家公司共同成立, 旨在定义并推广用于移动应用处理器接口的开放标准。
D-PHY与C-PHY区别:从实用角度来看,主要是数据线和时钟线的区别,还有传输速率,C-PHY通过某些技术改良,使数据传输速度更快。
瑞芯微3568用的CSI-2 && D-PHY
所以内核中,我们会看到CSI2 和 D-PHY相关代码。
MIPI并不是一个单一的接口或协议,而是包含了一套协议和标准,以满足各种子系统独特的要求。MIPI的标准异常复杂,包含非常多的应用领域。
由上图可得:
第一列 | 名称 | 解释 |
---|---|---|
Application | 应用层 | 处理原始图像数据的各种算法模块 |
Packing Formats | 组包层 | 负责将数据按照一定的次序,切割成8bite数据 |
Low Level Protocao | 协议层 | 为新生成的数据加上爆头包尾,形成符合协议要求的数据流 |
Lane Management | 通道管理层 | 将生成的数据流按照一定次序和要求,进行读写管理,输出数据流 |
PHY Layer | PHY层 | 生成MIPI最后的信号波形 |
Pixel | 像素数据 | 经过图像模块处理过的数据流,或者原始的图像数据流 |
Data | 传输数据 | 经过MIPI模块切割或者加上包头包尾数据 |
Control | 控制信号 | 模块间的控制数据流 |
Transmitter | 发送端 | 包括了MIPI数组部分,转接板等实现MIPI信源传输的部分 |
Receiver | 接收端 | 包括了转接板和商用接收端模块,负责解析收到的MIPI信源 |
工作顺序:
该层主要用于不同场景对数据的处理过程,对于发送方,多为camera生成数据,对于接收方,多为SOC对数据进行处理。
CSI-2协议可以使用SOC上的一个物理接口实现多条数据流的传输。协议层规定了如何对多条数据流进行标记和交织,从而使每条数据流能够正确地重建。
1)像素字节转换层(Pixel/Byte Packing/Unpacking Layer)
CSI-2能够支持多种多样的像素格式,对于发送方,在数据发送之前,需要根据像素格式,将像素数据转换为对应的字节流;对于接收方,在将数据提供给应用层之前,需要将字节流数据转换为像素数据。
2)低级协议层(Low Level Protocol)
LLP指的是SoT与EoT之间的数据包字节流协议,LLP的最小单元为字节。
3)Lane管理器(Lane Management)
为了适应不同场景下对带宽的要求,CSI-2规定了Lane的数量是可拓展的。因此,在面临多Lane同时传输时,发送方需要对字节流进行公平分流(distributor),接收方则需要对多Lane数据进行合并(merger)。
PHY层指定了传输媒介,在电气层面从串行bit流中捕捉“0”与“1”,同时生成SoT与EoT等信号。CSI的硬件部分包括C-PHY、D-PHY,实际上使用的主要是D-PHY。
D-PHY 描述了一同步、高速、低功耗、低代价的PHY。
D-PHY的最初版本设计目标是500M bits/s,而D是罗马数字的500,故而叫D-PHY。
链接: link.