【技术实现步骤摘要】
一种基于DEM和流量汇集的非弥散水流路径模拟方法
本专利技术涉及数字地形分析
,尤其涉及一种基于DEM和流量汇集的非弥散水流路径模拟方法。
技术介绍
水流路径指的是水受重力作用在地表的流动轨迹,目前的分布式水文模型大多使用水流路径来估算水流从生成点到河道或流域出口的流动距离,进而获取山坡宽度、汇流时间等模型参数。由于当下的水文模型大多借助栅格型数字高程模型(DigitalElevationModel,DEM)描绘地表地形,数字化的水流路径也大多基于DEM提取得到。目前基于DEM的水流路径提取算法包含两个大类,即弥散型和非弥散型。其中,弥散型算法认为水流是发散的,发源于一点的水流会不断分离成多份,流向多个下游区域。受限于水流不断发散的特点,这类算法难以提供准确的流动距离和流域边界。因此,非弥散型算法在部分水文模型中必不可少。基于DEM的非弥散型水流路径提取算法普遍给每一个DEM栅格单元指定一个下游单元。从起始的上游栅格起,逐步寻找下游单元,连接上下游相邻单元的中心点,就构成了一条完整的水流路径。因此,相邻单元间的 ...
【技术保护点】
1.一种基于DEM和流量汇集的非弥散水流路径模拟方法,其特征在于,所述方法具体步骤如下:/n步骤S1、加载DEM高程数据,将DEM数据读取为二维数组A,创建4个行列数与A相同的数组M、N、L、S,其中M、N分别用于存储每个栅格的水流汇集点与中心点间相对坐标的横坐标X,纵坐标Y的坐标值,L用于记录每个单元的上游集水面积,S用于记录下游单元的中心点方向,将M、N、L、S中的第一列、最后一列、第一行、最后一行的所有数值都赋为无效值,同时创建优先队列Q,Q能存储栅格单元的信息,在数组A中行号、列号、高程,并能根据栅格的高程将其从高到低排序,遇到栅格高程相同,则将后加入Q的单元排在先 ...
【技术特征摘要】
1.一种基于DEM和流量汇集的非弥散水流路径模拟方法,其特征在于,所述方法具体步骤如下:
步骤S1、加载DEM高程数据,将DEM数据读取为二维数组A,创建4个行列数与A相同的数组M、N、L、S,其中M、N分别用于存储每个栅格的水流汇集点与中心点间相对坐标的横坐标X,纵坐标Y的坐标值,L用于记录每个单元的上游集水面积,S用于记录下游单元的中心点方向,将M、N、L、S中的第一列、最后一列、第一行、最后一行的所有数值都赋为无效值,同时创建优先队列Q,Q能存储栅格单元的信息,在数组A中行号、列号、高程,并能根据栅格的高程将其从高到低排序,遇到栅格高程相同,则将后加入Q的单元排在先加入Q的单元的后方;
步骤S2、忽略第一列、最后一列、第一行、最后一行,扫描数组A中剩下的单元,判断数组A的每一个单元是否是无效值,若判别一个单元是无效值,则依照当前单元在数组A中的行列数,第p行,第q列,在数组M、N、L、S中均将第p行、第q列的数值赋为无效值,若判别一个单元不是无效值,则扫描其周边8个相邻单元,若相邻单元中存在无效值单元,则依照当前单元在数组A中的行列数,第p行,第q列,在数组M、N、L、S中均将第p行、第q列的数值赋为无效值,若相邻单元中没有无效值单元,则在数组M、N中将第p行、第q列的数值赋为0,在L中将第p行、第q列的数值赋为1,并将A中的当前单元插入优先队列Q;
步骤S3、取出优先队列Q最前端的单元C,读取单元C在数组A中的行数a,列数b,对应高程z值,若矩阵S的第a行,第b列已被赋值,则直接进行步骤S8,否则从步骤S4开始进行;
步骤S4、计算单元C的局部排水方向γ;
步骤S5、分别从数组M、N中读取各自第a行,第b列的数值yc和xc,yc和xc是单元C的水流汇集点相对单元C中心点的相对坐标W(xc,yc),以C为中心,依次连接其周围8个相邻单元的中心点构成矩形窗口,水流从C的水流汇集点W(xc,yc)出发沿γ方向流动到达矩形窗口边缘,到达点记为R;
步骤S6、获取点R所在的单元T,获取T的中心点相对C单元中心点的方向,将其记入数组S的第a行,第b列;
步骤S7、若单元T在数组M中对应的同行同列单元不是无效值,则计算点R相对单元T中心点的相对坐标(x1,y1),分别从数组L读取C和T对应行列的单元的数值,从数组M、N读取单元T对应单元的数值作为当前流量汇集点的相对坐标(x0,y0),以集水面积值作为权重,得到点(x0,y0)和点(x1,y1)的重心,作为单元T的新流量汇集点的相对坐标(x,y),并将T在数组M、N中的对应值分别修改为x和y,随后将T在数组L中的相同行列的对应值修改为当前单元C和T的集水面积的累积值;
步骤S8、判别优先队列Q是否为空队列,若Q不是空队列,则返回步骤S3,否则扫描数组S中的每一个单元的方向数值,若数值不是无效值,则根据该方向值连接每个单元和下游单元的中心点,可得到DEM上模拟出的水流路径。
2.根据权利要求1所述的基于DEM和流量汇集的非弥散水流路径模拟方法,其特征在于,所述步骤S7中,从数组M、N读取单元T对应单元的数值作为当前流量汇集点的相对坐标(x0,y0),以集水面积值作为权重,得到点(x0,y0)和点(x1,y1)的重心,作为单元T的新流量汇集点的相对坐标(x,y),
其中,坐标(x,y)由以下方程得到:
其中,上述方程中c0和c1分别为单元T和C的集水面积值。
3.一种如权利要求1或2所述的基于DEM和流量汇集的非弥散水流路径模拟方法,其特征在于,所述方法具体步骤如下:
步骤S1、加载DEM高程数据,将DEM数据读取为二维数组A,创建4个行列数与A相同的数组M、N、L、S,其中M、N分别用于存储每个栅格的水流汇集点与中心点间相对坐标的横坐标X,纵坐标Y的坐标值,L用于记录每个单元的上游集水面积,S用于记录下游单元的中心点方向,将M、N、L、S中的第一列、最后一列、第一行、最后一行的所有数值都赋为无效值,同时创建优先队列Q,Q能存储栅格单元的信息,在数组A中行号、列号、高程,并能根据栅格的高程将其从高到低排序,遇到栅格高程相同,则将后加入Q的单元排在先加入Q的单元的后方;
步骤S1中的无效值具体为:
由于DEM包含的有效区域会出现不规则形状,存储时存储为矩形,通过创建额外的栅格,将区域填充为包含有效区域的最小矩形区域,额外创建的栅格普遍被赋予一个固定值,该固定值被定义为无效值,无效值被定义为-9999;
步骤S2、忽略第一列、最后一列、第一行、最后一行,扫描数组A中剩下的单元,判断数组A的每一个单元是否是无效值,若判别一个...
【专利技术属性】
技术研发人员:吴鹏飞,刘金涛,姚杰夫,费俊源,刘杨洋,
申请(专利权)人:河海大学,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。