李石华,汪祎勤,周峻松,金宝轩
(1. 云南省基础地理信息中心,云南 昆明 650034; 2. 云南省自然资源厅信息中心,云南 昆明 650224)
地理时空变化是地理学研究的重要内容之一,如何用计算机技术来表达空间数据的时空变化独具前瞻性。LULC时空变化过程表达常采用时间系列的遥感数据来表达其位置和形状的变化[1],如林地、耕地、城市扩张范围的变化[2-4];并融合统计学方法分析其变化量与趋势,从而揭示其变化过程[5-7]。然而,由于在利用栅格数据分析地表覆盖变化时,完整的图斑将被分割成栅格尺寸大小的像素,难以真正反映图斑斑块的变化过程与模式,再加之其不同的时空动态组合,导致LULC变化的时空复杂性。为此,需要考虑构建面向地理矢量图斑的时空过程表达抽象模型,以反映地表覆盖图斑的时空动态变化,克服栅格模型在图斑时空表达方面的缺陷。
当前对于LULC时空变化过程表达方法研究较多,如信息图谱分析、趋势面分析,并取得了相应的成果。基于事件的时空数据变化表达模型由文献[8]首次提出。文献[9]利用该模型有效记录土地划拨或宗地变更事件。文献[2]在该模型基础上分析了江宁区的土地利用变化。文献[10]基于该模型定义了6种面状地理实体变化类型和判断方法。随后,文献[11]为满足地籍变更表达应用的需求,对事件-过程模型进行改进。文献[12]利用抽象的过程对象隐式表达地理实体动态变化机制,解决了移动对象的连续表达问题。文献[13]通过提取栅格斑块中心点与图论相关联构建斑块的时空事件序列。文献[14]通过栅格矢量双重表达降雨时空分布现象。在参考和借鉴前人研究的基础上,为反映图斑斑块的时空动态变化过程,定量分析其变化的数量特征,结合文献[12]提出的面向过程的时空数据模型,从地表覆盖斑块自身变化和相互转化方面摸索面状地理实体间时空变化过程表达方法。
将地表覆盖斑块作为研究的最小空间单元,其属性异于相邻图斑且内部具有均质性,其变化过程表现为斑块在时间上的斑块格局演变。从当前的研究现状来看,文献[10]提出了一种基于事件的时空变化过程表达模型,并系统总结了面状地理实体的6种变化类型和判断方法,有效解决了面状地理对象自身变化表达的问题;文献[15]将LULC变化时空演变过程抽象为出现、消亡、收缩、扩张、穿孔、破碎、稳定7类,并阐述了其判定方法。在借鉴前人研究的基础上,开展基于地表覆盖斑块时空演变分析时,可将地表覆盖斑块的时空演变过程理解为地表覆盖分类斑块间的相互增减的转变过程,如图1所示,其变化过程类型综合为新增、变化、消亡。
依据上述理解的地表覆盖图斑的时空演变过程,基于地表覆盖图斑的时空变化分析需要解决的问题为初始时刻T0图斑类型A,经过变化发展转为T时刻的图斑A、B、C、…。通过构造时空变化算法,利用计算机自动识别分析初始时刻T0的图斑类型与T时刻的图斑变化类型和面积等。因此,其变化过程可以抽象为
L(Rand(T),Cx)=Intersect(iL(Rand(T),C1),(i+1)L(Rand(T),C2),(i+2)L(Rand(T),
C3),…,(i+n)L(Rand(T),Cn))
(1)
式中,L为图斑;i为年份;Rand(T)为第i年图斑L的随机地表覆盖类型,可以为10种地表覆盖类型的任意一种或多种;C1、C2、…、Cn为该图斑L在第i年的图斑编码,是唯一值。通过相交运算(Intersect)生成一个或多个不同地表覆盖类型的数据结果集,再通过筛选图斑编码Cx与之前C1、C2、…、Cn的相等关系得出变化结果。
时空数据模型支持二维面状矢量数据,将地表覆盖的每个地类斑块作为一个地类实体。地类实体的时空演变过程由地理实体、属性实体、事件实体和时间实体来记录。
地类实体的时间记录在实体每个版本对象对应的时间属性上。模型支持有效时间(valid time),将地理实体第一次被采集到的时间设为产生时间,最后一次被采集到的时间为消亡时间。模型支持时间拓扑查询。
模型支持对指定监测实体拓扑关系、形状、位置随时间变化的存储与查询,支持地类实体非空间属性信息随时间变化的存储与查询。
依据上述构建的抽象模型,结合二维面状矢量数据时空过程表达,地表覆盖图斑的时空数据模型UML(unified modeling language)逻辑结构如图2所示。
在地表覆盖图斑的时空数据模型UML结构设计中,地类图斑实体记录了每个实体的几何信息,标识了地表覆盖要素中的一个具体图斑,每个图斑具有唯一的图斑标识码,其属性信息通过唯一标识码与属性实体进行关联。地表覆盖类别存储了地表覆盖类别信息,在不同的分类体系中,其类别信息不同。地类图斑实体通过类别唯一标识与地表覆盖类别进行关联。时间实体是一个连续的时间变量,存储了地类图斑实体新建、变化、消亡的时间信息。
根据上述逻辑结构,对地类图斑的时空数据库主要物理结构设计如图3所示。
图3中,“LULC_XZ”为多个年份地表覆盖的现状表,记录了各年份地表覆盖的现状情况,包括编码、地类、名称、年份等信息,其地类属性信息与地类表“DL_TAB”关联。地表覆盖现状经过地类变化表“LULC_CHANGE”关联,形成了最终的地表覆盖变化表“LULC”,地类变化表“LULC变化_CHANGE”记录了几何、属性变化规则。
采用抚仙湖流域1974、1977、1987、1990、1996、2000、2005、2008、2011、2014、2015、2017年的LULC作为试验数据。数据来源于云南省基础地理信息中心承担的抚仙湖流域生态环境动态监测项目成果。LULC类型分为水域、荒漠与裸露地表、人工堆掘地、耕地、园地、林地、构筑物、草地、道路、房屋建筑(区)等10个类型。数据格式为SHP,坐标系统为CGCS2000,高斯-克里格投影,3°分带。中央经线为102。
(1) 存储方式设计:LULC变化空间数据库采用Oracle+Arcsde空间数据引擎,实现数据的一体化存储管理。
(2) 时空数据库存储:LULC变化时空过程数据库存储过程中使用统一的文件命名方式和存储格式,详细见表1、表2。
表1 LULC现状表结构
表2 LULC变化表结构
为判定LULC时空过程变化类型,需要对图斑的变化类型进行判定。采用对多期数据进行变化检测,并对变化检测后数据按新增、变化、消亡的判别规则进行筛选,将筛选后的数据重新编码,标识其变化过程类型并入库保存。其判定流程如图4所示。
LULC时空过程分析旨在揭示LULC随时空的变化而其属性随之发生变化的规律。基于构造的时空变化算法(式(1)),LULC时空过程分析的步骤主要包括以下几步:
(1) 对多时期的LULC矢量数据进行拓扑结构检查,保证LULC在空间结构上的拓扑正确性,即确保空间要素不能重叠、不能有空隙及不能与其他要素重叠等。
(2) 对各时期的LULC数据进行编码,赋予每一个图斑唯一编码;对字段进行标准化处理后,对每个图斑赋唯一编码DKID,用地类型编码LUCODE,用地类型名称LUTYPE,年份YEAR。
(3) 通过编写相交分析代码(代码如下所示)对各时期的图斑数据进行相交分析,得出相交之后的图斑数据,根据相交分析规则,相交分析之后的数据保留了分析之前的唯一图斑编码属性值。
function intersectionAnalysis(featureSet:FeatureSet):void
{
var params:Object={"XB":featureSet};//
gp.execute(params,new AsyncResponder(onResult,onFault));
…
function onResult(gpResult:ExecuteResult,token:Object=null):void{
var pv:ParameterValue=gpResult.results[0];}
function onFault(info:Object, token:Object=null):void{
Alert.show(info.toString());}
(4) 对相交之后的带有唯一图斑编码的图斑数据进行筛选组合,得到不同时期的变化图斑,形成变化分析结果数据集。
(5) 对变化分析结果数据集进行关联分析,按照唯一标识图斑编码找出与分析之前有关联的图斑数据,得出分析结果,如图5所示。
(6) 从LULC变化时空过程及可视化的表达目的与要求来看,需要准确、直观地反映LULC变化的对象、位置、范围、时间和演化的过程,既要描述对象的现状,还需表达对象的时空对比与变化分析。因此,需要建立流域地表覆盖时空过程可视化系统,并集成时间轴动画、多时态对比、实体历史回溯这3种表达方法全面揭示地表覆盖图斑时空演变过程,如图6所示。
本文讨论了基于地类图斑的时空演变过程类型与判定方法,提出了LULC变化时空分析算法,并设计了时空数据模型UML结构和物理结构,构建了时空数据库,实现了基于地类图斑的时空演变过程表达,以时间轴动画、多视窗和实体回溯这3种方法展示地类图斑的演变过程,以图表的形式反映图斑的数量变化。试验结果表明,所构建的方法可满足LULC时空变化过程表达与分析应用的要求。可用于地表覆盖等地理要素的时空变化过程分析,能较好地揭示地理要素及其属性在时间轴上的改变过程,包括要素随时间的几何变化、位置变化、属性变化。若与气候、生态、社会经济等关联分析后,可为LULC的时空演变规律、时空数据挖掘等奠定基础,同时,对于地理学中面状空间对象的时空演变过程研究也具有参考价值。
试验中发现,LULC时空过程类型判定耗时较多。如何解决省级、国家级或全球尺度、多时相海量的LULC时空过程演变分析实时运算的效率问题,则需构建一个网络化分布式处理的超算环境,以实现对其并行处理。后续将继续围绕在超算环境中开展LULC不同时空尺度变化过程判定的多节点并行分块算法等方面的研究。