模块[camera]_变焦与对焦(转自csdn)

2024-06-13 13:38

本文主要是介绍模块[camera]_变焦与对焦(转自csdn),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!


转自:http://blog.csdn.net/lizhiguo0532/article/details/6918849#comments

声明:此原创非彼原创,资料来源于网络,只是经过加工整理罢了。如果引用了你的资料并没有说明出处,敬请原谅!仅供学习参考。

 

一、变焦

       通常指通过移动镜头内的透镜镜片位置来拉长或缩短焦距,也叫ZOOM。

       变焦目前可以分为光学变焦和数字变焦两种类型:

       光学变焦

               光学变焦是通过移动镜头内部镜片的相对位置来改变焦点的位置,改变镜头焦距的长短,并改变镜头的视角大小,从而实现影像的放大与缩小。如果被拍摄的

       物体位置保持不变,镜头的焦距与物体的放大倍率会呈现正比例的关系,如果要用一个词来形容光学变焦的话,那就是“望远镜”。(成像面水平方向移动)

       

       数字变焦

               数字变焦是通过可拍照手机处理器,把图片内的每个像素面积增大,从而达到放大的目的,就像我们在ACDSEE等图像处理软件中,强行拉大图像的像素一样,

       只不过这个过程在手机中进行,把原来SENSOR上的一部分像素使用插值手段进行放大。与光学变焦不同的是,数码变焦是在SENSOR垂直方向上的变化,而给人以

       变焦效果的。由于整个过程焦距没有任何变化,所以图像质量是会随着放大比例的增加,逐渐下降。(成像面垂直方向缩放)

               数字变焦也可以分为插值算法变焦伪数字变焦两种:

               插值算法变焦:对图像进行插值运算,将图像的尺寸扩大到所需的规格,这种算法就其效果而言,并不理想,尤其是当使用在手机上的时候,手机上的摄像头

       本身得到的数据就有较大的噪声,再插值的话,得到的图像几乎没法使用。

               伪数字变焦:当摄像头不处在最大分辨率格式的情况下,比如130 万像素的 sensor 使用 640*480 的规格拍照时,仍旧设置 sersor 工作在 1280*960 的分辨率

       下,而后通过采集中央部分的图像来获取 640*480 的照片,使得在手机上看来所拍物体尺寸被放大了一倍。这种办法几乎不需要额外的算法支持,对图像质量也没有影

       响,缺点是只有小尺寸情况下可以采用。

 

       光学变焦不会牺牲清晰度

       数字变焦显著牺牲清晰度

       

 

二、对焦(调焦)

       1. 对焦概念

               用凸透镜做照像机的镜头时,它成的最清晰的像一般不会正好落在焦点上,或者说,最清晰的像到光心的距离(像距)一般不等于焦距,而是略大于焦距。

       具体的距离与被照的物体与镜头的距离(物距)有关,物距越大,像距越小,(但实际上总是大于焦距)。

 

               由于我们照像时,被照的物体与相机(镜头)的距离不总是相同的,比如给人照像,有时,想照全身的,离得就远,照半身的,离得就近。也就是说,像距不总是

       固定的,这样,要想照得到清晰的像,就必须随着物距的不同而改变感光面到镜头光心的距离,这个改变的过程就是我们平常说的“调焦”。所以,我们所说的“调焦”

      调整的并不是真正意义上的焦距,而是只不过在摄影中,把投射到底片或感光元件上的图象调整到最清晰这一过程达成共识的称谓罢了。

 

              对焦实际上是调整整个镜头的位置(而不是镜头内的镜片)的位置,来控制像距,从而使成像最清晰。

       

      2. 对焦分类

               对焦可以分为手动对焦,自动对焦,多点对焦:

               手动对焦,它是通过手工转动对焦环来调节相机镜头从而使拍摄出来的照片清晰的一种对焦方式。

               自动对焦,由照相机根据被摄体距离的远近,自动地调节镜头的对焦距离。

               多点对焦,也叫区域对焦,当对焦中心不设置在图片中心的时候,可以使用多点对焦。常见的多点对焦为5点,7点和9点对焦。

 

      3. 自动对焦原理

                

               更多可参考系列文章:

              AF系统:自动调焦(AF)原理

              http://www2.xitek.com/info/showarticle.php?id=1039

              AF系统:主动型自动调焦系统

              http://www2.xitek.com/info/showarticle.php?id=1041

              AF系统:相位检测被动型自动调焦系统

              http://www2.xitek.com/info/showarticle.php?id=1043

             AF系统:透镜分离相位检测原理

             http://www2.xitek.com/info/showarticle.php?id=1048

             AF系统:TCL相位检测原理

             http://www2.xitek.com/info/showarticle.php?id=1045

             AF系统:一些与自动对焦有关的新概念

             http://www2.xitek.com/info/showarticle.php?id=1055

             AF系统:自动调焦系统框图

             http://www2.xitek.com/info/showarticle.php?id=1051

 

            不过大部分手机用camera都没有AF功能,最近接触的OV5640 camera sensor具有AF功能,另外模组厂提供的CCM在结构体上和普通的CCM也有一些差别。

            自动对焦通常是在微量调整镜头,所以需要有相应的驱动机构。通常来说,Voice Coil Motor(音圈马达VCM),Stepping Motor(步进马达),Piezoelectric Motor(压电马达)这3种。此外还有通过改变镜头光学特性的Liquid Lens(液体镜头)而达到真正的变焦的方法。

             

            

           自动对焦模组的基本结构:

           

             

           

     4. VCM音圈马达

          所谓音圈直线电机(Voice Coil Motor)因其结构类似于喇叭的音圈而得名。具有高频响、高精度的特点。

          

          日韩音圈马达的基本结构:

          

          音圈马达的原理:安培力定律(弗莱明左手法则)

          

         空间有磁场B,在横切磁场的电线通电流I,电线产生向上方向的力F。

 

         音圈马达评价指标:

                 手机AF音圈马达(圈内叫法:透镜驱动装置)。评价一个音圈马达,主要是看一个电流和行程距离的比值。一般现在都是15mA作为启动电流,

         之后如果每上升10mA所能驱动的行程距离是相等的那算是一个比较合格的产品,如果精度能达到每上升5mA也能行程相等,那就是很优秀厂家的产品,

         依次类推...而不是像现在的某些厂家鼓吹的最大行程,最大耗电量,最大功率,尺寸大小。当然这些也都是不可烧的衡量指标。

                 

            音圈马达的基本动作:

            

          某种AF镜头的结构以及镜头驱动原理:

           

          

          OV5640 sensor IC集成了VCM控制器,电路模块如图:

          

         

