远心镜头(Telecentric lens)原理介绍
远心镜头(Telecentric lens)原理介绍
远心镜头(Telecentric lens),是为纠正传统镜头视差而设计,它可以在一定的物距范围内,使得到的图像放大倍率不会变化,简单的说这种镜头拍出来的图像没有近大远小关系。
远心镜头又分为物方远心镜头、像方远心镜头和双侧远心镜头。下面是两个远心镜头的实物照片。
关于远心镜头的原理,网上有一些介绍,但是写的都很晦涩。其实几句话就能说清楚的,最核心的一点是远心镜头是普通镜头与小孔成像原理的结合。
这里我试着用三张图来说明远心镜头的原理。
物方远心镜头
传统镜头的光路:
如果我们在像方焦点处放置个小孔,光路就变成了这样:
这个小孔的作用就是只让平行入射的物方光线可以达到像平面成像。从几何关系可以看出这时像就没有近大远小的关系了。物方远心镜头的原理就这么简单。之所以叫物方远心,是因为接收平行光成像,相当于物体在无穷远处。
物方远心镜头的缺点是放大倍数与像距成直接关系。实际使用时相机安装的远近会影响放大倍数。所以每个镜头系统都要单独的标定放大倍数。
像方远心(image-space telecentric)
我们知道光路是可逆的,那么将物方远心镜头的光路反过来就成了像方远心镜头的光路。
这种镜头的特点是放大倍数与像距无关,相机离得远还是近都不影响放大倍数。
双侧远心镜头 (double telecentric、bi-telecentric)
结合物方远心和像方圆心的光路就成为了双侧远心镜头。下面是光路:
这种镜头的特点是物体离得远近或者相机离得远近都不影响放大倍数。所以广泛的应用在机器视觉测量检测领域。
当然,实际的圆心镜头中的小孔光阑不可能无限的小,那样进来的光线就太小了。所以实际的圆心镜头还是会有一定的近大远小关系的(这个指标称之为远心度,远心镜头的远心度通常小于0.1°)。物距也不是任意的,但是它比普通的镜头的景深要大得多。
远心镜头(Telecentric lens)原理介绍的更多相关文章
- kafka集群原理介绍
目录 kafka集群原理介绍 (一)基础理论 二.配置文件 三.错误处理 kafka集群原理介绍 @(博客文章)[kafka|大数据] 本系统文章共三篇,分别为 1.kafka集群原理介绍了以下几个方 ...
- 03 Yarn 原理介绍
Yarn 原理介绍 大纲: Hadoop 架构介绍 YARN 产生的背景 YARN 基础架构及原理 Hadoop的1.X架构的介绍 在1.x中的NameNodes只可能有一个,虽然可以通过Se ...
- 04 MapReduce原理介绍
大数据实战(上) # MapReduce原理介绍 大纲: * Mapreduce介绍 * MapReduce2运行原理 * shuffle及排序 定义 * Mapreduce 最早是由googl ...
- Android Animation学习(一) Property Animation原理介绍和API简介
Android Animation学习(一) Property Animation介绍 Android Animation Android framework提供了两种动画系统: property a ...
- [转]MySQL主从复制原理介绍
MySQL主从复制原理介绍 一.复制的原理 MySQL 复制基于主服务器在二进制日志中跟踪所有对数据库的更改(更新.删除等等).每个从服务器从主服务器接收主服务器已经记录到其二进制日志的保存的更新,以 ...
- 分布式文件系统FastDFS原理介绍
在生产中我们一般希望文件系统能帮我们解决以下问题,如:1.超大数据存储:2.数据高可用(冗余备份):3.读/写高性能:4.海量数据计算.最好还得支持多平台多语言,支持高并发. 由于单台服务器无法满足以 ...
- 内存分析_.Net内存原理介绍
内存原理介绍 1. .Net应用程序中的内存 1.1.Net内存类型 Windows使用一个系统:虚拟寻址系统.这个系统的作用是将程序可用的内存地址映射到硬件内存中的实际地址上.其实际结果 ...
- 液晶常用接口“LVDS、TTL、RSDS、TMDS”技术原理介绍
液晶常用接口“LVDS.TTL.RSDS.TMDS”技术原理介绍 1:Lvds Low-Voltage Differential Signaling 低压差分信号 1994年由美国国家半导体公司提出之 ...
- 淘宝JAVA中间件Diamond详解(2)-原理介绍
淘宝JAVA中间件Diamond详解(二)---原理介绍 大家好,通过第一篇的快速使用,大家已经对diamond有了一个基本的了解.本次为大家带来的是diamond核心原理的介绍,主要包括server ...
随机推荐
- Redis 处理客户端连接的一些内部实现机制
本文主要介绍了 Redis 处理客户端连接的一些内部实现机制,包括连接处理.超时.缓冲区等一系列内容. 注:本文所述内容基于 Redis2.6 及以上版本. 连接的建立 Redis 通过监听一个 TC ...
- django配置连接多个数据库,自定义表名称
在项目tt下新建两个app,分别为app01.app02.配置app01使用default节点数据库:app02使用hvdb节点数据库(也可以配置app01下的model既使用default,也可以使 ...
- linux在当前目录下根据文件名查找文件
grep -rl "python" ./ 查找./目录下文件名中包含python的文件 find | grep luoluo将当前目录下(包括子目录)的文件名中含有luoluo的文 ...
- Celery学习--- Celery 最佳实践之与django结合实现异步任务
django 可以轻松跟celery结合实现异步任务,只需简单配置即可 同步执行和异步执行 注意:即使Celery的任务没有执行完成,但是已经创建了任务ID.可以利用前台的定时任务发送Ajax异步请求 ...
- Linux zip命令详解
zip常见命令参数 Usage: zip [-options] [-b path] [-t mmddyyyy] [-n suffixes] [zipfile list] [-xi list] The ...
- Hybris阶段总结(1)何为hybris
按照谷歌出来的结果,大体意思是“Hybris Commerce是一套完善的电子商务解决方案,基于开放标准构建,功能强大,且具有模块化的特点,旨在为满足企业的商务需求提供坚实的基础”. 当然对于我这样 ...
- 在windows下的hdfs客户端编写
在windows下的hdfs客户端编写 新建一个工程,右键 properties -> java build path -> libraries 和之前一样的操作,这次 new 一个 us ...
- 《面向对象程序设计》 三 Calculator 计算器初步
Git传送门 纸上得来终觉浅,绝知此事要躬行. 学习了一些c++的相应知识后,虽然了解写法,真正操作时还是出现小错误.要多操作,记住关键点,避免不该有的小错误. 写分文件类外定义时出现了问题.在Sca ...
- [CSS]关于z-index与position的一次奇异经历
前言: 前不久,同事S遇到了一个关于position和z-index的问题. 他折腾了一天没搞定,群发了邮件寻求帮助, 我一开始以为很简单,就主动说帮忙,简单尝试之后,才发现貌似没那么简单. 问题主要 ...
- JavaScript基础进阶之常用字符串方法总结
前面三篇文章简单的把JavaScript基础内容过了一遍,我们已经可以用JavaScript写一些简单的代码了. 今天主要总结一下JavaScript中String对象中自带的一些方法,来帮助我们处理 ...