Loading...
Searching...
No Matches
cv::structured_light::SinusoidalPattern Class Referenceabstract
Class implementing Fourier transform profilometry (FTP) , phase-shifting profilometry (PSP) and Fourier-assisted phase-shifting profilometry (FAPS) based on [faps]. More...
#include <opencv2/structured_light/sinusoidalpattern.hpp>
Inheritance diagram for cv::structured_light::SinusoidalPattern:
Classes | |
struct | Params |
Parameters of SinusoidalPattern constructor. More... | |
Public Member Functions | |
virtual void | computeDataModulationTerm (InputArrayOfArrays patternImages, OutputArray dataModulationTerm, InputArray shadowMask)=0 |
compute the data modulation term. | |
virtual void | computePhaseMap (InputArrayOfArrays patternImages, OutputArray wrappedPhaseMap, OutputArray shadowMask=noArray(), InputArray fundamental=noArray())=0 |
Compute a wrapped phase map from sinusoidal patterns. | |
virtual void | findProCamMatches (InputArray projUnwrappedPhaseMap, InputArray camUnwrappedPhaseMap, OutputArrayOfArrays matches)=0 |
Find correspondences between the two devices thanks to unwrapped phase maps. | |
virtual void | unwrapPhaseMap (InputArray wrappedPhaseMap, OutputArray unwrappedPhaseMap, cv::Size camSize, InputArray shadowMask=noArray())=0 |
Unwrap the wrapped phase map to remove phase ambiguities. | |
Public Member Functions inherited from cv::structured_light::StructuredLightPattern | |
virtual bool | decode (const std::vector< std::vector< Mat > > &patternImages, OutputArray disparityMap, InputArrayOfArrays blackImages=noArray(), InputArrayOfArrays whiteImages=noArray(), int flags=DECODE_3D_UNDERWORLD) const =0 |
Decodes the structured light pattern, generating a disparity map. | |
virtual bool | generate (OutputArrayOfArrays patternImages)=0 |
Generates the structured light pattern to project. | |
Public Member Functions inherited from cv::Algorithm | |
Algorithm () | |
virtual | ~Algorithm () |
virtual void | clear () |
Clears the algorithm state. | |
virtual bool | empty () const |
Returns true if the Algorithm is empty (e.g. in the very beginning or after unsuccessful read. | |
virtual String | getDefaultName () const |
virtual void | read (const FileNode &fn) |
Reads algorithm parameters from a file storage. | |
virtual void | save (const String &filename) const |
void | write (const Ptr< FileStorage > &fs, const String &name=String()) const |
virtual void | write (FileStorage &fs) const |
Stores algorithm parameters in a file storage. | |
void | write (FileStorage &fs, const String &name) const |
Static Public Member Functions | |
static Ptr< SinusoidalPattern > | create (Ptr< SinusoidalPattern::Params > parameters=makePtr< SinusoidalPattern::Params >()) |
Constructor. | |
Static Public Member Functions inherited from cv::Algorithm | |
template<typename _Tp > | |
static Ptr< _Tp > | load (const String &filename, const String &objname=String()) |
Loads algorithm from the file. | |
template<typename _Tp > | |
static Ptr< _Tp > | loadFromString (const String &strModel, const String &objname=String()) |
Loads algorithm from a String. | |
template<typename _Tp > | |
static Ptr< _Tp > | read (const FileNode &fn) |
Reads algorithm from the file node. | |
Additional Inherited Members | |
Protected Member Functions inherited from cv::Algorithm | |
void | writeFormat (FileStorage &fs) const |
Detailed Description
Class implementing Fourier transform profilometry (FTP) , phase-shifting profilometry (PSP) and Fourier-assisted phase-shifting profilometry (FAPS) based on [faps].
This class generates sinusoidal patterns that can be used with FTP, PSP and FAPS.
Member Function Documentation
◆ computeDataModulationTerm()
|
pure virtual |
compute the data modulation term.
- Parameters
-
patternImages captured images with projected patterns. dataModulationTerm Mat where the data modulation term is saved. shadowMask Mask used to discard shadow regions.
◆ computePhaseMap()
|
pure virtual |
Compute a wrapped phase map from sinusoidal patterns.
- Parameters
-
patternImages Input data to compute the wrapped phase map. wrappedPhaseMap Wrapped phase map obtained through one of the three methods. shadowMask Mask used to discard shadow regions. fundamental Fundamental matrix used to compute epipolar lines and ease the matching step.
◆ create()
|
static |
Constructor.
- Parameters
-
parameters SinusoidalPattern parameters SinusoidalPattern::Params: width, height of the projector and patterns parameters.
◆ findProCamMatches()
|
pure virtual |
Find correspondences between the two devices thanks to unwrapped phase maps.
- Parameters
-
projUnwrappedPhaseMap Projector's unwrapped phase map. camUnwrappedPhaseMap Camera's unwrapped phase map. matches Images used to display correspondences map.
◆ unwrapPhaseMap()
|
pure virtual |
Unwrap the wrapped phase map to remove phase ambiguities.
- Parameters
-
wrappedPhaseMap The wrapped phase map computed from the pattern. unwrappedPhaseMap The unwrapped phase map used to find correspondences between the two devices. camSize Resolution of the camera. shadowMask Mask used to discard shadow regions.
The documentation for this class was generated from the following file:
- opencv2/structured_light/sinusoidalpattern.hpp