我有几个关于使用 OpenCV 使用一组 2D 图像切片进行 3D 重建的问题:
从一组模型中重新创建 3D 模型的步骤或过程是什么? 二维图像切片?
我将如何开始使用 OpenCV 进行 3D 重建?我听说 OpenCV Viz 可行,但我是新手,所以我不确定。
请注意,不需要相机,因为我得到了一组图像,而且我仅限于 OpenCV。
提前致谢!
最佳答案
这方面最权威的书籍之一是 Zisserman .
(非常)高级的步骤是:
- 对于每张图片,确定一组特征(例如 SIFT、ORB、SURF 或类似特征)
- 对于一对图像,找到位于 1 中的特征之间的对应关系
- 使用这些对应关系,计算描述两个图像之间关系的基本矩阵 F
- 根据 F(理想情况下是一些相机内部参数),计算第二张图像中相对于第一张图像的相对相机位姿
- 使用 F 校正图像对,使对应点位于相同的扫描线上
- 使用两幅图像计算密集视差图,然后将其转换为图像中每个像素的深度图
- 给定相机姿势和每个像素的深度,反向投影空间中的 3D 点
- 使用束调整等技术优化整个计算点和图像集的 3D 坐标和相机姿势的派生值
OpenCV calib3d
库包含许多对此过程有用的函数,Google 是您的 friend ,可以了解有关如何应用它们的更多详细信息。
另见:OpenCV with stereo 3D reconstruction , OpenCV 3D reconstruction using shipped images and examples
关于c++ - 使用 OpenCV 从一组 2D 图像切片重建 3D 模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29760876/