APP下载

基于全景图像的空地一体虚拟地理环境构建方法

2022-07-14蒲泓亦范爱民

地理信息世界 2022年3期
关键词:全景图球面视点

蒲泓亦,李 锋,徐 铮,范爱民

1. 信息工程大学,河南 郑州 450001;

2. 66444部队,北京 100042

0 引 言

虚拟地理环境(virtual geographic environment,VGE)是真实地理环境在计算机中的逼真模拟和数字化表达[1],广泛应用于军事、教育、娱乐等领域。VGE构建主要以测绘数据为基础,利用计算机图形技术生成与现实世界在几何模型和视觉效果上高度相似的虚拟视景[2]。但受当前图像生成技术影响,难以在计算机中生成与现实世界完全一致的虚拟视景。

全景图像记录现实世界全方向的实景信息,广泛应用于旅游、会展等多个行业。按照获取位置不同,可分为地面全景和空中全景。空中全景可将观察视角从地面转移到空中,实现从地平线到地平线的全景观察,获得空中俯视、遨游天空的体验感。将全景图像与虚拟地球融合建模,可构建几何精度高、视觉效果逼真、空地一体的虚拟地理环境。

国内外研究人员对虚拟地理环境构建和全景图像获取与建模技术进行了大量研究。林珲等对虚拟地理环境的概念及基本特征进行研究[1];龚建华、周洁萍等从数据、模型、表现、协同等方面研究了构建虚拟地理环境的关键技术[3];杨占龙讨论了全景图像的理论基础并完成图像建模[4];ZHANG Yi、HUANG Fei研究了基于全景图像的SLAM技术,证明全景视角可以提高SLAM系统的鲁棒性[5];何鼎乾对全景图获取与显示的关键技术进行了深入研究[6]。当前,应用全景图构建虚拟场景的模式可分为3类,一是与二维矢量数据结合,提供街景服务,如百度街景等,但场景越大,数据采集量呈指数上升;二是基于图像建模和绘制技术的ϕ—θ图[7],缺点是用户沉浸感弱,图像有一定变形;三是与遥感图像结合构建虚拟场景,但仅使用地面全景图,环境认知受限。空中全景图也多限于航拍应用,类似720云(https://720yun.com/)等网站的Web浏览器显示,没有用于构建虚拟地理环境。

本文在测绘空间数据生成的虚拟实景基础上融合地面、空中全景图像,设计空地一体的虚拟地理环境构建方案,研究全景图像后端处理技术,解决全景图像球面建模、多分辨率输出、图像编辑以及多尺度显示等关键问题,实现空中、地面全景图像在虚拟地理环境中一体化融合显示。

1 基于全景图像的空地一体虚拟地理环境构建方案

针对空地一体的设计理念,本文提出了基于全景图像的空地一体虚拟地理环境构建方案(图1)。采用无人机搭载普通相机和地面全景相机分别获取空中全景图像、地面全景图像,室内处理采集数据完成球面建模、信息节点编辑和多分辨率输出,最终实现与虚拟地理环境相融合。

图1 空地一体虚拟地理环境构建方案Fig.1 Air-ground integrated VGE construction scheme

空中全景图像是用户在空中利用光学传感器拍摄得到的全景图像。相较于地面全景图像,空中全景图像有以下优点,能够获取大场景中的实景信息,记录环境信息更加丰富,拍摄条件受树木房屋等地物遮挡影响小,能够记录场景内地物的顶部信息。

采用空中全景图和地面全景图相结合的方式,能够满足兼顾全局与局部空间环境认知要求,拓展场景空间尺度,有机结合多视角空间信息,实现由城市到街区、从街区到目标房屋的空间漫游和空间认知。

空中全景采集主要利用多旋翼无人机搭载普通相机拍摄全方向图像,可分为以垂直方向和以水平方向为主要方向两种方法[8]。本文采用后者,具体步骤包括:

1)通过无人机自身定位定姿功能获取飞行POS数据。

2)镜头沿水平方向转动,间隔一定角度拍摄完一组图像,相邻图片重叠比例不低于30%。

3)镜头沿垂直方向转动一定角度后,按照步骤2)采集第二组数据,同时保证两组图像中相同水平方位角拍摄的图像间重叠比例不低于30%。

4)重复以上步骤,直至镜头竖直向下,完成一个点位的采集工作[7]。

5)室内使用PTGUI软件拼接序列图像,并处理成长宽比为2∶1的全景图像。

此外,由于无人机机身的遮挡或者云台可旋转角度范围限制,无法采集到垂直向上的天空图像,可选择另获取天空图像或利用图像软件补全天空。

地面全景获取是采用消费级全景相机拍摄全景图像结合GPS定位设备,固定相机位置拍摄全景照片。相机拍摄图像,自动拼接成8192×4096分辨率的全景图,定位定向设备获取坐标信息。设备采用小红屋全景相机和途强GT320 GPS定位设备。

2 全景图像建模与编辑

2.1 球面全景图像建模

在虚拟场景中绘制全景图像本质是确定全景图平面坐标与球面坐标的对应关系。全景图像建模通常有球面、柱面和立方体3种建模方法,其中球面全景图像建模能提供视点处的全方位实景,产生的沉浸感最强。

球面全景图是将全景图像投影到以相机为球心的虚拟球面上,原理如图2所示[6]。

图2 全景图球面建模原理Fig.2 Illustration of spherical panorama modeling

XYZ为球面坐标系,xyz为相机坐标系。照相机的拍摄方向为(α,β),相机的焦距为f。平面图像上某像素点P(x,y) 在球面上的对应点为P′(x′,y′)。点P在xyz中的坐标为(x1,y1,-f),其中x1=x-l/2,y1=y–h/2,l、h分别为全景图像的长和宽。P点在XYZ坐标系下的坐标为 (xp′,yp′,zp′),则有:

同时满足直线参数方程和球面方程,最终得到方便存储的二维坐标:

设 Δ=y1sinαcosβ-x1sinβ-fcosαcosβ。Δ ≥ 0时,k=0,n=2;Δ<0时,k=1,n=1。

2.2 全景图像多分辨率输出

获取全景图像要求分辨高、数据量大,直接加载到三维场景将导致系统卡顿,需构建全景图数据的图像金字塔模型,根据显示范围动态调度图像数据。

图像金字塔是依据LOD技术建立的多分辨率层级模型,即对图像进行分层分块[9]。以8192×4096的高分辨率全景图像作为模型底层原始数据,向上建立层级模型时对原始数据进行重采样,分辨率逐层降低,最顶层数据分辨率最低[9-10]。考虑到采集的全景图长宽比为2∶1,适合使用四叉树分块法进行数据分块。数据块大小设置为256×256,对8192×4096分辨率的全景图像采用四叉树方法递归剖分得到图像数据块,图像分辨率见表1。

表1 图像金字塔层级与分辨率关系Tab.1 Relationship between image pyramid and resolution

原始图像剖分为5层分辨率图像,图像分辨率由低到高将每层命名为LODi(i=0,1,2,3,4)。数据编码在四叉树方法基础上,采用行列编码(图3),设置左下角的数据块为起始数据块,图像数据块的编码记作z-x-y,其中水平方向序列号为x,垂直方向序列号为y,所处层级记为z。

图3 全景图数据块编码Fig.3 Panorama data block encoding

2.3 全景图像信息编辑

尽管建立三维空间的球面全景图像,但能够从图像上得到的信息依然浅显,只能解决目标是什么,周围有什么的问题。针对深化和拓展地理环境信息,解决有什么特征,满足什么任务要求的问题,除了自身记录的影像信息外,一张完整的全景图像还应包括图像的几何信息以及图像上目标的多媒体信息。这些信息往往是用户所关心的,为全景图像扩充地理空间语义信息。

为建立全景图像与虚拟场景的关联关系,需要编辑全景图像的地理坐标、方位角、观察视角等信息。同时为完成空中、地面全景图像之间跳转,查看热点信息,还需要编辑全景图节点链接和目标热点链接。本文设计并实现了全景图像信息编辑处理工具,支持交互式编辑全景图节点链接和目标热点信息,操作界面如图4所示。

图4 全景图编辑工具界面Fig.4 Panorama editing tool

