面向科普VR应用的大型场景数据采集技术

2018-10-11 11:58邱永哲王京春高京美
实验技术与管理 2018年9期
关键词:航点扫描线参数设置

邱永哲, 王京春, 郑 亚, 魏 记, 高京美

(1. 中国科学技术馆, 北京 100012; 2. 北京水晶石数字科技股份有限公司, 北京 100091)

传统大型场景的数据采集与三维重建多用于测绘和勘探,无法满足虚拟现实场景重建的需求。本文研发的一套面向科普的虚拟现实展示的大型实景的数据采集技术,以航空数据采集为技术核心,结合地面数据采集,多次成功应用于室外大型场景区域的数据采集和重建。本文以2022年北京-张家口冬季奥运会高山滑雪场景延庆海坨山雪场区域的场景数据采集为例,规范了虚拟现实应用下的大型场景数据采集的流程和方法。

1 航空数据采集技术

本文所探讨的航空数字采集技术充分考虑了多个空中采集数据之间、空中采集数据与地面采集数据之间的三维空间拼合。航空数据采集通过在二维地图上规划的采集任务区域和采集精度,自动生成飞行任务,如环绕飞行任务、航点任务、区域扫描任务、纵向扫描任务等,利用无人机[1-2](本文以DJI无人机为例)以点线面的方式对空中场景进行全方位的自动拍摄和数据采集。

1.1 技术要点

1.1.1 像素精度计算

像素精度是指照片上单位像素点对应地面上的实际距离(单位:m/px),像素精度值越小则越能分辨出地面细节[3]。相机镜头的分辨率、相机视场角和无人机飞行高度都会对航拍采集中的像素精度产生影响。镜头分辨率越高、无人机飞行高度越低、视场角FOV越小,则像素精度值越低,能辨识的地面细节更多;反之,则像素精度值越高,能分辨的地面细节也会随之降低[4]。

相机拍摄的覆盖范围根据相机视场角的度量方式不同分为两种:以成像物的对角线来作为视场角计算覆盖范围,如图1左图所示;以成像物矩形的宽度来计算覆盖范围,如图1右图所示。

图1 两种相机视场角的度量方式图

1.1.2 图像重复率设定

通过移动地图上的标注点可快速确定具体的飞行区域。标注点有两种:实心标注点,用来调整飞行区域;虚心标注点,用来增加或减少区域多边形的边数。两种标注点间隔排列,最终由实心标注点构成扫描区域[7-8]。扫描区域内由首位相连的数条扫描线相连接,扫描线的间隔和无人机沿扫描线飞行时的拍照间隔由照片重复率而定。理论上,现阶段拍摄的照片重复率越高,后期三维建模精度越高。

图2 扫描线与图像重复率关系图

1.1.3 区域扫描线的生成

多边形区域扫描线分水平和垂直两种,以水平为例,扫描算法如下:

(1) 首先将实心标注点经纬度坐标转化为屏幕坐标,即将多边形在地图上坐标转化为以移动设备显示屏幕左上角为圆心O、左边缘为OY、顶边缘为OX的屏幕坐标,如图3所示,abcdef表示多边形扫描区;

(2) 根据标注点屏幕坐标,得到多边形每条线段的线性函数,线段用Segment表示,(Segment.x1、Segment.y1)、(Segment.x2 Segment.y2)分别表示线段的2个端点,Segment.a表述线段斜率,Segment.b表示线段常量,多边形线段列表为list;

(3) 求出所有标注点屏幕y坐标的最大值y_max和最小值y_min;

(4)i表示水平扫描线y的值,y_min

(5) 在步骤4)中生成的所有扫描线端点,用地图api将屏幕坐标转化为经纬度坐标。

图3 多边形扫描区域

1.2 延庆海坨山雪场航空数据采集

海坨山位于延庆县西北部,其中小海坨山将成为2022年冬奥会高山滑雪场地。小海坨山地形较为复杂,在采集空中数据时,不仅要获取准确无误的数据,还需避免无人机与山体的碰撞。根据场景建模的需求,现场规划并采集了以下几类飞行任务的空中数据:

(1) 航点任务数据采集。航点任务是通过在地图上选定多个航点,或者根据包含航点地理位置的json数据自动生成航点,组成一个线性有序的航点任务。任务参数设置包括高度、速度、云台俯仰角[9]、航点动作等。根据规划飞行的海坨山场地,多次飞行中一次航点任务的执行路径和飞行参数设置如图4所示。

