单反成像原理

简介:

从小孔成像开始说起

初中的物理我们都学过小孔成像

Image

物体的光线通过一个小孔,会倒映到黑盒中后方的投影版上,然后就可以在投影版上看到图像的倒影了。

这个技术很好地被应用在了照片上。开始的科学家们想到,既然通过小孔成像能把影像投射到投影板上,那么我如果开发一种感光材料放在投影板上,感光材料通过光的影响,会发生化学变化,然后当光关闭的时候,刚才投射在感光材料上的影像(其实就是光)就有短暂的记忆功能,靠着这个记忆功能,就可以把影像还原成为照片,放在胶片或者存储介质上了。

于是想想上图的小黑盒是感光材料,小孔是感光材料,小孔的前面还需要放一块布来控制光的摄入,那就是快门。

Image(1)

上面的这张图就是单反相机的内部结构了。

内部结构

先看下半部分,物象光线通过镜头反射到胶片或者感光耦合原件上。

感光元件之前有一个快门帘,这个快门帘的拉起和关闭的速度就叫做快门速度。显然,快门速度越慢,则影像的光在感光元件上停留的时间越长,则找出来的照片越亮。但是速度慢也有个问题,就是接受成像的时间变长,对于稍微移动的物体,或者相机不稳定的因素,那么在感光元件上的像就有可能由于记录过多的移动而产生模糊。在相机上有个快门速度比如1/125来表示这个属性。

 

感光元件,在历史上的胶片时期,这里的感光元件就是胶片或者胶卷,当一个胶片成像之后,就换下一个胶片记录影像。但是现在科技发达了,出现了数码相机,它的感光元件主要有两种:CCD(电荷耦合)和CMOS(互补金属氧化物导体)。CCD的成像质量优于CMOS,但是由于制作工艺复杂,成本高,所以现在市场上的相机主要还是CMOS的感光元件。感光元件对光的敏感程度也有一个属性来标志,ISO感光度。ISO感光度有几百到几千的数值,数值越大,说明对光越敏感,只要接受小量的光就可以有很清晰的影像了。那么很容易联想到,感光度和快门速度应该配合使用,当感光度高的时候,快门速度应该要快,这样照出来的影像才不会太亮。

 

好了,成像的原理就是这样,但是有个问题,照相的人如何在照相的时候怎么才能看到我要照的像是什么样子的呢?于是上图中反光镜,五棱镜和目镜就是起这个作用的。

反光镜静止的时候是呈45的角度,那么物象的光通过镜头进入到相机内部的时候,会被投射到上方的五棱镜中,五棱镜通过两次反射就将物象的光投射到目镜或者观景窗中。好了,我们可以计算下,首先镜头的小孔成像是将物象颠倒过来,后来的每个反射也会将物象颠倒一次,后面经过了三次反射,所以最终在观景窗中看到的物象是正面的。

反光镜的作用还在于控制照相。当平时未按下快门的时候,反光镜呈45度角,光无法进入到感光元件。当按下快门的时候,反光镜物理移动,向上旋转到平行位置,则光能直行进入到感光元件,此时就可以成像。但是这个时候由于反光镜无法反射物象到观景窗,则在光景窗看到的必然是一篇漆黑。这就是为什么按下快门的时候会一篇漆黑的原因。

镜头

镜头有几个名词需要理解清楚:景深,焦距,光圈

Image(2)

先理解下,为什么照出的照片有虚像和实像的区别?

物体的光线经过镜头的折射之后汇聚到感光器件上,但是有的光线并不是正好汇聚到感光器件上,而是汇聚在感光器件之前或者之后,在之前汇聚的折射后会反射虚像到感光器件上,在之后汇聚的也会出现虚像在感光器件上。只有正好在感光器件上汇聚的点才会呈现最清晰的图像。

景深

但是我们肉眼看到的“清晰成像”是有个范围的,就是说从正好在感光上汇聚的点开始,周边的虚像点越来越多,在一定范围内是不会被肉眼发现的。这个不会被肉眼发现的范围就叫做景深。意思就是清晰的景象的范围。景深越大,代表清晰的范围越大,照片上虚化的范围就越小。反之,景深越小,清晰的范围越小,虚化范围越大。我们把导致虚化的光线叫做弥散斑。

在景物和镜头的距离不变的前提下,影响景深的因素有两个:焦距,光圈。

焦距

焦距是指镜头和感光器件之间的距离。

Image(3)