全景图像信息处理包括,添加链接,编辑链接项目名称、节点链接图标在图像上的方位(前方、左前方、右前方)、节点位置图像经纬度,编辑信息名称、图标方位、节点位置图像经纬度、文件名称及类型。

文件采用XML存储数据,数据结构良好,且查询简单。如图5所示,文档以全景图为根元素,记录全景图的名称、大地坐标、北偏角等属性。子元素则是编辑的链接节点和链接信息。其中,链接节点子元素记录节点数目,每个链接节点的大地坐标、链接方向;链接信息子元素记录链接信息数目、链接信息名称、文件类型、文件名。

图5 全景图配置文件信息结构Fig.5 Panorama profile information structure

3 全景图像与全球虚拟地理环境融合

3.1 全景图像多尺度融合显示模型

当前,虚拟地球技术已经成熟,平台多样,例如GeoGloble[11]、Lumion 3D、OpenSceneGraph等。本文选用OpenSceneGraph平台,使用LOD技术,利用全国DEM数据和遥感影像数据,构建了统一时空框架下的虚拟地球。利用处理完成的全景图像包含的三维空间坐标,将全景图像融合到虚拟地球内。

为提高全景图和全球虚拟场景融合的视觉体验,依据全球虚拟地理环境中相机的高度,设计了全景图像的多尺度显示融合模型。由高到低,将全景图显示模型分为区域、地点、场景3个尺度,每个尺度采用不同的显示策略(图6)。

图6 全景图像多尺度融合显示模型Fig.6 Multi-scale fusion display model for panoramic images

1)区域尺度。相机在全球虚拟地理环境内高度较大,观察范围一般为县级以上区域,此时不显示全景图像标签,仅显示虚拟地理环境地表;

2)地点尺度。相机高度降低,观察范围为乡镇一级尺度,此时使用标签代替全景图像。标签位置与全景图像地理位置相同,可点击进入球面全景图像;

3)场景尺度。视点进入到全景图像内部,可交互浏览多分辨率全景图像、热点信息,通过节点链接实现全景图像之间跳转。

3.2 虚拟地理环境中全景漫游与交互

全景图像多尺度融合显示模型保证用户在不同尺度上的漫游体验感。在区域尺度和地点尺度上,用户体会遨游世界,自由飞行的视觉感受。在场景尺度中,视点被固定在球心处,通过改变视场大小和视线方向,改变观察全景虚拟场景,主要包括全景图缩放、视场平移、全景图跳转。观察方向和视野范围确定球面上视野范围,实时调度相应全景数据块显示。

3.2.1 全景图缩放

利用视场角的大小控制全景图缩放,视场角变大则全景图缩小,视场角变小则全景图放大。设在视平面上,相机的焦距为f,平面高度为h,垂直方向的视角为ω,那么满足下式:

根据视场角的大小调用不同分辨率的图像数据参与绘制。初次进入场景尺度默认视场角为60°,调用1024×512分辨率的全景图像数据。视场角缩小,可见范围变小,调度更高分辨率的数据块;相反,调用更低分辨率数据块,两者关系见表2。

表2 图像金字塔层级与视场角关系Tab.2 Relationship between image pyramid hierarchy and field of view

3.2.2 视场平移

视点固定在球面全景模型的球心,通过改变视点视线方向的水平角度和垂直角度,改变观察全景虚拟场景。如图7所示,相机中心视线方向由点A指向点B,参与渲染的全景图像数据块发生变化,系统卸载点A周围的数据块,加载并渲染点B周围的数据块。

图7 球面视场平移(左)及渲染数据块改变(右)Fig.7 FOV panning in spherical images(left)and rendering data block change(right)

设全景图像层级固定,图像数据块的宽度为L。设P0(X0,Y0)为Z级全景图像左下角点,屏幕顶点坐标分 别为P1(Xn,Yn)、P2(Xn,Yn+1)、P3(Xn+1,Yn)、P4(Xn+1,Yn+1),则可通过下式计算得到参与绘制的全景图像数据块行列编码:

式中, Xmin为横向最小列号;Xmax为纵向最大列号;Ymin为横向最小行号;Ymax为纵向最大行号。

3.2.3 全景图跳转

