3D重建结果出现扭曲。我想念什么?

时间:2019-04-16 08:41:42

标签: python opencv projection 3d-reconstruction

因此,我正在尝试建立3d重建管道以同时进行本地化和映射。我自以为是先尝试对单个深度图像进行重建,只是结果似乎有些变形。

我正在使用这种流行的投影方法,使用固有的相机参数和深度图像(方法可以在“用彩色像素映射深度像素”部分中找到):

http://nicolas.burrus.name/index.php/Research/KinectCalibration

为清晰起见,这是我的看法。

def project(u,v,depth):
    z = depth
    x = (cam.cx - u) / cam.fx * z
    y = (cam.cy - v) / cam.fy * z
    return [x, y, z]

现在我希望收到的是一个点云,它在某种程度上与实际3d场景精确匹配。但是,结果是扭曲的,好像它正在逃离精灵的瓶子。我想这是可以预期的,因为更高的depth值会导致点更靠近图像的中心点。如何减轻这种影响并获得更准确的重建结果?我是否需要一些我不知道的标准化或缩放步骤?

深度图:https://imgur.com/RQMw7pc

3d重建:https://imgur.com/QNqrKdy

(根据本指南http://anabuilder.free.fr/2D3DSculptor/index.html拍摄的深度图像)

0 个答案:

没有答案