Systems and methods for error correction in structured light
First Claim
1. A method of generating a digital representation of a scene, the method comprising:
- receiving at a sensor a structured light image of a plurality of encoded codewords, the plurality of encoded codewords including an invalid codeword;
detecting, using a processor, the invalid codeword by determining whether each encoded codeword in the structured light image corresponds to a code in a codebook stored in memory, the codebook comprising a list of valid codes;
generating, using the processor, candidate codewords based on the invalid codeword;
selecting, using the processor, one of the candidate codewords to replace the invalid codeword, wherein said selecting one of the candidate codewords comprisesselecting from the generated candidate codewords a subset of candidate codewords, each candidate codeword in the subset being the same as one of the plurality of encoded codewords,determining a similarity between each candidate codeword in the subset and codewords within a local neighborhood around the invalid codeword; and
selecting the candidate codeword in the subset most similar to the local neighborhood to replace the invalid codeword;
generating, using the processor, a depth map for an image of the scene based on the selected candidate codeword;
generating, using the processor, a digital representation of a scene based on the depth map; and
outputting the digital representation of the scene to an output device.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for error correction in structured light are disclosed. In one aspect, a method includes receiving, via a receiver sensor, a structured light image of at least a portion of a composite code mask encoding a plurality of codewords, the image including an invalid codeword. The method further includes detecting the invalid codeword. The method further includes generating a plurality of candidate codewords based on the invalid codeword. The method further includes selecting one of the plurality of candidate codewords to replace the invalid codeword. The method further includes generating a depth map for an image of the scene based on the selected candidate codeword. The method further includes generating a digital representation of a scene based on the depth map. The method further includes outputting the digital representation of the scene to an output device.
69 Citations
23 Claims
-
1. A method of generating a digital representation of a scene, the method comprising:
-
receiving at a sensor a structured light image of a plurality of encoded codewords, the plurality of encoded codewords including an invalid codeword; detecting, using a processor, the invalid codeword by determining whether each encoded codeword in the structured light image corresponds to a code in a codebook stored in memory, the codebook comprising a list of valid codes; generating, using the processor, candidate codewords based on the invalid codeword; selecting, using the processor, one of the candidate codewords to replace the invalid codeword, wherein said selecting one of the candidate codewords comprises selecting from the generated candidate codewords a subset of candidate codewords, each candidate codeword in the subset being the same as one of the plurality of encoded codewords, determining a similarity between each candidate codeword in the subset and codewords within a local neighborhood around the invalid codeword; and selecting the candidate codeword in the subset most similar to the local neighborhood to replace the invalid codeword; generating, using the processor, a depth map for an image of the scene based on the selected candidate codeword; generating, using the processor, a digital representation of a scene based on the depth map; and outputting the digital representation of the scene to an output device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. An apparatus for generating a digital representation of a scene, comprising:
-
a receiver sensor configured to receive a structured light image of a plurality of encoded codewords, the plurality of encoded codewords including an invalid codeword; and a processing circuit in communication with the receiver sensor, the processing circuit configured to detect the invalid codeword by determining whether each encoded codeword in the structured light image corresponds to a code in a codebook stored in memory, the codebook comprising a list of valid codes, generate candidate codewords based on the invalid codeword, select one of the candidate codewords to replace the invalid codeword, wherein said select one of the candidate codewords comprises; selecting a subset of candidate codewords, each candidate codeword in the subset being the same as one of the plurality of encoded codewords, determining a similarity between each candidate codeword in the subset and codewords within a local neighborhood around the invalid codeword, and selecting the candidate codeword in the subset most similar to the local neighborhood to replace the invalid codeword, generate a depth map for an image of the scene based on the selected candidate codeword, generate a digital representation of a scene based on the depth map, and output the digital representation of the scene to an output device. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. An apparatus for generating a digital representation of a scene, comprising:
-
means for receiving a structured light image of a plurality of encoded codewords, the plurality of encoded codewords including an invalid codeword; means for detecting the invalid codeword comprising means for determining whether each encoded codeword in the structured light image corresponds to a code in a codebook, the codebook comprising a list of valid codes; means for generating candidate codewords based on the invalid codeword; means for selecting one of the candidate codewords to replace the invalid codeword, wherein said means for selecting one of the candidate codewords to replace the invalid codeword comprises means for selecting from the generated candidate codewords a subset of candidate codewords, each candidate codeword in the subset being the same as one of the plurality of encoded codewords, means for determining a similarity between each candidate codeword in the subset and codewords within a local neighborhood around the invalid codeword, and means for selecting the candidate codeword in the subset most similar to the local neighborhood to replace the invalid codeword; means for generating a depth map for an image of the scene based on the selected candidate codeword; means for generating a digital representation of a scene based on the depth map; and means for outputting the digital representation of the scene to an output device. - View Dependent Claims (18, 19, 20, 21)
-
-
22. A non-transitory computer-readable medium storing instructions for generating a digital representation of a scene, the instructions that, when executed, perform a method comprising:
-
receiving, via a receiver sensor, a structured light image of a plurality of encoded codewords, the plurality of encoded codewords including an invalid codeword; detecting the invalid codeword, wherein detecting the invalid codeword comprises determining whether each encoded codeword in the structured light image corresponds to a code in a codebook, the codebook comprising a list of valid codes; generating candidate codewords based on the invalid codeword; selecting one of the candidate codewords to replace the invalid codeword, wherein said selecting one of the candidate codewords to replace the invalid codeword comprises selecting a subset of candidate codewords, each candidate codeword in the subset being the same as one of the encoded codewords, determining a similarity between each candidate codeword in the subset and codewords within a local neighborhood around the invalid codeword, and selecting the candidate codeword most similar to the local neighborhood to replace the invalid codeword; generating a depth map for an image of the scene based on the selected candidate codeword; generating a digital representation of a scene based on the depth map; and outputting the digital representation of the scene to an output device. - View Dependent Claims (23)
-
Specification