从我对有点云的工作方式的理解有限,我觉得应该能够从一个对象外部的一组二维图像中生成一个点云。我遇到的问题是我似乎找不到任何关于如何生成这种点云的示例。
答案 0 :(得分:26)
通常,从一系列2D图像进行3D形状重建是一个难题。它可以从困难到极难,具体取决于相机的已知信息量及其与物体和场景的关系。有很多信息:尝试谷歌搜索“3D重建图像序列”或“3D图像重建转台”。 Here是一篇文章,对该过程及其挑战进行了很好的总结。 This paper很好(它引入了“RANSAC” - 另一个很好的搜索关键字)。 This link在面部重建方面解决了问题,但该理论可以应用于这个问题。
请注意,3D点的解释取决于相机extrinsic和intrinsic参数的知识。外部参数指定相机相对于世界的位置和方向。内部参数将像素坐标映射到世界框架中的坐标。
当外部参数和内部参数都不知道时,3D重建对于未知比例因子是准确的(即,可以建立相对大小/距离,但是不知道绝对大小/距离)。当两组摄像机参数都已知时,3D点的比例,方向和位置是已知的。 OpenCV documentation很好地涵盖了相机校准的概念。 This link,this link和this link也很好。
答案 1 :(得分:6)
VisualSFM是一个允许3D重建的应用程序。 您可以从多个2D图像中获取点云。
This video展示了如何从树的短片段中提取多个图像,然后使用VisualSFM创建点云。