【发布时间】:2018-01-10 04:59:44
【问题描述】:
我想从计算机视觉的角度了解如何检测平面以及为什么 Arkit 不能检测垂直表面。
【问题讨论】:
标签: computer-vision arkit
我想从计算机视觉的角度了解如何检测平面以及为什么 Arkit 不能检测垂直表面。
【问题讨论】:
标签: computer-vision arkit
地平面检测的工作方式如下。使用基于特征的视觉惯性里程计执行场景的稀疏 3D 重建(这意味着使用视觉运动与来自潮间带传感器的信息相结合来估计相机姿势)。 3D 重建中的点(也称为地图)对应于在两个或多个相机图像中检测到的特征点。从这个稀疏重建中,通过找到所有近似共面的重建点来建立地平面。最有可能使用基于 RANSAC 的平面拟合来解决此问题。其工作原理是随机抽取一小组特征点(通常为 3 或 4 个),找到最接近这些点的平面方程,然后测试所有其他点是否靠近拟合平面。该过程重复多次(通常为数百次),直到找到适合大量特征点的平面。该库中假设该平面是地平面(不是墙),因此任何检测到的具有强倾角的平面都会被拒绝。它可以使用板载陀螺仪传感器来做到这一点。仅支持地平面的原因是它们对应于 AR 的最常见用例(将虚拟对象放置在地平面上),但将来几乎肯定会支持其他几何表面。
【讨论】: