无人机多角度倾斜摄影三维重建服务系统研究
2021-10-15潘邦龙庄雪晴
潘邦龙,庄雪晴,张 华
(1.安徽建筑大学 环境与能源工程学院,安徽 合肥 230601;2. 安徽建筑大学 遥感与地理信息研究所,安徽 合肥 230601)
随着城市化进程迅速推进,城市的多维需求日益更新,智慧城市应运而生。三维数据模型作为智慧城市数据库的重要载体,已成为智慧城市建设的重要组成部分。近年来,随着现代摄影测量技术和计算机计算的快速发展,实景三维场景建模已成为自然资源空间信息领域的研究热点。该技术主要利用倾斜航空摄影原理,通常在无人机或直升机平台上搭载多台相机,从前视、俯视、后视等多角度对目标地物或场景同时采集影像数据,再采用倾斜摄影三维建模软件处理倾斜摄影像片,结合像控测量的成果数据,包括POS数据、像控点坐标等成果,生成实景三维模型。由于该技术具有大场景、高精度、高效率等特点,目前已广泛应用于智慧城市管理各个领域。在城市管理过程中,为实现实景三维场景的信息化、业务化和智慧化,研发实景三维场景重建服务系统已成为智慧城市建设的迫切需求。
近年来,三维WebGIS蓬勃发展,实景三维系统已初步应用于城市规划、不动产登记、三维地籍测量、智慧旅游等领域,国内外学者在三维数据模型、二三维一体化、三维空间分析与可视化等方面的研究取得了一定进展。如王超领、戴德师等较早地展开了对三维地籍的分析与研究;而孙灵杰基于CAD格式的分层分户图构建了三维楼盘模型,并将其应用于三维不动产管理中;于丽丽提出基于无人机倾斜摄影测量技术对城市三维实景建模;原明超等利用Context Capture进行实景三维建模;潘九宝等基于低空无人机倾斜摄影测量技术快速构建城市精细化三维模型;穆超等结合三维GIS技术研发出三维地籍信息管理系统;王兆利用Unity 3D交互平台进行二三维数据查询与管理,三维实景Web GIS系统在地籍管理的应用是大势所趋。
随着HTML5与WebGL(Web图形库,Web Graphics Library)的出现,三维WebGIS步上了新的台阶。HTML5很好地支持本地离线存储,其内含的Canvas元素支持网页的图形渲染环境,独立性良好,用户无需再下载专门的插件。WebGL是HTML5最重要的特性之一。WebGL 3D引擎的出现进一步提高了应用的开发速度和用户体验,同时更多操作系统平台、浏览器支持WebGL及相关性能优化,将进一步激发HTML5 3D应用。但是WebGL是内置于浏览器的一个绘图API(Application Programming Interface),使用较为不便。2011年,AGI公司推出了Cesium,Cesium是一个基于WebGL开发的开源Java Script库,广泛应用于从航空航天到智慧城市再到无人机的多个领域。各行各业的开发人员都通过它创建Web应用程序,可以显示三维模型数据、DEM数据、矢量数据等,软件支持多种数据格式,具有较好的WebGIS应用前景。
研究利用无人机倾斜摄影数据生成三维实景模型,基于WebGIS技术,采用B/S架构和Cesium库,建立基于Web的不动产三维重建服务系统,实现不动产权属信息三维可视化管理。该系统将三维WebGIS与无人机倾斜摄影模型相结合,基于Cesium库快速模拟与分析不动产实景三维场景,有效解决了三维场景模型渲染和海量数据的Web前端显示和分析,有力地支撑了不动产信息的整合与应用,为智慧城市三维可视化服务助力。
1 不动产三维模型构建与处理
1.1 模型构建
以Smart 3D软件为建模工具,基于无人机的倾斜摄影测量技术来获取影像数据,以建立三维模型中关键流程技术原理作为理论支撑,选取并测量适当的控制点,通过数据整合、空三运算、模型重建等自动化处理流程来完成实景三维模型的创建。基于倾斜摄影测量技术的三维模型构建包括图像匹配、空中三角测量、多视影像密集匹配、三角网的构建、纹理映射等过程。
利用Smart 3D软件对数据进行一系列自动化处理,生产出研究区域的三维模型,主要有以下几个阶段:
(1)数据导入阶段。在软件中新建工程,设置好文件路径和坐标信息等,将采集得到的农村不动产影像数据加载进去,并导入POS文件等数据。
(2)空三解算阶段。设置好空三解算相关参数后,由软件自动进行计算。完成解算之后查看空三运算成果,检查有无异常。接下来导入控制点文件也对其进行空三计算。
(3)三维重建阶段。确认空三无误后,可以进行三维重建工作。确认输出格式和坐标系,利用软件自动计算生产模型,并使用模型浏览器对生成的三维模型成果进行检查。
基本过程如图1所示。
图1 自动建模过程
1.2 模型处理
利用Smart3D软件建模生产的无人机倾斜摄影模型数据一般为OSGB格式,由于Cesium不支持OSGB,需要进行转换,可以利用Cesiumlab将OSGB数据转为Cesium支持的3DTiles数据。Cesiumlab是为Cesium开源数字地球平台打造的数据处理工具集,支持数据处理、分发服务和三维可视。格式转换界面如图2所示,选择容易调用的散列文件形式存储。下载模型所在条带的高程并进行裁剪得到该区域的Dem数据,再使用Cesiumlab进行转换,得到Terrain数据,转换界面如图3所示。将3DTiles和底图及高程用Cesium一起显示,效果如图4所示。
1.3 不动产二维矢量数据提取
农村不动产矢量数据提取采用CASS 3D软件,此软件不仅支持CASS环境下倾斜三维模型的加载与浏览,还支持三维模型直接采集、补测DLG数据。研究利用CASS 3D软件,将生成好的三维模型导入,提取绘制房屋矢量图层,如图5所示。
图2 OSGB转3Dtiles 图3 DEM转terrain
图4 数据显示 图5 宗地图制作
2 系统设计
2.1 模块设计
不动产三维重建服务系统功能需求主要有二维地图和三维模型的浏览与联动、不动产模型绘制与标注、模型测量层高及面积计算、实体分户空间属性查询和场景三维通视和日照分析等。根据需求分析和设计原则,系统设计了以下模块:地图控制模块、绘制量测模块、属性查询模块和空间分析模块,以实现不动产信息管理与服务。系统模块如图6所示。
图6 系统模块
2.2 功能设计
(1)地图控制模块。视图控制:Cesium主窗口提供了一个虚拟地球,可将图层在地球上显示,并提供一组基本控件,可以实现定位、二三维视图转换、返回初始位置、放大缩小、拖动等基本功能。图层联动:通过控件可进行地图或地形的切换。
(2)绘制量测模块。图形绘制:图形绘制包括线、矩形、多边形的绘制,实现贴面绘制效果。房屋量测:建筑量测包括测距和测面两大功能,实现贴面测量。
(3)属性查询模块。实现单体分层查询。
(4)空间分析模块。通视控制:时间控制包括控制时间和播放动画。日照分析:根据不同时间太阳的位置和建筑物的位置得出相应阴影,实现日照分析。
3 不动产三维重建服务系统实现
3.1 系统主界面的实现
主界面主要分为四大块:地图控制模块、绘制量测模块、属性查询模块和空间分析模块。地图控制模块包括Geocoder、Home Button、Scene Mode Picker、Base Layer Picker、Navigation Help Button控件和Cesium-navigation插件,用于实现地图控制。绘制量测模块包括绘制功能和量测功能。属性查询模块包括一个弹出窗口,可显示建筑的单体信息。空间分析模块包括Timeline 和Animation控件,可实现实时日照情况分析展示。系统主界面如图7所示。
图7 系统主界面
3.2 系统功能的实现
系统功能主要分为四大块:地图控制功能、绘制量测功能、属性查询功能和空间分析功能。地图控制功能需要调用相关控件并将部分控件进行改写(如自定义Home Button),并调用所需插件以实现缩放、旋转、定位、切换地图、切换视图等基本操作。绘制量测功能包括测距和测面两大功能,可以通过贴建筑量测得到不动产的层高、栋高,测面得到建筑的面积,由此判断不动产是否符合建造规范。属性查询功能中为实现动态单体化需要矢量图层,在Arcmap中创建面shapefile文件,根据谷歌无偏影像可以画出对应的房屋轮廓,并在属性表中记录相关不动产信息及每一层的底高和顶高,将shapefile转换成GeoJSON即可在Cesium中调用,以获取单体分层信息。空间分析功能通过Timeline和Animation两个控件可定位到某一时刻,确定该时刻的日照情况,并能倍速播放动画不同时间跨度的日照情况。
3.3 系统运行实例
系统采用无人机倾斜摄影数据,各模块功能如下:
(1)地图控制模块。实现缩放、旋转、定位、切换地图、切换视图等基本操作,如图8所示。
图8 地图控制模块
(2)绘制量测模块。量测功能设计了测距和测面两大功能,可以通过贴建筑量测得到农村不动产的层高、栋高,测面得到建筑的面积,由此判断农村不动产是否符合建造规范,不合规范的弹出警示窗口。单击按钮开始测面,左键确定顶点,右键确定图形的终点,完成图形绘制。该功能可以用来判断建筑面积是否超占或建筑层高是否违章。测距与测面功能如图9所示。
图9 测距与测面
实现绘制功能,包括绘制线、矩形和多边形,绘制为贴面进行,效果如同为建筑覆盖一层薄膜。绘制功能如图10所示。
(3)单体查询模块。为实现动态单体化需要矢量图层,在Arcmap中创建面Shapefile文件,根据谷歌无偏影像可以画出对应的房屋轮廓,并在属性表中记录相关不动产信息及每一层的底高和顶高。由于Cesium不支持Shapefile格式,需转换成GeoJSON文件,在网址http://mapshaper.org/可进行在线转换。调用GeoJSON并设置实体显示属性,根据属性表的信息进行三维实体的创建。设置颜色为随机,分层创建单体覆盖各个建筑单体。将透明度设置得较高,使得建筑外层实体不显示,单击各层可跳出信息框实现信息的查询,单击某一建筑的某一层会弹出该层的详细信息,如图11所示。
图10 绘制功能 图11 单体分层查询
(4)空间分析模块。CesiumWidget的scene对象中内置一些图元对象,如地球、天空盒、太阳、月亮等,可以根据太阳的位置进行阴影显示,地球与太阳相背的一面为黑夜,相迎的一面为白天。基于此,启用阴影的代码,调用动画和时间轴,对不动产三维模型进行日照分析,通过拖动时间条可观察不同时间日照情况,动画控件可倍速观看日照动画,如图12所示。
图12 日照分析功能
4 结论
为适应三维模型数据业务化应用需求,以农村不动产实体为例,提出利用无人机多角度倾斜摄影测量技术,建立了基于Cesium的无人机倾斜摄影三维重建Web服务平台,实现了不动产三维信息可视化、查询和分析等相关功能,为农村不动产可视化管理与分析提供了实景化平台。基于Cesium库光照模型提出了不动产Web三维场景日照模拟技术,为建筑场景规划设计提供了智慧化决策平台。受制于系统软硬件条件,本系统在空间分析、决策和业务化方面还存在一些不足,有待完善。随着城市立体扩张的加快,未来在三维Web业务化服务平台上需求迫切,更高效、优质服务的功能亟待开发,有待进一步深入研究。