图4 海坨山航点采集

(2) 区域扫描任务。区域扫描是针对大面积地区进行水平区域扫描,实现重建中大面积区域模型完整、高精度拼合。任务参数设置包括扫描区域划定、速度、飞行高度、起飞高度、链接高度、扫描线上图像重复率、扫描线间图像重复率、云台俯仰角、任务完成动作以及任务起始点等[10]。大型场景航拍采集时,不同区域的航拍精度要求可能不同,过程中需规划多个区域扫描任务;这些任务的飞行高度不同,设定不同的飞行参数以衔接这些扫描数据尤为重要。

海坨山地区其中一次区域扫描的具体飞行参数设置如图5所示。由图可见,设置好任务的起始点后,无人机会在起始点范围内,形成回型曲线的飞行拍摄任务,称之为“犁地式”空中数据采集。本阶段任务采集的数据,包含了航空数据采集的大部分核心数据,是三维重建环节数据的主要来源。实际采集,区域扫描一共完成了约2.5 km2的数据采集,部分重叠式的多次采集,可增加采集数据量,提高重建的精度[11]。

图5 海坨山区域数据采集

(3) 纵向扫描任务。纵向扫描任务包含与区域扫描数据的衔接以及立面扫描,提供重建时侧面物体的高精度数据来源。任务参数设置包括速度、区域扫描高度、镜头调整时飞行距离、立面扫描高度上限、下限、扫描线上拍摄间隔、扫描线间间隔、云台俯仰角、飞机朝向和镜头fov。纵向扫描流程如图6所示:

图6 纵向扫描流程图

海坨山实际飞行任务参数设置如下图7所示。参数设置好后,无人机起飞至区域扫描时的高度h1;镜头垂直向下,至纵向扫描高度h2;镜头开始逐渐调整,飞行至高度h3;镜头调整至指定角度0,开始立面扫描直到高度为h4。考虑到与地面单反照片的拼合,镜头在最后一条扫描线上分别以-25°、-50°、-75°各扫描1次,h4控制在安全高度以上2 m。

图7 海坨山纵向测绘采集

(4) 环绕任务。环绕任务包含与区域扫描的链接以及热点环绕。任务参数包括半径、角速度、云台俯仰角范围、区域测量高度(区域测量高度是指与环绕任务空中垂直重叠的区域扫描任务的高度,用以衔接区域扫描任务)、环绕高度范围、环绕线间间隔[12-13]。海坨山数据采集过程中,一共设置了10余个重点位置的热点环绕任务,其中一个环绕任务参数设置如图8所示。

图8 海坨山热点任务采集

2 地面数据采集技术

地面数据采集包括激光扫描采集高密度点云数据、影像采集高精度纹理数据两方面。采集的地面数据需很好地与空中数据融合,以提高空中数据与地面数据的有效使用,是场景三维重建的重要数据来源。

在延庆海坨山地区的地面数据采集过程中,使用激光扫描仪采集了地面的点云数据,使用单反相机采集了影像数据,通过对采集数据的注册配准、数据融合、三维重建等步骤的处理,生成了延庆海陀山区域2.5 km范围内三维模型。此部分模型包括了山体、雪道、建筑等内容,可用于虚拟现实的场景漫游。图9为虚拟现实雪道图。

图9 虚拟现实雪道图

3 结论

本文以航空数据采集技术为核心,结合地面数据采集,实现了适用于科普虚拟现实场景的数据采集,经过多次实地场景的采集及重建测试,确定本文的采集技术和方法,对大型场景数据采集具有良好的适用性,采集的数据在三维重建中具有很高的利用率。文中例举的延庆海坨山滑雪场地区数据,已经成功转化为虚拟现实场景,并结合滑雪模拟器得到了科普应用,展示效果和逼真度得到了体验者的广大认可。

猜你喜欢
航点扫描线参数设置
一种基于线扫描的受损一维条形码识别方法
二次开发在航点航迹图批量绘制中的应用
基于扫描线模型的机载激光点云滤波算法
蚁群算法求解TSP中的参数设置
扫描线点云数据的曲面重构技术研究
RTK技术在放线测量中的应用
基于STM32处理器的大棚温湿度监控系统设计
一种新型鱼眼图像轮廓提取算法
基于MATLAB仿真的井下变压器参数设置研究