Local adaptive histogram equalization
US-2015371387-A1 · Dec 24, 2015 · US
US2016182889A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2016182889-A1 |
| Application number | US-201414577791-A |
| Country | US |
| Kind code | A1 |
| Filing date | Dec 19, 2014 |
| Priority date | Dec 19, 2014 |
| Publication date | Jun 23, 2016 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
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.
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
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
Related publications grouped by family.
Answers are generated from the same data shown on this page.