镜头视场角计算工具_再谈远心镜头的设计及其独特的性能

1.远心镜头的设计与对比镜头可以分为非远心和远心;远心镜头也可以分为物方远心、像方远心和双远心。相关概念的简单说明:孔径光阑在物空间的像称为入射光瞳。同样,孔径光阑被其后面的光学零件成在像空间的像,称为出射光瞳。入射光瞳、孔径光阑与出射光瞳三者是共轭的。如果忽略光阑像差,入射光瞳是物面上各点成像光束的公共入口;出射光瞳是成像光束的公共出口。通过孔径光阑中心的光线叫主光线,因共轭关系,它也通过入射光瞳中心和出射光瞳中心。因此,一般说主光线是成像光束的中心线。1.1非远心镜头非远心镜头的入射光瞳和出射光瞳图解,如下图:

584087a3f3dcf2348cc36429c115a5ba.png

入射光瞳和出射光瞳在镜头内,这是大多数固定焦距镜头的典型特征。在非远心镜头中,入射光瞳在有限距离内,都会导致非平行与光轴的主光线,如下图所示:

b8a2a79aa200153161f48b199a7cfee3.png

1.2物方远心镜头如果镜头的入射光瞳位于像方(物镜后方的一切物体)内无限远的位置,则可以被称为物方远心镜头,如下图所示:

cda7b1ea10bdefebdbdb058dca2853e2.png

一般在将机器视觉镜头简单描述为远心镜头时,很有可能是物方远心镜头。在物方远心镜头的光学设计中,通过将系统的孔径光阑放置在前组的焦点处来实现物方远心。由于入瞳位于无限远,所以物空间的主光线与光轴平行,视场恒定且无视场角,如下图所示:

22e97d7289b78953642a4c491c4065e8.png

上图中的物方远心镜头,主光线与物空间的光轴完全平行。因此无论物体平面位于何处,视场都不会改变。1.3像方远心镜头像方远心镜头可以由位于物方内无限远处的出射光瞳定义,如下图所示:

08baadc44f11b95f711b48386b595cf2.png

如果镜头是物方远心,则物体的放大倍率不会更改,如果镜头是像方远心,放大倍率不会随传感器平面的位置更改,这意味着传感器位置允差对相机不像对像方远心镜头那么重要,因为靠近或远离最佳位置的小偏移不会导致两个具有相同镜头的系统之间出现放大倍率差异。

1ea0ca544234a76b1c95ff40f3fe1301.png

请注意,无论传感器平面位于何处,像高都不会改变,因为定义像高的主光线与光轴完全平行。
此外,像方远心镜头不会遭受放射性测量的cos4θ衰减,因为光线垂直于整个区域内的传感器。这是有利的,因为假设镜头设计内没有构建选择性光晕,它能使图像的相对照明分布更加均匀。像方远心并不是远心镜头所独有,因为也可以在传统镜头(如固定焦距镜头)中指定像方远心。不过,市场上大部分固定焦距镜头都没有设计为像方远心,因为它们通常需要额外的元件(因此需要更多成本)来实现远心度,并且根据所使用的传感器尺寸,可能需要相当大的直径。如果非远心镜头是像方远心,通常也会有标注。1.4双远心镜头尽管物方远心已经能提供大大高于传统镜头的测量准确性,但如果镜头是物方和像方远心(双远心),还能获得更高的准确性。在双远心镜头中,入射和出射光瞳投射到各自的无限远处,如下图所示:

665826b1ab19ad5055436ca1266a0d87.png

双远心镜头是最准确的远心镜头类型,因为其视场完全不受物体位置或传感器位置变化导致的更改影响,也不会遭受任何cos4θ衰减。下图显示了三种不同镜头的对比图:固定焦距镜头、仅物方远心镜头和双远心镜头。X轴表示工作距离(mm)相较于标称值的更改,Y轴表示相较于实际值的尺寸误差百分比。

5a44dcc5bb074d8be95cbfea8a4a4b27.png

