OpenCV  3.4.20-dev
Open Source Computer Vision
Classes | Enumerations
Structured Light API

Classes

class  cv::structured_light::GrayCodePattern
 Class implementing the Gray-code pattern, based on [102]. More...
 
class  cv::structured_light::SinusoidalPattern
 Class implementing Fourier transform profilometry (FTP) , phase-shifting profilometry (PSP) and Fourier-assisted phase-shifting profilometry (FAPS) based on [49]. More...
 
class  cv::structured_light::StructuredLightPattern
 Abstract base class for generating and decoding structured light patterns. More...
 

Enumerations

enum  {
  cv::structured_light::FTP = 0,
  cv::structured_light::PSP = 1,
  cv::structured_light::FAPS = 2
}
 Type of sinusoidal pattern profilometry methods. More...
 
enum  { cv::structured_light::DECODE_3D_UNDERWORLD = 0 }
 Type of the decoding algorithm. More...
 

Detailed Description

Structured light is considered one of the most effective techniques to acquire 3D models. This technique is based on projecting a light pattern and capturing the illuminated scene from one or more points of view. Since the pattern is coded, correspondences between image points and points of the projected pattern can be quickly found and 3D information easily retrieved.

One of the most commonly exploited coding strategies is based on trmatime-multiplexing. In this case, a set of patterns are successively projected onto the measuring surface. The codeword for a given pixel is usually formed by the sequence of illuminance values for that pixel across the projected patterns. Thus, the codification is called temporal because the bits of the codewords are multiplexed in time [190] .

In this module a time-multiplexing coding strategy based on Gray encoding is implemented following the (stereo) approach described in 3DUNDERWORLD algorithm [102] . For more details, see Structured Light tutorials.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

#include <opencv2/structured_light/sinusoidalpattern.hpp>

Type of sinusoidal pattern profilometry methods.

Enumerator
FTP 
Python: cv.structured_light.FTP
PSP 
Python: cv.structured_light.PSP
FAPS 
Python: cv.structured_light.FAPS

◆ anonymous enum

anonymous enum

#include <opencv2/structured_light/structured_light.hpp>

Type of the decoding algorithm.

Enumerator
DECODE_3D_UNDERWORLD 
Python: cv.structured_light.DECODE_3D_UNDERWORLD

Kyriakos Herakleous, Charalambos Poullis. "3DUNDERWORLD-SLS: An Open-Source Structured-Light Scanning System for Rapid Geometry Acquisition", arXiv preprint arXiv:1406.6595 (2014).