相机等效焦距

1. 背景

物理焦距我们很熟悉,但是在接触实际的相机参数时,相机厂家会提到一个参数等效焦距,甚至有时候不提供物理焦距,这时候如果我们得到真实的物理焦距需要进行一定的转换.在介绍两者之间的转换关系前,先介绍一下等效焦距的由来.

如上图,假设在某一个镜头,其成像面会出现图上圆形的视野,假设红色框为全画幅CMOS,蓝色框为半画幅,可见相同镜头下,即相同焦距下,由于画幅的不同最终导致的视野也不同,而历史原因导致人们更加习惯了用焦距来评估相机的视角,因此为了统一不同画幅下焦距对视角的影响,人们引入了等效焦距.
既然是等效,那么必须选取一个标准才能进行所谓的等效.由于全画幅(36x24mm)(也加35mm相机)比较经典,所以就选用全画幅作为标准画幅.

2. 换算方式

了解了等效焦距的背景及意义,要计算等效焦距和物理焦距就很简单.观察上图,假设感光元件A是全画幅的CMOS,而感光元件B是某一种画幅下的CMOS,物理焦距 f p h y f_{phy} fphy 和 等效焦距 f e q u f_{equ} fequ 通过相似三角形就可以得到:

f e q u = f p h y s e q u s p h y = f p h y ∗ c f_{equ} = f_{phy} \frac{s_{equ}}{s_{phy}} = f_{phy} * c fequ=fphysphysequ=fphyc
上式中, s e q u s_{equ} sequ s p h y s_{phy} sphy 均指的是画幅的对角线长度.至于为什么选用对角线,是因为不同画幅可能比例不一致,为了统一便选用了对角线. c c c 称为焦距系数.可见等效焦距与物理焦距只相差一个画幅对角线的比例.

3. 不同规格的CMOS的焦距系数

规格长度/mm宽度/mm对角线/mm焦距系数
全画幅362443.271
4/317.313.021.642
1/1.7英寸7.765.829.74.46
1/1.8英寸7.25.38.944.84
1/2.0英寸6.44.88.05.41
1/2.5英寸5.764.297.186.02

CMOS的规格较多,不一一列举.

4. 举个栗子

在做项目时候遇到这个问题,大疆的御3飞机配备的是M3TD相机,其中广角相机的参数如下:

  • CMOS: 4/3
  • 分辨率: 4032x3024
  • 视角: 84deg
  • 等效焦距: 24mm

大疆没有直接给出物理焦距,所以唯有自己换算.通过上面的表很容易得出物理焦距为12mm,为了验证其正确性,使用视角和CMOS的尺寸进行如下计算
t a n ( 84 d e g 2 ) ≈ 21.64 / 2 12 tan(\frac{84deg}{2}) \approx \frac{21.64/2}{12} tan(284deg)1221.64/2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/19962.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C++ vector的使用和简单模拟实现(超级详细!!!)

目录 前言 1.STL是什么 2.vector使用 2.1 vector简介 2.2 常用接口函数 1. 构造函数 2.operator[ ]和size,push_back 3. 用迭代器进行访问和修改 4. 范围for遍历 5.修改类型函数 pop_back find insert erase 6. 容量相关函数capacity resize reserve 3.…

05.爬虫---urllib与requests请求实战(GET)

05.urllib与Requests请求实战GET 1.Urllib模块2.Requests模块3.对比4.实战 GET请求 Python中的GET请求也是HTTP协议中的一种请求方法,用于向服务器请求数据。与POST请求不同,GET请求将数据以查询字符串的形式附加在URL后面,而不是封装在请求体…

Windows10专业版系统安装Hyper-V虚拟机软件

Windows10专业版系统安装Hyper-V虚拟机软件 适用于在Windows10专业版系统安装Hyper-v虚拟机软件。 1. 安装准备 1.1 安装平台 Windows 10 1.2. 软件信息 软件名称软件版本安装路径windowswindows 10 专业版Hyper-vHyper-v 2. Hyper-v搭建 2.1打开cmd软件 2.2打开控制面…

20 厂商文档学习资料查询

01 厂商介绍 新华三(H3C) 新华三是一家专注于IT基础设施产品和解决方案的公司,提供从网络设备到数据中心解决方案的全套服务。它是中国领先的网络解决方案供应商之一,业务涵盖企业网、数据中心、云计算等多个领域。 华为&#x…

Golang dlv远程debug

