如何在QGIS中使用物理屏障/边界进行核密度估计?


18

有谁知道一个程序,该程序将允许内核在计算时将边界考虑在内,而不是简单地掩盖不可能的区域?

到目前为止,我已经发现:Arc10的GME插件(Hawthorne Beyer)-每次指定边界shapefile时都会出错。我尝试了很多不同的shapefile类型和边界复杂性等。当我不指定边界时,它可以正常工作。

R中的AdehabitatHR软件包(Calange,2011年)-效果很好,但您指定的边界必须非常简单-线段的长度是内核带宽的3倍,而不是太曲折。对于我的数据,这是一个极大的简化。

所以我想知道是否有其他软件可以做到这一点,例如GRASS或QGIS。

谢谢


3
具有潜在兴趣的R代码,边界偏向和加权核的最新论文。所有代码都是加权观测值以校正边界偏差的方法(如果您可以计算出权重,则可以使用任何程序来估算kde,只要权重除外)即可。
Andy W

1
正是怎么做你想让它“帐户”的边界?有多种可能的方法,从掩盖到阻止扩散再到校正边界效应。
ub

1
谢谢@AndyW和whuber的答复。我想通过防止内核在边界上扩散来解决边界问题。数据是海龟的位置,因此我知道利用率分布不应散布到陆地上,但是许多位置都非常靠近海岸,因此我不想仅通过掩盖那些传播到土地。感谢您提供本文的链接-看起来不错,我将尝试对数据使用类似的代码。
KimS 2012年

Answers:


2

内核密度估计的核心是距离的概念。我所知道的最好的解决方案是使用更好的距离度量标准,该度量标准考虑了边界和旅行成本的变化。最好选择适合您要解决的问题的距离度量。陆地地形摩擦对于远足非常有用,但对于气溶胶散布却不是。风流对于帆船追踪必不可少,但与行驶方向无关。
既然适当的距离度量标准的概念有望得到充分的激发,我可以推荐使用成本面作为良好的通用距离度量标准。它们在从ArcGIS,R,JavaScript的所有版本中都可用,并且构造起来相当简单。例如,在qGIS中,您可以构建栅格摩擦表面,然后使用该表面来计算路径。自定义摩擦表面以解决边界问题,您将看到点周围的核的质量整齐地分布在障碍物周围。


+1这可能是一个很好的方法。在将其应用到许多问题后,我发现这里没有提到主要困难:您究竟打算如何根据该指标扩展内核?开箱即用的解决方案无法做到这一点。
Whuber

@whuber是的,开箱即用的系统通常无法同时考虑成本面和内核密度。我的建议是使用摩擦表面来计算点到点的距离,然后直接对重量应用核函数。在qGIS或ArcGIS中,您可以使用python编写正态分布函数,而在R中则具有该dnorm()函数。
JasonRDalton 2014年

在某些情况下,我确实做到了这一点,但是仔细考虑过程并检查结果却发现了一些固有的问题。最困难的似乎是如何保证质量守恒:您不能仅仅根据固定的高斯函数来扩展值,因为扩展点的总结果质量将不等于原始质量。没有有效的方法来执行此计算。
ub



-2

我已使用Geostatistical Analyst(ESRI ArcGIS的扩展)成功完成了此任务。您可以将线要素数据集作为障碍加载,结果相当不错。我在更改函数参数的同时进行测试运行,以清楚地了解如何校准工具。为了验证结果,我建议如果您有足够大的数据集,请删除点的样本,生成没有这些点的密度曲面,然后将删除的点的值与曲面上的值进行比较。删除点的位置。


2
您能否将这个答案放大一点,以说明GA(实现插值方法)如何计算内核密度估算值?作为对解决方案正确性的双重检查,您是否验证了GA网格的积分近似等于所有输入数据的总和?
ub

1
在10.1中,可以执行带有壁垒的内核插值,但这不会导致密度估计。虽然,考虑到原始帖子引用的方法,我想知道他们是否对高斯核估计而不是密度估计不感兴趣。
杰弗里·埃文斯
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.