Patent Document ID: 9865061
Application ID: 14493959
Patent Status: 1

Claim One:
1. A method for constructing a three-dimensional (3D) structure, the method comprising: capturing, by an image capturing unit, images of an object wherein capturing the images comprises capturing a first image when the image capturing unit is stationary at a first position and capturing a second image at a second position during movement of the image capturing unit by a threshold distance in a first direction from the first position; determining, by a processor, extrinsic camera parameters, wherein determining the extrinsic parameters comprises: determining an angular velocity of the image capturing unit from a gyroscope; determining a gravitational component of the image capturing unit from a magnetometer, and determining an acceleration of the image capturing unit from an accelerometer while capturing the second image, wherein determining the extrinsic camera parameter further comprises determining a rotation and a translation between the first image and second image wherein determining the rotation comprises: determining a first rotation for the first image as a product of the angular velocity along a first axis with the gravitational component along a second axis at the first position, the second axis being perpendicular to the first axis; determining a second rotation for the second image as a product of the angular velocity along the first axis with the gravitational component along the second axis at the second position; and determining the rotation as a multiplication of one rotation matrix by a transpose of a second rotation matrix; wherein determining the translation comprises: determining an initial image position of the first image while capturing the image and the initial image position optimized using an iterative reweighed least square technique to generate an optimized image position; wherein optimizing the initial image position comprises reducing error associated with the determined initial image position; and determining the translation between the first image and the second image using the optimized image position and the rotation, wherein the translation is calculated as a product of the optimized initial position and the rotation between the first image and the second image; computing, by the processor, an internal calibration matrix for the images, wherein the internal calibration matrix comprises a focal length of the image capturing unit and a principle point of the image capturing unit; computing, by the processor, a fundamental matrix using the extrinsic camera parameters and the internal calibration matrix; extracting, by the processor, features of the images; establishing, by the processor, point correspondences amongst the images, wherein the point correspondences are established using the features of the images; filtering, by the processor, the point correspondences using the fundamental matrix to generate filtered point correspondences; and generating, by the processor, a 3 D structure using the filtered point correspondences, wherein the 3 D structure is generated using a triangulation technique.