相机的变焦,对焦和景深的理解和照相機的成像原理

2023-05-16

首先认识焦距是指平行光线经透镜折射或曲面镜反射后的会聚点,点到镜片中心的距离就是f焦距。相机成像时最清晰的位置就是感光阵列位于焦点处。

焦距的作用:焦距的大小决定着相机视野的范围大小,一般焦距越大视野越小,焦距越小视野就越大,如果相同的物体在长焦距和短焦距下拍摄,其大小是不一样的,如下图所示:

第二幅图里的是启用光学变焦,其移动的镜头不是原来第一幅里的镜头,其应当是多组镜头合成后的效果使得焦距变长了,(跟

数码相机里的变焦相机一样的,这里可能只是为了形象),可以看出在成像像素不变的情况下增大焦距,则可以放大物体,这种放大是

不会失真的(数码放大是会失真的)。

第三种把那部分像素区域通过插值之类的算法变大到原先的像素大小时,就是一种数码变焦,其是会失真的;其也是我们在调节摄像头分辨率时的结果,当我们把摄像头的分辨率调低后其也是值使用了一部分的像元面积,造成的结果是视野面积也是变小的,成小孔成像原理。

注意:当分辨率从低调高,是不会放大物体的,分辨率越高视野越大,如果要想放大则需调节焦距。有些网络摄像头在条低分辨率后其视野大小没有改变,其是对最高分辨率进行降采样得到的,方法,实际上是没有改变像元面积的。

对焦:对焦就是把镜片移动到适合的位置,其要实现清晰成像,則物體應當在兩倍焦距之外,像平面在一倍至兩倍焦距之間,這樣子就可以成倒立縮小的實像,這是照相機的原理。对焦有两种:自动对焦,手动对焦。

手动对焦:一般是用在单反相机上,凭个人主观感觉,使得調節后的成像面落在一倍至兩倍焦距之間的某個位置,使得清晰成像,其是通过操作对焦环来实现的。

自动对焦:手机就是自动对焦的,点击某个位置,手机会通过摄像头里的马达不断调整镜头位置,然后通过软件分析该位置的图像轮廓是否清楚,

如果清楚则完成移动,从而实现某个位置的清晰成像。

相机有变焦相机和定焦相机,其如图所示:

 

 

 变焦相机有光学变焦与数码变焦-----1.光学变焦是依靠摄像机的镜片组合来实现变焦的,通过改变镜头里的镜片之间的距离实现的,这里的变焦环就是通过改变镜头之间的距离,从而实现改变焦距,(当改变焦距后,此时看到的图像是模糊的,要通过改变对焦环来把镜头组合移动合适的位置,即把像平面位於一倍至兩倍焦距之間,实现清晰成像),其可以通过镜头组合来代替很多不同定焦距的凸镜头,因为每种凸镜头有着固定的焦距,定焦相机就是因为只要一个镜头,所以拍摄的清晰的物距是固定的。  另外通俗的话:移动镜片组来改变焦距,一片凸透镜的焦距是固定的,如果在它后面再放一片凹透镜并移动,就会改变屈光度,焦距就随之改变。焦距变长了,视角范围就小,小范围的景物拉来充满画面,就是近了,放大了。反之则.........。所以变焦相机是先调变焦环(也是视野角度),达到自己想放大的倍数,然后再调对焦环使成像清晰。   

 2.数码变焦:是通过数码相机的处理器,把图片内的每个像素面积增大,从而达到放大的目的,当前变焦过的时图像就会出现失真,相当于opencv里的插值。手机在自动对焦完成后,把画面拉大,就是一种数码变焦,可以看到,拉大后的物体还是很多噪点的。

注意:当物距不变的时候,我们调节变焦镜头时,则可以看到,相同物距可以有两次清晰成像,是因为这物距都是那个焦距的景深范围,但是这两侧清晰成像,肯定有一次不是

正好景深的。

 

相机景深:其指的是在某个物距之间,还能够清晰成像的距离,其如下所示:

注意这里有个问题:为什么拍摄远处物体是使用的长焦距反而景深越大?只是由于景深的大小有很多限制条件,景深越跟拍摄距离L有关,其中L越大其值越越大,他的增速大于焦距的减速,所以要记住控制单一变量。

第二个问题:为什么使用的短焦距拍近景时其景深也很小?这是因为拍摄距离的降速大于短焦距的增速。

网上的一些拍摄景深范围:

其跟相机很多参数有关系,景深为在纵深上,相对清晰的距离。

一是镜头的焦距。越大,景深越浅,虚化的越重。广角端是难以虚化背景的。

二是镜头的光圈,越大,景深越浅,虚化的越重。

三是拍摄的距离,越近,景深越浅,虚化的越重。

四是让主体远离背景,则虚化的越重

 

变焦相机的不好:

参考文献:

凸透镜的成像原理演示------很精妙

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

