gpt4 book ai didi

delphi - 如何在缺失数据的不规则间隔网格或数组中填充 'holes'?

转载 作者:行者123 更新时间:2023-12-03 15:57:28 29 4
gpt4 key购买 nike

有没有人有一个使用 Delaunay 填充网格的直接 Delphi 示例三角形还是克里格法?任何一种方法都可以通过“插值”来填充网格。

我想做什么?我有一个网格,类似于:

22  23  xx  17  19  18 05  
21 xx xx xx 17 18 07
22 24 xx xx 18 21 20
30 22 25 xx 22 20 19
28 xx 23 24 22 20 18
22 23 xx 17 23 15 08
21 29 30 22 22 17 09

其中 xx 代表没有数据的网格单元,每个单元的 x,y 坐标是已知。克里金法和 Delaunay 三角形都可以提供“缺失”点(当然,这些点是虚构的,但都是合理的值)。

克里金法是一种统计方法,用于填充“缺失”或不可用的数据具有“合理”值的网格。你为什么需要它?原则上是为了“勾画”数据。轮廓算法(如 Delphi 的 CONREC http://local.wasp.uwa.edu.au/~pbourke/papers/conrec/index.html )可以轮廓规则间隔的数据。谷歌搜索“kriging”和“Delphi”,您最终会找到 Source Forge 上的 GEOBLOCK 项目 ( http://geoblock.sourceforge.net/ )。 Geoblock 有许多基于 GSLIB(斯坦福大学开发的 Fortran 统计包)的克里金法 Delphi pas 单位。然而,所有克里金/德劳尼单位都依赖于 Delphi 使用条款中引用的单位。不幸的是,这些“帮助”单元没有与其余源代码一起发布。似乎没有一个克里金单元可以独立运行,也不能在没有未发布的辅助单元或在某些情况下未定义的数据类型的情况下工作。

Delaunay 三角剖分 描述于 http://local.wasp.uwa.edu.au/~pbourke/papers/triangulate/index.html 。发布的是一个 Delphi 示例,非常简洁,可以生成“三角形”。不幸的是,我不知道如何使用带有静态网格的装置。该示例动态“生成”一个数据字段。

有人使用这些单元来填充不规则的数据网格吗?任何代码或提示如何使用现有代码进行克里格简单网格或使用 Delaunay 填补漏洞将不胜感激。

最佳答案

我将其写为答案,因为它太长,无法放入评论中。

假设您的网格确实是不规则的(您没有给出网格坐标的典型模式的示例),那么三角测量仅部分有帮助。一旦完成三角测量,您就可以使用该三角测量进行插值,并且可以做出不同的选择。

但是你还没有说过你想如何插值,你想用插值做什么。

在我看来,您已经要求了一些代码,但不清楚您是否知道您想要什么算法。这确实是你应该问的问题。

例如,既然您似乎没有关于如何进行插值的标准,为什么不为缺失值选择最近的邻居。或者为什么不使用缺失值的总体平均值。这两个选择都满足您指定的所有条件,因为您没有指定任何条件!

真的,我认为你需要花更多的时间来解释你希望这个插值具有哪些属性,你将用它做什么等等。我还认为你现在应该停止考虑代码并考虑算法。既然您提到了统计数据,您应该考虑询问 https://stats.stackexchange.com/ .

关于delphi - 如何在缺失数据的不规则间隔网格或数组中填充 'holes'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4975893/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com