[笔记] CCD相机测距相关的一些基础知识
1.35mm胶片相机等效焦距
https://zhuanlan.zhihu.com/p/419616729
拿到摄像头拍摄的数码照片后,我们会看到这样的信息:

这里显示出了两个焦距:一个是实际焦距:5mm,一个是等效焦距:25mm。
实际焦距很容易理解——就是镜头到CCD感光元件所在的焦平面的距离。但是这个35mm等效焦距是什么意思?——它和CCD感光元件的幅面有关。对于普通相机和胶卷,似乎有一个约定俗称的幅面标准——35mm相机或者摄像机的成像尺寸是:36*24mm。
因为CCD感光原件一般更小,为了拍出35mm相机的效果,它的焦平面就只能前移,更靠近摄像头。然后成像之后,拍出的效果近似与35mm相机的拍摄效果相同——它其实是为了适应老一代摄影师的习惯。

计算等效焦距时,不变量是角度——实际焦距与画幅的比例:
比如对于1/2.3英寸的CCD感光原件,那个6.22 x 近似等于 = 36/5.57 = 6.46.
2.清晰成像 - 超焦距
这是个景深的概念,这个问题似乎有个悖论,我们认为镜头是个凸透镜,而凸透镜成像,焦平面不就是对应无穷远平行光射来的聚焦位置吗?事实上,最终成像时,相机的CCD镜头始终不会放置在焦平面的位置——因为如果这样做你无法解释背景虚化。


