光场概念的提出用以描述光线空间传播的三位辐射特性。1992年,E. Adelson和J. Wang设计了全光相机,主要由主镜头,微透镜阵列和成像传感器组成[1]。2005年,R.Ng等人对全光相机进行了重新设计,在常规相机基础上制成手持光场相机[2]。R.Ng于2010年博士毕业后成立Lytro光场相机公司,现已推出Lytro和Lytrolllum 2款针对不对需求的消费级相机,这为科研工作者对光场图像的应用研究带来了极大便利。
国内中国科技大学的周志良在其博士论文中对光场的理论,光场相机设计以及数字重对焦等进行了完整的分析和探讨[3]。北京航空航天大学的袁艳等在光场成像质量、微透镜探测器配准等方面进行了较为深入的研究[4]。西安光学机电研究所的肖相国对基于数字重对焦的对焦测距技术作了初步研究[5]。目前国内已经有越来越多的科研工作者展开了光场成像及其应用的相关研究工作。
由于光场相机记录下了光线的三维传播信息,因而具有还原所记录图像场景深度信息的能力。相比较传统的双目或相机阵列,光场相机由于只具有一个主镜头和成像传感器,只需要一次曝光就能记录下场景三维信息,避免了传统双目或相机阵列应用于实时深度图像获取时的相机信号时间同步问题简化了立体视觉系统的结构和信号处理系统设计,在无人航行器导航方面有着较为广泛的应用前景。
1 Lytro光场相机原理分析根据Levoy等人的光场渲染理论[6],空间任意光线可以用辐射函数表示,其携带二维位置信息(u,v),以及二维方向信息(θ,φ),光场即空间中所有光线光辐射函数的总体。并且,光线所携带的二维位置信息及二维方向信息所表述的光线空间四维方向信息可以用2个平行平面进行参数化表示。如图 1所示一束光线通过透镜射向传感器,其在透镜平面位置为(u,v),在传感器上位置为(x,y),透镜传感器之间的距离为F,可用四维光场函数LF(x,y,u,v)表示。
根据光场成像函数,从透镜射向成像平面某一点的图像辐照度可以用来自透镜光线的积分公式表示[2]:
Lytro光场相机将微透镜阵列插入图像传感器前端以记录下光线的(x,y,u,v)四维信息。其记录的原始图像如图 2所示。
在该相机中,主透镜聚焦在微透镜阵列上,微透镜到图像传感器的距离等于微透镜的焦距。在图像缩小的情况下图像与传统相机所摄图像无异,但若放大来看可以看到每个微透镜所成的光斑,即宏像素。每个宏像素的位置确定了光线的(x,y)坐标。每个像素点在宏像素中的相对位置指示了其对应光线的(u,v)坐标。
可以看出单个微透镜的尺寸决定了空间采样分辨率。光场相机在传感器像素固定的情况下,以牺牲最终图像分辨率的方式获得了光线的方向分辨率。
2 光场图像校正及子孔径图像阵列的提取Lytro相机具有3 280*3 280分辨率的图像传感器,其上约安装有六边形蜂巢状排列的微透镜阵列,微透镜阵列尺寸约为330*390,由于安装时不能完全保证微透镜阵列水平平行于图像传感器,导致得到的原始图像宏像素有轻微倾斜角,因此光场相机原始图像需要进行校正,以保证宏像素水平平行排列,便于后续的图像处理。
周文晖等人利用Lytro相机图像文件中提供的白图像提取出了每个宏像素的图像中心对原始图像进行了重编码,给出了针对Lytro相机的数据提取、解码、颜色校正、微透镜阵列标定和校正的完整方案[7]。Jan Kuera编写了Lytro相机原始文件分析处理软件[8],利用该软件可以方便的获得校正后的光场图像,校正后每个宏像素大小为10*10。
如果固定(u,v)的取值,将(1)式简单变形为:
那么(2)式即表示通过主透镜(u,v)位置的子孔径在图像传感器上各个点的辐照度。这样就可以得到透过(u,v)位置子孔径所成图像。选取不同的(u,v)能得到不同观察位置子孔径所得到的图像阵列。我们选取宏像素亮度较高的中心区域像素进行重排,获得5*5的子孔径图像阵列。由于微透镜的蜂巢状排列,因此需要对图像进行拉伸校正。校正后的光场原始图像和子孔径图像阵列如图 3、图 4所示:
子孔径图像阵列相当于5*5的相机阵列所摄图像。每幅图像都可以看作处在不同位置的虚拟相机拍摄得到。因此其有能力构成立体视觉系统,传统的标定和立体匹配方法理论上可以应用于子孔径图像。
3 子孔径的标定和深度信息获取 3.1 子孔径的标定相机的标定主要通过参照物图像确定相机的内外参数,以建立起世界坐标系、相机坐标系、图像坐标系之间的转换关系。需要标定的参数有相机焦距,主点位置,光轴偏角,畸变系数等。利用相同标定参照物完成左右相机标定后,利用所获得的内外部参数可以进行立体标定确定出2个相机的旋转角,主点距离等相互之间位置关系。
相机标定目前比较广泛使用的是张正友标定方法,该方法灵活精确,通过至少3个不同位置获取标定物图像,计算出摄像机所有的内外参数。利用基于张正友标定方法的Jean-Yves Bouguet Matlab标定工具箱,可以快速精确对相机进行标定[9]。由于子孔径图像可以看作虚拟相机拍摄得到,因而选用同行的2个子孔径图像可构成双目系统,对其进行标定,输入棋盘标定图像,选择角点如图 5所示:
标定所得到的相机参数及立体标定参数见表 1:
标定项 | 左图像 | 右图像 |
焦距 | 925.17 922.77 | 923.76 921.84 |
主点 | 147.55 132.68 | 153.32 141.98 |
光轴偏角 | 0 | 0 |
畸变系数 | 0.038 5.011 | -0.012 7.017 |
-0.014 -0.015 | -0.008 -0.014 | |
0 | 0 |
相机转角 | 0.010 -0.004 -0.000 2 |
相机距离 | 2.713 0.029 0.198 |
其中需要注意的是,标定得到的焦距、主点位置均以像素为单位,相机距离单位为mm。
3.2 立体匹配及深度获取标定工作完成后,结合标定参数可以通过OpenCV函数库,进行立体校正,立体匹配和深度获取。
立体校正主要为了对2个相机进行水平平行校正,使拍摄得到的2幅图像中,相同元素在同一行像素上,保证后续立体匹配时极线搜索的匹配精度。校正后的图像如图 6所示,横线用于检查同一行像素上个元素的位置。
立体匹配采用BM算法,该算法通过滑动小窗口(SAD)利用“绝对误差累计”来查找左右2幅立体校正图像之间的匹配点,生成稀松匹配图像[10]:
输入视差图和立体校正参数即可将视差映射到三维世界坐标系,获得测量深度。
可以看到得到的稀松匹配视差图区分出了前景中景和背景图像,但仍存在一定程度上的误匹配和信息丢失。选取前中后景物的10个点输出 距离取去除野点后均值,测定距离/mm分别为380.18、492.78、688.07。由于无法知道Lytro相机主透镜光学参数,因而不能准确测量物体到相机主透镜中心位置,但可以通过物体间距对测量精度进行检验。 实际三物体间距/mm为100、220,前景中景两物体的距离测量误差在11.26%,中景后景物体测距误差为11.23%,测距在精度范围之内。
4 结 论本文分析了光场成像原理,利用Lytro相机原始图像经重编码,提取了子孔径图像阵列,并选取其中2个平行子孔径图像构成双目立体视觉系统。通过标定、立体校正、立体匹配生成空间深度图像,对于目标物体进行了距离测量。实验结果表明,该方法测距在精度范围之内,双目测距方法可以应用于通过微透镜阵列获得的光场图像之上,但本文只使用的子孔径图像阵列中2幅图像进行测距实验,后续应引入更多幅图像提高立体匹配及测距精度。
[1] | Adelson E H, Wang J Y A. Single Lens Stereo with a Plenopticcamera[J]. IEEE Trans on Pattern Analysis and Machine Intelligence, 1992, 14(2):99-106 |
Click to display the text | |
[2] | Ng R, Levoy M, Brédif M, et al. Light Field Photography with a Hand-Held Plenopticcamera[J]. Computer Science Technical Report CSTR, 2005, 2(11):1-11 |
Click to display the text | |
[3] | 周志良. 光场成像技术研究[D]. 合肥:中国科学技术大学,2012 Zhou Zhiliang. Reserch on Light Field Imaging Technology[D]. Hefei:University of Science and Technology of China,2012 (in Chinese) |
Cited By in Cnki (12) | |
[4] | 杨凡,袁艳,周志良,等. 光场相机成像质量评价方法研究[J]. 现代电子技术,2011,34(6):4-6 Yang Fan, Yuan Yan, Zhou Zhiliang, et al. Study on Imaging Quality Evaluation of Light Field Camera[J]. Modern Electronics Technique, 2011, 34(5):4-6 (in Chinese) |
Cited By in Cnki (2) | Click to display the text | |
[5] | 肖相国,王忠厚,孙传东,等. 基于光场摄像技术的对焦测距方法的研究[J]. 光子学报,2008,37(12):2539-2543 Xiao Xiangguo, Wang Zhonghou, Sun Chuandong, et al. A Range Focusing Measurement Technology Based on Light Field Photography[J]. Acta Photonica Sinica, 2008,37(12):2539-2543 (in Chinese) |
Cited By in Cnki (13) | Click to display the text | |
[6] | 聂云峰,相里斌,周志良,等. 光场成像技术进展[J]. 中国科学院研究生院学报,2011,28(5):563-572 Nie Yunfeng, Xiang Libin, Zhou Zhiliang, et al. Advances in Light Field Photography Technique[J]. Journal of the Graduate School of the Chinese Academy of Sciences, 2011, 28(5):563-572 (in Chinese) |
Cited By in Cnki (11) | Click to display the text | |
[7] | 周文晖,林丽莉. Lytro相机的光场图像校正与重对焦方法[J]. 中国图象图形学报,2014,19(7):1006-1011 Zhou Wenhui, Lin Lili. Light Field Image Rectification and Refocus Method for Lytrocamera[J]. Journal of Image and Graphics, 2014, 19(7):1006-1011 (in Chinese) |
Cited By in Cnki | |
[8] | Jan Kuĉera. LYTRO Meltdown. http://optics.miloush.net/lytro/Default.aspx |
Click to display the text | |
[9] | Jean-Yves Bouguet. Calibration Matlab Toolbox. http://www.vision.caltech.edu/bouguetj/ |
Click to display the text | |
[10] | Gary Bradski, Adrian Kaebler. Learning OpenCV[M]. O' Reilly, Sebastopol,CA, 2009 |