工业镜头选型讲解

B站  :道传科技上位机   观看教程

一、工业镜头介绍

镜头的主要作用是

将目标成像在图像传感器的光敏面上。

下图左一的型号为 焦距 50mm  最大光圈为F1.6 镜头的像面尺寸为2/3英寸(最大能够兼容CCD芯片尺寸)

二、工业镜头的分类

镜头的主要分类是

按功能分类:定焦镜头、变焦镜头

按视角分类:标准镜头、广角镜头、远摄镜头

按焦距分类:短焦距镜头、中焦距镜头、长焦距镜头

按用途分类:普通镜头、微距镜头、远心镜头

三、关键参数讲解

镜头工作距离(WD

      一般是指  镜头物方端面 到 被拍摄物体表面 的物理距离。

光源工作距离(LWD

      一般是指  光源物方端面 到 被照射物体表面 的物理距离。

视场(FOV

也称视野,是指能被视觉系统观察到的物方可视范围大小

对于镜头而言,可观察到的视场跟镜头放大倍率及相机芯片选择有关。因此通常建议根据被观察物体的尺寸,先确定所需的视场,再确定相机芯片尺寸及镜头放大倍率。在实际工程项目中,考虑到机械误差等问题,视场通常要大于待观测物体的实际尺寸,以确保在机械误差的范围内,物体始终位于视觉系统的可视范围内。

光学放大倍率

机器视觉行业里提到的镜头光学放大倍率通常是指垂轴放大倍率,即像和物的大小之比,计算方法如下:

光学放大倍率=感光芯片长边/视野长边

可见,光学放大倍率和所选相机芯片及所需视场相关。

如:已知相机芯片为2/3英寸(8.8mm*6.6mm),

视场长宽为:10mm* 8mm

如用长边计算,放大倍率=8.8mm/10mm=0.88x

如用短边计算,放大倍率=6.6mm/8mm=0.825x

此时应取小的倍率0.825x 作为待选镜头的光学放大倍率。否则,短边视场将不能满足要求。(若取0.88倍,则短边视场=6.6mm/0.88x=7.5mm<8mm

四、关键参数讲解

相机芯片尺寸

在前面描述放大倍率和镜头像面尺寸时都涉及到相机芯片尺寸。通常相机厂商是以英寸的形式表示的,但在实际计算时,需要换算成各边以毫米为单位的计量方式。

工业镜头的焦距(f mm)可以根据FOV(视场), WD(工作距离) CCD芯片尺寸计算出来:

焦距计算公式

焦距f WD × CCD芯片尺寸( h or v) / FOV( H or V)

下面是常见的CCD芯片

1.1英寸——靶面尺寸为宽12mm*12mm,对角线17mm

1英寸 ——靶面尺寸为宽12.7mm*9.6mm,对角线16mm

2/3英寸——靶面尺寸为宽8.8mm*6.6mm,对角线11mm

1/1.8英寸——靶面尺寸为宽7.2mm*5.4mm,对角线9mm

1/2英寸——靶面尺寸为宽6.4mm*4.8mm,对角线8mm

1/3英寸——靶面尺寸为宽4.8mm*3.6mm,对角线6mm

1/4英寸——靶面尺寸为宽3.2mm*2.4mm,对角线4m

f:镜头焦距   H: FOV高度尺寸  V: FOV宽度尺寸   WD:镜头至景物距离  v:   CCD芯片宽度尺寸   hCCD芯片高度尺寸

五、关键参数讲解

畸变

镜头在成像时,特别是用短焦距镜头拍摄大视场,图像会产生形变,这种情况叫做镜头的畸变,这是由于镜头的光学结构和成像特性导致的,原因是由于视野中局部放大倍数不一致造成的图像扭曲。拍摄的视场越大,所用的镜头的焦距越短,畸变的程度就越明显,一般有桶型畸变和枕型畸变两种,可以通过图像标定减弱这种平面畸变的影响。

景深

景深则是镜头另一个重要的外部参数。它表示满足图像清晰度要求的最远位置与最近位置的差值,景深的计算可能会相对麻烦一些。它与镜头焦距、光圈值、工作距离和允许弥散斑的最大直径有关。由于允许弥散斑的最大直径是个相对量,它的可接受直径很大程度上取决于应用,因此在实际视觉应用中以实验和参考镜头给出的参考值为主。

简单的说:光圈越小,景深越深;焦距越短,景深越深;对焦距离(工作距离)越远,景深越深;

视场角

以镜头为顶点,被测目标物像可通过镜头的最大范围的两条边缘构成的夹角,称为视场角。它决定了光学仪器(如相机、显微镜等)的视野范围。

六、镜头的详细硬件参数

七、镜头的接口

按接口的不同,镜头可分为 C - MOUNT CS - MOUNT

( 1) C - MOUNT

       C - MOUNT C 接口镜头,是目前机器视觉系统中使用最广泛的镜头、具有重量轻、体积小、价廉、品种多等优点,它的接口螺纹参数为:公称直径=1英寸,爆距=32牙(1-32UN)

(2) CS - MOUNT

       CS - MOUNT CS 接口,是为新的 CCD 相机而设计的。随着 CCD 集成度越来越高,相同分辨率的光敏阵列越来越小,设计的 CS - MOUNT 更适用于有效光敏传感器尺寸更小的相机。

      除了普遍的 C 接口和 CS 接口外,还有用于大分辨率面阵相机及线阵相机的 F M2接口,M72接口及用于靶面较大或特殊镜头的 V 接口。 F 接口是尼康镜头的接口标准,又称尼康口,一般靶面尺寸大约为1英寸的工业相机需要用 F 接口的镜头。

      C 接口和 CS 接口的区别仅仅在于镜头的安装基准面到焦点的距离不同。 C 接口的距离是17.526 mm ,而 CS 接口是12.5mm。它们之间相差约5mm。因此,具有 CS 接口的相机,可以与 C 接口或 CS 接口的镜头连接,但使用 C 接口镜头时需加装一个接圈;具有 C 接口的相机只能与 C 接口的镜头连接,而不能与 CS 接口的镜头连接,否则不但不能获得良好的聚焦,还有可能损坏 CCD 靶面(部分 C 接口相机可以拧掉接圈转换成 CS 接口)。但有一个例外,即 C 接口的3CCD相机不能和 C 接口的镜头协同工作。

八、远心镜头

远心镜头Telecentric )主要是为纠正传统工业镜头视差而设计的,它可以在一定的物距范围内,使得到的图像放大倍数不会变化,这对被测物体不在同一物面上的情况是非常重要的。远心镜头由于其特有的平行光路设计,一直被对镜头畸变要求很高的机器视觉应用场合所青睐。设计远心镜头的目的是消除由于被测物体(或 CCD 芯片)与镜头距离不一致,造成放大倍率不同的影响。

远心镜头的选择

        远心镜头和相机的匹配选择原则和普通工业镜头相同,只要其镜头的规格大于或等于相机的靶面即可。使用过程中需注意,在远心镜头的物镜垂直下方区域内的像都是远心成像,而超出此区域的像就不是严格意义上的远心成像了,这点在实际的使用中一定要注意,否则会产生不必要的偏差。基于远心镜头的原理特征及独特优势,在以下六种情况下,最好选用远心镜头:

(1)需要检测有厚度的物体(厚度>FOV直径/10

(2)需要检测不在同一平面的物体。

(3)物体到镜头的距离未知。

(4)需要检测带孔径的三维物体。

(5)需要低畸变率且图像的亮度完全一致。

(6)缺陷只在同一方向平行照明下才能检测到。

       根据使用情况(物体尺寸和需要的分辨率)选择物方尺寸(拍摄范围)合适的物方镜头和 CCD CMOS 相机,同时结合像方尺寸(使用 CCD 的靶面大小)即可计算出放大倍数,然后选择合适的像方镜头。在选择过程中,还应注意景深指标的影响,因为像/物倍数越大,景深越小。为了得到合适的景深,可能还需要重新选择镜头。

九、选型案例

案例分析:

已知条件:工业相机型号已经选择好,具体参数:工业相机芯片尺寸为2/3",C接口,5百万像素;

视野是100*100mm, 工作距离:500mm;

根据以上条件,我们来选择合适的工业镜头;

镜头接口:         首先工业镜头要和工业相机接口一致,所以这里也选择C接口;

镜头大小:        遵循镜头大小要大于相机的芯片大小,所以这里镜头尺寸最少支持2/3";

镜头分辨率:    镜头的分辨率要高于相机的分辨率,所以选择5百万像素以上;

焦距:                  500(工作距离)× 8.8(芯片水平长度)/ 100(视野)=44mm;

镜头放大倍率8.8(芯片水平长度)/ 100=0.088

B站  :道传科技上位机   观看教程视频

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

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

相关文章

重构技术奇点的路径:三智双融认知大飞跃

结合三智双融理论认知大飞跃框架重构技术奇点的路径 构建一个三维修订框架&#xff1a;首先分析融智学视域下的奇点渗透本质&#xff0c;然后按时间线逐年修订预言并补充融智学维度&#xff0c;最后提出人机共生的实践路径。考虑设计表格对比原预言与修订后的差异&#xff0c;突…

LabVIEW利用Monte Carlo 工业数据模拟应用

基于LabVIEW 平台&#xff0c;结合 NI 工业级硬件构建 Monte Carlo 模拟系统&#xff0c;实现工业传感器数据不确定性分析与设备故障概率预测。通过图形化编程架构与高性能硬件协同&#xff0c;解决复杂工业场景下的随机问题量化分析需求&#xff0c;适用于智能制造、能源监控等…

2025年渗透测试面试题总结-天翼电子公司[社招]安全运营岗(题目+回答)

安全领域各种资源&#xff0c;学习文档&#xff0c;以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具&#xff0c;欢迎关注。 目录 天翼电子商务有限公司[社招]安全运营岗 1. Web服务加固方案 2. IAST技术解析 3. SCA&#xff08;软件成分…

Java NIO详解:新手完全指南

文章目录 1. NIO简介1.1 NIO的核心优势1.2 NIO的适用场景 2. NIO与IO的对比2.1 代码对比示例2.1.1 传统IO读取文件2.1.2 NIO读取文件 3. NIO核心组件3.1 Buffer&#xff08;缓冲区&#xff09;3.2 Channel&#xff08;通道&#xff09;3.3 Selector&#xff08;选择器&#xff…

webgl(three.js 与 cesium 等实例应用)之浏览器渲染应用及内存释放的关联与应用

文章目录 WebGL 概念1. 纹理&#xff08;Texture&#xff09;&#x1f4cc; 概念&#xff1a;&#x1f9e9; 应用方向&#xff1a;&#x1f4a1; 示例代码&#xff08;加载一张图片作为纹理&#xff09;&#xff1a; 2. 缓冲区&#xff08;Buffer&#xff09;&#x1f4cc; 概念…

黑马点评【缓存】

目录 一、为什么要使用缓存 二、添加商户缓存 1.缓存的模型和思路 2.代码 3.缓存更新策略 Redis内存淘汰机制&#xff1a; 3.1 被动淘汰策略&#xff08;不主动淘汰&#xff0c;仅在查询时触发&#xff09; 3.2 主动淘汰策略&#xff08;主动扫描内存&#xff0c;按规则…

【地图服务限制范围】

根据你提供的 eb_service_area 表结构&#xff0c;其中有两个字段与地理坐标相关&#xff1a;latlng 和 limit_latlng。这两个字段分别用于存储服务范围区域的坐标和限制区域的坐标。下面是对这两个字段的具体分析以及如何使用它们来定义执行范围。 字段分析 latlng&#xff0…

python数据结构和算法(1)

数据结构和算法简介 数据结构&#xff1a;存储和组织数据的方式&#xff0c;决定了数据的存储方式和访问方式。 算法&#xff1a;解决问题的思维、步骤和方法。 程序 数据结构 算法 算法 算法的独立性 算法是独立存在的一种解决问题的方法和思想&#xff0c;对于算法而言&a…

Linux操作系统-性能优化

1. 基础工具 top / htop top # 实时查看CPU、内存、进程 htop # 增强版&#xff08;支持鼠标操作&#xff09; 关键指标&#xff1a;%CPU&#xff08;CPU占用&#xff09;、%MEM&#xff08;内存占用&#xff09;、LOAD AVERAGE&#xff08;系统负载&#…

如何彻底解决缓存击穿、缓存穿透、缓存雪崩

一、缓存击穿 成因&#xff1a;缓存击穿通常发生在某个热点数据失效或清空后&#xff0c;大量请求同时涌入后端数据库&#xff0c;导致数据库崩溃或宕机。 解决方案&#xff1a; 互斥锁&#xff1a;在获取数据时&#xff0c;使用分布式锁&#xff08;如Redis的分布式锁&…

JDK 8、JDK 17和JDK 19综合对比分析

JDK 8、JDK 17和JDK 19在性能、特性、易用性及普及性等方面的综合对比分析&#xff0c;结合了各版本的核心改进和实际应用场景 目录 ⚡ 一、性能对比 ✨ 二、语言与特性演进 &#x1f6e0;️ 三、API与功能增强 &#x1f3af; 四、易用性改进 &#x1f4ca; 五、市场普及…

Vue-理解 vuex

一、前言 在开发中大型 Vue 应用时&#xff0c;我们常常会遇到多个组件之间共享数据、通信复杂的问题。例如&#xff1a; 多个组件需要访问同一个用户信息&#xff1b;组件之间需要传递状态或事件&#xff1b;数据变更需要同步更新多个组件&#xff1b; 这时&#xff0c;Vue…

【209】VS2022 C++对排好序的vector使用二分查找算法的例子

本文介绍了如何对已经排序的 vector 进行二分法查找。 首先&#xff0c;我们先看一下存储数据的类&#xff0c;我们假设所有数据的 id 是唯一的&#xff1a; DataItem.h #pragma once #include<string>namespace zc {class DataItem{public:int m_id;std::string m_na…

ABAP 上传 excel 报表

&#xff08;1&#xff09;先在屏幕上增加上传文件的按钮 "屏幕选择条件" SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001. PARAMETERS : p_source LIKE rlgrap-filename . SELECTION-SCREEN END OF BLOCK b1. 你会发现&#xff0c;上面的代码只…

Compose与View系统互操作方案

本文将全面解析 Android 现代 UI 框架 Jetpack Compose 与传统 View 系统的互操作方案&#xff0c;涵盖基础原理、实战技巧、性能优化和高级应用&#xff0c;助你实现渐进式迁移和混合开发。 一、互操作的必要性与整体架构 1.1 为什么需要互操作性 渐进式迁移&#xff1a;大型…

HNCTF 2025 Just Ping Write-up

part 1 路由部分主逻辑逆向 package mainimport ("net/http" )func main() {// 注册路由和处理函数// 当访问 "/api/ping" 路径时&#xff0c;调用 pingHandler 函数处理请求http.HandleFunc("/api/ping", pingHandler)// 注册开发测试API路由//…

OpenCV CUDA模块中用于稠密光流计算的 TV-L1(Dual TV-L1)算法类cv::cuda::OpticalFlowDual_TVL1

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 cv::cuda::OpticalFlowDual_TVL1类是基于变分优化方法的稠密光流算法实现&#xff08;Dual TV-L1 光流模型&#xff09;&#xff0c;在 GPU 上加…

ThreadPoolTaskExecutor+CompletableFuture实现多线程异步数据同步和自定义线程池监控和动态调整实现

前言 ThreadPoolTaskExecutor是Spring框架提供的一个线程池实现&#xff0c;它是对Java标准库中ThreadPoolExecutor的封装&#xff0c;提供了更便捷的配置和集成方式&#xff0c;特别适合在Spring环境中使用。相关线程池概念见线程&线程池相关 CompletableFuture 是 Java…

一篇文章理解js闭包和作用于原理

一、js闭包的作用原理 JS闭包是指内部函数访问外部函数变量的机制&#xff0c;常用于数据封装和模块化。典型应用包括创建私有变量、解决循环中的异步问题、实现函数柯里化等。案例分析展示了闭包在计数器、防抖函数等场景的使用&#xff0c;同时揭示了可能的内存泄漏风险。正…

GUI丝滑教程-python tinker

在 Tkinter GUI 应用中&#xff0c;线程可以帮助你在后台执行长时间运行的任务&#xff0c;而不阻塞界面响应。下面是一些技巧&#xff0c;帮助你在使用线程时避免 Tkinter 界面卡顿的问题。 为什么 Tkinter 界面会卡顿&#xff1f; Tkinter 使用 主线程 来处理 UI 更新&…