上面的表格,是一份不同光圈和摄像头焦距作用下,超焦距对照表。所谓超焦距,就是针对特定焦距的镜头,和特定的光圈,达到成像距离延展至无穷远的成像微调速查表,比如:
如果选用f/4光圈,如果当前镜头焦距是20mm, 只要把焦平面对准到3.57米的物体,清晰成像,就可以获得从1.79米到无穷远的超焦距效果。
2.1定焦相机也需要调焦
- 有一个问题,定焦相机也需要调焦?
是的,定焦相机也需要调焦。虽然定焦镜头有固定的焦距,但是拍摄距离不同的物体时仍然需要调整对焦以确保物体清晰。对焦的目的是使物体的影像聚焦在传感器上,这样才能获得清晰的图像。
- 这是个机械装置还是。。。?
对焦通常涉及到机械装置。在相机中,对焦是通过调整镜头与图像传感器之间的距离来实现的。这通常由相机的自动对焦系统或手动对焦环控制。自动对焦系统使用传感器和电动马达来实现对焦,而手动对焦则是通过摄影师旋转镜头的对焦环来调整焦距,直到物体清晰为止。因此,无论是自动对焦还是手动对焦,对焦机制都涉及到机械装置的调整。
- 即使是那种焦距非常短比如3.6mm的摄像头,也需要调焦,对吧?
是的,即使是焦距非常短的摄像头,比如3.6mm的摄像头,也需要调焦。尽管焦距很短,调焦的原理和过程仍然是类似的。摄像头需要确保被拍摄物体的影像能够清晰地投射在传感器上,这样才能产生清晰的图像或视频。因此,无论是短焦镜头还是长焦镜头,调焦是确保图像质量的重要步骤之一。
- 这种调焦其实是个微调,对啊?因为总的焦距已经确定。
是的,你说得对。对焦过程中的调整通常是微调,因为镜头的总焦距是固定的,但在不同距离的拍摄中,需要微调镜头与传感器之间的距离,以确保被拍摄物体清晰投射在传感器上。这种微调可以是自动的(由相机的自动对焦系统完成)或者是手动的(由摄影师通过对焦环完成),但其目的都是为了获得最佳的图像质量。
附录A 目前工业相机参数比对
<待续...>
案例一 某H相机
参数:
- 200万 1/2.7" CMOS ICR日夜型筒型网络摄像机。
- 1920×1080 @ 25 fps 实时(最高)
- 高效红外灯,使用寿命长,照射距离最远可达30米(I3)/50米(I5)/80米(I8)
- 功耗:I3:5W MAX; I5:7W MAX; I8:10W MAX
- ICR红外滤片式自动切换,smart IR防止过曝
- PoE供电功能(选配)
- IP67级防尘防水
- 接口:M12
- 4 mm,水平视场角: 90.3°;( 6mm(55.2°);8mm(40.3°);12mm(26.3°)可选)
- 1/2.7" Progressive Scan CMOS
- 1/3秒至1/100,000秒
- 动态范围120db
- ONVIF(PROFILE S,PROFILE G), CGI,ISAPI
相关文章:
[笔记] CCD相机测距相关的一些基础知识
1.35mm胶片相机等效焦距 https://zhuanlan.zhihu.com/p/419616729 拿到摄像头拍摄的数码照片后,我们会看到这样的信息: 这里显示出了两个焦距:一个是实际焦距:5mm,一个是等效焦距:25mm。 实际焦距很容易…...
【ai】tx2-nx :查看cuda和cudnn
JetSon-nano板卡_从sd卡烧录到tensorRT部署_一条龙 查看 cuda 版本 nvidia@tx2-nx:~$ nvcc -v nvcc fatal : No input files specified; use option --help for more information nvidia@tx2-nx:~$ nvcc -V nvcc: NVIDIA Cuda compiler driver Copyright © 2005-2021 NV…...
webpack 中 require.context() 的用法
一、什么是 require.context It allows you to pass in a directory to search, a flag indicating whether subdirectories should be searched too, and a regular expression to match files against. – webpack 官方说明 一个 webpack 的 api ,通过该函数可以获…...
漫画 | “本世纪最重要的一篇硕士论文诞生了!”
后记:本来想写信息论的,开了一个头以后,不知道怎么就拐到布尔代数那里去了,还好,最终还是和香农扯上了关系。 看过《编码》的同学对中间有一段可能有点熟悉,这一段是改编自《编码》第十章中的内容ÿ…...
Gone框架介绍29 - 在Gone中使用gRPC通信
gone是可以高效开发Web服务的Golang依赖注入框架 github地址:https://github.com/gone-io/gone 文档地址:https://goner.fun/zh/ 文章目录 使用gRPC通信编写proto文件,生成golang代码编写服务端代码注册客户端编写配置文件测试总结 使用gRPC通…...
开源一套Trados Sdlxliff 对比工具
开源一套Trados Sdlxliff 对比工具 在Trados翻译过程中经常对需要进行版本控制和对比,例如对比不同设置下生成的sdlxliff文件,对比不同的机器翻译结果以及对比机器翻译和人工翻译,对比翻译和审校等等。 当然SDL官方也提供了对比工具 https:…...
百度网盘 url 正则表达式
匹配 https://pan.baidu.com/s/1NmVIJiI2Ot8MkI-vxxNPTg?pwdxxxx https://pan.baidu.com/s/[a-zA-Z0-9\-]*(\?pwd[a-zA-Z0-9]{4})?该正则表达式匹配以 https:// 开头,后面跟着 pan.baidu.com/s/ 或 yun.baidu.com/s/,最后跟着一串由大小写字母、数字…...
【stable diffusion】ComfyUI扩展安装以及”127.0.0.1拒绝了我们的连接请求“解决记录
目录 扩展安装”127.0.0.1拒绝了我们的连接请求“解决记录操作1操作2操作3操作4总结扩展安装 虽然大家都推荐将扩展包直接放到extension文件夹的方式,但我还是推荐直接在sd webui的扩展处下载,酱紫比较好维护一点,我个人感觉。 按照上图顺序点击会出现”URLError: <url…...
OceanBase 列存中多列过滤性能解析
今天有同事问我,列存大宽表场景下,如果在多个列上有等值过滤条件,OceanBase 的性能是不是无法满足要求? Hi 晓楚,帮评估个OTS替换场景 大概1亿大宽表,查询姿势就是任意字段的组合,进行等值查询g…...
嵌入式实验---实验二 中断功能实验
一、实验目的 1、掌握STM32F103中断程序设计流程; 2、熟悉STM32固件库的基本使用。 二、实验原理 1、在上一章的实验基础上,添加一个按键和一个LED; 2、使用中断的方式实现以下两个功能: (1)KEY1按键…...
在 Visual Studio 2022 (Visual C++ 17) 中使用 Visual Leak Detector
在 Visual C 2022 中使用 Visual Leak Detector 1 问题描述1.1 内存泄漏的困扰和解决之道1.2 内存泄漏检测工具的选择1.3 VLD的现状 2 安装和设置VLD的环境变量2.1 安装VLD文件2.2 VLD安装后的目录和文件说明2.2.1 include子目录说明2.2.2 lib子目录说明2.2.2.1 目录整理 2.2.3…...
基于IDEA的Maven(properties属性配置)
(property :财产)properties:它的复数。 同样也是基于上篇博客进行学习。(具体的全部项目代码和结构可以去查看上篇...) <properties><!--当前jdk版本 , 这一步可以完全省略--><maven.com…...
边缘计算(Edge Computing)_关键概念/优势/应用场景
边缘计算(Edge Computing)是一种计算范式,它将数据处理和分析从传统的集中式数据中心和云计算平台移至更接近数据生成源头的位置(即“边缘”),例如物联网设备、传感器、路由器或其他边缘设备。边缘计算旨在…...
idea关联gitlab仓库,访问报错
1、登录方式 idea中集成了gitlab的最新版的插件后,登录强制使用token登录,不能使用账号密码登录。 2、版本问题报错 安装了插件后,如果本地部署的gitlab版本低,则直接导致gitlab生成的token也无法登录,操作会报错&am…...
【Hive】new HiveConf()时加载的配置浅析
简单看下源码: org.apache.hadoop.hive.conf.HiveConf HiveConf中有静态代码块,内容就是调用findConfigFile方法,尝试读取hive-default.xml,hive-site.xml,hivemetastore-site.xml,hiveserver2-site.xml。…...
Glide 缓存机制研究及同命名图片的替换回显
背景: 相册-图片后处理场景,需要先展示一张原图,同时后台对图片进行算法优化,完成优化之后无缝替换原图展示,同时保证后续都展示算法优化后的图片 图片加载采用 Glide 库实现 画重点: 相册场景ÿ…...
一键简易桌签(带背景)-Word插件-大珩助手
问题整理: 如何Word中设计简易桌签?如何设置带背景图的桌签? Word大珩助手是一款功能丰富的Office Word插件,旨在提高用户在处理文档时的效率。它具有多种实用的功能,能够帮助用户轻松修改、优化和管理Word文件&…...
如何解决centos停止维护后更换Debian11平替?
再有9天时间centos7.x就将停止维护,最近很多人已经再更换系统了!有推荐alibabacloud,opencloud,debian,ubuntu,centos-stream,tencentos,anolis,rockey,almal,oracle,arch,Fedora,opensuse 很多人不知道选什么,这里就主要介绍一下 如果你是使用宝塔面板 并且想要无缝衔…...
服务器雪崩的应对策略之----熔断机制
熔断机制(Circuit Breaker)是一种保护系统稳定性的重要手段。它的主要目的是防止系统在依赖的服务出现问题时,继续发送请求,从而保护系统免受进一步的影响。熔断机制通过监控请求的成功和失败率,在检测到故障率超过预设…...
RestClient操作索引库和文档
导入依赖: <dependency><groupId>org.elasticsearch.client</groupId><artifactId>elasticsearch-rest-high-level-client</artifactId><version>7.12.1</version></dependency>导入依赖成功之后就可以开始我们的测…...
Spark 之 入门讲解详细版(1)
1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室(Algorithms, Machines, and People Lab)开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目,8个月后成为Apache顶级项目,速度之快足见过人之处&…...
Go 语言接口详解
Go 语言接口详解 核心概念 接口定义 在 Go 语言中,接口是一种抽象类型,它定义了一组方法的集合: // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的: // 矩形结构体…...
将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?
Otsu 是一种自动阈值化方法,用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理,能够自动确定一个阈值,将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...
MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...
如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...
[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...
【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】
1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件(System Property Definition File),用于声明和管理 Bluetooth 模块相…...
Python如何给视频添加音频和字幕
在Python中,给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加,包括必要的代码示例和详细解释。 环境准备 在开始之前,需要安装以下Python库:…...
AI编程--插件对比分析:CodeRider、GitHub Copilot及其他
AI编程插件对比分析:CodeRider、GitHub Copilot及其他 随着人工智能技术的快速发展,AI编程插件已成为提升开发者生产力的重要工具。CodeRider和GitHub Copilot作为市场上的领先者,分别以其独特的特性和生态系统吸引了大量开发者。本文将从功…...
Map相关知识
数据结构 二叉树 二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子 节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只 有左子节点,有的节点只有…...
