相机、镜头参数详解以及相关计算公式
一、工业相机参数
1、分辨率
相机每次采集图像的像素点数,也是指这个相机总共有多少个感光晶片。在采集图像时,相机的分辨率对检测精度有很大的影响,在对同样打的视场成像时,分辨率越高,对细节的展示越明显。
相机像素 = 水平分辨率 * 垂直分辨率
芯片尺寸 = 水平像素尺寸 * 水平分辨率
感光芯片尺寸=分辨率∗像元尺寸
分辨率( Pixel ) = 相机视野( mm ) / 像素精度( mm / Pixel )
2、精度
精度指一个像素表示实际物体的大小,用(um*um)/pixel表示。注意,像元尺寸并不等于精度,像元尺寸是相机机械构造时固定的,而精度与相机视野有关,是变化的。精度值越小,精度越高。
单个像素对应的大小 = 视野宽 / 宽度分辨率 = 视野高 / 高度分辨率
镜头倍率 = 芯片尺寸 / 实际所需视野
像素精度 = 像素尺寸 / 镜头倍率
像素精度 = 相机视野 / 相机分辨率
3、帧率/行频
帧率:fps帧率,对应面阵相机,表示每秒能够拍摄的图片张数。
行频:16kHz行频,对应线阵相机,表示每秒能够扫描的行数。最大图像分辨率为分辨率*行频(例2048x16k);
帧率和行频体现相机的最大工作效率,与曝光共同决定成像图片的明暗,帧率和行频很高且曝光低,则图片很暗;帧率和行频很低且曝光高,则图片很亮。
4、像元尺寸
像元尺寸指芯片像元阵列上每个像元的实际物理尺寸,例如3.75umx3.75um 等。像元尺寸从某种程度上反映了芯片的对光的响应能力,像元尺寸越大,能够接收到的光子数量越多,在同样的光照条件和曝光时间内产生的电荷数量越多。对于弱光成像而言,像元尺寸是芯片灵敏度的一种表征。像元尺寸和像元数(分辨率)共同决定了相机靶面的大小,通常工业相机像元尺寸为2μm~14μm。
像元尺寸(宽) = 传感器尺寸(宽) / 分辨率(宽)
像元尺寸(高) = 传感器尺寸(高) / 分辨率(高)
5、曝光时间
曝光时间时为了将光投射到照相感光材料的感光面上,快门所要打开的时间。曝光时间和实际的帧率成反比,也就是曝光时间越长,实际的采集帧率会越低,一般为3um-10ms。
曝光时间 = 像元尺寸 / 像的运动速度 = 像素精度 / 物体的运动速度
放大倍率 = CCD感光尺寸 / 视场FOV = 焦距 / 工作距离
相机的飞拍曝光数值计算
案例1:物体的运动速度是150mm/s,沿着芯片的水平方向运动,相机是1/2芯片(6.4mm*4.8mm),视场水平方向长度是20mm,像元尺寸是4.65um,计算成像时不产生拖影的曝光时间。
首先计算出像的运动速度
放大倍数 = CCD感光尺寸 / 视场FOV = 6.4mm / 20mm = 0.32,
像的运动速度 = 放大倍率 * 物体的运动速度 = 0.32 * 150mm/s = 48mm/s,
曝光时间 = 像元尺寸 / 像的运动速度 = 4.65um / 48mm/s = 0.000097s = 97us,
最后曝光时间设置为100us即可。
案例2:玻璃转盘设备,使用的相机是GMAX3265(6500万相机,相机的像元尺寸是3.2μm*3.2μm),0.52倍率的圆心镜头,转盘3600脉冲转一圈,软件设定的运行速度180脉冲/s,玻璃转盘的盘子直径500mm
计算公式1:
转盘转一圈的时间 = 一圈的脉冲 / 运行速度 = 3600 / 180 = 20秒;
物体的运动速度 = 转盘的盘子直径 * 3.14 / 转盘转一圈的时间 = 500 * 3.14 / 20 = 78.5mm/s
像的运动速度 = 放大倍率 * 物体的运动速度 = 78.5 * 0.52 = 40.82mm/s
曝光时间 = 像元尺寸 / 像的运动速度 = 3.2 / 40.82 = 78.39us
最后曝光时间设置为80us
计算公式2:
转盘转一圈的时间 = 一圈的脉冲 / 运行速度 = 3600 / 180 = 20秒;
物体的运动速度 = 转盘的盘子直径 * 3.14 / 转盘转一圈的时间 = 500 * 3.14 / 20 = 78.5mm/s
像素精度 = 像元尺寸 / 镜头的倍率 = 3.2 / 0.52 = 6.153846um
曝光时间 = 像素精度 / 物体的运动速度 = 6.153846 / 78.5 = 78.39us
6、靶面尺寸(传感器尺寸)
图像传感器的感光部分的大小,通常指的是图像传感器的对角线长度,在同样镜头情况下,靶面越大,视场越大,靶面越小,视场越小。传感器(CCD/CMOS)尺寸的表示方法大惑不解,因为像1/1.8英寸、2/3英寸之类的尺寸,既不是任何一条边的尺寸,也不是其对角线尺寸,看着这样的尺寸,往往难以形成具体尺寸大小的概念。
传感器类型 | 宽度(mm) | 高度(mm) | 对角线(mm) |
1/3'' | 4.800 | 3.600 | 6.000 |
1/2.5'' | 5.760 | 4.290 | 7.182 |
1' | 12.700 | 9.600 | 16.000 |
2/3'' | 8.800 | 6.600 | 11.000 |
1/2'' | 6.400 | 4.800 | 8.000 |
4/3'' | 18.800 | 13.500 | 22.500 |
CCD尺寸一般用英寸来表示,靶面尺寸就是CCD尺寸
靶面尺寸 = 对角线尺寸
靶面面积 = 传感器宽度 * 传感器高度
二、镜头参数
1、焦距
与光轴平行的光线射入凸透镜时,理想的镜头应该是所有的光线聚集在一点后,再以锥状扩散开来,这个聚集所有光线的点叫做焦点。对于单个透镜来说,焦距是指从光心到焦点的距离,如图一;对于多个透镜组成的镜头组来说,焦距是指像方主平面到焦点的距离,如图二。
焦距 = (工作距离 * 相机传感器短边尺寸)/ 物体宽度
或 焦距 = 工作距离 * 放大倍率
焦距、像距、物距之间的关系:
(1 / 物距)+ (1 / 像距)= (1 / 焦距)
2、光圈
光圈是一个用来控制光线透过镜头进入机身内感光面光量的装置,在拍摄高速运动物体时,由于曝光时间短,需要使用大光圈。
光圈大小一般用F表示,以镜头焦距f和通光孔径直径D的比值来衡量,当光圈物理孔径不变时,镜头中心与感光器件距离越远,F值越大,光圈越小;反之,F值越小,光圈越大。
一般通过调整通光孔径大小来调节光圈,完整的光圈数值系列如下:F1,F1.4,F2,F2.8,F4,F5.6,F8,F11,F16,F22,F32,F44,F64。
光圈系数F = 焦距f / 通光孔径D
3、分辨率
图像系统可以测到的受检验物体上的最小可分辨特征尺寸,多数情况下,视野越小,分辨率越好
4、工作距离
工作距离指的是镜头的最下端到景物之间的距离。一般的镜头是可以看到无限远的,也就是说是没有上限的。镜头上有两个刻度的调节圈分别是调节光圈和调焦圈,在调节圈上标有的刻度表示此时镜头的工作距离。
5、视场(FOV)
视场也叫视野范围,视野指的是镜头能看到的最大范围,也就是镜头所能覆盖的有效工作区域。
6、景深(DOF)
在最小工作距离到最大工作距离之间的范围称为景深(纵向的范围),景深内的物体都可以清晰成像。景深一般可以通过光圈调节,光圈越小,景深越大。
能清晰成像的最近物平面称为近景平面,它与对准平面的距离称为前景深L1。
能清晰成像的最远物平面称为远景平面,它与对准平面的距离称为后景深L2。
景深=前景深+后景深:
其中: :容许弥散圆直径,f:镜头焦距,F:镜头的拍摄光圈值,L:对焦距离
光圈,镜头焦距、拍摄距离对景深的影响:
1)、镜头光圈:光圈越大,景深越小;光圈越小,景深越大;
2)、镜头焦距:镜头焦距越长,景深越小;距离越短,景深越大;
3)、拍摄距离:距离越远,景深越大;距离越近,景深越小
7、视角
视角即视线的角度,也就是镜头能看多"宽"。焦距越小,视角越大,最小工作距离越短,视野越大。
镜头选型实例:
已知客户观察范围为30mm*30mm,工作距离为100mm,CCD尺寸为1/3',那么需要多少焦距的镜头
计算方法:
1/3'=3.6mm(垂直) 芯片垂直方向的大小
f=(100*3.6)/30
参考:工业相机与镜头选型方法(含实例)_工业相机选型-CSDN博客
相关文章:
相机、镜头参数详解以及相关计算公式
一、工业相机参数 1、分辨率 相机每次采集图像的像素点数,也是指这个相机总共有多少个感光晶片。在采集图像时,相机的分辨率对检测精度有很大的影响,在对同样打的视场成像时,分辨率越高,对细节的展示越明显。 相机像素…...
【微服务】组件、基础工程构建(day2)
组件 服务注册和发现 微服务模块中,一般是以集群的方式进行部署的,如果我们调用的时候以硬编码的方式,那么当服务出现问题、服务扩缩容等就需要对代码进行修改,这是非常不好的。所以微服务模块中就出现了服务注册和发现组件&…...
ESP32微信小程序SmartConfig配网
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 ESP32&微信小程序SmartConfig配网 前言一、SmartConfig是什么?二、使用乐鑫官方的smart_config例子1.运行照片 三、微信小程序总结 前言 本人是酷爱ESP32S3这…...
【PostgreSQL】提高篇——深入了解不同类型的 JOIN(INNER JOIN、LEFT JOIN、RIGHT JOIN、FULL JOIN)应用操作
1. JOIN 的基础概念 在 SQL 中,JOIN 是用于从两个或多个表中组合行的操作。JOIN 允许我们根据某些条件将表中的数据关联在一起。常见的 JOIN 类型包括: INNER JOIN:仅返回两个表中满足连接条件的行。LEFT JOIN(或 LEFT OUTER JO…...
师生健康信息管理:SpringBoot技术突破
第4章 系统设计 4.1 系统体系结构 师生健康信息管理系统的结构图4-1所示: 图4-1 系统结构 登录系统结构图,如图4-2所示: 图4-2 登录结构图 师生健康信息管理系统结构图,如图4-3所示。 图4-3 师生健康信息管理系统结构图 4.2…...
【完-网络安全】Windows注册表
文章目录 注册表启动项及常见作用五个根节点常见入侵方式 注册表 注册表在windows系统的配置和控制方面扮演了一个非常关键的角色,它既是系统全局设置的存储仓库,也是每个用户的设置信息的存储仓库。 启动项及常见作用 快捷键 WinR打开运行窗口&#x…...
车辆重识别(2021NIPS在图像合成方面,扩散模型打败了gans网络)论文阅读2024/10/01
本文在架构方面的创新: ①增加注意头数量: 使用32⇥32、16⇥16和8⇥8分辨率的注意力,而不是只使用16⇥16 ②使用BigGAN残差块 使用Big GAN残差块对激活进行上采样和下采样 ③自适应组归一化层 将经过组归一化操作后的时间步和类嵌入到每…...
掌控物体运动艺术:图扑 Easing 函数实践应用
现如今,前端开发除了构建功能性的网站和应用程序外,还需要创建具有吸引力且尤为流畅交互的用户界面,其中动画技术在其中发挥着至关重要的作用。在数字孪生领域,动画的应用显得尤为重要。数字孪生技术通过精确模拟现实世界中的对象…...
Python从入门到高手4.2节-掌握循环控制语句
目录 4.2.1 理解循环控制 4.2.2 for循环结构 4.2.3 循环结构的else语句 4.2.4 while循环结构 4.2.5 循环结构可以嵌套 4.2.6 国庆节吃好玩好 4.2.1 理解循环控制 我们先来搞清楚循环的含义。以下内容引自汉语词典: 循环意指往复回旋,指事物周而复始地运动或变…...
CSS 中的overscroll-behavior属性
overscroll-behavior 是 CSS 中的一个属性,它用于控制元素在发生滚动时,当滚动范围超出其边界时的行为。这个属性对于改善用户体验特别有用,尤其是在移动端设备上,当用户尝试滚动一个已经达到滚动极限的元素时,可以通过…...
GPT对话知识库——在STM32的平台下,通过SPI读取和写入Flash的步骤。
目录 1,问: 1,答: 步骤概述 步骤 1:SPI 初始化 步骤 2:Flash 初始化(可选) 步骤 3:发送读取命令 示例:发送读取数据命令 步骤 4:读取数据…...
Pytorch基本知识
model.state_dict()、model.parameters()和model.named_parameters()的区别 parameters()只包含模块的参数,即weight和bias(包括BN的)。 named_parameters()返回包含模块名和模块的参数的列表,列表的每个元素均是包含layer name和layer param的元组。layer param就是param…...
vue3使用Teleport 控制台报警告:Invalid Teleport target on mount: null (object)
Failed to locate Teleport target with selector “.demon”. Note the target element must exist before the component is mounted - i.e. the target cannot be rendered by the component itself, and ideally should be outside of the entire Vue component tree main.…...
使用产品前的环境搭建
对于想学习编程的朋友们,使用本产品解决日常功能需求的同时会对自己编程能力具有较大帮助和提升。 目录 环境搭建 前言: 安装python 安装vscode 下载安装Anaconda 通过conda配置python环境 创建虚拟环境 查看环境是否创建成功 激活环境 安装pyt…...
JAVA基础语法 day07
一、final关键字 1.1final的基础知识 用来修饰类,方法,变量 final修饰类,该类被称为终极类,不能被继承了 final修饰方法,该方法称为终极方法,不能被重写了 final修饰变量,该变量仅能被赋值…...
ZLMediaKit编译运行
ZLMediaKit-github官网 快速开始 代码依赖与版权声明 MediaServer支持的HTTP MediaServer支持的HTTP HOOK API cd ZLMediaKit mkdir build cd build cmake … && make -j20 cd ZLMediaKit/release/linux/Debug ./MediaServer //./MediaServer -h 查看 //./MediaSe…...
AlmaLinux 9 安装mysql8.0.38
文件下载 https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.39-linux-glibc2.12-x86_64.tar 选择合适系统版本 下载后解压 tar -xvf mysql-8.0.39-linux-glibc2.12-x86_64.tar解压后里面有三个文件夹 使用mysql-8.0.39-linux-glibc2.12-x86_64.tar.xz即可,…...
NLP任务之文本分类(情感分析)
目录 1 加载预训练模型对应的分词器 2 加载数据集 3 数据预处理 4 构建数据加载器DataLoader 5 定义下游任务模型 6 测试代码 7 训练代码 #做(中文与英文的)分类任务,Bert模型比较合适,用cls向下游任务传输数…...
MIMO 2T4R BBU RHUB AAU
MIMO(Multiple-Input Multiple-Output,多输入多输出)是一种无线通信技术,它通过在发射端和接收端使用多个天线来提高数据传输速率和信号质量。"2T4R"是MIMO技术中的一种配置,其中"2T"代表有两个发…...
图说数集相等定义表明“R各元x的对应x+0.0001的全体=R“是几百年重大错误
黄小宁 设集A{x}表A各元均由x代表,{x}中变量x的变域是A。其余类推。因各数x可是数轴上点的坐标故x∈R变为实数yx1的几何意义可是:一维空间“管道”g内R轴上的质点x∈R(x是点的坐标)沿“管道”g平移变为点y…...
只出现一次的数字|||(考察点为位操作符)
目录 一题目: 二思路汇总: 三代码解答: 一题目: leetcode原题链接:. - 力扣(LeetCode) 二思路汇总: 思路:如果直接对数组按位异或,那么最后得到的是a^b&a…...
PMP--三模--解题--81-90
文章目录 13.干系人管理--权力利益方格--基于干系人的职权级别(权力)、对项目成果的关心程度(利益)、对项目成果的影响能力(影响),或改变项目计划或执行的能力,每一种方格都可用于对…...
脚本自动化创建AWS EC2实例+安装ElasticSearch和Kibana+集成OpenTelemetry监控
文章目录 为什么要通过脚本来部署服务器?EC2实例类型硬件选择实例类型的选择内存CPU存储架构操作系统最终的选择 其他配置安全组配置网络配置IAM RoleKey Pair内部域名 书写自动化脚本属性文件EBS配置文件创建EC2实例命令user data 文件OpenTelemetry监控 创建内部域…...
【设计模式-命令】
定义 命令模式(Command Pattern)是一种行为设计模式,它将请求封装为一个对象,从而使您能够使用不同的请求、排队请求或记录请求,并支持可撤销的操作。该模式通过将请求与其执行分离,使得请求者和接收者之间…...
【API安全】crAPI靶场全解
目录 BOLA Vulnerabilities Challenge 1 - Access details of another user’s vehicle Challenge 2 - Access mechanic reports of other users Broken User Authentication Challenge 3 - Reset the password of a different user Excessive Data Exposure Challenge …...
HCIP-HarmonyOS Application Developer 习题(四)
1、以下哪个Harmonyos的AI能力可以提供文档翻拍过程中的辅助增强功能? A.文档检测矫正 B.通用文字识别 C.分词 D.图像超分辨率 答案:A 分析:文档校正提供了文档翻拍过程的辅助增强功能,包含两个子功能: 文档检测:能够…...
【Python报错已解决】TypeError: ‘int‘ object is not subscriptable
🎬 鸽芷咕:个人主页 🔥 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想,就是为了理想的生活! 专栏介绍 在软件开发和日常使用中,BUG是不可避免的。本专栏致力于为广大开发者和技术爱好者提供一个关于BUG解决的经…...
《OpenCV》—— 指纹验证
用两张指纹图片中的其中一张对其验证 完整代码 import cv2def cv_show(name, img):cv2.imshow(name, img)cv2.waitKey(0)def verification(src, model):sift cv2.SIFT_create()kp1, des1 sift.detectAndCompute(src, None)kp2, des2 sift.detectAndCompute(model, None)fl…...
HBase 性能优化的高频面试题及答案
目录 高频面试题及答案1. 如何通过数据建模优化 HBase 性能?2. 如何优化 HBase 的写入性能?3. 如何通过压缩优化 HBase 的存储性能?4. 如何通过调整 RegionServer 配置优化性能?5. 如何优化 HBase 的读取性能?6. 如何通过使用 HBase 的版本控制优化性能?7. 如何通过使用合…...
excel不经过后台实现解析和预览(vue)
数据流读取和数据解析方面通过xlsx组件 安装命令 npm install xlsx -S 它先将上传的excel变成流,然后再根据流进行下一步处理。这个流可以交给其他组件处理比如我用的预览组件是用了其他组件(vue-office/excel)就是把这个流交给其它组件就…...
建设信用卡个人网站/网络推广的工作内容是什么
java中的UDP简单编程 java中的UDP,也是十分有用的,比如可以用其编个简单的二人聊天程序,最近学习这方面知识,现摘录着。我们可以使用datagrampacket类和datagramsocket类,datagramsocket类用来创建接收和发送UDP的SOCK…...
谷歌网站推广/广州最新消息今天
git diff 检查更新 git fetch #需要先 fetch git diff master..origin/master --name-only -- [path] #path:指定检查 可以是文件或者文件夹,--name-only:只列出有变化的文件名 git diff master..origin/master --name-only -- [path] …...
河池公司做网站/网站优化外包价格
一、Postman背景介绍1. Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件2. 可以在开发或者调试网络程序或者是网页B/S模式时来跟踪网页请求二、Postman的操作环境postman适用于不同的操作系统,Postman Mac、Windows X32、Windows X64、Linux系统&am…...
甘孜建设机械网站/个人如何优化网站有哪些方法
共三种: 推荐第一种,第三种需要在php.ini中配置 效果: 第三种配置 将short_open_tagOff改为On重启Apache就可以了 转载于:https://www.cnblogs.com/xiaoduc-org/p/5721207.html...
景德镇建站公司/百度系app有哪些
我用git的目的主要是为了数据的完整性,信息不丢失,虽然repository的代码服务器和本地都会存一份,但有时候自己的小片段代码很多(比如github的gist),不可能每天都用得到,需要定期的备份ÿ…...
windows系统怎么做ppt下载网站/电商营销策划方案
一、JDK的安装 1.进入甲骨文(Oracle)官网,找到下载JDK的位置。 此处直接给出下载JDK的链接。 传送门 2.挑选自己需要的JDK版本,此处推荐JDK8与JDK11. 这里以Windows操作系统为例。如果是32位的,就下载X86;…...