相关疑难解决方法(0)

在2d点集找到漏洞?

我有一套2d points.它们X,Y coordinates位于标准的笛卡尔网格系统上(在本例中为a UTM zone).我需要在该点集中找到孔,最好能够设置找到这些孔的算法的灵敏度.通常这些点集非常密集,但有些可能密度低得多.

它们是什么,如果它有帮助的话,那就是田地里的土壤被采样的点,农业人们显然发现它们有用.有时在这些点样品中有巨大的岩石或沼泽地或满是小湖泊和池塘.

从点集中,他们希望我找到粗略定义这些孔的凹多边形.

我已经编写了找到外部凹面边界多边形的算法,并允许它们设置由算法形成的多边形粗糙或平滑的灵敏度.在那之后,他们想找到洞并将那些洞作为凹多边形给予它们,我猜在某些情况下可能是凸的,但这将是边缘情况而不是常态.

问题是我听过的关于这个问题的唯一论文是那些希望在太空中找到大空虚的天文学家完成的论文,我从来没有能够找到他们的一篇论文,其中的实际算法显示为除了粗略的概念描述之外的任何东西

我已经尝试了谷歌和各种学术论文搜索等,但到目前为止我还没有找到很多有用的东西.这让我想知道是否有这个问题的名字,我不知道所以我在寻找错误的东西或什么?

所以经过那个冗长的解释之后,我的问题是:有没有人知道我应该寻找什么,最好用定义明确的算法找到这方面的论文,或者有人知道一个他们可以指出我的算法吗?

任何帮助我解决这个问题的东西都会非常有用并且非常感激,即使只是正确的搜索短语,也会发现潜在的算法或论文.

这将实现的语言将是C#,但是从Mathematica软件包到其他任何东西的例子MATLAB or ASM, C, C++, Python, Java or MathCAD都可以,只要示例中没有一些调用就像是FindTheHole等等.FindTheHole没有定义或者是对于实现软件而言是专有的,例如,MathCAD示例通常具有很多.

下面是两个实际点集的例子,一个是密集的,一个是稀疏的,我需要找到它们中的区域: 稀疏点设置示例 密集点设置的例子

c# algorithm geometry computational-geometry

15
推荐指数
1
解决办法
3676
查看次数

近似搜索如何工作

[序幕]

这个Q&A旨在更清楚地解释我在这里首次发表的近似搜索类的内部工作

我已经被要求提供关于这几次的更多详细信息(由于各种原因)所以我决定写关于这个的Q&A风格主题,我将来可以很容易地参考这个主题并且不需要一遍又一遍地解释它.

[题]

如何逼近Real域(double)中的值/参数以实现多项式,参数函数或求解(困难)方程(如超越)的拟合?

限制

  • 真实域名(double精确)
  • C++语言
  • 可配置的近似精度
  • 已知的搜索间隔
  • 拟合值/参数不是严格单调的或根本不起作用

c++ math approximation

7
推荐指数
1
解决办法
875
查看次数

算法:椭圆匹配

我有很多像下面的图像(只有白色和黑色):

在此输入图像描述

我最后的问题是找到匹配良好的椭圆.不幸的是,真正使用过的图像并不像这样.它们可能会变形一些,这使得椭圆匹配可能更难.

我的想法是找到"断点".我在下面的图片中标记它们:

在此输入图像描述

也许这些点可以帮助匹配省略号.最终结果应该是这样的:

在此输入图像描述

有人知道可以用什么算法来找到这些断点吗?或者甚至更好地进行良好的椭圆匹配?

非常感谢你

algorithm image ellipse

5
推荐指数
1
解决办法
848
查看次数

多边形(或其部分)的圆形近似

我的问题的简短描述

我需要为 3D 打印实现从 G1 指令到 G2 和 G3(http://www.cnccookbook.com/CCCNCGCodeArcsG02G03.htm)的GCODE 自动重构。

G1 是直线运动并打印(路径用矢量描述)。

我正在寻找基于给定向量路径的算法来近似圆/弧(特别是它的中点)。请注意,G2 和 G3 无法打印不属于圆的曲线 - 因此并非每个向量路径都可以通过这种方式近似。

我的问题的详细描述

我正在寻找通过圆(弧)来近似部分(或全部)向量路径(可以是正多边形、它的一部分或不规则多边形部分)的方法。但是,让我们首先关注规则多边形。

在图片中,我绘制了这个问题的不同情况。 注意:每个多边形都是由向量构建的(如第 5 点)。 在此处输入图片说明

  1. 全 x 边形上的近似值。
  2. 一侧不同的部分 x 边形的近似值
  3. x-gon 的近似值,其中两侧不同但彼此相等
  4. x-gon 的近似值,其中两侧不同(彼此不相等)不相等
  5. 所有边都相等的部分 x-gom 的近似值

这不是故事的开始……有几个标准:

  • 圆的起点/终点必须在矢量路径的起点/终点。
  • 我需要知道圆圈的中点。

我发现的解决方案(好的和坏的):

1) 和 5) - 我的简单解决方案

这是最简单的情况。我可以计算共享一个观点的每一侧之间的半径。如果它们具有相同的长度和每个之间的角度相等,我可以计算圆的中点(作为属于垂直中线的点,每边一条中线),我有我需要的一切:起点,终点,中点观点。

但此解决方案仅适用于情况 1 和 5。

当我遇到案例 2,3,4 或不规则多边形的部分时,我真的不知道该怎么办

algorithm approximation computational-geometry g-code

3
推荐指数
1
解决办法
1894
查看次数