如上图所示,双远心镜头是最准确的镜头,工作距离偏移4mm的误差不到0.2%。双远心镜头可以用于需要最高准确性和精度的应用中。2.远心镜头的独特性能2.1恒定视场角传统镜头具有视场角,因此随着镜头与物体之间的距离增加,放大倍率也会增加。这是人类视觉的行为,有助于我们感知景深。这一视场角会导致像差(也称为角度误差),这会降低准确性,因为如果物体由于放大倍数变化而移动(即使其余部分在景深内),则观察到的视觉系统测量值会改变。远心镜头可通过恒定的视场角消除标准镜头的视差特性;远心镜头在离镜头任何距离的位置都具有相同的视场。有关非远心和远心视场的差别,如下图所示:

4c65898958bc86bdd0ef7bac43103ed3.png

远心镜头的恒定视场对计量应用有利有弊。远心镜头的主要优势在于其放大倍率不会随景深而更改。下图显示了两个由固定焦距(非远心)镜头(左)和远心镜头(右)在不同工作距离下成像的不同物体。请注意,在使用远心镜头拍摄的图像中,无法分辨哪个物体位于其他物体之前。使用固定焦距镜头时,很明显,看起来更小的物体离镜头更远。

f66bc3cdd4b48d4039c3f8f47e5b828f.png

远心镜头可消除原本会由于振动输送机或部件位置不精确等因素导致的测量误差问题。2.2远心镜头和景深远心镜头由于最佳焦点任意一侧存在对称模糊,确实可以有比传统镜头更大的可用景深。远心镜头在没有视场角度分量时,会产生对称的渐变的模糊图案。实际上,这意味着边缘的特性会保留其质心位置;当物体在最佳焦点以外时,只要保持足以支持机器视觉系统所使用的算法正常运行的对比度,就仍然可以进行准确的测量。尽管这似乎有悖常理,但在某些应用中,渐变模糊可以给远心镜头带来有益的效用。例如,如果机器视觉系统需要找到针脚的中心位置(如下图所示),当镜头聚焦时,从白色到黑色的过渡会十分急剧;当镜头稍微离焦时,从白色到黑色的过渡会平缓很多。

e004735ceab8cc808bd3ac5b695727cd.png

这时,从白色过渡到黑色时覆盖的像素数量更多。查看从部件边缘提取的线条轮廓的图像灰度绘图(如下图所示),随着针脚边缘分布在多个像素上,略微离焦的图像的线条斜率要平缓得多。由于远心镜头会产生对称的模糊,因此该模糊图案仍然可用,这时因为图像的质心尚未移动,而且需要的子像素插值量有所降低。这就降低了由于传感器噪声而导致的灰度波动敏感性,并且能够更加可靠、重复多次找到针脚中心位置。

449988ed4652ce6854c7886367c6148e.png

2.3 远心度和失真在计量应用中使用远心镜头的另一个好处在于,远心镜头的失真度通常低于固定焦距镜头。失真会导致物体的实际位置看似位于其他位置,这可能会进一步降低测量准确性。例如,下图所显示了高失真固定焦距镜头成像的电路板上的跳针。失真以及非远心镜头所固有的视差使朝向图像边缘的跳针看似朝中间弯曲。在远心镜头下查看相同跳针时,可以明显看到跳针是直的。

b48f12f5d6ca2c655a2b67067c757568.png

无需校准远心镜头产生的失真的另一个好处在于可以加快测量过程,因为软件需要执行的计算更少,这可以减少CPU负载,直接提高系统的检测效率。由于远心镜头往往具有很低的失真,因此它们比固定焦距镜头更容易产生非单向波形失真(如下图所示)。

9db86f847a44e134b9949169e366b0fb.png

3.远心镜头大小控制任何远心镜头的视场都受前组光学直径限制;所需的视场越大,前组光学直径越大。远心镜头可能会发展大尺寸、高重量,但放大倍率较小的镜头,因为这样的放大倍率要求较大的前组光学元件;在某些注重重量或尺寸的安装中,可能会禁止使用这类镜头。镜头的f/#也会影响镜头尺寸,特别是在放大倍率较大时,在这种情况下,前组光学元件也会变得复杂。下图显示了不同f/#下的两个4X远心镜头。

