我想从 OpenCV 中的 3D 点列表构造一个平面。我想通过查找以下形式的四个参数来获得结果:Ax+By+Cz+D = 0
。有人会建议我一种方法吗?
如果数据不包含异常值且不包含多个平面。此外,所有点都恰好位于一个平面上(数据没有噪声),就这么简单:
- 随机选取不在同一直线上的三个点。
- 求解该线性方程组:
x1+by1+cz1+d = 0
x2+by2+cz2+d = 0
x3+by3+cz3+d = 0
then :
A= Choose any number you want in order to match your scale.
B= b*A
C= c*A
D= d*A
如果数据有噪声或包含异常值或超过平面(或两者),则需要某种稳健估计技术。从搜索 RANSAC 开始。
如果你熟悉 RANSAC 你可以看到这个例子 https://stackoverflow.com/questions/33629842/grouping-points-that-represent-lines/这里(这是关于线的,你可以简单地概括它来处理平面)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)