相机的变焦,对焦和景深的理解和照相機的成像原理 的相关文章

  • Freeman链码,差分码,归一化链码,归一化差分码

    Freeman链码是指用曲线起始点的坐标和边界点方向代码来描述曲线或边界的方法 xff0c 常被用来在图像处理 计算机图形学 模式识别等领域中表示曲线和区域边界 它是一种边界的编码表示法 xff0c 用边界方向作为编码依据 xff0c 为简
  • Matlab关联m文件与m文件关联设置

    MATLAB安装后经常出现m文件不能关联到matlab打开 xff0c 很烦恼 网上有一些设置教程 xff0c 比如 xff1a 链接一 按照链接方式一方式二设置后出现报错 修改注册表亦没用 下面链接 链接二 链接三 链接四 都没有效果 代
  • 图像处理形态学椭圆形模板结构元素的设计与实现

    在图像处理中 xff0c 经常要用到形态学操作 xff0c 形态学操作中的结构元素有很多 xff0c 如点结构 十字架结构 圆结构 矩形结构 椭圆形结构等等 本文将介绍椭圆形结构的实现 主要结合OpenCV实现 具体如下 xff1a inc
  • 3维空间旋转3维空间矩阵旋转及旋转变换

    本文将实现三维空间中的旋转和平移变换 xff0c 即将三维空间中的一个向量 或者一个空间图形 移动到另一个位置 如下图所示 xff1a 如上图所示 xff0c 由矢量一移动到矢量二 三维空间中的移动可以分为旋转和平移 设矢量一在坐标位置 X
  • 回归方程推导

  • Mac终端代理设置

    title Mac终端代理设置 tags mac 终端设置代理 打开终端执行 export http proxy 61 http 127 0 0 1 1087 export https proxy 61 http 127 0 0 1 108
  • Unity3D游戏作品大盘点

    原文链接 xff1a http www unitymanual com 404 html 经典重现 新仙剑OL 新仙剑OL 采用跨平台Unity3D引擎 xff0c 耗资数千万 xff0c 历时三年多 xff0c 由台湾大宇正版授权 xff
  • IAR编译器的ICF链接脚本

    测试代码如下 xff1a task c span class token macro property span class token directive keyword pragma span default variable attr
  • 2020-10-24

    PendSV中断控制器地址 NVIC INT CTRL EQU 0xE000Ed04 触发PendSV NVIC PENDSV SET EQU 0x10000000 PendSV优先级控制地址 NVIC SYSPRI2 EQU 0xE000
  • Linux下如何配置Vlan

    VLAN是虚拟局域网的缩写 一个物理交换机上可以共存多个VLAN xff0c 这些交换机通过Linux软件配置 xff0c 而不是通过硬件接口 xff08 您仍然需要配置实际的硬件交换机 xff09 VLAN作为名称建议一次组合多个LAN
  • 附加项-linux下ssh的config文件讲解-闫刚

    在 ssh 下创建 config文件 xff0c 可以添加多个账号 xff0c 减少认证的问题 并以如下格式编辑配置文件 vi config HostName xff1a 是目标主机的主机名 xff0c 也就是平时我们使用ssh后面跟的地址
  • 第一章 第九节 如何Doxygen为代码生成html文档-闫刚

    Doxygen是一款文档生成工具 xff0c 它可以从代码中提取出相应的文档 xff0c 并组织 xff0c 输出成各种漂亮的文档 xff08 如HTML xff0c PDF xff0c RTF等 xff09 doxygen让你变成一位有品
  • 第二章 第二节 px4的uORB工作原理分析 闫刚

    px4中的uorb是px4非常核心的数据通信机制 xff0c 所有线程的通信都是靠uorb完成 xff0c 用过的人可能 xff0c 仅仅知道在想要获取orb数据的时候 xff0c 先进行订阅 xff0c 在发送orb消息之前 xff0c
  • 闫刚 qgroundcontrol地面站通信流代码架构

    qgroundcontrol开发者文档中说明了qgc中的各个链路流向在文档中说明的很清楚 xff0c 下面配套源代码进行讲解整个qgc地面站的数据流向过程 qgroundcontrol通信 在 https dev qgroundcontro
  • 闫刚 linux平台实现IMU的DriverFramework

    文章目录 介绍资源用户态spi包1 spidev的设备节点spidev0 3表示spi0的chip select3 内核态设备树注册spidev设备 介绍 讲解linux的spi驱动架构 包括用户空间和内核空间如何配合使用spi驱动 通过p
  • 闫刚 stm32的usb的hal软件架构原理讲解

    资源 stm32 usb cubemx md 闫刚 stm32的usb的hal软件架构原理讲解 一 usb基础 stm32的usb也是很多公司都在使用的接口 xff0c usb全速可以达到12M s 作为虚拟串口接口 xff0c 还是不错的
  • 闫刚 px4架构的cmake移植到linux上

    文章目录 px4架构的cmake移植到linux上仓库地址 xff1a 图一 PX4的源码cmake架构图二 px4添加一个驱动模块的CMakeLists txt文件图三 openSTM的源码架构图四 openSTM中添加子模块CMakeL
  • 闫刚 nuttx workqueue实现原理

    文章目录 资源工作队列实现添加工作对象工作队列执行进程 使用注意 资源 nuttx wqueue md 工作队列实现 优点 xff1a 最短时间调度 缺点 xff1a 工作队列执行完后 xff0c 需要重新创建 添加工作对象 span cl
  • 闫刚 px4的gps驱动原理

    文章目录 资源1 rcS启动2 gps status内容 资源 px4 gps md 标题 xff1a 闫刚 px4的gps驱动原理 1 rcS启动 固件版本 xff1a V1 8 0 gps start 2 gps status内容 IN
  • 闫刚 px4_uavcan_dsdl的原理

    文章目录 资源简介1 cannode构建分析1 1 找到uavcan的单板1 2 分析一下UAVCAN下的CAMKE1 3 1 查看dsdl下的文件1 3 2 查看输出路径下的include dsdlc generated 2 我们添加自己

随机推荐