b0023d65e761011ad730bad9aa7b84a1.png

如果需要某个特别大的视场,则可以使用额外光学元件来增强固定焦距镜头,以便产生具有大视场的伪远心镜头。下图显示了一个25mm固定焦距镜头,该镜头已使用菲涅尔透镜增强,以生成具有8”视场的远心镜头。这种增强的图像质量低于专门设计的远心镜头,但可能在注重成本且需要远心度的大视场应用中非常有用。

d76f9c4174d4d0ca8bbe24bd3ee7d6b8.png

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

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

相关文章

收到一个机器人txt微盘_经阁-第一章 吞了个机器人-爱阅小说网

第一章 吞了个机器人莫金无奈的感叹着自己的命运,八岁之前他乞讨为生,之后遇到好心人收养,没想到五年后他又要开始无父无母的生活了。只是这下他身后还有个拖油瓶的妹妹。义父、义母穷苦了一辈子,临了也没给莫金留下丁点儿值钱的东…

高斯核函数python代码_单类SVM:SVDD

话接上文(SVM的简单推导),这篇文章我们来看单类SVM:SVDD。可能大家会觉得很奇怪,我们为什么需要单分类呢?有篇博客举了一个很有意思的例子。花果山上的老猴子,一生阅猴无数,但是从来没有见过其它的物种。有…

collector list 多个分组_【S01E07】groupby方法、GroupBy对象、groupby方法的分组键

Hadley Wickham(许多热门R语言包的作者)创造了一个用于表示分组运算的术语"split-apply-combine"(拆分-应用-合并),这个词很好的描述了整个过程。分组运算的第一个阶段,pandas对象(无…

清理垃圾代码bat_来买个小内存u盘么咯?盘内带电脑垃圾清理.bat那种丨heibai.org...

在某宝个别店铺购买了小内存u盘到货后插入电脑,发现自带了一个名为电脑垃圾清理的小程序。对就是这货怀揣着这家店真好,还带了垃圾清理软件的想法,我试着运行了软件.但是好像没有卵用.正好小表弟好像对这个比较了解,我去问问他咋回…

射灯安装方法图解_家居射灯怎么选?第三代宜美SMD射灯给你正解

前段时间,刚把自己的房子完成硬装,在灯具选择的过程中,家人的意见就不太统一。其父母觉得选灯只要够亮就行,而媳妇觉得选灯选贵的才行。到底谁的选灯方法好呢?其实家人们的建议并不是完全不对,灯够亮只是其…

c标签判断true false jsp_北京尚学堂卓越班252天[第042天]——Jsp

1. JSP的核心运行原理1) 客户端浏览器发送请求到服务器,访问a.jsp文件。http://localhost:8989/应用名/a.jsp2) 服务器端接收到请求后所做的处理a) 创建request和response两个对象b) 根据请求中的应用名找到该应用下面的web.xml文件,发现该应用的配置文件…

js aes加密_某高考咨询网js逆向分析笔记

一、某高考资讯网逆向分析某网站的js加密分析,安全签名signsafe HmacSHA1 AES一年前分析过网站数据还没有加密,最近需要获取新的数据发现原先的爬虫失效,请求和响应都经过加密。于是重新分析,记录下分析思路以及分析过程中遇到的…

python语言发明者 google_看看9种编程语言的发明者是怎么说的

从Node.js到C,看他们的发明者是如何评价他们的语言的未来。Ryan Dahl:Node.js问:它的主要优势是什么?Dahl:Node与其他的语言有一点明显的区别,就是处理I/O。所以它永远不允许用户锁上程序。它要求用户不断的…

opencv 的norm_22、OpenCV用卷积Filter2D进行滤波器

迄今为止,看到的函数中,卷积的操作发生在OpenCV函数的内部。理论上,图像卷积就是将内核与图像覆盖区域对应位置相乘之后求和。从调用函数上来看,它需要一个数组参数来描述内核。在实践层面,有一个重要的微妙因素会对结…

