公司项目最近开始从图像处理(软件部分)往前端移,也就是琢磨显微镜的成像,也就是图像的生成(硬件部分)。所以自己也慢慢的把自己在图像处理的知识体系往前移,去了解数字图像的生成,是为了更好的去理解数字图像的处理过程。
显微镜的基本光学系统(目镜+物镜)都是由凸透镜组成的,从网上搬了一个凸透镜成像的基本原理图过来。
当物距大于2倍焦距时,则像距在1倍焦距和2倍焦距之间,成倒立、缩小的实像。此时像距小于物距,像比物小,物像异侧。
当物距等于2倍焦距时,则像距也在2倍焦距, 成倒立、等大的实像。此时物距等于像距,像与物大小相等,物像异侧。
当物距小于2倍焦距、大于1倍焦距时,则像距大于2倍焦距, 成倒立、放大的实像。此时像距大于物距,像比物大,像位于物的异侧
当物距等于1倍焦距时,则不成像,成平行光射出
当物距小于1倍焦距时,则成正立、放大的虚像。此时像距大于物距,像比物大,物像同侧。这里正好可以提到虚像的概念。如上面几个图所示的,实像是由真实的光线汇聚形成的像,被人眼看到就是实像。
而像下面这个图,人眼看到的是光线实际上是没有汇聚的,但是人眼会认为光线是直线传播的,所以会在光线的反向延长线上形成一个汇聚点,从而可以看到像,这样就叫做虚像,放大镜就是这个原理。
说到这个实像和虚像的时候,网上提到的是虚像是无法被光屏承接的。我是这么理解这句话的:
观测到的虚像和物体在同一侧,但是如果在红色框所在位置放一个CCD,是无法形成这个虚像的,因为没有实际光线使CCD感光。但是如果在黄色框位置放上一个CCD,那么有实际光线进入,是可以形成一个放大的像的。
简单的例子就是用放大镜去看,能看到一个放大的虚像,在物体那一侧实际上无法拍摄到,但是如果在人眼这一侧用相机是可以拍到这个像的。
上面提到了放大镜,放大镜是通过一个凸透镜进行放大,而显微镜包含了两个凸透镜:物镜和目镜。两个透组合放大,一般来说,物体在物镜的一倍和两倍焦距之间,在另一侧形成一个放大倒立的实像,然后这个像在目镜的一倍焦距之下,形成一个放大的虚像,可以在目镜的另一侧来观看或者成像。
在光学系统中,有一个“无限远光学系统”的概念,这里也找到一张图:
相当于在物镜后面又加了一个凸透镜,让物体位于物镜的1倍焦距处,形成一个平行光线,然后再通过这个凸透镜来成像。我理解这个无限远的意思是物镜和这个凸透镜之间是可以有无限远的,因为反正是平行光线,就可以在这个中间加上一堆其他的光学元器件,做一些其他的作用。在上图的有限远系统中,这个距离就是固定的,加入任何的器件都可能影响成像。
现在我接触的一些显微镜系统基本上都是无限远的(医院系统)。
之前一直在想对焦到底是在对什么,了解上面的基本知识之后,在显微镜系统中,调整Z轴的高低,实际上是移动载物平台(物体)的与物镜之间的距离,我理解就是要把物体刚好放在物镜的一倍焦距处,这样才能形成平行光线,顺利成像;否则就会导致成像模糊。
在显微镜系统中,一般都有多个物镜,每个物镜的放大倍数都不一样,会通过一个转换转盘来进行切换。齐焦的意思就是对显微镜设备提出要求,转换物镜之后,对物体不需要重新对焦。
我觉得应该就是通过调整那个物镜的长度来保证齐焦,也就是说将不同倍数的物镜长度设定好,转过来就恰好保证物体在这个物镜凸透镜的一倍焦距上。上面提到的无限远系统就正好允许方便的调整物镜镜筒的长度。
当然这个是有允许的误差的。
真实环境中,经过凸透镜的光并不会像理论中描述的一样,所有的光线都聚集在一点,类似下面的图。
根据这个光线散的情况不一样,像差又分为很多种,就不展开了解了。现在光学系统都会引入消除像差的技术,但是无法全部消除,就会增加一堆光学器件进去进行校正,尽量让所有的光线都聚焦到一个点上,所以现在的物镜都好大一坨。
上面的都是光学的基本概念,经过一系列光路后,光线最终到了相机的传感器上,就是这些传感器将光信号转换成电信号,最终形成图像。
从网上找了一段文字,我觉得讲的挺明白的,挪过来用一下。
CCD与CMOS传感器是当前被普遍采⽤的两种图像传感器,两者都是利⽤感光⼆极管(photodiode)进⾏光电转换,将图像转换为数字数据,⽽其主要差异是数字数据传送的⽅式不同。
CCD传感器中每⼀⾏中每⼀个象素的电荷数据都会依次传送到下⼀个象素中,由最底端部分输出,再经由传感器边缘的放⼤器进⾏放⼤输出;⽽在CMOS传感器中,每个象素都会邻接⼀个放⼤器及A/D转换电路,⽤类似内存电路的⽅式将数据输出。
造成这种差异的原因在于:CCD的特殊⼯艺可保证数据在传送时不会失真,因此各个象素的数据可汇聚⾄边缘再进⾏放⼤处理;⽽CMOS⼯艺的数据在传送距离较长时会产⽣噪声,因此,必须先放⼤,再整合各个象素的数据。
由于数据传送⽅式不同,因此CCD与CMOS传感器在效能与应⽤上也有诸多差异,这些差异包括:
1. 灵敏度差异:由于CMOS传感器的每个象素由四个晶体管与⼀个感光⼆极管构成(含放⼤器与A/D转换电路),使得每个象素的感光区域远⼩于象素本⾝的表⾯积,因此在象素尺⼨相同的情况下,CMOS传感器的灵敏度要低于CCD传感器。
2. 成本差异:由于CMOS传感器采⽤⼀般半导体电路最常⽤的CMOS⼯艺,可以轻易地将周边电路(如AGC、CDS、Timing generator、或DSP等)集成到传感器芯⽚中,因此可以节省外围芯⽚的成本;除此之外,由于CCD采⽤电荷传递的⽅式传送数据,只要其中有⼀个象素不能运⾏,就会导致⼀整排的数据不能传送,因此控制CCD传感器的成品率⽐CMOS传感器困难许多,即使有经验的⼚商也很难在产品问世的半年内突破 50%的⽔平,因此,CCD传感器的成本会⾼于CMOS传感器。
3. 分辨率差异:如上所述,CMOS传感器的每个象素都⽐CCD传感器复杂,其象素尺⼨很难达到CCD传感器的⽔平,因此,当我们⽐较相同尺⼨的CCD与CMOS传感器时,CCD传感器的分辨率通常会优于CMOS传感器的⽔平。
经过传感器的光电转换后,数字图像就形成了。
前面一章是光学+传感器部分,简单来说就是收集光线并做光线转换。在最终形成图像之前,起始还有一部分的软件调整,也就是对上面的传感器数据进行一些数据处理,再形成最终的图像。
相机曝光时间是指从快门打开到关闭的时间间隔,在这一段时间内,物体可以在底片上留下影像。在数字化设备中,都没有传统相机的那个按钮了,从CCD的角度来看,就是相当于把曝光时间的这个一个时间段中采集到的光一起转换成电信号,最终来形成数字图像。
白平衡的英文为White Balance,其基本概念是“不管在任何光源下,都能将白色物体还原为白色”,对在特定光源下拍摄时出现的偏色现象,通过加强对应的补色来进行补偿。
对上面这句话的理解可以想象一下一张白纸,在大晴天下看是白色的,但是如果是在黄色灯光下看,肯定出来的颜色就是偏黄色,如果环境灯光是红色,那么就是偏红色。相机的白平衡设置就是让用户可以选择当前的环境光是啥颜色,然后相机根据这个颜色值去计算补偿值,最终拍出来的东西还是你想要的白色(还原,如果是特意的,比如拍日落啥的,就另说)。这就是白平衡的意义。
那么怎么选择颜色呢?在白平衡的调整部分,选择光的颜色是按照色温来选的。
色温:如果某一光源发出的光,与某一温度下黑体发出的光所含的光谱成分相同,即称为某K色温。如100 W灯泡发出光的颜色,与绝对黑体在2527℃时的颜色相同,那么这只灯泡发出的光的色温就是:(2527+ 273)K =2800K 。
色温图谱:
冷色调的色温要高,红色的波长是最长的,也就是能量低,和温度低符合。温度高的情况下产生的能量大,波长短频率高,所以就往蓝色方向偏。
选择了某一个色温,就是告诉相机,当前的光线使这个色温的,需要根据这个去进行补偿。
另外,在普通的拍摄相机中,可能会根据场景来选:
伽马变换主要用于图像的校正,将灰度过高或者灰度过低的图片进行修正,增强对比度。变换公式就是对原图像上每一个像素值做乘积运算(r,s分别代表输入和输出灰度):
s = c r γ , r ∈ [ 0 , 1 ] s=cr^{\gamma}, r\in[0, 1] s=crγ,r∈[0,1]
从伽马曲线可以直观理解:
gamma值小于1时,会拉伸图像中灰度级较低的区域,同时会压缩灰度级较高的部分。
gamma值大于1时,会拉伸图像中灰度级较高的区域,同时会压缩灰度级较低的部分。
如果 γ = 1 \gamma = 1 γ=1,输入和输出为线性关系。
伽马是相机的一个参数,如果是光线暗的环境下,可以把伽马值调小一点;如果是非常刺眼的环境下,可以把伽马值调大一点。