This paper is committed to study how to obtain a realistic three-dimensional model by automatically computing when input a few pieces of hand-held camera images, the obtained model can be applied to computer vision, virtual reality and other areas. The main content of this paper as follows:(1) In order to obtain dense point clouds model from the photos, we take a two-step reconstruction. The first step, we run an iterative, robust Structure from Motion procedure, and then do a bundle adjustment using the LM algorithm. In this step, we use SIFT feature to detect and match, then use pairs of matched points to recover the fundamental matrix robustly and calibrate the camera, at last compute the projection matrix and reconstruct sparse point clouds model. Because of inputting only a small number of images, coupled with the impact of noise, the point clouds model in uneven distribution has low effect.(2) The second step, we use patch-based MVS algorithm to reconstruct a dense point clouds model. At beginning, also detect and match features in each image, and then run an iterative procedure of patch expansion and patch filter. We get three-dimensional coordinates of each patch by triangulation, and then filter out the error patch, at last get a dense point clouds model.(3) Then do surface reconstruction using many times of the Ball-Pivoting algorithm with increasing radius on the dense point clouds model, at last generate the mesh model. Compared with the Poisson surface reconstruction methods, experiments show the Ball-Pivoting methods have good results under the framework proposed in this paper.(4) Finally, do a global MRF optimization on the map of texture fragments and patches, solve this problem by multi-way Graph Cuts. And then blend texture fragments by gradient domain methods. Then generate texture atlas and map it on mesh model to obtain a realistic three-dimensional model. |