全景图跳转是与全景图交互的重要方式。编辑完成的全景图包含有图像目标的多媒体信息和全景图之间的链接节点,以及用户焦点信息。全景图跳转即是通过链接节点将当前视角的目的地挂钩到目标全景图的视点位置。

考虑到人脑认知机制,最大程度满足人脑交互的愉悦感,沉浸感,跳转过程中需要考虑以下两点要求,一是能够在短时间内完成跳转动作,二是视点运动的速度在离开和靠近球面全景目标时要慢下来,以免场景突变带来视觉不适。观察相机变换可分解成视点运动和视线调整两个步骤实现。

1)视点运动。通过两个全景图的地理坐标生成运动路径,同时为满足要求二,采用式(5)控制运动速度:

式中,D为跳转前视点与全景目标的水平距离;S(t)为当前视点与跳转前用户视点的水平距离;D-S(t)为当前视点与目标球面全景间直线距离;k为控制变化速率。全程视点运动速度由快至慢,最后趋近于零。

2)视线调整。在视点运动前,不同全景图中视点与视点的观察方向不同,要在运动过程中逐渐改变视线方向,避免过渡中效果割裂。两点距离较远时,视线朝向视点的运动方向;距离较近时,视线方向调整为与连线方向垂直;靠近目标时,逐渐调整到观察目标的视线方向;距离很近时,直接转变到目标观察方向[12]。

为增强视点跳转的可视化效果,要尽量保证目标点始终在视野内。将视线变换分为水平方向偏角旋转和垂直方向的俯仰角变换两个基本变换,当视线从水平方向转到球面全景目标方向后,俯仰角观察视野调整到最佳状态。旋转过程中,引入二次函数避免实景跳跃,达到渐变效果。具体方法如下:

式中,αc为当前偏转角和初始偏转角的夹角;αt为目标偏转角和初始偏转角的夹角;t0为初始时刻;t为当前偏角所处时刻。

4 实验与分析

以登封实习基地为例,采集嵩山地区卫星地面站、纸坊水库、雪沟村的全景图像。单张图像分辨率为8192×4096,通过无人机回传信息和GPS定位设备获取了拍摄位置的地理坐标。利用自主研制的全景图像编辑处理工具进行节点链接、信息热点编辑、多分辨率处理,生成对应的全景配置文件(.qj)、多分辨率OSGB文件数据。图8是全景图像采集点在虚拟地理环境中的位置分布图,图9是实验采集的部分全景图像。

图8 虚拟环境中全景图采集点分布Fig.8 Panorama acquisition points distribution

图9 实验采集的部分全景图像Fig.9 Partial panorama acquisition results

编辑好的全景图像成果加载到三维场景中,可在地点尺度看到全景图的图像标签,点击标签后进入全景图节点,通过全景链接节点图标实现地面、空中到地面全景图跳转。实验效果如图10所示,其中图10a为单张全景图像编辑成果的显示界面,图10b为三维场景中空中全景图像标签显示效果,是图10c为是地面全景图像显示效果,图10d为空中全景图像显示效果。

图10 全景图与虚拟地理环境融合效果Fig.10 Integration effect of panorama and VGE

5 结 论

本文以解决基于空间几何数据难以生成与现实世界完全一致的虚拟视景为出发点,分析空中和地面全景图特点,设计基于全景图的空地一体虚拟地理环境构建方案。为优化图像显示效果,提出全景图像建模、编辑与多分辨数据输出技术。在全景图像和虚拟地理环境融合阶段,设计全景图像多尺度显示模型和三维场景中全景漫游与交互方法。在登封基地进行实验,结果证明了方法的可行性、逼真性。

本文方法在辅助战场环境勘察、空间认知实验等教学和科研环节中得到了应用。下一步可在全景图像精度评估、VR立体显示、全景视频监控等方面深化研究,完善全景图像与虚拟地理环境集成建模理论与技术体系。

猜你喜欢

全景图球面视点
关节轴承外球面抛光加工工艺改进研究
专家视点
中国“天眼”——500米口径球面射电望远镜
球面与简单多面体表面交线问题探究
嫦娥四号月背之旅全景图
磁悬浮径向球面纯电磁磁轴承的设计
环境视点
环保概念股全景图
让你每天一元钱,物超所值——《今日视点—2014精萃》序
奇妙岛全景图