camera基础知识——1、camera模组简介
1. 前言
博主作为一个camera驱动码农,在刚接触camera知识的时候难免有点转变不过来,难以接受,博主也深有体会。看着厚厚的camera datasheet,不知道如何下手编写驱动代码。但是在编写代码之前,必须还是先要理解camera的基础知识,否则是不可能写出较好的驱动程序。本章主要以自己对于camera的理解,简单介绍一下camera模组的结构。
2.camera模组结构
摄像头模组(camera module)一般都有如下的几部分构成,分别是镜头(lens)、图像传感器(image sensor)、基排、排线所组成,如下图所示:
图 1. 模组结构图
如果是带有AF功能的摄像头模组(一般为手机摄像头),大多数都是采用VCM的方式,比上述的结构多一个线圈,通过给线圈加点使镜片垂直移动,从而达到对焦的功能。如果是带有防抖功能的摄像头,则是使得镜头也能够沿着水平方向移动,达到一个光学防抖的效果。
图2. 手机摄像头模组图
图3. 带AF功能模组结构图
我们常常说的sensor是指包装在模组里面的sensor soc,而模组一般是由专门的模组厂购买sensor soc之后根据需求自行选择不同的材料制作出不同规格和质量的模组,因此虽然是同一个型号的sensor,如果是不同的模组厂生产的,那么电路的连接,使用方法也是各不相同,具体的电路还需要根据模组厂提供的电路图为准。我们平时所讲的ov2640模组,指的就是它内部使用了ov2640的soc的模组。同时,即使是同一个厂家生产的模组,由于搭配的镜头不同或者其他的硬件上有一些差异,也会出现多个型号,镜头也是影响摄像头输出图像质量的一个重要因素。
对于摄像图的datasheet,是指摄像头原厂对其soc说明的datasheet;而模组的datasheet,则是指某个使用该sensor soc制作模组的模组厂对其光学特性,电气接口的描述文档,我们需要根据电气连接顺序安排原理图与主控的连接关系,或者我们反过来,根据我们的主控电路接口定义要求模组厂制作适合该主板的模组。
一般来说模组厂还会说明好vcm的型号,vcm driver型号。
3、摄像头模组选择
摄像头模组中sensor和镜头一般已经占了成本的90%以上,出来的画质也是由这两个所决定的。
(1)、根据你所能接受的价格,主板的接口,以及你需要的拍照和录像的分辨率,选择最合适的sensor
sensor的价格通常也占了模组价格的40%-60%,在保证分辨率/帧率能够满足要求,一定的成本下选择感光性更好,像素面积更大的sensor。
(2)、根据你所需要的sensor的用途,选择尺寸,视场角合适的镜头,如果需要视场角大的镜头,那么可以选择鱼眼摄像头(也就是我们通常说的广角摄像头)。但是对于鱼眼摄像头拍摄出来的图片,会有感觉有畸变的效果,实际上如果这种畸变效果也可以自己实现畸变的校正。
镜头主光线角度(CRA)要跟sensor的CRA一致,一般来说允许可以有少量的差异,否则会导致光线经过sensor表面透镜后,不能入射到正常的像素感光区域,如果后面的ISP处理不当,画面会出现迷宫格。 sensor存在CRA的原因是表面集光采用的微透镜有FOV(Field of view)的问题,因此超出的部分光线无法被手机;LENS的CRA就是最大像高处的珠光线与光轴的倾角;如果LENS与sensor的CRA不搭配的话,像高较大的位置,光线就无法被有效的收集,shading会被加重;
图4. 不带CRA校正的微透镜 图5. 无CRA校正时捕捉的图像显示阴影
图6. 带CRA校正的微透镜 图7. 有CRA校正时捕捉的图像
camera基础知识——1、camera模组简介相关推荐
- NB-IOT(4)---移远NB-IOT BC26模块模组简介和实际应用方向详解
移远NB-IOT BC26模块模组简介和实际应用方向详解 继BC95和BC28之后,2017年底移远在杭州发布了基于MTK平台的新款NB-IOT BC26模组. BC26基于联发科MT2625芯片平台 ...
- QUECTEL上海移远4G通讯CAT4模组EC20CEFAG模块串口调试指南之01物联网模组简介
本系列博文将系统性讲解物联网模组系列的实际使用和调试指南,以移远4G模组EC20为例(其他厂家模组的调试方法大同小异),加快嵌入式软硬件工程师对物联网模组调试和使用的上手速度,让你们的项目进度尽可能快 ...
- MTK Camera 基础知识
文章目录 数字成像系统流程综述 曝光 对焦马达 镜头(lens) MIPI数据与RAW数据的转换(未完待续) ISP的主要内容和Bayer Raw的处理 RGB.YUV和YCbCr三种颜色空间 补充 ...
- Unity3D基础知识之Camera摄像机及其属性
Unity3D基础知识之摄像机Camera 一.简介 Camera:附加了摄像机Camera组件的游戏对象,向玩家捕获和显示世界的设备,同时在一个场景中摄像机的数量不限. 组件:Transform:变 ...
- camera基础知识(1)
目录 camera module 镜头lens 光圈快门 音圈马达VCM 滤光片 image sensor: 摄像头工作原理大致如下 camera作为android系统中庞大的一个模块之一,camer ...
- 手机Camera基础知识
本文转自http://blog.csdn.net/xubin341719/article/details/7723725 自己修改了一下: 里面讲的东西都比较基础: 一.摄像头模组(CCM)介绍: 1 ...
- Camera | 1.Camera基础知识
一口君最近在玩瑞芯微的板子,之前写了几篇基于瑞芯微的文章,大家可以学习一下. <瑞芯微rk356x板子快速上手> <Linux驱动|rtc-hym8563移植笔记> <L ...
- android camera 显示过程,Android相机Camera基础知识
一.概述本章节主要讲述的Android相机Camera的相关知识点,主要包含三个方面,Android启动系统相机生成缩略图.Android启动系统相机生成原图以及Android自定义相机等. 二.An ...
- 摄像头模组简介与质量管控(连载三)
FROM:http://www.ci800.com/news/htmlnew/2012-4/33592.htm 上期和大家分享了A类核心芯片的质量管理,本期给大家讲述手机中被称谓"眼睛&qu ...
最新文章
- C#学习笔记(一)变量 常量 基本数据类型 其它
- 【干货】精通网红OSPF协议---进阶篇
- 卡顿严重_王者峡谷:S20出现bug?卡顿十分严重
- webBroser获取cookie
- 安卓系统内 的 安卓虚拟机
- Linux的实际操作:任务调度基本说明
- html5善于盒模型定位,2个小时上手html+css-003盒模型和定位
- 高品质美食PSD分层海报,吸睛有食欲
- Python Tricks —— 计算 1+1/2+1/4+...=2
- 文件管理系统源码_【程序源代码】人力资源管理系统
- idea修改项目编码
- SpringBoot(尚硅谷)
- LINUX MPEG4 DVR源代码,还包括一个可以跨平台运行的MPEG4 播放器(需要XVID与SDL开发库包)
- 从简单泛函到第二类拉格朗日方程
- Java类和对象:private/public/friendly/封装
- Ubuntu安装google中文输入法
- 流量、电量、弱网环境怎么测?
- NOIP2010导弹拦截
- ValidationError: Progress Plugin Invalid Options报错options should NOT have additional properties
- 植物肉品牌Z-Rou株肉举办杭州超级粉丝见面会,正式宣告进入杭州市场