Package org.opencv.structured_light
Class SinusoidalPattern
- java.lang.Object
 - 
- org.opencv.core.Algorithm
 - 
- org.opencv.structured_light.StructuredLightPattern
 - 
- org.opencv.structured_light.SinusoidalPattern
 
 
 
 
- 
public class SinusoidalPattern extends StructuredLightPattern
Class implementing Fourier transform profilometry (FTP) , phase-shifting profilometry (PSP) and Fourier-assisted phase-shifting profilometry (FAPS) based on CITE: faps. This class generates sinusoidal patterns that can be used with FTP, PSP and FAPS. 
- 
- 
Constructor Summary
Constructors Modifier Constructor Description protectedSinusoidalPattern(long addr) 
- 
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static SinusoidalPattern__fromPtr__(long addr)voidcomputeDataModulationTerm(java.util.List<Mat> patternImages, Mat dataModulationTerm, Mat shadowMask)compute the data modulation term.voidcomputePhaseMap(java.util.List<Mat> patternImages, Mat wrappedPhaseMap)Compute a wrapped phase map from sinusoidal patterns.voidcomputePhaseMap(java.util.List<Mat> patternImages, Mat wrappedPhaseMap, Mat shadowMask)Compute a wrapped phase map from sinusoidal patterns.voidcomputePhaseMap(java.util.List<Mat> patternImages, Mat wrappedPhaseMap, Mat shadowMask, Mat fundamental)Compute a wrapped phase map from sinusoidal patterns.static SinusoidalPatterncreate()Constructor.protected voidfinalize()voidfindProCamMatches(Mat projUnwrappedPhaseMap, Mat camUnwrappedPhaseMap, java.util.List<Mat> matches)Find correspondences between the two devices thanks to unwrapped phase maps.voidunwrapPhaseMap(java.util.List<Mat> wrappedPhaseMap, Mat unwrappedPhaseMap, Size camSize)Unwrap the wrapped phase map to remove phase ambiguities.voidunwrapPhaseMap(java.util.List<Mat> wrappedPhaseMap, Mat unwrappedPhaseMap, Size camSize, Mat shadowMask)Unwrap the wrapped phase map to remove phase ambiguities.- 
Methods inherited from class org.opencv.structured_light.StructuredLightPattern
generate 
- 
Methods inherited from class org.opencv.core.Algorithm
clear, empty, getDefaultName, getNativeObjAddr, save 
 - 
 
 - 
 
- 
- 
Method Detail
- 
__fromPtr__
public static SinusoidalPattern __fromPtr__(long addr)
 
- 
create
public static SinusoidalPattern create()
Constructor.- Returns:
 - automatically generated
 
 
- 
computeDataModulationTerm
public void computeDataModulationTerm(java.util.List<Mat> patternImages, Mat dataModulationTerm, Mat shadowMask)
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
public void computePhaseMap(java.util.List<Mat> patternImages, Mat wrappedPhaseMap, Mat shadowMask, Mat fundamental)
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.
 
- 
computePhaseMap
public void computePhaseMap(java.util.List<Mat> patternImages, Mat wrappedPhaseMap, Mat shadowMask)
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.
 
- 
computePhaseMap
public void computePhaseMap(java.util.List<Mat> patternImages, Mat wrappedPhaseMap)
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.
 
- 
findProCamMatches
public void findProCamMatches(Mat projUnwrappedPhaseMap, Mat camUnwrappedPhaseMap, java.util.List<Mat> matches)
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
public void unwrapPhaseMap(java.util.List<Mat> wrappedPhaseMap, Mat unwrappedPhaseMap, Size camSize, Mat shadowMask)
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.
 
- 
unwrapPhaseMap
public void unwrapPhaseMap(java.util.List<Mat> wrappedPhaseMap, Mat unwrappedPhaseMap, Size camSize)
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.
 
- 
finalize
protected void finalize() throws java.lang.Throwable- Overrides:
 finalizein classStructuredLightPattern- Throws:
 java.lang.Throwable
 
 - 
 
 -