在上图中有一些几何图案。模型a
距离是已知的。点严格不在模型距离内。
我想:
a
)更好的点适合模式它应该具有更好的质量系数(我试图采取距离和45度角)到目前为止我尝试了什么:
a - delta
和a + delta
为何失败:
所以问题是:在这种情况下,计算点质量的最佳算法是什么,以及填充模式。应该通过考虑邻居位置的元素的平均位置来填充模式。最好的答案是伪代码或代码或对某些已知算法的引用,在这种情况下可能会有所帮助。
问题与我之前的问题Filling rectangle with points pattern有点相关,但填充不能用错误的质量点进行。
答案 0 :(得分:1)
当你从左到右或从上到下(即相邻的好点之间的平均距离a
已经足够清楚)时,如果点的误差/失真没有变大,你可以尝试以下:
[0,a[ x [0,a[
。因此,好点将或多或少地映射到一个点上。 R
(例如,对于到其他点的所有距离总和1/distance
Q j ,j≠i,并选择具有最大和的那个)。 如果点R(具有最近邻居)的坐标接近0或a(即R接近正方形[0,a[ x [0,a[
的边界),则最好从头开始并添加{{1在计算余数之前,相应的坐标(每个P i ),以使点R更多地到达正方形的中心。 (或者你设法计算在一侧留下方形a/2
的不同可能性的最小距离,并在另一侧返回它。)
答案 1 :(得分:1)
优点似乎沿着网格排列。可以使用RANSAC使用线拟合算法找到网格线。 RANSAC线拟合是一种概率算法。您将不得不重复它,直到找到几乎水平或垂直的线。取出该线上/附近的点,然后转到下一个网格线。根据您的问题特征,如果剩下的点太少或者一条线上/附近的点太少,您将停止寻找新的网格线。剩下的点是不好的。当您找到找到的网格线的交点并且在交叉点附近没有任何点(来自所有原始网格线)时,您可以在这里填写一个点。