1. 前期准备 1.1. dlv安装 1.1.1. go install安装 go install github.com/go-delve/delve/cmd/dlvlatest1.1.2. 手动安装 下载 linuxx86 架构 二进制文件 📎dlv.linux.x86.zip zip文件,下载后( 如果没权限,记得 执行chmod ax…

golang语言的gofly快速开发框架如何设置多样的主题说明

本节教大家如何用gofly快速开发框架后台内置设置参数,配置出合适项目的布局及样式、主题色,让你您的项目在交互上加分,也是能帮你在交付项目时更容易得到客户认可,你的软件使用客户他们一般都是不都技术的,所以当他们拿…

prometheusgrafananode_export搭建监控平台

一、环境要求 1、docker安装docker环境 2、docker安装prometheus 3、docker安装grafana 4、node-exportor(安装在被测服务器上) 5、我的服务器是Ubuntu 二、docker 安装prometheus 1、下载Prometheus镜像 docker pull prom/prometheus 2、检查端口是否被占用 安装netstat命…

Android MediaCodec 简明教程(九):使用 MediaCodec 解码到纹理,使用 OpenGL ES 进行处理,并编码为 MP4 文件

系列文章目录 Android MediaCodec 简明教程(一):使用 MediaCodecList 查询 Codec 信息,并创建 MediaCodec 编解码器Android MediaCodec 简明教程(二):使用 MediaCodecInfo.CodecCapabilities 查…

可变参数

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 在Python中,还可以定义可变参数。可变参数也称不定长参数,即传入函数中的实际参数可以是任意多个。 定义可变参数时&#xf…

【Linux】Linux环境基础开发工具_3

文章目录 四、Linux环境基础开发工具2. vim3. gcc和g动静态库的理解 未完待续 四、Linux环境基础开发工具 2. vim vim 怎么批量化注释呢?最简单的方法就是在注释开头和结尾输入 /* 或 */ 。当然也可以使用快捷键: Ctrl v 按 hjkl 光标移动进行区域选择…

【LeetCode】38.外观数列

外观数列 题目描述: 「外观数列」是一个数位字符串序列,由递归公式定义: countAndSay(1) "1"countAndSay(n) 是 countAndSay(n-1) 的行程长度编码。 行程长度编码(RLE)是一种字符串压缩方法&#xff0c…

LeetCode374猜数字大小

题目描述 我们正在玩猜数字游戏。猜数字游戏的规则如下:我会从 1 到 n 随机选择一个数字。 请你猜选出的是哪个数字。如果你猜错了,我会告诉你,我选出的数字比你猜测的数字大了还是小了。你可以通过调用一个预先定义好的接口 int guess(int n…

民国漫画杂志《时代漫画》第33期.PDF

时代漫画33.PDF: https://url03.ctfile.com/f/1779803-1248635648-d8235b?p9586 (访问密码: 9586) 《时代漫画》的杂志在1934年诞生了,截止1937年6月战争来临被迫停刊共发行了39期。 ps: 资源来源网络!

JVM优化之垃圾收集器

JVM优化之垃圾收集器 Serial收集器Parallel Scavenge收集器ParNew收集器 如果说垃圾收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。 没有最好的垃圾收集器,只有根据具体应用场景选择适合自己的垃圾收集器。 Serial收集器 #使用方…

apache大数据各组件部署搭建(超级详细)

apache大数据数仓各组件部署搭建 第一章 环境准备 1. 机器规划 准备3台服务器用于集群部署,系统建议CentOS7+,2核8G内存 172.19.195.228 hadoop101 172.19.195.229 hadoop102 172.19.195.230 hadoop103 [root@hadoop101 ~]# cat /etc/redhat-release CentOS Linux rele…

飞腾+FPGA多U多串全国产工控主机

飞腾多U多串工控主机基于国产化飞腾高性能8核D2000处理器平台的国产自主可控解决方案,搭载国产化固件,支持UOS、银河麒麟等国产操作系统,满足金融系统安全运算需求,实现从硬件、操作系统到应用的完全国产、自主、可控,是国产金融信…

基于51单片机多功能防盗报警proteus仿真( proteus仿真+程序+设计报告+原理图+讲解视频)

基于51单片机多功能防盗报警系统 1. 主要功能:2. 讲解视频:3. 仿真4. 程序代码5. 设计报告6. 原理图7. 设计资料内容清单&&下载链接 基于51单片机多功能防盗报警系统( proteus仿真程序设计报告原理图讲解视频) 仿真图proteus8.9及以上…

Spring boot 随笔 1 DatasourceInitializer

0. 为啥感觉升级了 win11 之后,电脑像是刚买回来的,很快 这篇加餐完全是一个意外:时隔两年半,再看 Springboot-quartz-starter 集成实现的时候,不知道为啥我的h2 在应用启动的时候,不能自动创建quartz相关…

设计师竞品分析全攻略:高效指南!

在我们的设计工作中,竞争产品的分析非常重要。通过对市场上竞争产品的分析,设计师可以在短时间内快速了解其产品在整个市场中的定位。 同时,竞争产品分析也为设计师提供了可量化的评价标准,避免了过于主观的观点,帮助…

管道液位传感器怎么接线

如今,随着科技智能化的发展,检测液位的方法也越来越多,管道液位传感器是检测水管缺水的传感器,利用光学原理,通过液体在水和空气中的折射不同来判断传感器位置液位的变化,管道液位传感器怎么接线&#xff1…