初学python有几个阶段_零基础如何系统的学习Python 从7个阶段入手

目前信息化产业发展势头很好,互联网就成为了很多普通人想要涉及的行业,因为相比于传统行业,互联网行业涨薪幅度大,机会也多,所以就会大批的人想要转行来学习Python开发。Python语言的应用Python是它们的主流语言&#…

glide加载gif图不显示动画_用Python绘制会动的柱形竞赛图

我们经常看到的Bar Chart Race(柱形竞赛图),可以看到数据的呈现非常的直观。今天就一起来学习下如何生成和上面一样的柱形竞赛图。1、导入Python库2、加载数据集这里使用的是城市人口数据集,加载我们想要的数据:其中&a…

python做后端开发的优点_【后端开发】python语言的特点是什么

python语言的特点是什么?python语言的特点简单Python是一门简单而文字简约的语言。阅读好的Python程序感觉就像阅读英语,尽管是非常严格的英语。Python的这种伪代码特性是其最大强项之一,它可让你专注于解决问题的办法而不是语言本身。容易学…

rust队友开挂_腐蚀RUST开挂玩家识别方法 如何识别玩家开挂

远程查挂是最无奈的选择,也是最后的办法,遇到一些会隐藏的你也查不到。附体附体附体!!这是唯一的方法!!附体是最好的选择,当然gm必须有丰富的游戏经验,800小时以下的玩家不适合做gm(除非有老师傅带)。下面说说如何对付只开透视的老…

不冲突的端口范围_网络中IP地址发生冲突故障怎么办

——————欢迎新老朋友们加入微信群,方便技术讨论,信息互通,行业交流:智能弱电行业专家群;智能弱电行业技术群;智能弱电行业信息群;申请加入请加小编微信:15537112161———————有朋友提…

项目结构_组织结构对项目影响系列课程---项目式组织结构

在前面的几篇文章中我们分别介绍了,系统型(简单型),职能型,弱矩阵,平衡矩阵,强矩阵结构的优点和缺点及它们带给项目的影响。今天我们介绍项目式组织结构的优点和缺点及其可能产生的影响。从结构…

第三范式的作用_钟启泉:教学范式的转型,让一线教师面临三大挑战 | 头条

培育“核心素养”的方法论——能动学习真实性的学习境脉所谓“能动学习”是“基于学习者的主体性参与与学习者之间能动的交互作用的学习而产生的”。它不是单纯记忆知识的学习,而是指学习者能够活跃地应对种种课题,并富有实感支撑的学习。基于“核心素养…

云服务器 管理控制台_关于小白如何初步管理自己的云服务器

博主在刚刚接触云服务器的时候,买的云服务是Linux系统的,反正是一脸懵,后来找了很多资料。所以博主认为步骤主要为以下几步第一步:如果买的是Linux系统将其重装成windows系统。以腾讯云服务器为例1.点击右上角的控制台2.进入买的云…

leetcode 贪心_利用贪心算法解LeetCode第1253题:重构2行二进制矩阵

题目描述给你一个 2 行 n 列的二进制数组:矩阵是一个二进制矩阵,这意味着矩阵中的每个元素不是 0 就是 1。第 0 行的元素之和为 upper。第 1 行的元素之和为 lower。第 i 列(从 0 开始编号)的元素之和为 colsum[i],col…

为什么苹果内购总是失败_IOS用户支付失败 购买无法完成解决教程

格斗江湖iOS系统用户玩家,最近在充值的时候出现无法完成或者充值失败提示。这是怎么回事呢?出现上面的提示时,我们首先需要从自己“可控”的范围内查找原因。一、未越狱系统1、检查下自己的Apple ID是否有足够余额。2、中国大陆地区Apple ID账号&#x…

python中怎么创建配置文件_如何在Django中创建配置文件注册表单?

我试图创建一个定制的注册表单,但是我不知道如何去做,因为我试图将默认的django注册与一个新的模型连接起来。在这是它看起来的样子,可能是错的,但我正在考虑这样的事情。在模型.pyclass Profile(models.Model):user models.OneT…