孙 敏,董 娜,余京蕾,2,郑 晖,3
(1.北京大学遥感所,北京100871;2.北京市第一六一中学,北京100031;3.中国矿业大学(北京)地球科学与测绘工程学院,北京100083)
全景可以提供真实现实360°方位的浏览效果,如Google Earth上的街景,可以弥补卫星影像单一的高空视图,可在地面的多方位浏览实景。国内外研究者研发了许多利用全景进行现场监控的装置和应用软件甚至系统,如国内一些公安部门将全景应用于小区安全调查。
在商业领域,也出现了一些全景相机与全景获取装置,如图1所示,这些相机与获取装置采用不同的方法,在拍摄时可一次性获取360°的影像,并可实现自动拼接。
图1 一些典型的全景相机及全景获取装置
目前这些设备构建的全景其原理是通过将拼接后的全方位影像投影到几何体,包括立方体、圆柱体、球体等,从而构建一个三维的模型,将观察点设在该模型的中心,从而使观察者可以浏览到全方面的景观。显然这种方法构建的全景并不具有真实的立体效果,同时这种全景并不能提供给用户具体的位置和场景中目标的其他属性,对于测绘与地理信息系统领域的学者而言,其与地理信息系统有相当大的差距。
从地理信息系统角度而言,尽管现有三维地理信息系统可以提供非常逼真的现实仿真效果,但这种三维地理信息系统的构建是一项非常耗费人力与物力的过程,且其主要目的旨在提供逼真的现实环境仿真效果,与之相比,全景则可以非常简便地对真实环境加以表达,尽管全景并不具有真实的空间信息,但在视觉效果上,却优于前者,且数据获取简便快捷。
为此,本文提出一种可以与地理信息系统相融合的立体全景构建方法,一方面在视觉上提供逼真的三维效果,另一方面可使之与地理信息系统简便整合,并在需要的情况下,提供空间量测功能。
国内有人针对立体量测的需要,研发了一种可量测系统[1],但其原理是通过上下移动全景获取装置而得到立体,这种上下视差构造的立体不适合人眼水平观察。
此外,在立体全景的研究方面,Peleg等人10年前就提出了使用单个相机构造立体全景的方法[2],但该方法旨在构造一种视觉立体,并没有考虑后期可量测的应用。为了实现较好的量测精度,应具备较长的基线。Wang等人提出了一种可以改变视差的立体影像生成方法[3],而Huang等人提出了一种在浏览过程中改变视差的方法[4],其目的均是为了便于浏览,因为立体全景影像在浏览过程中,由于缩放会改变视差,所以适当地调整视觉有利于改善立体观察效果。
与这些研究成果相比,本项研究旨在探讨一种一方面可以提供理想的立体浏览效果,另一方面可以提供具有一定量测精度的立体全景构建与量测方法。下面首先阐述立体全景模型构建的基本原理与过程。
在本项研究中,立体全景是摄影测量中立体相对概念的延伸,普通全景在一个固定位置旋转360°拍摄,而立体全景需要在两个位置进行拍摄,下面阐述如何获取理想的立体全景数据。
如图2(a)所示,如果使用现有全景相机,则构建立体全景只能采用在两个位置处分别安放全景相机,或使用普通相机在两个位置处理分别旋转360°拍摄,其结果是在两个相机位置中心的连线方向,由于不存在视差,因而没有立体观察效果,也难以进行量测。
在本研究工作中,采用图2(b)的方案,即将两台相机放置于一条基线上,两台相机同时对称地绕基线上的某个中心旋转360°拍摄,由于拍摄过程中,相机投影轴保持平行不变,因而不仅保证了全方面视差的存在,而且当相机位置固定准确时,可一次性获取较好的核线影像,在2(a)的情况下,还需要对两幅全景影像进行匹配校正,以确保立体观察时所需的核心排列。
图2
考虑后续量测的需要,研制了一个立体全景获取装置,如图3(a)所示,该装置顶部放置相机的基线板上具有精确到毫米的刻度,相机可以滑动,从而在拍摄前人为确定其基线长度;其次在基线板中心,安置了一款MTI动态陀螺,其不仅可以实时测量姿态信息,也可以测量位置信息,从而使拍摄后的全景具备位置与方位信息,在后续量测过程中,可以快速地获取目标物的真实位置信息。
由于两个相机同步获取对应的影像,因此在对序列影像分别进行自动拼接后,按基线与人眼瞳距的比例,可自动合成红绿立体影像(在三维显示器上可合成真彩色立体影像),如图3(b)所示为合成的立体全景局部效果。
如图4所示,拼接后的全景图通过纹理映射到圆柱面上,在浏览过程中,将观察点固定在圆柱体的中心,则用户视觉上会有一定的三维沉浸感。显然这种三维效果仅仅是由于影像内容与纹理的适当形变产生的,用户观察的本质上仍然是一张二维的图像。为了使观察效果具有真实的立体感,用上一节获取的立体全景影像替代普通全景影像,映射到圆柱面上,则得到立体全景模型,用户利用红绿眼镜观察可得到具有真实沉浸感的立体效果。
图3 本项研究制作的北京大学东操场立体全景(局部)
图4 全景模型的构建方法(上图是普通全景模型构建,下图是立体全景模型构建,两者的区别在于,前者使用单张全景图,而后者使用立体全景图。)
如图5所示,由摄影测量理论可知,立体像对可构成前方交会,当基线长度L已知,两相机内参数已知,同名像点坐标已知时,则目标点P的坐标可以简便地求出,此时P点坐标可选基线AB的中心点C为参考原点,AB为X轴,过C点垂直于AB的方向为Y轴。假设基线中心点C的坐标已知,且Y轴相对于北方向的方位已知,则不难得到P点的真实地理位置。
设目标点平面位置为M(x,y),基线长为B,相机焦距为f,视差为d,目标点在左视图上的水平坐标为a;又设基线中心点位为S(x,y),过S垂直与基线的方位为θ,则M的坐标可简便地由下式得到
在全景情况下,像对不再是单幅影像,而是由序列影像拼接形成的一幅完整影像,假定360所拍摄影像幅数为n,则如图5所示,可将圆柱面全景近似为一个n边形,每边的张角为2π/n。由于每幅影像在拍摄时同步记录了其方位参数,故每条边的影像可视为一个独立的立体像对单独处理,从而使全景的量测问题转换为单幅立体像对的量测问题。
图5 立体像对上同名点的简单计算原理
为了验证本文所提方法,开发了一套量测软件,如图6左边所示为其界面,用户读入全景,可在全屏模式下浏览使用红绿眼镜观察立体,在量测时切换到窗口模式下。由于量测时需要选取同名点,使用两幅原始全景影像更有利于同名点的选取,因此读入左侧全景,并在小窗口内放大鼠标所在位置,同步在另一小窗口内放大右侧全景对应的位置,从而用户可以十分方便地使用鼠标选择同名点。通过同名点可得到左右视差,即可方便地利用第3节所述内容求得所量测点的三维位置。
图6展示的即为构建的北大操场的立体全景,为了验证量测的精度,选取Google Earth影像地图上对应的北大操场部分,就其上一些建筑物的特征点进行了量测,量测了实际测站点到这些特征点的距离,并与立体全景量测的结果进行了比对,如图7所示。
图6
图7 立体全景量测距离与在Google Earth影像地图上量测的实际距离比对结果
结果表明,立体全景测量结果与实际距离相比存在较大的误差。其原因是多方面的,在本项研究工作中,假定固定在图3(a)基线板上的两部相机其主光轴处于平行状态,且垂直于基线,同时相机内参数的校正是精确无误的;此外,在量测计算时假定全景是由图5(c)所示的n边形构成的,且MTI传感器的测量误差也没有加以考虑,从而测量的结果存在较大的误差,在后续的工作中,这些因素均需作进一步深入的研究。
在本项研究中提出了一种简单的构建可量测立体全景的方法,为全景的可量测性提供了一种行之有效的解决途径。目前的量测精度较低的主要原因是基线中心的位置与姿态,以及两部相机间的姿态关系测量误差较大,且采用了普通数码相机,对相机没有进行较为严格的检校,此外,尽管采用了可以调整长度的基线,但长度仍然较短,对于稍远目标前会交会所形成的顶角仍然非常小,致使影像点坐标的量测误差对结果的影响非常严重,这些问题,将在后续的研究过程中做深入的探讨。尽管如此,对于大多数对测量精度要求不高的应用领域(如公安监控、考古调查、旅游娱乐、交通运输等等),该量测结果完全可以提供较好参考。
[1]河南博斐科技有限公司.公安现场三维全景重建及测量系统[EB/OL].[2012-07-11].http:∥ www.bofeitech.com/cpshow.asp?id=409
[2]PELEG S,EZRA M B,PRITCH Y.OmniStereo:Panoramic Stereo Imaging[J].IEEE Transactions on Pattern Analysis and Machine Intelligence, 2001,23(3):279-290.
[3]WANG C,SAWCHUK A A.Region Based Stereo Panorama Disparity Adjusting[C]∥Proceedings of the IEEE Eighth Workshop on Multimedia Signal Processing.Victoria:[s.n.],2006:186-191.
[4]HUANG F,KLETTER.Stereo Panorama Acquisition and Automatic Image Disparity Adjustment for Stereoscopic Visualization[J].Multimedia Tools and Applications,2010,47(3):353-377.