如何能够照出一张月亮的照片让照片和咱们看到的月亮一样?
如果希望在下面直接得到如何照的1,2,3式的步骤,那可能各位要失望了,因为在讲结果之前,我希望能够和各位一起来想一个更基础的问题——
(1) “什么叫和眼睛看到的一样?”
你可能会发现,在用手机照月亮的时候最大的感觉是照出来月亮很小,而眼睛看到的月亮很大。
那么试想,大小是衡量视觉效果的唯一依据么?看个三张图合成的GIF(按照1920x1080的FHD屏幕设计,请点开全屏查看)。
▲三个不同尺寸月亮图像对比图
三张图片,哪张效果更好?^_^
是不是很难判断?
不管你相不相信,这三张图,实际对月亮的分辨程度是完全相同的(如果你在离手机15cm看图A,和你在离手机45cm看图B,或者在离手机90cm看图C,看到的会是完全相同的月亮。)
所以这里想表达的第一个意思是:
对视觉系统来说,大小只是一个主观认知和对经验的一种描述而已,并不是决定视觉效果的根本依据。
再来看另外四张图片合成的GIF(按照1920x1080的FHD屏幕设计,请点开全屏查看):
▲四个相同尺寸月亮图像对比图
这次的四张图片,哪张效果更好呢?是不是非常明显了?^_^
所以这里想表达的第二个意思是:
抛开大小的因素,图像的清晰程度对于视觉系统来说更加直观,会直接影响我们对物体的认知。
上面看到的四个图,实际是模拟四种不同分辨能力相机获得的月亮图像缩放至相同的大小的情况。如果使用四个图像的原始大小(1像元对应现在图中显示的一个像素),那么四个图像的比例应该是下面这张图这样:(按照1920x1080的FHD屏幕设计,请点开全屏查看)
▲四个不同尺度月亮图像的实际1:1图像对比
结合这个图片,如果回想一下上面的动画,从图像A到图像D,是什么在变化?是大小么?还是清晰度?
所以这里想表达的第三个意思是:
我们所认为的清晰程度,实际上是指一种分辨能力。对于相机拍摄月亮的照片,实际影响清晰度的只是相机对月亮细节的分辨能力。
综合上面三点,可以知道如果需要获得一张“和人眼看到一致”的月亮照片,需要满足两个条件:
相机成像需要获得和人眼观察时相同的对月亮细节的分辨能力
将相机图片100%显示出来后,通过调整人与图片的距离来使图像大小与真实月亮相同。
先来看一个理论结果:
下面这个图像在手机(FHD分辨率)全屏显示以后,放在离眼睛大约40cm(严谨点的话这个距离是5寸屏幕的,5.5寸到44cm。。。),看到的月亮就同咱们眼睛看到的月亮完全一致了。
▲据手机40cm处看到本图将与肉眼看真实月亮大小一致。
其实上面图中的图像D也是这个大小,各位可以晚上抬头比比看。:)
(2) “什么是细节的分辨能力?”
相机是一个和人眼非常类似的光学系统。
相机的成像单元叫CCD,而人眼的成像单元叫视网膜,成像的大概状态是下面图中的这样:
▲人眼与相机的成像相似性示意图
从上面的图中可以看出,人眼和光学相机所能够分辨的其实并不是大小,而是光线进入视场的角度。这种角度分辨系统能够分辨的两个相邻细节,所依靠的不是细节之间的距离,而是两个细节发出光线在成像时入射光线的角度差异。
来一起看下面这个二维示意图图。
▲最小分辨单元光感特性示意图
需要特别注意的是,对于成像系统,每一个最小分辨单元实际上只能敏感强度和谱段,并不能分辨细节。
所以从上面的图中可以看出,当光线A和光线B到达CCD时,光线落在了一个单元上,成像系统会将A和B的光线统一识别处理。
而从图中也可以看出,成像系统能够准确分辨的光线间的角度间隔,是从光线A到光线C的角度(小于这一间隔就有可能落在同一分辨单元内)。
因此可以认为,两个相邻最小分辨单元(一个CCD像元或者一个视觉细胞)所能敏感的角度范围中央的角度差异,就可以称作角分辨率,这也就是成像系统辨识细节的最强的能力了。
(3) 人眼的角分辨率
先来说人眼,人眼的视网膜成像视场非常宽(上面的图中眼睛壁上红色的部分都是视网膜~),甚至超过了180度(可以目视前方用手从耳朵的位置往前移动,会发现咱们的“余光”在还没和眼睛平齐时就已经发现了手)
但咱们实际看东西的时候并不是主要依赖于整个视网膜,眼睛获取的信息量绝大多数都来自咱们注视时使用的视网膜上的一个小区域,一般称为“中央凹”或者“黄斑”。参考Wikipedia上的图片:
▲人眼结构示意图(英文,摘自Wikipedia)
图中的Fovea就是中央凹,Macula就是传说中的黄斑了。
当我们想看什么的时候,眼珠就会轱辘轱辘转到相应的角度,使物像落在黄斑这个角分辨率最高的区域。
黄斑的位置究竟角分辨率能有多高呢?
参考了2007年复旦大学冯琛莉硕士论文中的数据,让我们可以绘制下面这张锥细胞的分布图:
▲黄斑区视锥细胞分布图。
图中的0点就是我们视线的“中央”的位置,这里有比周边高得多的视觉细胞密度(127637个/mm^2)。还可以看到随着视场远离中央凹,细胞密度急剧下降。
(再加上一个焦距的数据:眼睛的像方焦距范围是22.8mm~18.9mm,为方便计算咱们取20mm)
(4) 相机的角分辨率
非技术咖可以跳过此节。。。
相机成像的组件是相机的焦平面。CMOS/CCD都是位于焦平面上的成像器件,用于实现光信号到电信号的转换。为方便,下面使用“CCD”来统一表示成像器件。
对于我们使用的CCD器件,考虑到工艺实现的复杂性,并没有制造成与人眼相同的变密度成像像元,而是使用了均匀的像元阵列。
如果将人眼的细胞假想成方的也投影在一个平面上,人眼和一台2200万像素的全画幅相机的CCD的对比可以参考下面这个两图(图像的坐标单位为mm,所有网格即为1:10的实际像元/锥细胞大小)
▲全画幅5DIII相机的CCD器件1:10网格分布图
▲人眼视锥细胞1:10网格分布图
(在上面图中为了美观加了点颜色和光照,但颜色本身没有物理意义……此外为了方便对比成了格子,所以视网膜图可能存在细胞不是正方的情况,大家可以参考对角线上的尺寸)。
那么对于相机来说,如何计算角分辨率呢?
其实从上面人眼角分辨的计算过程,我们已经可以看到最重要的两个因素:
像元尺寸d;
焦距f。
相机角分辨率的计算方式咱们还是用三个例子来讲,会比较容易理解。^)^
范例1(手机):
先用OnePlus 3手机为例,后置摄像头1600万像素,图像长宽比例为4:3,照片尺寸为4640x3480,CCD尺寸为1/2.8英寸(25.4mm/英寸),焦距为4.26mm。
(注意由于各个像元间不能无缝衔接,因此厂商给出的IMX298传感器的像元尺寸为1.12μm,但对于分辨能力仍然需要按照1.56μm计算)
范例2(全画幅单反):
再用全画幅5DMarkIII为例,2200万像素,图像长宽比例为3:2,照片尺寸为5760x3840,CCD尺寸为36mmx24mm,假设咱们使用了200mm焦距的长焦镜头。
范例3(APS-C半画幅单反)
再用APS-C画幅的7D为例(感谢晓飞提供设备支持^_^),2000万像素,图像长宽比例为3:2,照片尺寸为5472x3648,CCD尺寸为22.5mmx15mm,假设咱们同样使用了200mm焦距的长焦镜头。
(5) 人眼与相机观察月亮的对比
月亮的基本参数:近地点距离362600km,远地点405400km,平均半径384399km;月球半径1737.1km;
今年月球正是处在近地点,在地面观测时月球的张角为:
人眼中央区域的角分辨率达到了0.5',所以人眼观察月亮时在视网膜上成的像,相当于一个直径等于66个像素的圆。
而手机CCD的角分辨率为1.26'(顺便说一句,华为双摄p9/Mate9使用了索尼的IMX286传感器,像元中心间距1.77μm,角分辨率1.21',可见手机都差不多……),CCD上的像是一个直径等于26个像素的圆。
200mm镜头的全画幅相机的角分辨率为0.11', CCD上的像是一个直径等于300个像素的圆。
200mm镜头的APS-C画幅相机的角分辨率为0.07',CCD上的像是一个直径等于468个像素的圆。
1:1做在图上的大小比例是这样的(按照1920x1080的FHD屏幕设计,请点开全屏查看):
▲三个成像方式的理论成像结果与人眼对比示意图
将手机、APS-C画幅、全画幅的成像角分辨率特性画张图:
▲手机、APS-C画幅、全画幅的成像角分辨率特性
所以,回到开篇的问题,如何能够照出一张月亮的照片让照片和我们看到的月亮一样。那么通过上面的分析可以有如下结论:
平常用的这种广角手机不可能达到人眼的角分辨率。。。死心吧……
APS-C画幅的7D使用28mm的镜头就能达到人眼的角分辨率。
全画幅的5DIII使用43mm的镜头就能达到人眼的角分辨率。
(6) 总结
给月亮照相的要素很多,但这篇里面其实只有一个核心思想:人眼认识世界的方式是基于角度的,现有的所有光学成像系统都是角分辨系统,系统分辨的是张角而不是大小。
(7)与航天的关系
假设卫星上有个5m焦距的相机,像元尺寸是10μm,卫星高度500km,成像分辨率是多少?
来源:Engineer朱
我来说两句排行榜