Camera硬件及基于V4L2驱动源码分析
Jorgen Quan
2012-12-18
摘要:本文主要描述camera的硬件工作原理以及基于V4l2驱动框架的SC8810平台camera源码进行分析,从而弄懂camera整个底层部分的工作原理。为今后工作准备好扎实的理论基础。
疑问:
1. v4l2_device_register和video_register_device的区别,为什么这两个都要注册起来??
2. 视频缓存队列是如何管理的?驱动中在哪里申请分配内存?怎么入列出列?
3. 展讯平台中如何与硬件操作关联起来?
一、Camera硬件工作原理
1. 摄像头模组介绍
摄像头模组,全称CameraCompact Module,以下简写为CCM,是影像捕捉至关重要
的电子器件。主要组成部分:lens和Sensor IC,其中有些Sensor IC是集成了DSP,有些是没有集成DSP,没有集成DSP的module需要外部外挂DSP。
2. 摄像头工作原理、camera的组成和各组件的作用
图1-1.摄像头模组结构示意图
2.1、工作原理:
物体通过镜头(lens)聚集的光,通过CMOS或CCD集成电路,把光信号转换成电信号,再经过内部图像处理器(ISP)转换成数字图像信号输出到数字信号处理器(DSP)加工处理,转换成标准的GRB、YUV等格式图像数据。
2.2、CCM包含四大组件:
镜头(lens)、传感器(sensor)、软板(FPC)、图像处理芯片(DSP)。决定一个摄像头好坏的重要部件是:镜头(lens)、图像处理芯片(DSP)、传感器(sensor)。CCM的关键技术为:光学设计技术、非球面镜制作技术、光学镀膜技术。
镜头(lens)是相机的灵魂,仅次于CMOS芯片影响画质的第二要素,镜头(lens)是利用透镜的折射原理,景物光线通过镜头,在聚焦平面上形成清晰的影像,通过感光材料CMOS或CCD感光器记录景物的影像。其组成是透镜结构,由几片透镜组成,一般可分为塑胶透镜(plastic)或玻璃透镜(glass)。当然,所谓塑胶透镜也非纯粹塑料,而是树脂镜片,当然其透光率感光性之类的光学指标是比不上镀膜镜片的。通常摄像头用的镜头构造有:1P、2P、1G1P、1G2P、2G2P、2G3P、4G、5G等。透镜越多,成本越高,相对成像效果会更出色,镜头厂家主要集中在台湾、日本和韩国,镜头这种光学技术含量高的产业有比较高的门槛,业内比较知名的企业如富士精机、柯尼卡美能达、大立光、Enplas等。
传感器(sensor)是CCM的核心模块.摄像头的主要组件中,最重要的就是图像传感器了,因为感光器件对成像质量的重要性不言而喻。Sensor将从lens上传导过来的光线转换为电信号,再通过内部的DA转换为数字信号。由于Sensor的每个pixel只能感光R光或者B光或者G光,因此每个像素此时存贮的是单色的,我们称之为RAW DATA数据。要想将每个像素的RAW DATA数据还原成三基色,就需要ISP来处理。目前广泛使用的有两种:一种是广泛使用的CCD(电荷藕合)元件;另一种是CMOS(互补金属氧化物导体)器件。
图像处理芯片(DSP)是CCM的重要组成部分,由ISP和JPEGdecoder组成。它的作用是将感光芯片获得的数据及时快速地传递中央处理器并刷新感光芯片,因此DSP芯片的好坏,直接影响画面品质(比如色彩饱和度,清晰度等)。
FPC绕性电路板
2.3.摄像头的常用技术指标
A. 图像解析度/分辨率(resolution):常见摄像头为130W(1280x1024)、500W(2592x1944)、800W(3264x2448)
B.图像格式(ImageFormat/colorspace):RGB24和YUV420是常用的两种图像格式。RGB24表示RGB三种颜色各8位,最多可表现256级浓度,从而可以再现256*256*256种颜色;420是YUV格式之一,这种格式可以避免相互干扰,还可以降低色度的采样率而不会对图像质量影响太大。此外还有类似,RGB565,YUV422等格式。
YUV知识链接:http://blog.csdn.net/searchsun/article/details/2443867
http://baike.baidu.com/view/189685.htm
C.自动白平衡调整(Auto White Balance):
定义:要求在不同色温环境下,照白色的物体,屏幕中的图像应也是白色的。色温表示光谱成份,光的颜色。色温低表示长波光成分多。当色温改变时,光源中三基色(红、绿、蓝)的比例会发生变化,需要调节三基色的比例来达到彩色的平衡,这就是白平衡调节的实际。