Image registration
First Claim
1. A method for determining a transformation in SE(3), a special Euclidean Group for 3 dimensions which represents a group of rigid transformations in 3D space and that can be represented by linear transformations on homogeneous four-vectors, the method comprising:
- receiving, by a host computing system, a video stream comprising a series of image frames and selecting a key image frame and a tracked image frame from the series of image frames;
selecting a plurality of points on the key image frame;
projecting the plurality of points onto the tracked image frame to produce a number of corresponding points on the tracked image frame;
defining, for each corresponding point in the tracked image frame, an array of pixels centered on the corresponding point;
for each corresponding point, reprojecting each pixel of the array thereof back onto the key image frame, wherein the reprojection of each said pixel of the array identifies a reprojected pixel in the key image frame;
determining an intensity value for each reprojected pixel;
parameterizing each array of pixels to determine, for each array of pixels, an outer product of the gradient vector for each array of pixels;
determining a normal equation for each array of pixels; and
solving the normal equation for SE(3).
3 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for computationally efficient and precise transformation recovery using two image frames are provided. A key image frame and a tracked image frame are selected from a series of image frames, a plurality of points on the key image frame are selected, and the plurality of points are then projected onto the tracked image frame to produce a number of corresponding points. Then, for each corresponding point, a patch of pixels is defined centered on the corresponding point. Each pixel of the patch is reprojected back onto the key image frame to identify a reprojected pixel in that image frame. An intensity value for each reprojected pixel is determined and each patch is parameterized. A normal equation for each patch is determined and then solved for the transformation.
35 Citations
13 Claims
-
1. A method for determining a transformation in SE(3), a special Euclidean Group for 3 dimensions which represents a group of rigid transformations in 3D space and that can be represented by linear transformations on homogeneous four-vectors, the method comprising:
-
receiving, by a host computing system, a video stream comprising a series of image frames and selecting a key image frame and a tracked image frame from the series of image frames; selecting a plurality of points on the key image frame; projecting the plurality of points onto the tracked image frame to produce a number of corresponding points on the tracked image frame; defining, for each corresponding point in the tracked image frame, an array of pixels centered on the corresponding point; for each corresponding point, reprojecting each pixel of the array thereof back onto the key image frame, wherein the reprojection of each said pixel of the array identifies a reprojected pixel in the key image frame; determining an intensity value for each reprojected pixel; parameterizing each array of pixels to determine, for each array of pixels, an outer product of the gradient vector for each array of pixels; determining a normal equation for each array of pixels; and solving the normal equation for SE(3). - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A system for determining a transformation in SE(3), a special Euclidean Group for 3 dimensions which represents a group of rigid transformations in 3D space and that can be represented by linear transformations on homogeneous four-vectors, the system comprising:
a host computer including logic configured to receive a video stream comprising a series of image frames and selecting a key image frame and a tracked image frame from the series of image frames; logic configured to select a plurality of points on the key image frame; logic configured to project the plurality of points onto the tracked image frame to produce a number of corresponding points on the tracked image frame; logic configured to define, for each corresponding point in the tracked image frame, an array of pixels centered on the corresponding point; logic configured to, for each corresponding point, reproject each pixel of the array thereof back onto the key image frame, wherein the reprojection of each said pixel of the array identifies a reprojected pixel in the key image frame; logic configured to determine an intensity value for each reprojected pixel; logic configured to parameterize each array of pixels to determine, for each array of pixels, an outer product of the gradient vector for each array of pixels; logic configured to determine a normal equation for each array of pixels; and
logic configured to solve the normal equation for SE(3).
Specification