算法找到包含一组点的两个平行平面

时间:2013-01-28 04:08:19

标签: algorithm math

我正在研究一种算法的实现,该算法用于确定无人机着陆的最安全点,使用此paper

为此,我想找到两个平行的平面,包围一组9个点,同时最小化这两个平面之间的距离r。

然后

r将表示地形的粗糙度。

我想要一个解决问题的一般策略或链接到描述解决方案的论文。

2 个答案:

答案 0 :(得分:3)

你能做到以下几点:

  1. 找到9分的convex hull
  2. 对于凸包中的每个平面p,找到不在pt中距离最远的点p,让第二个平面与{{1}平行并通过p并计算距离
  3. 采取最低限度

答案 1 :(得分:1)

目标是找到飞机正常。然后建造飞机很容易。

平面法线的候选数量有限:凸包边缘矢量的交叉积(包括但不限于面法线)。对于这个点数,你可以统计它们。

为什么?

  • 每个平面都会触及一些非零数量的点(否则它可以移近)。
  • 如果我们可以稍微旋转飞机而不会失去与这些点的连接,距离就会减少。
  • 因此最佳平面无法旋转。
  • 如果飞机接触到两个点,它只能围绕此边缘旋转。
  • 如果平面接触到两条非平行边缘,则无法旋转。
  • 然后它的法线就是那些边缘向量的交叉积。