Android Camera开发序列:Camera基本知识01
1) Color Filter Array---CFA
图像传感器都采用一定的模式来采集图像数据,常用的有 BGR 模式和 CFA 模式。BGR 模式是一种可直接进行显示和压缩等处理的图像数据模式,它
由 R( 红)、G( 绿) 、B( 蓝) 三原色值来共同确定 1 个像素点,例如富士数码相机采用的 SUPER CCD 图像传感器就采用这种模式,其优点是图像传感器产
生的图像数据无需插值就可直接进行显示等后续处理,图像效果最好,但是成本高,常用于专业相机中。
为了减少成本,缩小体积,市场上的数码相机大多采用 CFA 模式,即在像素阵列的表面覆盖一层彩色滤波阵列(Color Filter Array,CFA),彩色滤
波阵列有多种,现在应用最广泛的是 Bayer 格式滤波阵列,满足 GRBG 规律,绿色像素数是红色或蓝色像素数的两倍,这是因为人眼对可见光光谱敏感度
的峰值位于中波段,这正好对应着绿色光谱成分。在该模式下图像数据只用R, G, B三个值中的一个值来表示一个像素点,而缺失另外两个颜色值,这时得到
的是一副马赛克图片,为了得到全彩色的图像,需要使用其周围像素点的色彩信息来估计缺失的另外两种颜色,这种处理叫做色彩插值。
2) Camera主要组成部分
一个camera主要由两部分组成,镜头(Lens),感光IC(Sensor IC)。其中大部分的Sensor都是自己集成DSP的。
镜头主要组成是透镜结构,由几片透镜组成,一般分为塑胶透镜(Plastic)和玻璃透镜(Glass)。
Sensor将Lens上传导过来的光线转换为电信号,通过CFA滤波后,变为三基色,再通过内部的DA转换为数字信号。对于CFA模式的相机来说,Sensor
中的每个pixel只能感光R光/B光/G光,因此每个像素此时存贮的都是单色的。
3) Camera输出信号
一个camera的输出信号:一般有data信号,输出YUV,RGB,JPEG格式的数据。
hsync信号,行同步信号,表示一个frame有效。
vsync信号,列同步信号,对于一个frame表示新的一行有效。
PCLK信号,每一个像素的同步时钟。
输出I2C总线,主要用在通信,寄存器配置。
4)白平衡
随着色温的升高,光源的颜色会由暖色向冷色过渡。而人眼及大脑会对色温有一定的生理自适应性,所以受色温影响较小, 但是camera没有这种能力,所以需要加入白平衡,来使得人眼看到的和实际的物体,不会因为色温的差别而不同。光源发射光的颜色与黑体在某一温度下辐射色光相同时,黑体的温度称为该光源的色温。
5)图像去噪
在图像的采集和传输过程中,图像质量经常受到各种噪声的影响。主要有椒盐噪声和高斯噪声。
6)自动对焦
比较早之前是通过测距法,主动或被动的红外发射接收等来进行对焦。现在多是通过频谱分析,得到图像的一些特征,来进行调焦。如阈值分析法,频域带通法等。
7)自动爆光
一般需要研究不同光照条件下,亮度与曝光值之前的关系,来进行曝光控制。需要解决好,何时需要自动曝光,自动曝光补偿函数怎么计算。
8)Gamma校正
主要为了整体图像的亮度分布与人眼看到的一致。人眼对亮度的响应并不是一个线性的比例关系,但是对于Sensor来说,这个响应却接近线性。所以为了在各种设备上正确输出付出人眼对亮度响应函数的图像,就需要校正。一般是一个幂指数的倒数。摄像机/摄像头的伽玛特性大小一般是0.4---0.7,显示器的伽玛特性大小一般是1.3---2.5。
9)颜色空间(Color Space)
从应用角度来看,人们提出的众多彩色模型分为两种,1)面向彩色显示器/打印机等类的设备。RGB/CMY/YUV,2)面向视觉感知,彩色分析处理,如HSI。
10)相位检测自动对焦(PDAF)
phase detection auto focus
------- 2020.08.10 23:30
欢迎关注我的个人微信公众号,公众号会记录自己开发的点滴,还有日常的生活,希望和更多的小伙伴一起交流~~