编者按:摄像,摄万物之象。经典摄像方法在成像的各个维度——空间分辨率、时间分辨率、视角及深度、颜色(光谱)等均已达到瓶颈,而计算摄像能够突破经典成像模型和相机硬件的局限,更加全面、精确地捕捉真实世界的视觉信息。计算摄像学是一门综合信号处理、光学、视觉、图形学等多学科知识的交叉研究领域。在本文中,国内第一部真人CG电影《爵迹》的幕后英雄,南京大学的曹汛教授,将从计算摄像学的常用原理和思想出发,重点介绍光谱视频计算摄像、光场成像等计算摄像学领域的经典研究。大讲堂特别在文末提供文章以及代码的下载链接。
今天的报告主要从计算摄像的基础原理和思想出发,重点介绍我十几年来主要做的光谱视频相机,并介绍一些著名的计算摄像研究方向和系统。
计算摄像学是一个新兴的交叉学科,其英文名是Computational Photography ,在 视觉(CVPR/ICCV)以及图形学 (SIGGRAPH) 等会议中都有相关的 track。但是在近十几年中,会议中计算摄像track的论文比例较低,例如在 CVPR 中,每年几百篇接受的论文中只有二十几篇这个方向的论文。这其中的原因主要在于它涉及到硬件系统,研究周期比较长。其背景包括光学、电路以及算法,将新的计算理论引入到成像过程。与传统的图像、视频处理技术在获得数据后再进行处理相比,计算摄像研究希望能够通过更早地介入成像的过程,增强图像和视频的采集效率和性能。
目前,国际上诸如M.I.T.、Stanford、CMU等学校都开设了计算摄像相关的课程。在国际上有一些实验室专注于研究这个方向,如 Stanford 的SCI实验室、M.I.T. 的 Media Lab、以及杜克大学、以色列理工等等。国内清华大学、南京大学、北理工、中科大、北航、西电等高校以及中科院等科研院所也均开展了相关的课程教学和研究工作。
成像简史的三次革命
第一次革命:光学元件
我非常崇敬的计算摄像学领域的大师 David Brady教授,在国际上讲computational photography时常用这样一页Slide,我将它翻译过来放在这里。在这里,早期的光学成像装置起源于意大利佛罗伦萨,他们设计了类似于现在眼镜的装置(Spectacles),以此来进行光学成像,而世界上最早的望远镜镜头设计图纸如上图所示。(致谢David Brady教授)
我个人认为,世界上最早的成像其实在公元前400年,我们中国的墨子就发现了做一个小孔的装置就可以成像(小孔成像原理)。在我的建议下,David Brady教授在国际上做报告时也将墨子这一部分加入他的成像历史简介中。可以说,第一次成像革命中,人们意识到设计各式各样的光学装置可以进行成像,而那个年代,成像得到的图像和视频并不能保存下来,更谈不上图像处理、以及现在如火如荼的视觉研究了。
第二次革命:光化学和微电子
第二次革命使得成像有了记忆(memory),人们主要发明了两种方式可以将图像记录下来:其一是光化学的方法(如传统的胶片),其二是随着微电子的发展,集成电路可以做数字成像器件(如CCD、CMOS, CCD得到了2009年的诺贝尔奖)。将图像记录下来,为图像处理和分析提供了可能。
第三次革命:计算摄像
而现在的计算摄像让我们可以更早地介入成像的过程,对于处理图像时无法实现的指标,可以在成像的过程中就加入一些“计算”和“智能”的因素。
下面举几个例子,比如在空间维度上,现在手机相机的像素一般在1200万左右,而人类眼睛的最高像素集中区域大概在亿像素量级,那么,如果达到十亿像素是什么样的呢?
David Brady教授于2012年在 Nature上发表了一篇关于十亿像素相机的文章[1],之后一直在做这个技术的产业化,他现在就想把美国的橄榄球比赛做成一个十亿像素的直播,这涉及到了很多数据处理和数据传输问题。如果有十亿像素的话,观众就可以在直播中一直追踪喜欢的球星。并且由于分辨率特别高,在直播中切换视角时会有一种身临其境、漫游的感觉。
在时间维度上,高速摄像是人们一直追求的目标。比如在1964年,MIT 就做了一个子弹穿过苹果的 photography;在2000年,电影《黑客帝国》中有每秒一万帧的拍摄镜头。那么如果拍摄速度达到光速,也就是每秒万亿帧,会是什么样的情形呢?我的同事,Di Wu博士做了一个工作(CVPR, 2012 Oral),就捕捉到了一束光穿过可乐瓶的过程,直到此时,光速级别的成像也变成了可能。
我们客观的世界是三维的,除了空间和时间维度,我们还关注图像的深度和视角,光场相机(Light Field Camera)是这里的一个典型代表,它也是计算摄像学的一个典型的代表。Lytro公司前一阵融资几千万美元,要做电影级别的一个系统。图中展示了当年的美国十大发明:世界上第一台手持式光场相机,可以对深度进行层析以及重聚焦。光场技术对于现在的 VR/AR应用很重要,因为现在普遍的VR应用只改变视角,并不能改变focus(聚焦点)。
总结来看,成像包含空间、时间、视角和深度、以及光谱等多个维度。下面,我主要介绍我研究的光谱维度,或者说颜色维度。
光谱视频成像研究
人能看到彩色的世界,所以一直追求彩色成像。最早的彩色成像源于1908年,诺贝尔奖获得者 Gabriel Lippmann利用光的波动性设计了一个非常复杂的装置通过反演光的波长来得到颜色,但由于其高昂的成本和庞大的体积并没有投入实用。
后来,人们普遍采用James Clerk Maxwell提出的三原色(红绿蓝, RGB) 来合成彩色照片,图中显示了1861年拍摄到的世界上第一幅三色彩色图像照片。通常的成像在颜色维度有 RGB 三个分量,而光谱成像能在颜色维度上提供更多的信息。
在一般的成像过程中,给定一个场景,当光照射到这个场景上会产生反射,如蓝色的衣服会更好地反射蓝颜色光,而吸收绝大多数的绿色和红色光。当光反射到图像传感器上,会对光不同的波长产生不同的响应,通过对光波长变化的函数进行积分来得到数字图像,图像上积分的值经过量化可以得到每个像素的量化值,通常输出为8bit,在图像处理中用0-255的数值表示。
那么如何进行彩色成像呢?有一个很著名的专利—“拜耳滤波”,它将 RGB 相间的滤波片放到图像传感器前面来进行彩色成像。每个颜色的滤波器都有一个响应函数,在不同的波段上进行积分就能得到每个像素上 RGB 各8bit共24bit 的数据,也就是通常说的24位真彩色。在拜耳滤波中分别有1个 R 和 B,而有2个G,之所以多用了一个绿颜色分量,是因为人的眼睛对绿色是最敏感的,这样处理之后图像分辨率的损失会降到最低。
现在的问题是,我们想设计一个相机,使得光在反演到像素上时不仅仅是 RGB三通道,而是得到更多的颜色通道,即获得原始的光谱曲线。
之所以要做光谱成像,是因为从光谱中我们能得到更多的颜色信息:例如在污染物鉴别中,仅根据 RGB 我们很难知道是什么污染物,但是通过光谱曲线我们就能知道其具体种类。针对不同的材质可以得到不同的光谱曲线,在药品成分鉴别和工业材料鉴别中都能完成 RGB 图像中很难实现的任务。
光谱视频成像很难,我认为它本质上是大数据问题。它的难点在于如何在短曝光时间内获取高维光谱信息(一秒钟百万空间像素、60个光谱通道、30fps的光谱视频就有2GB的数据通量);同时,构建实际的视频成像系统也具有相当的挑战性。
对于传统光谱仪而言,一种方式是转轮滤波式,去逐波段地扫描,另一种方式是空间扫描式,空间上扫描得到其光谱,后将光谱堆叠起来,本质上是牺牲时间来换取光谱信息。因此,传统的光谱仪采用时序或者空间扫描光谱,都是牺牲时间来换取光谱,无法获取视频信息,且需求机械稳定,价格较昂贵。
如果想得到光谱视频信息,其核心问题是数据量很大,国际上提出两个方法来解决这一问题:
其一是利用信号处理中的压缩感知理论(CASSI,Coded Aperture Snapshot Spectral Imager),即通过低维数据来表示高维数据;
其二是借鉴医学中的CT(Computed Tomographic)原理,将三维的光谱矩阵投影到各个方向,并对其进行重建来实现光谱视频。
针对上述问题,我们通过十年攻关,重点研究了棱镜-掩模调制式光谱视频相机(Prism-mask Modulation Imaging Spectromter,PMIS)。
PMIS1原理
其原理很简单,我们在光路上放置一个棱镜将光散到不同的波段,然后在光路上再放置一个掩膜(mask)以防止光路之间发生混叠,这样就能在图像传感器上得到光谱曲线,并以此生成 RGB 图像。我们为了获取光谱视频且不想牺牲时间,所以我们放弃了空间分辨率,因此得到的图像分辨率特别低。
PMIS光谱相机应用——材质鉴别&活体检测
我们的这种方法可以用于材质鉴别,通过光谱信息来对材质进行分析,如上第一个图,同为蓝色但不同材质的东西,通过光谱对它进行区分,发现里面隐藏了“CV”字样。还可以用于活体识别,由于血红素的作用,真实的人在皮肤上会有一个 W 型的光谱曲线,所以可以用来鉴别是否是人的活体。
PMIS1总结
第一代光谱相机通过牺牲空间信息来进行快速的光谱视频拍摄,其问题是空间分辨率比较低,只有千级像素,为了突破这个局限,我们搭建了第二代系统—PMIS2。
PMIS2核心思想:混合相机系统(使用边信息)
在很短的时间内捕捉很大的数据量是非常困难的,所以我们采取了另一种方法,在光路上添加一个RGB 传感器,通过分光的方法同时使用 RGB相机和光谱相机来捕捉图像。这样就能在 RGB 相机中得到空间分辨率高但光谱分辨率低的图像,在光谱灰度相机中得到空间分辨率低但光谱分辨率高的图像。
PMIS光谱相机应用——自动白平衡
我们搭建了新的计算摄像系统PMIS2并进一步验证了其在视觉领域的应用,比如:自动白平衡。在一个红色和黄色居多的暖色调场景、或者光源不断变化的场景中,普通相机的白平衡很容易出错,而我们这一系统则能很好地完成自动白平衡这一任务。
PMIS相机应用——目标跟踪
另外一个应用场景是目标跟踪[4]。在目标跟踪任务中,当目标进入到与其颜色相同的背景中时很难进行跟踪,因为目标与背景的 RGB 颜色相同,但是其光谱曲线有所不同,也就是在 RGB 空间中目标和背景是很难区分的,而在光谱空间中目标和背景非常容易区别,所以我们可以通过光谱信息来对目标进行跟踪。
在使用 RGB 跟踪时,当目标进入到颜色相同的背景中时就会立即丢失跟踪目标。例如,对于一个隐藏在树林中的人,很难使用 RGB 进行跟踪,但是使用光谱就能很好地跟踪。
PMIS2总结
PMIS2[5]为了突破空间的限制,采用了混合光路的思想来同时实现高光谱和高空间分辨率,并同时保持较高的时间分辨率。
PMIS3核心思想
之前的 PMIS 系统的掩膜(mask)都是均匀分布的(uniform),但是在不同的场景中,信息量的分布很可能是不均匀的,所以我们考虑能否动态地改变掩膜,使其自适应场景内容,这就是 PMIS3[6]系统。
PMIS3原型相机
我们在光路上添加一个可编程的空间光调制器来对场景光进行动态采样。
PMIS光谱相机应用——污染物识别和真假脸识别
这是一个例子,对于假脸和真脸,我们能够一直跟踪到真实的脸。
PMIS系统总结
PMIS与传统的光谱相机相比具有瞬拍能力(snapshot),与 CTIS/CASSI相比具有更低的重建误差,更低的光学系统复杂度,能够做到实时视频输出。
PMIS系统应用——手持式PMIS光谱视频相机
我们将 PMIS 系统集成到一个相机里,现在已经能够小型化为一个手持相机。并有配套的软件,可以实时输出光谱,调整相机的参数,以及选择需要的光谱通道。
我们也做了一个软件,可以用GPU实时地输出光谱信息,在动态场景下调节相机参数,可以自由选择想得到的光谱通道,比如128个或者64个。通过这个软件,也可以看各个光谱通道。
回到最初的问题,我认为光谱视频采集本质上是一个基于大数据的信号处理问题,所以去年我和 David Brady教授合作写了一篇关于光谱视频成像的信号处理理论的论文[7],并考虑能否通过光学和硬件结构实现不同的采样方式,希望能对未来的光谱成像研究有一些启发。
我目前在南京大学计算成像实验室(CITE Lab)工作,我们实验室目前主要研究光谱、光场、单芯片10亿像素(Giga-pixel)这三个方向,欢迎大家前来交流并指导。
另外值得一提的是,国际上有计算摄像的专门会议,目前参加的华人还比较少。有一次会议很有趣,请学者们自己投票,觉得计算摄像领域有什么问题最值得研究,结果得票第一名的是散射介质成像问题。散射介质成像是计算摄像学(Computational Photography)中具有挑战性的一个任务。散射介质普遍存在,如在生物观测中,细胞就是一个散射介质;在对地遥感观测中,很多湍流也是散射介质;在大范围监控中也存在散射介质,如雨、雾和霾。
最后为大家介绍一个相关期刊,IEEE Transactions on Computational Imaging,这是由 IEEE Transactionson Image Processing 衍生出的一个期刊。因为近年来 TIP 的很多投稿都更早地介入了成像过程,运用了计算摄像的相关理论和技术,所以就将很多相关的论文向这个期刊导流,欢迎大家加入到计算摄像的研究中,玩味各种新型的相机以及摄像本身的快乐!
文中引用文章的下载链接为:
http://pan.baidu.com/s/1skMR6OH