Real-time structured light range scanning of moving scenes
First Claim
1. A method for real-time range scanning of a scene, the method comprising:
- a) projecting a sequence of N radiation patterns onto said scene, each radiation pattern comprising a set of pattern features at fixed projection positions, wherein the pattern features are boundaries in the radiation patterns, and wherein a sequence of N matching pattern features in a corresponding set of N of said radiation patterns defines a code for one of the fixed projection positions, wherein N is a minimum number of radiation patterns required to provide unique codes;
b) using an image detector, capturing a current image of said scene, wherein said current image comprises a set of current image features corresponding to said pattern features, and wherein the current image features are boundaries in the current image;
c) identifying matching image features in a distinct image, wherein the matching image features are boundaries in the distinct image matching at least one of the current image features;
d) determining current image feature positions for some of the current image features from said code, said current image and at least one differently-timed images; and
e) computing ranges for positions of said some of the current image features by geometrical analysis of said current image feature positions and said fixed projection positions.
0 Assignments
0 Petitions
Accused Products
Abstract
A method for range scanning consists of projecting a sequence of radiation patterns onto a scene, capturing images of the scene, determining correspondences between image features and projection pattern features, and computing a range image of the scene by triangulation of the correspondences. Novel projection patterns allow tracking of pattern features between images, so that range images can be computed for moving scenes in real time. Global assumptions about surface continuity or reflectivity of the scene are not required for successful range scanning. Projection patterns may be based on two-stripe codes, parallel stripes of bright and dark intensity. In two-stripe coded patterns, pattern features are the boundaries between stripes, which take on values of either on-on, on-off, off-on, or off-off. A particular boundary'"'"'s value over the entire pattern sequence defines its code, used to determine correspondences between the boundary image and its location in the projection pattern. The method is also useful for obtaining three-dimensional models of static objects. The object is slowly rotated while being imaged, and all resulting range images are aligned and merged to form the three-dimensional model. A system implementing the method can be mounted on a robot or vehicle for navigation in unknown environments.
-
Citations
70 Claims
-
1. A method for real-time range scanning of a scene, the method comprising:
-
a) projecting a sequence of N radiation patterns onto said scene, each radiation pattern comprising a set of pattern features at fixed projection positions, wherein the pattern features are boundaries in the radiation patterns, and wherein a sequence of N matching pattern features in a corresponding set of N of said radiation patterns defines a code for one of the fixed projection positions, wherein N is a minimum number of radiation patterns required to provide unique codes;
b) using an image detector, capturing a current image of said scene, wherein said current image comprises a set of current image features corresponding to said pattern features, and wherein the current image features are boundaries in the current image;
c) identifying matching image features in a distinct image, wherein the matching image features are boundaries in the distinct image matching at least one of the current image features;
d) determining current image feature positions for some of the current image features from said code, said current image and at least one differently-timed images; and
e) computing ranges for positions of said some of the current image features by geometrical analysis of said current image feature positions and said fixed projection positions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A program storage device accessible by a computer in communication with an image detector, said program storage device tangibly embodying a program of instructions executable by said computer to perform method steps for real-time range scanning of a scene, said method steps comprising:
-
a) receiving a current image of said scene from said image detector, wherein;
i) said scene is projected with a sequence of N radiation patterns, each radiation pattern comprising a set of pattern features at fixed projection positions, wherein the pattern features are boundaries in the radiation pattern, and wherein a sequence of N matching pattern features in a corresponding set of N of said radiation patterns defines a code for one of the fixed projection positions wherein N is a minimum number of radiation patterns required to provide unique codes; and
ii) said current image comprises a set of current image features corresponding to said pattern features wherein the current image features are boundaries in the current image;
b) identifying matching image features in a distinct image, wherein the matching image features are boundaries in the distinct image matching at least one of the current image features;
c) determining current image feature positions for some of the current image features, from said code, said current image and at least one differently-timed image; and
d) computing ranges for positions of said some of the current image features by geometrical analysis of said current image feature positions and said fixed projection positions. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42)
-
-
43. A real-time range scanning system comprising:
-
a) a projector configured to project a sequence of N radiation patterns onto a scene, each radiation pattern comprising a set of pattern features at fixed projection positions, wherein the pattern features are boundaries in the radiation pattern, and wherein a sequence of N matching pattern features in a corresponding set of N of said radiation patterns defines a code for one of the fixed projection positions, wherein N is a minimum number of radiation patterns required to provide unique codes;
b) an image detector for capturing a current image of said scene, wherein said current image comprises a set of current image features corresponding to said pattern features, and wherein the current image features are boundaries in the current image; and
c) a data processor in communication with said image detector, configured to;
i) identify matching image features in a distinct image, wherein the matching image features are boundaries in the distinct image matching at least one of the current image features;
ii) determine current image feature positions for some of the current image features, from said code, said current image and at least one differently-timed image; and
iii) compute ranges for positions of said some of the current image features by geometrical analysis of said current image feature positions and said fixed projection positions. - View Dependent Claims (44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64)
-
-
65. A method for real-time range scanning of a scene, the method comprising:
-
a) projecting a sequence of radiation patterns onto said scene, each radiation pattern comprising a set of parallel stripes defining projected pattern features at fixed projection positions, wherein the pattern features are stripe boundaries in the radiation patterns, wherein a sequence of N matching stripe boundaries at each fixed projection position in a set of N of said radiation patterns defines a code for said fixed projection position;
b) using an image detector, capturing a current image of said scene, wherein said current image comprises a set of image stripe boundaries corresponding to said projected stripe boundaries;
c) identifying each current image stripe boundary with a matching image stripe boundary in a previous image;
d) determining fixed projection positions for some of the image stripe boundaries from said code, said current image and at least one preceding images, thereby identifying a fixed projection position corresponding to some of the current image stripe boundaries; and
e) computing ranges for said some of the current image stripe boundaries by geometrical analysis of said current image stripe boundary and said corresponding fixed projection position. - View Dependent Claims (66, 67, 68, 69)
-
-
70. A method for range scanning a three-dimensional scene, the method comprising:
-
a) projecting a sequence of differently-timed radiation patterns onto the scene, wherein the radiation patterns comprise, at predetermined projection positions, pattern features coded in time according to a code, wherein the pattern features are stripe boundaries in the radiation patterns;
b) detecting image patterns produced by reflection of the projected sequence of radiation patterns from the scene, wherein the image patterns comprise image boundaries coded in time according to the code;
c) processing the image patterns using the code to determine image positions of the image boundaries coded in time according to the code; and
d) computing range information for the scene using the image positions determined using the code.
-
Specification