这篇关于模块[camera]_变焦与对焦(转自csdn)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1057462

相关文章

python: 多模块(.py)中全局变量的导入

文章目录 global关键字可变类型和不可变类型数据的内存地址单模块(单个py文件)的全局变量示例总结 多模块(多个py文件)的全局变量from x import x导入全局变量示例 import x导入全局变量示例 总结 global关键字 global 的作用范围是模块(.py)级别: 当你在一个模块(文件)中使用 global 声明变量时,这个变量只在该模块的全局命名空

深入探索协同过滤:从原理到推荐模块案例

文章目录 前言一、协同过滤1. 基于用户的协同过滤(UserCF)2. 基于物品的协同过滤(ItemCF)3. 相似度计算方法 二、相似度计算方法1. 欧氏距离2. 皮尔逊相关系数3. 杰卡德相似系数4. 余弦相似度 三、推荐模块案例1.基于文章的协同过滤推荐功能2.基于用户的协同过滤推荐功能 前言     在信息过载的时代,推荐系统成为连接用户与内容的桥梁。本文聚焦于

Jenkins构建Maven聚合工程,指定构建子模块

一、设置单独编译构建子模块 配置: 1、Root POM指向父pom.xml 2、Goals and options指定构建模块的参数: mvn -pl project1/project1-son -am clean package 单独构建project1-son项目以及它所依赖的其它项目。 说明: mvn clean package -pl 父级模块名/子模块名 -am参数

寻迹模块TCRT5000的应用原理和功能实现(基于STM32)

目录 概述 1 认识TCRT5000 1.1 模块介绍 1.2 电气特性 2 系统应用 2.1 系统架构 2.2 STM32Cube创建工程 3 功能实现 3.1 代码实现 3.2 源代码文件 4 功能测试 4.1 检测黑线状态 4.2 未检测黑线状态 概述 本文主要介绍TCRT5000模块的使用原理,包括该模块的硬件实现方式,电路实现原理,还使用STM32类

python内置模块datetime.time类详细介绍

​​​​​​​Python的datetime模块是一个强大的日期和时间处理库,它提供了多个类来处理日期和时间。主要包括几个功能类datetime.date、datetime.time、datetime.datetime、datetime.timedelta,datetime.timezone等。 ----------动动小手,非常感谢各位的点赞收藏和关注。----------- 使用datet

C8T6超绝模块--EXTI

C8T6超绝模块–EXTI 大纲 控制流程结构体分析EXTI实现按键 具体案例 控制流程 这里是流程框图,具体可以去看我STM32专栏的EXTI的具体分析 结构体分析 typedef struct {uint32_t EXTI_Line; // 中断/事件线EXTIMode_TypeDef EXTI_Mode; // EXTI 模式EXTITrigger_TypeDef EXTI_

1、创建多模块的maven springboot项目

现在的java的项目都是多模块的,这次也跟个风。 目标:实现下述结构 项目AcedBoot, 子模块:         aced-api 对外提供接口,         aced-web 给前端提供接口,         aced-service 服务层,         aced-dao 数据底层,包含数据库mapper和实体类entity,         aced-commo

Vue2电商项目(二) Home模块的开发;(还需要补充js节流和防抖的回顾链接)

文章目录 一、Home模块拆分1. 三级联动组件TypeNav2. 其余组件 二、发送请求的准备工作1. axios的二次封装2. 统一管理接口API----跨域3. nprogress进度条 三、 vuex模块开发四、TypeNav三级联动组件开发1. 动态展示三级联动数据2. 三级联动 动态背景(1)、方式一:CSS样式(2)、方式二:JS 3. 控制二三级数据隐藏与显示--绑定styl

CSDN:OpenStack镜像制作教程指导(全)

本系列文章主要对如何制作OpenStack镜像的过程进行描述记录,涉及基本环境准备、常见类型操作系统的镜像制作。 让你可以从零开始安装一个操作系统,并支持个性化制作OpenStack镜像。 CSDN:OpenStack镜像制作教程指导(全) OpenStack镜像制作系列1—环境准备 OpenStack镜像制作系列2—Windows7镜像 OpenStack镜像制作系列3—Windows

4-4.Andorid Camera 之简化编码模板(获取摄像头 ID、选择最优预览尺寸)

一、Camera 简化思路 在 Camera 的开发中,其实我们通常只关注打开相机、图像预览和关闭相机,其他的步骤我们不应该花费太多的精力 为此,应该提供一个工具类,它有处理相机的一些基本工具方法,包括获取摄像头 ID、选择最优预览尺寸以及打印相机参数信息 二、Camera 工具类 CameraIdResult.java public class CameraIdResult {