Depth camera system using coded structured light

US2016182889A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2016182889-A1
Application numberUS-201414577791-A
CountryUS
Kind codeA1
Filing dateDec 19, 2014
Priority dateDec 19, 2014
Publication dateJun 23, 2016
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Depth camera systems and methods of operation use coded structured light to determine depth values. One example method includes projecting a structured light pattern towards a target region. The structured light pattern includes a plurality of parallel bars that encode a plurality of codes. The method includes, for each of a plurality of rows of pixels that are transverse to the plurality of parallel bars: decoding the plurality of parallel bars represented in the row of pixels to identify a location of each of the plurality of codes in the row of pixels; determining a plurality of disparities respectively between the identified locations of the plurality of codes and a plurality of reference locations respectively associated with the plurality of codes; and determining a depth value for each identified location based at least in part on the determined disparity for such location.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method to determine depth values, the method comprising: projecting a structured light pattern towards a target region, the structured light pattern comprising a plurality of parallel bars that encode a plurality of codes; receiving an image of at least a portion of the target region, the image comprising a plurality of pixels representative of at least a portion of the structured light pattern; and for each of a plurality of rows of pixels that are transverse to the plurality of parallel bars: decoding the plurality of parallel bars represented in the row of pixels to identify a location of each of the plurality of codes in the row of pixels; determining a plurality of disparities respectively between the identified locations of the plurality of codes and a plurality of reference locations respectively associated with the plurality of codes; and determining a depth value for each identified location based at least in part on the determined disparity for such location. 2 . The method of claim 1 , further comprising: performing a spatial frequency modulation encoding with respect to a binary de Bruijn sequence of order n to obtain the structured light pattern, wherein n comprises a positive integer. 3 . The method of claim 2 wherein performing a spatial frequency modulation coding technique comprises transforming each bit of value 1 in the binary de Bruijn sequence into a lit element of a width E and a first dark element of the width E and transforming each bit of value 0 in the binary de Bruijn sequence into the lit element of the width E and a second dark element of width 3 E. 4 . The method of claim 2 wherein performing a spatial frequency modulation coding technique comprises performing the spatial frequency modulation coding technique with respect to the binary de Bruijn sequence of order 7 and comprising 128 unique, overlapping codes. 5 . The method of claim 1 wherein decoding the plurality of parallel bars to identify a location of each of the plurality of codes comprises determining a plurality of width values respectively between the plurality of parallel bars represented in the row of pixels and identifying the location of each of the plurality of codes in the row of pixels based at least in part on the plurality of width values. 6 . The method of claim 5 wherein determining a plurality of width values comprises identifying a plurality of pixel intensity value peaks that respectively correspond to centers of the plurality of parallel bars represented in the row of pixels and determining the plurality of width values respectively between the plurality of pixel intensity value peaks. 7 . The method of claim 6 wherein determining a plurality of pixel intensity value peaks comprises deblurring the image with a linear finite impulse response (FIR) deblurring equalizer and performing a peak finding scheme with respect to a plurality of pixel intensity values of the row of pixels. 8 . The method of claim 5 wherein identifying the location of each of the plurality of codes based at least in part on the plurality of width values comprises transforming the plurality of width values into a decoded binary sequence and identifying the location of each of the plurality of codes within the decoded binary sequence. 9 . The method of claim 8 wherein transforming the plurality of width values into a decoded binary sequence comprises generating a histogram based at least in part on the plurality of width values, determining a threshold width value based at least in part on the histogram, and classifying each of the plurality of width values as a 1 value, a 0 value, or an error based at least in part on the threshold width value. 10 . The method of claim 9 wherein generating a histogram based at least in part on the plurality of width values comprises generating the histogram based at least in part on the plurality of width values and the plurality of width values divided by 2. 11 . The method of claim 10 wherein determining a threshold width value comprises identifying a median value of the histogram and multiplying the median value times 1.5. 12 . The method of claim 9 wherein determining a threshold width value based at least in part on the histogram comprises generating a rolling threshold width value for each of the plurality of width values based on a moving window that spans two times a code length associated with the plurality of codes and wherein classifying each of the plurality of width values comprises classifying each of the plurality of width values as a 1 value, a 0 value, or an error based at least in part on the rolling threshold width value generated for such width value. 13 . The method of claim 8 wherein projecting a structured light pattern comprises projecting the structured light pattern comprising the plurality of parallel bars that encode a plurality of binary codes of bit length n and wherein identifying the location of each of the plurality of binary codes within the decoded binary sequence comprises identifying the location of a first bit of each of the plurality of codes in the decoded binary sequence. 14 . The method of claim 12 , further comprising, for each of the plurality of rows of pixels: determining that one or more of the identified locations of the plurality of codes are erroneous by comparing an observed sequential characteristic for each code to an expected sequential characteristic for each code. 15 . The method of claim 1 , further comprising: projecting the structured light pattern comprising the plurality of parallel bars toward a planar surface displaced at a known distance; receiving a reference image of the planar surface, the reference image comprising a second plurality of pixels; and storing, for at least one row of the second plurality of pixels of the reference image that is transverse to the plurality of parallel bars, a position of each of the plurality of codes within such row as the reference location of such code. 16 . A system comprising: at least one processor; and at least one non-transitory processor-readable medium that is communicatively coupled to the at least one processor and that stores at least one of processor-executable instructions and data that, when executed by the at least one processor, cause the system to: receive an image that depicts at least a portion of a target region illuminated with a coded structured light pattern, the coded structured light pattern comprising a plurality of parallel bars that encode a plurality of codes, the image comprising a plurality of pixels representative of at least a portion of the coded structured light pattern; and for each of a plurality of rows of pixels of the image that are transverse to the plurality of parallel bars: decode the plurality of parallel bars represented in the row of pixels to identify a location of each of the plurality of codes; determine a plurality of disparities respectively between the identified locations of the plurality of codes and a plurality of reference locations respectively associated with the plurality of codes; and determine a depth value for each identified location based at least in part on the determined disparity for such location. 17 . The system of claim 16 wherein the plurality of codes comprise a binary de Bruijn sequence of order n, wherein n comprises a positive integer. 18 . The system of claim 16 wherein the instructions that cause the system to decode the plurality of parallel bars represented in the row of pixels cause

Assignees

Inventors

Classifications

  • Encoding, multiplexing or demultiplexing different image signal components (for multi-view video sequence encoding H04N19/597) · CPC title

  • the unit being an image region, e.g. an object · CPC title

  • from laser ranging, e.g. using interferometry; from the projection of structured light · CPC title

  • Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder · CPC title

  • Electricity · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2016182889A1 cover?
Depth camera systems and methods of operation use coded structured light to determine depth values. One example method includes projecting a structured light pattern towards a target region. The structured light pattern includes a plurality of parallel bars that encode a plurality of codes. The method includes, for each of a plurality of rows of pixels that are transverse to the plurality of pa…
Who is the assignee on this patent?
Datalogic Adc Inc
What technology area does this patent fall under?
Primary CPC classification H04N13/0239. Mapped technology areas include Electricity.
When was this patent published?
Publication date Thu Jun 23 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).