Systems and methods for estimating the structure and motion of an object
AssigneeUniversity of Florida Research Foundation, Inc.
InventorsAshwin P. Dani, Warren Dixon
Life of this patent
Estimating the term…
Abstract
In one embodiment, the structure and motion of a stationary object are determined using two images and a linear velocity and linear acceleration of a camera. In another embodiment, the structure and motion of a stationary or moving object are determined using an image and linear and angular velocities of a camera.
Claims35
A method of operating a vehicle, the vehicle comprising a camera, the method comprising:
- estimating structure and motion relative to the camera of a stationary object, the estimating comprising:
- capturing first and second images of the object with the camera;
- recording a linear velocity and a linear acceleration of the camera at instants at which each image was captured;
- extracting matching feature points of the object from the images;
- computing Euclidean coordinates of the feature points for each image;
- estimating a rotation matrix based upon the Euclidean coordinates, the rotation matrix comprising a representation of rotation between the two images;
- computing an estimate of a state vector, the state vector being based upon the depths of the feature points relative to the camera and linear velocities of the camera;
- and
- computing unknown camera velocities and coordinates of each feature point based upon the state vector.
A non-transitory computer-readable medium that stores a controller for controlling operation of a vehicle, the vehicle comprising a camera, the medium comprising:
- a structure and motion estimator to estimate the structure and motion of a stationary object relative to the camera, the structure and motion estimator comprising:
- logic configured to capture first and second images of the stationary object with the camera of the vehicle;
- logic configured to record a linear velocity and a linear acceleration of the camera at instants at which each image was captured;
- logic configured to extract matching feature points of the object from the images;
- logic configured to compute Euclidean coordinates of the feature points for each image;
- logic configured to estimate a rotation matrix based upon the Euclidean coordinates, the rotation matrix comprising a representation of rotation between the two images;
- logic configured to compute an estimate of a state vector, the state vector being based upon the depths of the feature points relative to the camera and linear velocities of the camera;
- and
- logic configured to compute unknown camera velocities and coordinates of each feature point based upon the state vector.
A method of operating a vehicle, the vehicle comprising a camera, the method comprising:
- estimating the structure and motion relative to the camera of a stationary object, the estimating comprising:
- capturing an image of the object with the camera;
- recording linear and angular velocities of the camera at an instant at which the image was captured;
- extracting feature points of the object from the image;
- computing Euclidean coordinates of the feature points;
- computing a state vector [{circumflex over (x)}1, {circumflex over (x)}2, {circumflex over (x)}3], wherein x1 is the inverse depths of the feature points, x2 is the ratios of x and z coordinates of the feature points, and {circumflex over (x)}3 is the ratios of y and z coordinates of the feature points;
- determining z coordinates of each feature point in the image based upon the state vector;
- and
- computing x and y coordinates of each feature point in the image based upon the state vector.
A non-transitory computer-readable medium that stores a controller for controlling operation of a vehicle, the vehicle comprising a camera, the medium comprising:
- a structure and motion estimator to estimate the structure and motion of a stationary object relative to the camera, the structure and motion estimator comprising:
- logic configured to capture an image of the stationary object with the camera of the vehicle;
- logic configured to record linear and angular velocities of the camera at an instant at which the image was captured;
- logic configured to extract feature points of the object from the image;
- logic configured to compute Euclidean coordinates of the feature points;
- logic configured to compute a state vector [{circumflex over (x)}1, {circumflex over (x)}2, {circumflex over (x)}3], wherein x1 is the inverse depths of the feature points, x2 is the ratios of x and z coordinates of the feature points, and {circumflex over (x)}3 is the ratios of y and z coordinates of the feature points;
- logic configured to determine z coordinates of each feature point in the image based upon the state vector;
- and
- logic configured to compute x and y coordinates of each feature point in the image based upon the state vector.
Dependencies are inferred from the claim text.