Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 通过DEM(网格ASCII)查找河流/河流的边缘_Python_Height_Heightmap - Fatal编程技术网

Python 通过DEM(网格ASCII)查找河流/河流的边缘

Python 通过DEM(网格ASCII)查找河流/河流的边缘,python,height,heightmap,Python,Height,Heightmap,目标:在给定河流沿线的近似数字化点和单元大小为0.5米的DEM模型时,找到河流沿线的最低点和边缘。编写的代码将使用Python 2.7 为了找到最低点,给定近似数字化点,我在每个近似数字化点的特定半径内寻找最低点。这对一开始来说已经足够好了。然而,当然,仍然有一些“噪音”在流外找到比我所寻找的流底值更低的点 现在,为了找到溪流的两个边缘,我使用上一步中找到的每个最低点,并使用一条定义长度的垂直线(每边10-20米,取决于溪流)来找到沿该线的所有点高度,然后计算垂线上以下两个点之间的坡度,取最小坡

目标:在给定河流沿线的近似数字化点和单元大小为0.5米的DEM模型时,找到河流沿线的最低点和边缘。编写的代码将使用Python 2.7

为了找到最低点,给定近似数字化点,我在每个近似数字化点的特定半径内寻找最低点。这对一开始来说已经足够好了。然而,当然,仍然有一些“噪音”在流外找到比我所寻找的流底值更低的点

现在,为了找到溪流的两个边缘,我使用上一步中找到的每个最低点,并使用一条定义长度的垂直线(每边10-20米,取决于溪流)来找到沿该线的所有点高度,然后计算垂线上以下两个点之间的坡度,取最小坡度点,其高度至少比最低点高0.5米。 好。。。那不太管用

因此,我正在寻找另一种方法,以找到河流的两个边缘。。希望能找到新的思路

编辑-注意:流越远,流的宽度就越大

下图-我正在处理的某条河流的最低点,放在坡度图上(使用的软件-QGIS):