基于开源GIS的森林资源监测智慧云平台构建
2020-11-27兰玉芳石小华李宏韬马胜利张敏中
兰玉芳,石小华,李宏韬,马胜利,张敏中
(国家林业和草原局西北调查规划设计院,西安 710048)
0 引言
互联网是大众创业、万众创新的新工具。在“互联网+”时代来临之后,社会和用户对“互联网+”时代下地理信息系统的要求越来越高,导致地理信息产业的发展面临着转型升级的严峻挑战和危机[1]。随着云计算、物联网、移动互联网、大数据、人工智能等新兴信息技术浪潮的蓬勃兴起,无人机遥感、移动采集和测量、智能感知等新手段和各种基于位置的新应用不断涌现,这些新技术的全面发展和应用为地理信息产业的转型升级提供了强有力的支撑[2]。当前,移动互联网开始大规模进入4G,5G时代,手机CPU,RAM及图形渲染能力快速提高,导致移动地图服务逐渐深入到人们的日常生活中[3],越来越多的GIS数据采集也从传统的PC端转移到了移动智能终端,人们应用GIS的场景开始逐渐由后期内业数据整理编辑向集野外数据采编与在线数据库同步传输一体化发展[4]。
森林资源动态监测工作是林业常态化的监督和执法机制,根据档案资料,采用遥感判读、现地调查等手段及时发现破坏森林资源问题,有效遏制违法行为。监测工作中最费时费力的就是现地调查,常用的手段是利用纸质或移动平板,现场进行图形勾绘、拍照取证、信息登记,内业进行数字化或信息导出,整理好的数据再通过介质拷贝的方法上报、汇总。传统方法效率低,工作进度无法实时掌握。在新兴信息技术全面发展和应用的大数据时代背景下,森林资源监测也需要根据时代发展特征和经济社会发展客观需求,从监测运行机制、监测技术方法、监测理论创新、信息服务创新等方面实现新突破[5-6]。鉴于此,基于开源GIS的森林资源监测智慧云平台引入“天空地”一体化监测网络技术体系,提出森林资源动态监测工作信息化应用建设思路,通过构建统一标准的动态监测信息云平台,实现集野外数据采集、实时传输与处理一体化,达到森林资源监测工作全过程信息化和可视化的目的。
1 云平台设计
1.1 设计思路
结合GIS、网络、云计算等技术,围绕“天空地”一体化森林资源监测网络技术体系,综合运用天(卫星遥感)+空(无人机或有人机等)+地(地面调查、物联网及移动采集),从多个维度,对森林资源进行一体化动态监测(图1),实时掌握森林资源状况及动态变化,及时发现和评估重大生态灾害、重大生态环境损害以及破坏森林资源案件等情况。本平台主要实现监测数据同步传输、工作进度实时监控、外业成果后台审核、现场疑问视频会商、无人机航拍直播、动态监测成果一键产出等功能。
图1 “天空地”一体化监测技术Fig.1 Sky-ground integrated monitoring technology
根据完成功能的不同,云平台分成两部分,即移动智能终端调查采集APP和Web端数据管理平台。其中,APP为外业调查人员设计,Web端为管理员设计。二者通过网络技术实现数据同步传输和信息交互。开发平台涉及Android平台、开源GIS平台、云计算技术平台。
1) Android平台。
移动智能终端森林资源调查采集APP基于Android平台架构进行开发。Android平台是一种以Linux为内核,且开放源代码的移动设备操作系统。随着开源Android操作系统的不断成熟以及硬件移动设备的更新换代,促使移动GIS技术得到了质的飞跃,使其不仅仅停留在地图浏览方面,还解决了传统移动GIS应用不能深入的问题[7]。此外,Android平台除了开源免费外,还有丰富的硬件、十分宽泛自由的开发环境、与Google服务无缝结合等优点。
2) 开源GIS平台。
对于基层林业部门,与开源GIS相比,商业化的GIS组件主要具有成本过高的特点,这将阻碍其在基层林业信息化中的推广使用[8],且越来越多的应用实践证明,开源GIS在定制化能力、来源广泛性、质量和安全等方面具有更高的价值[9-11]。本平台采用开源GIS构建WebGIS体系结构。用到的开源GIS平台主要有地图服务器GeoServer、客户端开发包OpenLayers、中间件GeoTools、类库GDAL/OGR以及数据编辑器uDig等。GeoServer主要发布、管理和共享地图数据,同时提供数据更新、删除和插入功能;OpenLayers主要为客户端开发提供JavaScript类库包,实现前端各类地图服务显示、地图操作及矢量图形编辑等功能;GeoTools是连接数据与服务的桥梁,主要提供从数据源中读取数据和数据标准化等功能;GDAL/OGR使基于Linux的地理空间数据管理系统提供对矢量和栅格文件数据的支持。
3) 云计算技术平台。
本质是通过虚拟化技术提高云平台性能运算环境,实现数据集中存储,有效缩减物理基础架构,并根据用户需求变化动态进行资源的分配和调整,提升资源利用率和信息服务的可用性[12-13]。平台采用云服务器环境部署后端平台,比物理服务器的管理方式更高效简洁,具有稳定可靠、性能卓越、弹性扩展、无需运维成本、更加安全易用等特点[14]。
1.2 总体框架
采用面向服务(SOA)架构设计模式,通过标准化、流程化和自动化的松耦合组件将业务直接映射到模块化的方式为用户提供信息服务。从逻辑架构来看,将平台划分为4层,即基础设施服务层(IaaS)、数据资源服务层(DaaS)、服务平台层(SaaS)、业务应用层(图2)。实现软硬件资源—数据资源—服务平台及业务应用层面的一体化。此外,平台建设还包括标准规范体系、云环境安全保障体系等内容。
图2 云平台系统框架Fig.2 Framework of cloud platform
基础设施服务层为平台提供计算资源池、存储设备池、网络及云设施,对平台的建设和日常运行至关重要[15];数据资源服务层主要完成地图瓦片、专题资源、动态监测任务及通信等数据的存储管理和维护,提供统一的资源数据访问接口;服务平台层是在网络服务器端搭建基于数据资源服务层并遵循OGC国际标准的地理信息服务,通信服务、云服务及其他业务服务,其中通信服务是移动终端和Web端进行通信交互的中间服务件,主要完成终端接入及数据同步传输等工作;业务应用层是直接面对用户的应用云平台总称,包括基于Android的移动端数据采集APP和基于B/S架构的后端数据管理平台。
1.3 数据库设计
整合现有各类森林资源非涉密成果数据,分级建立森林资源动态监测数据库、现地核实图形矢量数据库、现地核实照片库、违法违规项目情况说明资料库,森林资源现状数据库、变化数据库及行政界线矢量数据库,实现森林资源监测“一张图”、“一套数”、“一个体系”监测、“一个平台”管理。通过分析归类,核心数据库主要有地图瓦片数据库、专题资源数据库、动态监测任务数据库及通信数据库(图3)。
图3 数据库管理体系Fig.3 Management system of the database
1) 地图瓦片数据库。包括历年覆盖监测图斑的高分辨率遥感影像切片数据,以及监测区域已经下载的最新离线天地图影像数据。
2) 专题资源数据库。存储与动态监测任务图斑相关的所有资源、资料数据。
3) 动态监测任务数据库。存储各监测区域需要外业核实的矢量图斑数据。
4) 通信数据库。存储APP和Web通信交互时产生的各类数据,主要有现地采集的图片、音频、视频等数据。
所有数据最终按照结构化和非结构化数据进行组织管理。结构化数据包括空间资源数据和能够表格化的数据,通过MySQL数据库进行统一管理、组织和存储;非结构化数据包括图片、音频、视频、文档资料等数据,通过在云平台建立元数据表并采用文档存储服务统一管理。
1.4 安全体系设计
安全体系设计是平台总体设计的一个至关重要的环节,涉及物理访问控制和逻辑访问控制两方面。物理访问控制是对网络中任何节点的物理访问进行限制,这方面安全管理云本身已有成熟的配置方案。所以主要考虑逻辑访问控制层面,即将特定用户限定在被授权的操作和数据资源范围内。云平台通过基于Token令牌的身份认证体系、细粒度权限控制体系及恶意行为监测技术等来进行整体安全体系设计。
1) 基于Token令牌的安全认证机制识别和验证用户身份。用户在前端(移动端/浏览器端)使用用户名和密码向服务器端请求认证。若认证成功,服务器端会动态生成Token令牌并返回给前端,用户通过携带合法有效的Token令牌,才能请求Web服务器端中各种类型的服务(图4)。
图4 基于Token令牌的安全认证机制Fig.4 Security authentication mechanism based on Token
2) 细粒度权限控制体系。采取严格的权限控制体系,将权限划分为三大类,即服务管理权限、服务访问权限及各功能模块操作权限。系统角色分为超级管理员,国家、省、市级管理员,县级管理员及现地调查人员。不同的角色类型具有不同的管理权限:超级管理员主要进行服务统一管理、平台正常运维及其他业务管理等工作;国家、省、市级管理员主要对辖区内工作进度进行实时监控、专题浏览查询及数据审核管理;县级管理员进行调查任务分配、调查员实时进度监管及数据审核浏览等操作;现地调查人员主要负责数据采集更新、同步及无人机航拍监测等工作。
3) 恶意行为监测技术。平台设置黑名单机制来处理恶意访问系统的行为。通过实时地将用户非法访问请求、对系统数据的恶意操作等信息记录到用户请求日志中,第一时间监控到非法用户,并将其纳入黑名单,同时向管理员推送通知信息。恶意行为监测技术确保了整个平台合理、合法、正常使用。
2 关键技术
2.1 数据传输
移动GIS数据采集根据获取和提供服务方式的不同分为在线式和离线式两类。在线式采集传输较易实现,但考虑到林业外业调查环境复杂,很多林区无网络信号覆盖,因此需要实现突破网络限制的离线式数据采集、处理与传输。为了解决该问题,研究提出采用符合OGC标准的WKB空间数据格式,使用嵌入式数据库SQLite存储离线业务数据。SQLite占用资源低,处理速度快,且适用于所有基于Android系统的应用程序。通过在移动端读取和操作离线数据包,实现完全离线状态下的数据采集;在有网络的环境下,完成数据同步传输。
2.2 数据同步
数据同步是前后端数据管理的基本任务。随着用户数量的激增,采集的数据越来越多,如何保证多个APP终端和服务器端数据的完整性和统一性,以及清除同步时出现文件丢失、大文件同步缓慢或出现同步错误、网络中断或死机后不能续传等现象是当前面临的难题。研究提出记录数据全生命周期,通过双向验证,严格比对客户端与服务器端数据版本,采取新版本替换旧版本的方式,以保证前后端数据一致性,同时,提供完善的数据同步日志记录,可在出现数据遗漏丢失、同步错误等现象时能及时排查。
2.3 高并发
平台基于国家、省、市、县4级用户而设计,面临大用户群及高并发访问,尤其是在数据同步传输时,每次请求都要处理海量数据。传统的WebGIS架构无法支撑大数据的访问与处理,导致系统服务性能下降,响应时间变长,甚至出现请求丢失或拒绝服务的现象[16]。针对该难题,研究提出采用基于云技术的WebGIS服务器系统架构,从服务器集群、负载均衡、数据内存缓存机制等3方面解决高并发访问和大数据处理难题。通过云计算技术为WebGIS服务器提供弹性可扩展的存储资源,将传统物理意义上的服务器组装成统一管理的服务器集群,再利用负载均衡技术,对服务器集群整体性能进行改进优化,有效避免大流量的集中访问导致服务器响应不及时或瘫痪问题,同时,设计数据内存缓存机制,通过缓存层与数据库进行交互,避免用户频繁高并发读取或写入数据库,有效提高服务器处理能力。
3 云平台实现
云平台功能开发包括移动端、Web端、后台服务等3部分。移动端采用Android原生开发模式,选择JAVA JDK1.8+Android SDK+ADT插件为开发环境,Android Studio为开发工具;Web端选择SSH架构为开发框架,JAVA JDK1.8为开发环境,Eclipse为开发工具;后台服务主要实现移动端和Web端对服务器的请求,通过返回标准的JSON数据格式进行数据交换。图5为平台功能结构设计。
图5 平台功能结构设计Fig.5 Design of platform functional structure
3.1 移动智能终端森林资源调查采集APP
APP核心功能:
1) 调查任务同步。在有网络环境中,调查人员登录移动端APP系统,进行动态监测任务数据的下载和上传。系统自动检测APP终端和服务器端数据的完整性和统一性。
2) 现地数据采集。支持在线式和离线式两种数据采集方式。包括图形、属性和现地照片等多媒体数据采集。系统提供图形绘制、分割、合并、删除、边界编辑、多部件及孤岛处理等丰富的图形编辑工具;现地采集的照片包含采集点地理位置、现地情况描述等信息。
3) 调查底图管理。实现对“天地图”、Google在线卫星影像等在线地图服务及离线天地图、本地切片影像数据的调用和卷帘分析。
4) 图斑定位导航。支持GNSS定位和位置导航服务,提供到达选定任务图斑的最优路线导航服务。
5) 图斑监督检查。资源管理员具备监督检查功能的权限,可查阅辖区内森林资源动态监测工作开展情况及所有图斑现地核实情况。
6) 数据逻辑检查。从调查数据属性的准确性、完整性及调查因子之间逻辑一致性等方面进行质量控制。
7) 调查轨迹记录。包括调查路线轨迹的实时跟踪、导入、导出等,并能自动保存与回访,支持按调查轨迹导航。
8) 视频会商定位。支持稳定的通信与视频云服务。实现APP与APP之间、APP与Web端之间视频通话,管理员通过利用调查员手机扇面扫描范围查看现地情况,并进行工作指导。
3.2 Web端数据管理平台
Web端核心功能:
1) 调查任务分配。调查前,需要管理员将辖区内任务图斑分配给调查员。支持按行政区划、任意选定范围等的分配方式。分配完毕后,调查员会收到短信提示。
2) 实时进度监控。不同级别的用户可监控本辖区内工作完成情况和进度排名情况。
3) 数据查询检索。支持按照不同分析条件组合对数据进行查询检索,得出汇总分析结论,并支持查看所有符合条件的数据详情信息。
4) 图斑审核管理。管理员可对调查数据进行审核,若审核通过,则调查结束;若审核不通过,则返回,调查员需重新调查。审核完毕后,给调查员推送短信通知。
5) 工作实况管理。系统提供调查员工作实况功能。在地图上展示本辖区所有调查员移动端在线分布情况,管理员可对在线的人员发起视频会商请求,实现在办公室实时查看现地并指导工作。
6) 无人机航拍直播。对于调查员难以抵达或需无人机拍摄的林区,可通过无人机采集航拍视频或照片同步传播,管理员可实时通过后端管理平台观看现场情况,有效避免调查数据与现地不一致情况。
7) 监测成果统计分析。系统提供监测结果一键产出功能,支持所有汇总表自动统计和一键导出。
8) 用户权限管理配置。不同级别的用户具有不同的数据浏览权限和功能操作权限,只能在各自权限范围内对数据进行实时动态监测。
4 应用实例分析
为建立常态化监督机制,切实加大对破坏森林资源行为的发现、查处和整改力度,2018年国家林业局(现国家林业和草原局)启动了全国全覆盖的森林督查工作。但全国变化图斑数量巨大,核实查处困难,监管效率偏低,统计分析滞后,给工作带来不少困难。本平台的构建与应用为该项工作提供了有力的技术支撑。目前,平台用户量近2 000人,高并发访问量达800多人次,高并发大数据同步传输量达500多人次。总体运行安全、稳定、高效。本平台的应用,使工作效率比以前提高约40%,投入技术人员减少约20%。同时,本平台在实践应用中也得到了改进与完善。
通过应用实践证明,本平台具有一定的超前性、很强的实用性和可操作性,实现了实时掌握森林资源动态监测各环节的进度及结果,程序规范、分工清楚、责任明确可追溯,并能对破坏森林资源的案件进行“全方位”督查与督办,促进了森林资源监测业务的高效化和智慧化,有效打击了破坏森林资源违法犯罪行为,加强并提升了地方政府和林草主管部门保护森林资源的技术手段。图6为移动端APP采集系统示意图,图7为Web端管理平台示意图。
图6 移动端APP采集系统示意图Fig.6 Schematic diagram of mobile APP
图7 Web端管理平台示意图Fig.7 Schematic diagram of Web
5 结论与讨论
研究采用开源移动GIS和WebGIS技术,结合“互联网+”与云计算技术成功构建了森林资源动态监测智慧云平台。有效解决了基层林业部门应用商业GIS组件成本过高的问题;研究提出的移动GIS离线式数据采集方案,成功实现移动GIS采集系统自适应地在“在线”和“离线”模式之间无缝切换,很好地克服了一些林区无网络信号覆盖条件下数据采集的难点;提出记录数据全生命周期,采用双向验证,严格比对客户端与服务器端数据版本,确保了APP终端和服务器端数据的完整性和统一性;提出基于云技术的WebGIS服务器系统架构,从服务器集群、负载均衡、数据内存缓存机制等3方面解决了高并发访问和大数据处理及回传的难题;融入“天空地”一体化监测技术体系,实现了多方位、多信息融合。通过实际应用事例证明,云平台为改进森林资源动态监测工作工序提供了一种科学可行的思路,是森林资源监测、核查与管理工作的有效探索。
但随着人们对空间信息需求的日益增大,本平台未来需要向林业其他领域全面拓展,实现对森林资源全方位、全动态的“天空地”一体化监测。继续完善和改进的方向:1)接入北斗短报文通讯功能。保证在其他通讯手段都失效的情况下,调查人员能及时与管理中心取得联系。2)扩展森林视频监控。将森林视频监控系统融入平台,实时掌握森林资源动态变化情况及森林灾害预警。3)建立林区物联网。将各类气象、水文等生态传感器监测的数据实时传输到平台,采用大数据处理分析,给管理人员提供科学有效的决策依据。