[−][src]Trait opencv::structured_light::SinusoidalPattern
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.
Required methods
fn as_raw_SinusoidalPattern(&self) -> *mut c_void
Provided methods
fn compute_phase_map(
&mut self,
pattern_images: &dyn ToInputArray,
wrapped_phase_map: &mut dyn ToOutputArray,
shadow_mask: &mut dyn ToOutputArray,
fundamental: &dyn ToInputArray
) -> Result<()>
&mut self,
pattern_images: &dyn ToInputArray,
wrapped_phase_map: &mut dyn ToOutputArray,
shadow_mask: &mut dyn ToOutputArray,
fundamental: &dyn ToInputArray
) -> Result<()>
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.
C++ default parameters
- shadow_mask: noArray()
- fundamental: noArray()
fn unwrap_phase_map(
&mut self,
wrapped_phase_map: &dyn ToInputArray,
unwrapped_phase_map: &mut dyn ToOutputArray,
cam_size: Size,
shadow_mask: &dyn ToInputArray
) -> Result<()>
&mut self,
wrapped_phase_map: &dyn ToInputArray,
unwrapped_phase_map: &mut dyn ToOutputArray,
cam_size: Size,
shadow_mask: &dyn ToInputArray
) -> Result<()>
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.
C++ default parameters
- shadow_mask: noArray()
fn find_pro_cam_matches(
&mut self,
proj_unwrapped_phase_map: &dyn ToInputArray,
cam_unwrapped_phase_map: &dyn ToInputArray,
matches: &mut dyn ToOutputArray
) -> Result<()>
&mut self,
proj_unwrapped_phase_map: &dyn ToInputArray,
cam_unwrapped_phase_map: &dyn ToInputArray,
matches: &mut dyn ToOutputArray
) -> Result<()>
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.
fn compute_data_modulation_term(
&mut self,
pattern_images: &dyn ToInputArray,
data_modulation_term: &mut dyn ToOutputArray,
shadow_mask: &dyn ToInputArray
) -> Result<()>
&mut self,
pattern_images: &dyn ToInputArray,
data_modulation_term: &mut dyn ToOutputArray,
shadow_mask: &dyn ToInputArray
) -> Result<()>
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.
Methods
impl<'_> dyn SinusoidalPattern + '_
[src]
pub fn create(parameters: &PtrOfParams) -> Result<PtrOfSinusoidalPattern>
[src]
Constructor.
Parameters
- parameters: SinusoidalPattern parameters SinusoidalPattern::Params: width, height of the projector and patterns parameters.
C++ default parameters
- parameters: makePtrSinusoidalPattern::Params()