焦距越小,接受的弥散斑就越小,景深就变大。焦距越大,接受的弥散斑就大,景深就变小。但是我们这是在考虑景物和镜头距离不变的情况下的。我们可以反过来想,镜头的折射程度是一样的,焦距越小,它能对焦接受的景物距离就短,于是远距离的景物就无法拍摄清晰。焦距越大,可对焦范围就大,远距离的景物就可以拍摄清晰。于是就有出现了长焦等镜头。

那既然有弥散斑,我用个挡板挡住弥散斑不就可以让照片景深变大吗?对的,这挡板就是光圈。

光圈

Image(4)

在同样的焦距下,光圈小,则就能更好挡住外围的弥散斑,看景物就越清晰,景深大。反之,光圈大,则外围弥散光就越多,景物虚化的部分就更大,景深小。这里光圈大小是使用一个f值来进行衡量。光圈半径 = 焦距 / f值,比如50mm的焦距,f4的光圈大小,则光圈半径就是 50mm/4。所以我们平时说的光圈大小实际上是和光圈入光的半径呈反比的。

Image(5)

目录
相关文章
|
Web App开发 监控 JavaScript
|
存储 NoSQL JavaScript
Node.js导入MongoDB具体操作指南
通过本文,您已经学会了如何在Node.js中导入MongoDB并执行基本的CRUD操作。Node.js与MongoDB的结合使得构建高效、可扩展的后端服务变得更加容易。通过遵循本文的步骤,您可以快速设置并运行一个强大的数据存储和处理系统。希望这篇指南能为您的开发工作提供实用的帮助。
402 13
|
存储 关系型数据库 分布式数据库
[PolarDB实操课] 01.PolarDB分布式版架构介绍
《PolarDB实操课》之“PolarDB分布式版架构介绍”由阿里云架构师王江颖主讲。课程涵盖PolarDB-X的分布式架构、典型业务场景(如实时交易、海量数据存储等)、分布式焦点问题(如业务连续性、一致性保障等)及技术架构详解。PolarDB-X基于Share-Nothing架构,支持HTAP能力,具备高可用性和容错性,适用于多种分布式改造和迁移场景。课程链接:[https://developer.aliyun.com/live/253957](https://developer.aliyun.com/live/253957)。更多内容可访问阿里云培训中心。
360 0
[PolarDB实操课] 01.PolarDB分布式版架构介绍
|
机器学习/深度学习 数据采集 数据库
使用Python实现智能食品营养分析的深度学习模型
使用Python实现智能食品营养分析的深度学习模型
704 6
|
缓存 网络协议 Unix
程序员超实用的文件系统性能评测工具盘点
程序员超实用的文件系统性能评测工具盘点
ly~
|
网络协议 算法 关系型数据库
C语言的应用
C 语言因其高效性和对硬件的直接访问能力,在多个领域有广泛应用。在系统软件领域,它被用于开发操作系统(如 Unix 和 Linux 的内核)和嵌入式系统(如汽车电子控制系统)。在游戏开发中,C 语言常用于构建游戏引擎的底层部分(如 Unity 和 Unreal Engine 的核心模块)及性能要求高的独立游戏。此外,C 语言也用于数据库管理系统(如 MySQL 和 PostgreSQL 的核心功能)和网络编程(如 TCP/IP 协议栈和网络服务器的核心模块)。
ly~
561 3
|
存储 关系型数据库 MySQL
再探PolarDB —— PolarDB MySQL 四大场景下的全方位评测
本文全面评测了阿里云PolarDB MySQL在四大关键场景下的表现:Serverless极致弹性、列存索引(IMCI)、弹性并行查询(ePQ)以及无感秒切高可用。通过官方提供的免费体验资源,我们深入了解了PolarDB MySQL的核心能力和性能。Serverless极致弹性列存索引(IMCI弹性并行查询(ePQ)无感秒切高可用此外,文章还介绍了PolarDB MySQL在数据备份和HTAP(混合事务/分析处理)场景下的优势,包括灵活的备份策略、高效的全量和库表恢复方式,以及通过IMCI支持的HTAP能力。这些特性共同构成了PolarDB MySQL作为一款先进的云数据库服务的强大竞争力。
|
SQL Java 数据库连接
MyBatis 常见错误
为初学者准备的常见MyBatis 异常汇总 ,持续完善中
3071 0
|
缓存 监控 Java
【工作中问题解决实践 十】一次内存泄露排查-MAT使用指南
【工作中问题解决实践 十】一次内存泄露排查-MAT使用指南
548 0