一种改进的DQG格元分类和邻近搜索方法
文献发布时间:2023-06-19 12:10:19
技术领域
本发明涉及DQG格元分类和邻近搜索算法,特别是涉及一种改进的DQG 格元分类和邻近搜索方法。
背景技术
球面退化四叉树格网(Degenerate Quadtree Grid,DQG)是一种变间隔经纬度格网模型,具有径向对称性、方向一致性及平移相和性等优点。是全球地表建模及可视化分析的基础框架之一。邻近关系在GIS空间分析占据重要位置,是一种十分常用的空间关系。格网邻近搜索是利用格网进行空间数据表达和分析的基础,是全球离散格网系统的重要功能。格网邻近搜索的效率对相关空间分析的应用具有重要影响。
发明内容
为提高DQG格元分类和邻近搜索算法的计算效率,本发明在现有DQG格元分类和邻近搜索算法基础上进行改进。
本发明提供了一种改进的DQG格元分类和邻近搜索方法,包括以下步骤:
S1:以梯形区域为划分单元,根据格元在梯形区域内的位置,定义格元属性;
S2:将格元属性集合作为格元类型;
S3:并定义各类格元的邻近计算规则。
优选地,S1包括以下子步骤:
S11:将球面按DQG格网剖分方式以一定剖次进行剖分;
S12:将八分体内格元经度差和纬度差均相同的格元集合定义为梯形区域;
S13:将梯形区域按纬度从高到低进行编号;
S14:通过分析各梯形区域内格元的行数和列数变化情况,可判断各梯形区域内格元的行号和列号范围;
S15:由格元行列号和判断其在梯形中的相对位置;
S16:对边界格元,可按其在梯形区域的位置赋予相应属性,定义L“左侧”, R“右侧”,T“顶部”,B“底部”,E“赤道”五种基本属性。
优选地,S2包括以下子步骤:
S21:DQG格元可具有多种属性,根据格元的属性集合可区分格元类型;
S22:定义格元类型为格元具有的属性集合,令格元c的属性集合为α∪β,其中α为经向属性集合,β为纬向属性集合;
S23:DQG格网中格元类型可分为无属性,单属性,多属性,全属性这几类;
S24:无属性格元类型为N,单属性格元类型包括L,R,T,B,BE,多属性格元类型包括:LT,LB,LTB,LTBE,RT,RB,RTB,RTBE,LBE,RBE,全属性格元类型包括:LRTB,LRTBE;
S25:给定格元的行列号和剖分层次,按格元属性所具有的行列特征,即判断格元具有的属性,进而确定格元类型;
S26:判断过程中输出的格元属性集合即为格元类型。
优选地,S3包括以下子步骤:
S31:根据当前格元所在的八分体编号和行列号,即根据其类型计算各方位邻近格元的行列号;
S32:当格元的邻近跨越八分体时,定义其所在八分体编号的计算规则;
S33:定义各类型格元在各方位的邻近格元的行列号和八分体编号计算规则;
S34:计算邻近格元的行列和八分体编号,即得到其对应的DQG编码。
本发明一种改进的DQG格元分类和邻近搜索方法有益效果如下:
本发明提出的DQG格元邻近搜索算法较现有的DQG格元邻近搜索算法,效率提高了42.2%,较SDOG-ESSG最外层面邻近搜索算法,效率提高了63.9%,显著提高了格元邻近搜索效率。
附图说明
图1为梯形区域分布图(剖次为3)。
图2为八分体内格元类型分布图(剖次为3)
图3为格元分析流程图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
一种改进的DQG格元分类和邻近搜索方法,具体的改进策略包括:
将球面按DQG格网剖分方式以一定剖次进行剖分。对各行格元按纬度从高到低编号,每行格元按从左到右进行编号。将八分体内经度差和纬度差均相同的格元集合定义为梯形区域,将梯形区域按纬度从高到低进行编号,如图1所示。
对边界格元,可按其在梯形区域的位置赋予相应属性。定义L(左侧),R(右侧),T(顶部),B(底部),E(赤道)五种属性每种属性的含义及邻近格元性质见表 1。格元属性按照其与行列号的关系可分为经向和纬向两类。其中经向属性与格元列号相关,包括L和R,纬向属性与格元行号相关,包括T,B和E。
当格元的行号等于最大行号时,格元与赤道相邻,具有属性E。此类型格元的邻域会跨越赤道。属性E为属性B的附加属性,不单独出现,表示与赤道相邻格元,是对属性B的细化。
DQG格元可具有多种属性,根据格元的属性集合可区分格元类型。定义格元类型为格元具有的属性集合。令格元c的属性集合为θ=α∪β,其中α为经向属性集合,β为纬向属性集合。如某格元的属性集合θ={L}∪{T,B},则其类型为 LTB。剖次为3时八分体内格元类型分布情况如图2所示。对各格元类型,可定义其邻近格元计算规则。
格元属性可分经向和纬向两类,经向属性L,R限定列号,纬向属性T,B, E限定行号,属性所对应的行列条件如表2所示。格元分析流程图如图3所示。
给定格元行列号和剖分层次,按格元属性对应的行列特征,即可判断格元具有的属性集合,并确定格元类型。判断过程中输出的格元属性集合即为格元类型。本发明通过以梯形区域为研究单元,改进格元分类方式,消除了不同格元类型间邻近搜索规则重叠问题。
(2)邻近格元计算规则
根据当前格元所在的八分体编号和行列号,即可根据其类型计算各方位邻近格元的行列号。当格元的邻近跨越八分体时,定义其所在八分体编号的计算规则。定义各类型格元在各方位邻近格元的行列号和八分体编号计算规则,计算邻近格元的行列号和八分体编号,即可得到其对应的DQG编码。
格元属性和格元类型的定义具体如下:
将球面按DQG格网剖分方式以一定剖次进行剖分。对各行格元按纬度从高到低编号,每行格元按从左到右进行编号。将八分体内经度差和纬度差均相同的格元集合定义为梯形区域,将梯形区域按纬度从高到低进行编号,如图1所示。
对边界格元,可按其在梯形区域的位置赋予相应属性。定义L(左侧),R(右侧),T(顶部),B(底部),E(赤道)五种属性每种属性的含义及邻近格元性质见表 1。格元属性按照其与行列号的关系可分为经向和纬向两类。其中经向属性与格元列号相关,包括L和R,纬向属性与格元行号相关,包括T,B和E。
表1 DQG格元属性及其性质
当格元的行号等于最大行号时,格元与赤道相邻,具有属性E。此类型格元的邻域会跨越赤道。属性E为属性B的附加属性,不单独出现,表示与赤道相邻格元,是对属性B的细化。
DQG格元可具有多种属性,根据格元的属性集合可区分格元类型。定义格元类型为格元具有的属性集合。令格元c的属性集合为θ=α∪β,其中α为经向属性集合,β为纬向属性集合。如某格元的属性集合θ={L}∪{T,B},则其类型为LTB。剖次为3时八分体内格元类型分布情况如图2所示。对各格元类型,可定义其邻近格元计算规则。
格元属性可分经向和纬向两类,经向属性L,R限定列号,纬向属性T,B, E限定行号,属性所对应的行列条件如表2所示。格元分析流程图如图3所示。
当格元的邻近跨越八分体时,需要计算其所在八分体编号。本节给出不同方位邻近八分体编号计算方式。设八分体编号为oct,0≤oct≤7,其各方位邻近八分体的计算公式如表3所示,表中
表3邻近八分体编号计算方式
具体的各格元类型的邻近搜索规则如下所示:
a)单属性格元类型
包括L,R,T,B和BE。其中类型BE和经向单属性类型L与R的邻近格元会跨越八分体,需要给出其邻近格元所在八分体编号。L类格元的左邻近格元位于其左侧八分体内,编号为Θ
表4单属性类型的邻近搜索规则
b)L属性相关格元类型
包括LT,LB,LBE,LTB,LTBE。本节分析其邻近格元的八分体编号和行列号计算方法。LT,LB和LTB的邻近格元所在八分体编号和L类型相同。LTBE 类型邻近格元所在八分体编号和LBE类型相同。L属性相关格元类型的邻近格元行列号(及部分类型的八分体编号)计算规则如表5所示。
表5 L相关多属性类型的邻近搜索规则
c)R属性相关格元类型
包括RT,RB,RBE,RTB,RTBE。本节分析其邻近格元的八分体编号和行列号计算方法。RT,RB,RTB类型的邻近格元所在八分体编号和R类型相同。 RTBE类型的邻近格元所在八分体编号和RBE类型相同。R属性相关格元类型的邻近格元行列号(及部分类型八分体编号)计算规则如表6所示。
表6 R相关多属性类型的邻近搜索规则
d)无属性和全属性格元类型
无属性类型N既不具有经向属性,也不具有纬向属性,表示梯形区内部格元。其邻近不跨越八分体,搜索规则最简单。LRTB和LRTBE类型格元的上边退化为极点,其上边邻近退化为度角邻近,并且无左上和右上角邻近格元。除上邻近外,LRTBE类型格元的其余邻近均为LRTBE类型,行列号均为0。LRTBE 类型格元的下边邻近格元所在八分体编号为Θ
表7无属性与全属性类型的邻近搜索规则
一种高效的DQG格元分类和邻近搜索算法,其具体实施方式如下:
将球面按DQG格网剖分方式以一定剖次进行剖分。对各行格元按纬度从高到低编号,每行格元按从左到右进行编号。将八分体内经度差和纬度差均相同的格元集合定义为梯形区域,将梯形区域按纬度从高到低进行编号,如图1所示。
对边界格元,可按其在梯形区域的位置赋予相应属性。定义L(左侧),R(右侧),T(顶部),B(底部),E(赤道)五种属性每种属性的含义及邻近格元性质见表 1。格元属性按照其与行列号的关系可分为经向和纬向两类。其中经向属性与格元列号相关,包括L和R,纬向属性与格元行号相关,包括T,B和E。
当格元的行号等于最大行号时,格元与赤道相邻,具有属性E。此类型格元的邻域会跨越赤道。属性E为属性B的附加属性,不单独出现,表示与赤道相邻格元,是对属性B的细化。
DQG格元可具有多种属性,根据格元的属性集合可区分格元类型。定义格元类型为格元具有的属性集合。令格元c的属性集合为θ=α∪β,其中α为经向属性集合,β为纬向属性集合。如某格元的属性集合θ={L}∪{T,B},则其类型为 LTB。剖次为3时八分体内格元类型分布情况如图2所示。对各格元类型,可定义其邻近格元计算规则。
格元属性可分经向和纬向两类,经向属性L,R限定列号,纬向属性T,B, E限定行号,属性所对应的行列条件如表2所示。格元分析流程图如图3所示。
当格元的邻近跨越八分体时,需要计算其所在八分体编号。本节给出不同方位邻近八分体编号计算方式。设八分体编号为oct,0≤oct≤7,其各方位邻近八分体的计算公式如表3所示,表中
具体的各格元类型的邻近搜索规则如下所示:
a)单属性格元类型
包括L,R,T,B和BE。其中类型BE和经向单属性类型L与R的邻近格元会跨越八分体,需要给出其邻近格元所在八分体编号。L类格元的左邻近格元位于其左侧八分体内,编号为ΘL(oct)。R类格元的右邻近格元位于其右侧八分体内,编号为ΘR(oct)。而纬向单属性类型T,B的邻近格元不跨越八分体,仅需要给出其行列号计算方式。BE类型格元的下邻近格元位于当前八分体关于赤道的对称,其编号为ΘB(oct)。单属性类型格元的邻近格元行列计算规则如表4 所示。
b)L属性相关格元类型
包括LT,LB,LBE,LTB,LTBE。本节分析其邻近格元的八分体编号和行列号计算方法。LT,LB和LTB的邻近格元所在八分体编号和L类型相同。LTBE 类型邻近格元所在八分体编号和LBE类型相同。L属性相关格元类型的邻近格元行列号(及部分类型的八分体编号)计算规则如表5所示。
c)R属性相关格元类型
包括RT,RB,RBE,RTB,RTBE。本节分析其邻近格元的八分体编号和行列号计算方法。RT,RB,RTB类型的邻近格元所在八分体编号和R类型相同。 RTBE类型的邻近格元所在八分体编号和RBE类型相同。R属性相关格元类型的邻近格元行列号(及部分类型八分体编号)计算规则如表6所示。
d)无属性和全属性格元类型
无属性类型N既不具有经向属性,也不具有纬向属性,表示梯形区内部格元。其邻近不跨越八分体,搜索规则最简单。LRTB和LRTBE类型格元的上边退化为极点,其上边邻近退化为度角邻近,并且无左上和右上角邻近格元。除上邻近外,LRTBE类型格元的其余邻近均为LRTBE类型,行列号均为0。LRTBE 类型格元的下边邻近格元所在八分体编号为ΘB(oct),其他邻近格元的八分体编号和LRTB类型相同。无属性与全属性类型格元的邻近格元行列号(及LRTB类型的八分体编号)计算规则如表7所示。
- 一种改进的DQG格元分类和邻近搜索方法
- 一种基于改进贝叶斯分类的短信智能分类及搜索方法