【写在前面】
网上资料梳理,侵删烦请联系。或有表达错误,欢迎指出纠正。
【参考引用】
https://www.zhihu.com/question/21427664
https://www.cnblogs.com/programandriod/p/13868576.html
https://baijiahao.baidu.com/s?id=1613768033160972478&wfr=spider&for=pc
https://blog.csdn.net/luotong86/article/details/52771984
功能参数
camera:指整个camera,包括本身的硬件连接方式及支持i2c控制的i2c设备。
sensor:指支持i2c控制的i2c设备,属于camera的一部分。
1 术语
1.1 基础概念
AF:auto focus,自动对焦。自动将照片调节至最清晰状态;
MF:micro focus,两档变焦。
ZOOM:自动数码变焦
ISO:感光度。相机感应器对光线的敏感程度,数值越大拍的越亮。过大就是一片白,俗称曝光过度。
WB:白平衡。
AWB:自动白平衡。
S:快门。
EV:曝光补偿。
Bokeh:人像虚化;
快拍:息屏启动;
1.2 基础功能
1.2.1 景深
- 是什么
照片中清晰的部分。 - 特性
光圈越大,清晰部分越小,主体前后虚化越严重,景深越浅。
1.2.2 人像
虚化、滤镜
1.2.3 双摄
- 特性
通过算法,判断不同被摄物体的距离。 - 应用
(1)测距
①背景虚化(大光圈效果)
双camera可以测出不同被拍摄物体的距离,对需要进行大光圈的物体对准,其他不同距离的物体虚化。
②背景替换
可将被拍摄物体的主体提取出来,更换背景。
③测量距离
(2)光学变焦
1.2.4 连拍
通过节约数据传输时间来捕捉摄影时机。
连拍模式通过将数据装入数码相机内部的高速存储器(高速缓存),而不是向存储卡传输数据,可以在短时间内连续拍摄多张照片。
由于数码相机拍摄要经过光电转换,A/D转换及媒体记录等过程,其中无论转换还是记录都需要花费时间,特别是记录花费时间较多。因此,所有数码相机的连拍速度都不很快。连拍一般以帧为计算单位,每秒能捕捉的帧数越多,连拍功能越快。
2 曝光
- 是什么
光线进入光电传感器,产生光电反应,使光信号转为电信号,产生照片的过程。 - 曝光状态
欠曝、正常曝光、过曝 - 曝光时间
为了将光投射到照相感光材料的感光面上,快门所要打开的时间。 - 曝光方式
(1)逐行曝光
从第一行开始曝光,一个行周期结束之后第二行才开始曝光。依次类推,经过N-1行后第N行开始曝光。
第一行曝光结束后开始读出数据,读出一行需要一行周期时间(含行消隐时间,即H_Blank)。至第一行完全读出后,第二行刚好开始读出,依次类推,当第N-1行读完后,第N行开始读出,直到整幅图像完全读出。
(2)全局曝光
所有行同时开始曝光,并同时结束曝光,在曝光结束后,Sensor将所有电子从感光区转到存储区,之后逐行地读出像素数据。
好处:
获得图像每一行的曝光时间比较一致,并且在拍摄运动物体时图像不会出现偏移和歪斜。
2.1 曝光量
- 是什么
让多少光进入密闭房间。
进光量太大,照片会白花花一片,晚上变成了白天。进光量太小,照片会黑乎乎的,白人变成黑人。 - 正确曝光
得到的图片与见到的相同。
要得到正确曝光的图片,必须精确决定曝光量。 - 曝光量控制
通过光圈
(窗户开多大)和快门
(窗户开多久)一起控制曝光量。
2.2 曝光三要素
光圈、快门速度、ISO
2.2.1 光圈
- 有何用
调节进光口大小。
强光时,缩小为针孔,弱光时,扩展为大洞。
小孔成像,孔必须足够小。将凸镜安装在大孔上进行聚光。 - 光圈值F
光圈F值=镜头焦距 / 镜头光圈直径
光圈值F与光圈实际大小相反。
F2时,进光量最大;F22时,进光量最小。
镜头在中等光圈成像最好(图片最清晰)。
2.2.2快门
相机里控制曝光时间的装置。
2.2.3 ISO
决定CCD/CMOS的感光速度。
示例:
ISO100的胶卷,相机2s可以正确曝光;同光线条件下,ISO200的胶卷只需要1s,ISO400只需要0.5s.
ISO数字越大,越感光度越高。
高ISO:曝光速度快,但图像颗粒粗,不能精细放大出图。
低ISO:曝光速度慢,但图像颗粒细,能精细出图。
如果进光量不够,可以开大光圈或者降低快门速度,还是不够就提高ISO。
大光圈的缺点:
解像度不如中等光圈,快门速度降低则图片可能会糊,提高ISO后图片质量也会下降。
2.3 曝光计算
与sensor曝光相关计算
line_time的计算公式:line_time = line_length / pclk
line_length:一行的长度(包含H_Blank)
pclk:控制像素输出的时钟,即pixel采样时钟,单位MHz。每个单位时间内采样的pixel数量。
line_time:曝光一行的时间。
exposure_time的计算公式:exposure_time = exposure_line * line_time
exposure_time:曝光时间。一帧曝光了多长时间;
exposure_line:曝光行。一帧曝光了多少行;
line_time:曝光一行的时间。
【注】
调节exposure_time通过写exposure_line寄存器实现。
exposure_time以行长为单位。
2.4 帧
- 是什么
一帧,即一幅图像。一幅完整的图像扫描信号,由水平消隐间隔分开的行信号序列构成。
在将光信号转换为电信号的扫描过程中,扫描总是从图像的左上角开始,水平向前行进,同时扫描点也以较慢的速率向下移动。当扫描点到达图像右侧边缘时,扫描点快速返回左侧,重新开始在第1行的起点下面进行第2行扫描。- 水平消隐
行与行之间的返回过程,也叫行消隐(H_BLANK)。 - 垂直消隐
扫描点扫描完一帧后,从图像的右下角返回到图像的左上角,开始新一帧的扫描,会有一段间隔时间,叫做垂直消隐(也称场消隐,V_BLANK)。
V_BLANK的作用:调节帧率。
- 水平消隐
一帧的结构图:
2.4.1 帧率
-
是什么
每秒钟播放的图片数量。
当一秒钟连续从人眼前闪过24张照片时,人眼就会认为这是一幅连续的画面。
24帧就是每秒钟播放24张图片,60帧就是每秒钟播放60张图片。 -
计算
fps帧率计算公式:
fps = pclk / (frame_length * line_length) = 1 / (frame_length * line_time)
pclk:控制像素输出的时钟,即pixel采样时钟,单位MHz。每个单位时间内采样的pixel数量。100MHz,每秒钟可以采集100M个像素。
frame_length:一帧的行数(包含V_BLANK)
line_length:一行的长度(包含H_Blank)
frame_length * line_length:一帧图像的像素总和。
fps帧率:1秒钟内采集的像素点可以分成多少帧。
注:帧率调节通过写frame_length寄存器实现。
frame_length计算公式:
dummy_line:用来填充v_blank的行
frame_offset:最小的dummy_line,即一帧曝光结束到下次准备好重新开始曝光的时间
frame_length(帧长) = exposure_line(曝光行) + dummy_line
frame_length ≥ exposure_line +frame_offset
3 焦距
3.1 焦距/物距/像距
- 是什么
焦距:光学概念。焦点离透镜的距离。
焦点:当物点处于无穷远处,对应的像点。
物距:拍摄物与透镜的距离。(相机与拍摄物的距离)
像距:成像物与透镜的距离。(图像到凸透镜,即CCD与镜头的距离)
1/像距=1/物距+1/焦距
焦距越小,视野越宽,取景范围也就越广;能拍摄的画面就越多,但是画面中的景物在画面中的占比就越小。
焦距越大,视野越窄,取景范围也就越窄;能拍摄的画面就越少,但是画面中的景物在画面中的占比就越大。
- 有何用
决定视角,即取景范围。
超广角
镜头焦距<24mm。
广角
镜头焦距为24mm和28mm。
微距
镜头焦距100mm。
人像
镜头焦距135mm。
长焦
镜头焦距200mm、330mm。
超长焦
镜头焦距>300mm。
3.2 定焦(FF)
FF(Fix focus),焦距为定值。
3.3 变焦(ZOOM)
- 是什么
通过移动镜头内的透镜镜片位置
来拉长或缩短焦距。
焦距为范围。
变焦倍数计算:
变焦倍数 = 最长焦距/最短焦距
3.3.1 光学变焦
- 是什么
通过移动镜头内部镜片的相对位置
来改变焦点的位置,改变镜头焦距的长短,并改变镜头的视角大小,从而实现影像的放大与缩小。
物体位置保持不变,镜头的焦距与物体的放大倍率会呈现正比例的关系。 - 特点
不牺牲清晰度。
3.3.2 数字变焦
- 是什么
通过可拍照手机处理器,把图片内的每个像素面积增大(将像素使用插值手段放大),从而达到放大的目的。 - 特点
该过程中焦距无变化,图像质量会随着放大比例增加逐渐下降。
(1)插值算法变焦
对图像进行插值运算,将图像的尺寸扩大到所需的规格。
效果较差。手机上的摄像头本身得到的数据就有较大的噪声,再插值的话,得到的图像几乎没法使用。
(2)伪数字变焦
摄像头不处在最大分辨率格式下工作。
如:sensor 使用640*480
的规格拍照时,仍旧设置 sersor 工作在1280*960
的分辨率。
通过采集中央部分的图像来获取640*480
的照片,使得手机上看所拍物体尺寸被放大了一倍。
优点:几乎不需要额外的算法支持,对图像质量无影响;
缺点:只有小尺寸情况下可以采用。
3.3.3 zoom in/zoom out
- zoom in
指(照相机等)用变焦距镜头使景物放大,即将景物推近; - zoom out
用变焦距镜头使景物缩小,即将景物拉远。
3.3.4 resolution/field of view
- resolution:分辨率
指画面的解析度,即由多少象素构成。数值越大,图像也就越清晰。
分辨率不仅与显示尺寸有关,还会受到显像管点距、视频带宽等因素的影响。
如1024*768=786432,又称80万像素。1024表示屏幕上水平方向显示的点数,768表示垂直方向的点数。
field of view:视野大小
视野变大(zoom out),则关注对象的分辨率降低;视野变小(zoom in)则分辨率提高。
3.4 对焦/调焦
- 为何调焦
用凸透镜做照像机镜头时,成的最清晰的像一般不会正好落在焦点上,最清晰的像到光心的距离(像距)一般不等于焦距,而是略大于焦距。
具体的距离与被照物体与镜头的距离(物距)有关。物距越大,像距越小,(但实际上总是大于焦距)。
照像时,被照的物体与相机(镜头)的距离不总是相同的。即像距不总是固定的。
要得到清晰的像,必须随着物距的不同而改变感光面到镜头光心的距离,即调焦。 - 是什么
调整的并不是真正的焦距,而是把投射到底片或感光元件上的图象调整到最清晰的这一过程。
调整整个镜头的位置(而不是镜头内的镜片)来控制像距,从而使成像最清晰。 - 如何调
普通的凸透镜的焦距是固定的,镜头的焦距是可调的,其焦距的最大值和最小值的比就是几倍变焦;
拉近拉远调的是镜头的焦距。手动对焦调的是像距,使成像清楚。
3.4.1 手动对焦
- 是什么
通过手工转动对焦环来调节相机镜头从而使拍摄出来的照片清晰的一种对焦方式。
3.4.2 自动对焦(AF)
- 是什么
由照相机根据被摄体距离的远近,自动地调节镜头的对焦距离。
自动对焦通常是在微量调整镜头,所以需要有相应的驱动机构。常用音圈马达VCM(Voice Coil Motor)、步进马达(Stepping Motor)、压电马达。
自动对焦模组结构:
3.4.3 多点对焦
当对焦中心不设置在图片中心的时候,可以使用多点对焦。