1#ifndef _CHRONOPTICS_TOF_PROCESSING_CONFIG_HPP_
2#define _CHRONOPTICS_TOF_PROCESSING_CONFIG_HPP_
4#include <chronoptics/tof/processing_config.h>
6#include <chronoptics/tof/base.hpp>
13enum class FlyingShape {
20enum class MpSortMode {
26 ADAPTIVE_SHORT_V0 = 5,
27 ADAPTIVE_SHORT_V1 = 6,
33enum class BinningMode {
40enum class XyzDimension {
47class ProcessingConfig :
public detail::Base<tof_processing_config, tof_processing_config_delete> {
66 void write(StringView file_location)
const {
67 return tof_processing_config_write(this->ptr_, file_location, TOF_ERROR_HANDLER{});
74 return tof_processing_config_get_gpu(this->ptr_, TOF_ERROR_HANDLER{});
81 return tof_processing_config_set_gpu(this->ptr_, gpu, TOF_ERROR_HANDLER{});
88 return tof_processing_config_get_calibration_enabled(this->ptr_, TOF_ERROR_HANDLER{});
95 return tof_processing_config_set_calibration_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
102 return tof_processing_config_get_phase_unwrapping_enabled(this->ptr_, TOF_ERROR_HANDLER{});
109 return tof_processing_config_set_phase_unwrapping_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
116 return tof_processing_config_get_phase_unwrapping_max_offset(this->ptr_, TOF_ERROR_HANDLER{});
123 return tof_processing_config_set_phase_unwrapping_max_offset(this->ptr_, max_offset, TOF_ERROR_HANDLER{});
132 return tof_processing_config_get_basic_phase_unwrapping_enabled(this->ptr_, TOF_ERROR_HANDLER{});
141 return tof_processing_config_set_basic_phase_unwrapping_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
148 return tof_processing_config_get_basic_phase_unwrapping_max_offset(this->ptr_, TOF_ERROR_HANDLER{});
155 return tof_processing_config_set_basic_phase_unwrapping_max_offset(this->ptr_, offset, TOF_ERROR_HANDLER{});
162 return tof_processing_config_get_mpi_detect_enabled(this->ptr_, TOF_ERROR_HANDLER{});
169 return tof_processing_config_set_mpi_detect_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
176 return tof_processing_config_get_mpi_detect_aratio(this->ptr_, TOF_ERROR_HANDLER{});
183 return tof_processing_config_set_mpi_detect_aratio(this->ptr_, aratio, TOF_ERROR_HANDLER{});
190 return tof_processing_config_get_mpi_detect_phi_diff(this->ptr_, TOF_ERROR_HANDLER{});
197 return tof_processing_config_set_mpi_detect_phi_diff(this->ptr_, phi_diff, TOF_ERROR_HANDLER{});
204 return tof_processing_config_get_mixed_pixel_enabled(this->ptr_, TOF_ERROR_HANDLER{});
211 return tof_processing_config_set_mixed_pixel_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
218 return tof_processing_config_get_mixed_pixel_lut_file(this->ptr_, TOF_ERROR_HANDLER{});
225 return tof_processing_config_set_mixed_pixel_lut_file(this->ptr_, file_location, TOF_ERROR_HANDLER{});
232 return tof_processing_config_get_mixed_pixel_amp_min(this->ptr_, TOF_ERROR_HANDLER{});
239 return tof_processing_config_set_mixed_pixel_amp_min(this->ptr_, amp_min, TOF_ERROR_HANDLER{});
246 return static_cast<MpSortMode
>(tof_processing_config_get_mixed_pixel_sort_mode(this->ptr_, TOF_ERROR_HANDLER{}));
253 return tof_processing_config_set_mixed_pixel_sort_mode(this->ptr_,
static_cast<tof_mp_sort_mode
>(sort_mode), TOF_ERROR_HANDLER{});
260 return tof_processing_config_get_mixed_pixel_aratio(this->ptr_, TOF_ERROR_HANDLER{});
267 return tof_processing_config_set_mixed_pixel_aratio(this->ptr_, aratio, TOF_ERROR_HANDLER{});
274 return tof_processing_config_get_mixed_pixel_phi_diff(this->ptr_, TOF_ERROR_HANDLER{});
281 return tof_processing_config_set_mixed_pixel_phi_diff(this->ptr_, phi_diff, TOF_ERROR_HANDLER{});
288 return tof_processing_config_get_mixed_pixel_aggressor_threshold(this->ptr_, TOF_ERROR_HANDLER{});
295 return tof_processing_config_set_mixed_pixel_aggressor_threshold(this->ptr_, threshold, TOF_ERROR_HANDLER{});
303 return tof_processing_config_get_mixed_pixel_min_aggressor_size(this->ptr_, TOF_ERROR_HANDLER{});
311 return tof_processing_config_set_mixed_pixel_min_aggressor_size(this->ptr_, size, TOF_ERROR_HANDLER{});
318 return tof_processing_config_get_mixed_pixel_max_error_3f(this->ptr_, TOF_ERROR_HANDLER{});
325 return tof_processing_config_set_mixed_pixel_max_error_3f(this->ptr_, max_error_3f, TOF_ERROR_HANDLER{});
332 return tof_processing_config_get_mixed_pixel_adaptive_amp_max(this->ptr_, TOF_ERROR_HANDLER{});
339 return tof_processing_config_set_mixed_pixel_adaptive_amp_max(this->ptr_, adaptive_amp_max, TOF_ERROR_HANDLER{});
346 return tof_processing_config_get_mixed_pixel_adaptive_amp_min(this->ptr_, TOF_ERROR_HANDLER{});
353 return tof_processing_config_set_mixed_pixel_adaptive_amp_min(this->ptr_, adaptive_amp_min, TOF_ERROR_HANDLER{});
360 return tof_processing_config_get_mixed_pixel_aratio_min(this->ptr_, TOF_ERROR_HANDLER{});
367 return tof_processing_config_set_mixed_pixel_aratio_min(this->ptr_, aratio_min, TOF_ERROR_HANDLER{});
375 return tof_processing_config_get_mixed_pixel_aggressor_phi_offset(this->ptr_, TOF_ERROR_HANDLER{});
383 return tof_processing_config_set_mixed_pixel_aggressor_phi_offset(this->ptr_, aggressor_phi_offset, TOF_ERROR_HANDLER{});
392 return tof_processing_config_get_hdr_enabled(this->ptr_, TOF_ERROR_HANDLER{});
401 return tof_processing_config_set_hdr_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
409 return tof_processing_config_get_average_enabled(this->ptr_, TOF_ERROR_HANDLER{});
417 return tof_processing_config_set_average_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
424 return tof_processing_config_get_average_nframes(this->ptr_, TOF_ERROR_HANDLER{});
431 return tof_processing_config_set_average_nframes(this->ptr_, nframes, TOF_ERROR_HANDLER{});
440 return tof_processing_config_get_temporal_enabled(this->ptr_, TOF_ERROR_HANDLER{});
449 return tof_processing_config_set_temporal_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
456 return tof_processing_config_get_temporal_sigma(this->ptr_, TOF_ERROR_HANDLER{});
463 return tof_processing_config_set_temporal_sigma(this->ptr_, sigma, TOF_ERROR_HANDLER{});
471 return tof_processing_config_get_temporal_use_common(this->ptr_, TOF_ERROR_HANDLER{});
479 return tof_processing_config_set_temporal_use_common(this->ptr_, use_common, TOF_ERROR_HANDLER{});
486 return tof_processing_config_get_temporal_nframes(this->ptr_, TOF_ERROR_HANDLER{});
493 return tof_processing_config_set_temporal_nframes(this->ptr_, nframes, TOF_ERROR_HANDLER{});
501 return tof_processing_config_get_gaussian_enabled(this->ptr_, TOF_ERROR_HANDLER{});
509 return tof_processing_config_set_gaussian_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
516 return tof_processing_config_get_gaussian_size(this->ptr_, TOF_ERROR_HANDLER{});
523 return tof_processing_config_set_gaussian_size(this->ptr_, size, TOF_ERROR_HANDLER{});
530 return tof_processing_config_get_gaussian_sigma(this->ptr_, TOF_ERROR_HANDLER{});
537 return tof_processing_config_set_gaussian_sigma(this->ptr_, sigma, TOF_ERROR_HANDLER{});
545 return tof_processing_config_get_median_enabled(this->ptr_, TOF_ERROR_HANDLER{});
553 return tof_processing_config_set_median_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
560 return tof_processing_config_get_median_size(this->ptr_, TOF_ERROR_HANDLER{});
567 return tof_processing_config_set_median_size(this->ptr_, size, TOF_ERROR_HANDLER{});
576 return tof_processing_config_get_bilateral_enabled(this->ptr_, TOF_ERROR_HANDLER{});
585 return tof_processing_config_set_bilateral_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
592 return tof_processing_config_get_bilateral_size(this->ptr_, TOF_ERROR_HANDLER{});
599 return tof_processing_config_set_bilateral_size(this->ptr_, size, TOF_ERROR_HANDLER{});
606 return tof_processing_config_get_bilateral_sigma(this->ptr_, TOF_ERROR_HANDLER{});
613 return tof_processing_config_set_bilateral_sigma(this->ptr_, sigma, TOF_ERROR_HANDLER{});
620 return tof_processing_config_get_local_means_enabled(this->ptr_, TOF_ERROR_HANDLER{});
627 return tof_processing_config_set_local_means_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
634 return tof_processing_config_get_local_means_size(this->ptr_, TOF_ERROR_HANDLER{});
641 return tof_processing_config_set_local_means_size(this->ptr_, size, TOF_ERROR_HANDLER{});
648 return tof_processing_config_get_local_means_sigma(this->ptr_, TOF_ERROR_HANDLER{});
655 return tof_processing_config_set_local_means_sigma(this->ptr_, sigma, TOF_ERROR_HANDLER{});
663 return tof_processing_config_get_flying_enabled(this->ptr_, TOF_ERROR_HANDLER{});
671 return tof_processing_config_set_flying_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
678 return static_cast<FlyingShape
>(tof_processing_config_get_flying_shape(this->ptr_, TOF_ERROR_HANDLER{}));
685 return tof_processing_config_set_flying_shape(this->ptr_,
static_cast<tof_flying_shape
>(shape), TOF_ERROR_HANDLER{});
692 return tof_processing_config_get_flying_distance(this->ptr_, TOF_ERROR_HANDLER{});
699 return tof_processing_config_set_flying_distance(this->ptr_, distance, TOF_ERROR_HANDLER{});
706 return tof_processing_config_get_flying_edges(this->ptr_, TOF_ERROR_HANDLER{});
713 return tof_processing_config_set_flying_edges(this->ptr_, edges, TOF_ERROR_HANDLER{});
720 return tof_processing_config_get_flying_distance_scaled(this->ptr_, TOF_ERROR_HANDLER{});
727 return tof_processing_config_set_flying_distance_scaled(this->ptr_, scale, TOF_ERROR_HANDLER{});
735 return tof_processing_config_get_amp_threshold_enabled(this->ptr_, TOF_ERROR_HANDLER{});
743 return tof_processing_config_set_amp_threshold_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
750 return tof_processing_config_get_amp_threshold_min(this->ptr_, TOF_ERROR_HANDLER{});
757 return tof_processing_config_set_amp_threshold_min(this->ptr_, min, TOF_ERROR_HANDLER{});
764 return tof_processing_config_get_amp_threshold_max(this->ptr_, TOF_ERROR_HANDLER{});
771 return tof_processing_config_set_amp_threshold_max(this->ptr_, max, TOF_ERROR_HANDLER{});
779 return tof_processing_config_get_dist_threshold_enabled(this->ptr_, TOF_ERROR_HANDLER{});
787 return tof_processing_config_set_dist_threshold_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
794 return tof_processing_config_get_dist_threshold_min(this->ptr_, TOF_ERROR_HANDLER{});
801 return tof_processing_config_set_dist_threshold_min(this->ptr_, min, TOF_ERROR_HANDLER{});
808 return tof_processing_config_get_dist_threshold_max(this->ptr_, TOF_ERROR_HANDLER{});
815 return tof_processing_config_set_dist_threshold_max(this->ptr_, max, TOF_ERROR_HANDLER{});
825 return tof_processing_config_get_amp_dot_segment_enabled(this->ptr_, TOF_ERROR_HANDLER{});
835 return tof_processing_config_set_amp_dot_segment_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
842 return tof_processing_config_get_amp_dot_segment_threshold(this->ptr_, TOF_ERROR_HANDLER{});
849 return tof_processing_config_set_amp_dot_segment_threshold(this->ptr_, threshold, TOF_ERROR_HANDLER{});
856 return tof_processing_config_get_amp_dot_segment_midpoint(this->ptr_, TOF_ERROR_HANDLER{});
863 return tof_processing_config_set_amp_dot_segment_midpoint(this->ptr_, midpoint, TOF_ERROR_HANDLER{});
871 return tof_processing_config_get_amp_dot_segment_max_correction(this->ptr_, TOF_ERROR_HANDLER{});
879 return tof_processing_config_set_amp_dot_segment_max_correction(this->ptr_, correction, TOF_ERROR_HANDLER{});
890 return tof_processing_config_get_common_amp_ratio_enabled(this->ptr_, TOF_ERROR_HANDLER{});
901 return tof_processing_config_set_common_amp_ratio_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
908 return tof_processing_config_get_common_amp_ratio_threshold(this->ptr_, TOF_ERROR_HANDLER{});
915 return tof_processing_config_set_common_amp_ratio_threshold(this->ptr_, threshold, TOF_ERROR_HANDLER{});
923 return tof_processing_config_get_morph_erode_enabled(this->ptr_, TOF_ERROR_HANDLER{});
931 return tof_processing_config_set_morph_erode_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
938 return static_cast<FlyingShape
>(tof_processing_config_get_morph_erode_shape(this->ptr_, TOF_ERROR_HANDLER{}));
945 return tof_processing_config_set_morph_erode_shape(this->ptr_,
static_cast<tof_flying_shape
>(shape), TOF_ERROR_HANDLER{});
952 return tof_processing_config_get_radial_scale(this->ptr_, TOF_ERROR_HANDLER{});
959 return tof_processing_config_set_radial_scale(this->ptr_, scale, TOF_ERROR_HANDLER{});
966 return tof_processing_config_get_radial_add(this->ptr_, TOF_ERROR_HANDLER{});
973 return tof_processing_config_set_radial_add(this->ptr_, addition, TOF_ERROR_HANDLER{});
980 return tof_processing_config_get_intensity_scale(this->ptr_, TOF_ERROR_HANDLER{});
987 return tof_processing_config_set_intensity_scale(this->ptr_, scale, TOF_ERROR_HANDLER{});
994 return tof_processing_config_get_intensity_add(this->ptr_, TOF_ERROR_HANDLER{});
1001 return tof_processing_config_set_intensity_add(this->ptr_, addition, TOF_ERROR_HANDLER{});
1009 return tof_processing_config_get_char_add(this->ptr_, TOF_ERROR_HANDLER{});
1017 return tof_processing_config_set_char_add(this->ptr_, addition, TOF_ERROR_HANDLER{});
1025 return tof_processing_config_get_char_mult(this->ptr_, TOF_ERROR_HANDLER{});
1033 return tof_processing_config_set_char_mult(this->ptr_, multiplication, TOF_ERROR_HANDLER{});
1040 return tof_processing_config_get_binning_enabled(this->ptr_, TOF_ERROR_HANDLER{});
1047 return tof_processing_config_set_binning_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
1054 return tof_processing_config_get_binning_size(this->ptr_, TOF_ERROR_HANDLER{});
1061 return tof_processing_config_set_binning_size(this->ptr_, size, TOF_ERROR_HANDLER{});
1068 return static_cast<BinningMode
>(tof_processing_config_get_binning_mode(this->ptr_, TOF_ERROR_HANDLER{}));
1075 return tof_processing_config_set_binning_mode(this->ptr_,
static_cast<tof_binning_mode
>(mode), TOF_ERROR_HANDLER{});
1083 return tof_processing_config_get_binning_sigma(this->ptr_, TOF_ERROR_HANDLER{});
1091 return tof_processing_config_set_binning_sigma(this->ptr_, sigma, TOF_ERROR_HANDLER{});
1098 return static_cast<XyzDimension
>(tof_processing_config_get_xyz_dimension(this->ptr_, TOF_ERROR_HANDLER{}));
1105 return tof_processing_config_set_xyz_dimension(this->ptr_,
static_cast<tof_xyz_dimension
>(dimension), TOF_ERROR_HANDLER{});
1112 return tof_processing_config_get_rigid_transformation_enabled(this->ptr_, TOF_ERROR_HANDLER{});
1119 return tof_processing_config_set_rigid_transformation_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
1126 std::array<float, 16> array;
1127 auto data = tof_processing_config_get_rigid_transformation_matrix(this->ptr_, TOF_ERROR_HANDLER{});
1128 std::copy(data, data + array.size(), array.data());
1136 return tof_processing_config_set_rigid_transformation_matrix(this->ptr_, matrix.data(), TOF_ERROR_HANDLER{});
1143 return tof_processing_config_get_rad_dist_threshold_enabled(this->ptr_, TOF_ERROR_HANDLER{});
1150 return tof_processing_config_set_rad_dist_threshold_enabled(this->ptr_, enabled, TOF_ERROR_HANDLER{});
1157 return tof_processing_config_get_rad_dist_threshold_min(this->ptr_, TOF_ERROR_HANDLER{});
1164 return tof_processing_config_set_rad_dist_threshold_min(this->ptr_, min, TOF_ERROR_HANDLER{});
1171 return tof_processing_config_get_rad_dist_threshold_max(this->ptr_, TOF_ERROR_HANDLER{});
1178 return tof_processing_config_set_rad_dist_threshold_max(this->ptr_, max, TOF_ERROR_HANDLER{});
Processing that can be done.
void set_mixed_pixel_max_error_3f(double max_error_3f)
Set the maximum error when using three modulation frequencies.
float get_amp_dot_segment_midpoint() const
Get the distance after which amplitude is increased instead of decreased.
size_t get_average_nframes() const
Get the number of frames to average together.
void set_bilateral_size(size_t size)
Set the bilateral region size.
void set_mixed_pixel_enabled(bool enabled)
Set wether mixed pixel is enabled.
size_t get_flying_edges() const
Get the number of edges allowed to be larger than maximum distance.
double get_bilateral_sigma() const
Get the bilateral standard deviation.
void set_hdr_enabled(bool enabled)
Set whether hdr is enabled.
void set_basic_phase_unwrapping_max_offset(double offset)
Set the max radial offset between the two modulation frequencies.
void set_amp_dot_segment_midpoint(float midpoint)
Set the distance after which amplitude is increased instead of decreased.
bool get_phase_unwrapping_enabled() const
Get whether phase unwrapping is enabled.
void set_morph_erode_enabled(bool enabled)
Set whether the morph erode filter is enabled.
double get_mixed_pixel_adaptive_amp_min() const
Get the minimum amplitude for adaptive sorting.
bool get_hdr_enabled() const
Get whether hdr is enabled.
void set_rad_dist_threshold_max(double max)
Set the maximum radial distance.
void set_rigid_transformation_matrix(const std::array< float, 16 > &matrix)
Set the rigid transformation 4x4 matrix.
void set_temporal_nframes(size_t nframes)
Set the maximum number of frames to average together.
bool get_binning_enabled() const
Get whether software binning is enabled.
void set_amp_threshold_enabled(bool enabled)
Set whether the amplitude threshold filter is enabled.
bool get_mixed_pixel_enabled() const
Get wether mixed pixel is enabled.
float get_intensity_add() const
Get how much to add to the intensity value.
double get_mixed_pixel_aggressor_threshold() const
Get the threshold to classify a pixel as an aggressor.
bool get_gpu() const
Get whether processing on the gpu is enabled.
FlyingShape get_flying_shape() const
Get the shape of which surrounding pixels are checked.
bool get_morph_erode_enabled() const
Get whether the morph erode filter is enabled.
float get_radial_add() const
Get how much to add to the radial value.
double get_mixed_pixel_aratio_min() const
Get the minimum return amplitude ratio for adaptive sorting.
std::array< float, 16 > get_rigid_transformation_matrix() const
Get the rigid transformation 4x4 matrix.
void set_temporal_sigma(double sigma)
Set the number of standard deviations before resetting the running average.
double get_temporal_sigma() const
Get the number of standard deviations before resetting the running average.
void set_binning_sigma(float sigma)
Set The maximum standard deviation to use, only used in the smart binning mode.
void set_mixed_pixel_min_aggressor_size(int32_t size)
Set the minimum amount of bright pixels before a bright spot is classified as an aggressor.
void set_common_amp_ratio_threshold(float threshold)
Set the maximum allowed ratio.
bool get_local_means_enabled() const
Get Whether the local means filter is enabled.
void set_local_means_size(size_t size)
Set The local means region size.
void set_basic_phase_unwrapping_enabled(bool enabled)
Set whether basic phase unwrapping is enabled.
void set_temporal_use_common(bool use_common)
Set whether to use common data or amplitude data to determine noisiness of signal.
void set_gaussian_sigma(double sigma)
Set the gaussian sigma.
void set_average_nframes(size_t nframes)
Set the number of frames to average together.
ProcessingConfig()
Create default processing config.
float get_intensity_scale() const
Get how much to scale the intensity value by.
bool get_temporal_use_common() const
Get whether to use common data or amplitude data to determine noisiness of signal.
bool get_common_amp_ratio_enabled() const
Get whether the common amplitude ratio threshold filter is enabled.
double get_char_mult() const
Get the characterization multiplication component.
void set_binning_enabled(bool enabled)
Set whether software binning is enabled.
bool get_rigid_transformation_enabled() const
Get whether rigid transformation is enabled.
void set_mixed_pixel_sort_mode(MpSortMode sort_mode)
Set what output is selected.
float get_mpi_detect_aratio() const
Get The amplitude ratio value.
double get_gaussian_sigma() const
Get the gaussian sigma.
void set_mixed_pixel_aggressor_phi_offset(double aggressor_phi_offset)
Set The maximum phase difference before a return is not classified as aggressor.
void set_amp_dot_segment_max_correction(float correction)
Set the maximum amount of correction that can be performed on the distance component.
double get_mixed_pixel_aggressor_phi_offset() const
Get The maximum phase difference before a return is not classified as aggressor.
double get_mixed_pixel_adaptive_amp_max() const
Get the maximum amplitude for adaptive sorting.
double get_mixed_pixel_aratio() const
Get the amplitude ratio for detecting MPI.
void set_radial_add(float addition)
Set how much to add to the radial value.
size_t get_gaussian_size() const
Get the gaussian region size.
bool get_flying_enabled() const
Get whether flying pixel filter is enabled.
void set_amp_threshold_max(double max)
Set the maximum amplitude allowed.
void set_amp_dot_segment_threshold(float threshold)
Set the minimum corrected amplitude that is allowed.
void set_char_add(double addition)
Set the characterization addition component.
void set_flying_enabled(bool enabled)
Set whether flying pixel filter is enabled.
void set_char_mult(double multiplication)
Set the characterization multiplication component.
void set_flying_edges(size_t edges)
Set the number of edges allowed to be larger than maximum distance.
double get_phase_unwrapping_max_offset() const
Get The maximum distance between ideal location and actual.
void set_flying_distance(size_t distance)
Set the maximum distance allowed between surrounding pixels.
float get_amp_dot_segment_max_correction() const
Get the maximum amount of correction that can be performed on the distance component.
bool get_temporal_enabled() const
Get whether the temporal filter is enabled.
void set_mpi_detect_enabled(bool enabled)
Set wether mpi detect is enabled.
float get_common_amp_ratio_threshold() const
Get the maximum allowed ratio.
void set_binning_size(size_t size)
Set the size of the area to bin, 2 would bin a 2x2 area.
bool get_bilateral_enabled() const
Get whether the bilateral filter is enabled.
size_t get_local_means_size() const
Get The local means region size.
float get_binning_sigma() const
Get The maximum standard deviation to use, only used in the smart binning mode.
bool get_median_enabled() const
Get whether the median filter is enabled.
bool get_amp_threshold_enabled() const
Get whether the amplitude threshold filter is enabled.
float get_mpi_detect_phi_diff() const
Get the phase difference ratio.
void set_amp_threshold_min(double min)
Set the minimum amplitude allowed.
void set_median_enabled(bool enabled)
Set whether the median filter is enabled.
void set_mixed_pixel_aggressor_threshold(double threshold)
Set the threshold to classify a pixel as an aggressor.
void set_phase_unwrapping_enabled(bool enabled)
Set whether phase unwrapping is enabled.
FlyingShape get_morph_erode_shape() const
Get the shape of the neighboring pixels.
void set_rad_dist_threshold_enabled(bool enabled)
Set the radial distance threshold.
void set_rigid_transformation_enabled(bool enabled)
Set whether rigid transformation is enabled.
MpSortMode get_mixed_pixel_sort_mode() const
Get what output is selected.
BinningMode get_binning_mode() const
Get the binning mode to use.
void set_gaussian_size(size_t size)
Set the gaussian region size.
void set_amp_dot_segment_enabled(bool enabled)
Set whether the amplitude dot segmentation filter is enabled.
int32_t get_mixed_pixel_min_aggressor_size() const
Get the minimum amount of bright pixels before a bright spot is classified as an aggressor.
double get_mixed_pixel_max_error_3f() const
Get the maximum error when using three modulation frequencies.
void set_mixed_pixel_aratio_min(double aratio_min)
Set the minimum return amplitude ratio for adaptive sorting.
void set_local_means_sigma(double sigma)
Set The local means standard deviation for how close values are.
void write(StringView file_location) const
Write processing config to disk.
double get_rad_dist_threshold_min() const
Get the minimum radial distance.
void set_rad_dist_threshold_min(double min)
Set the minimum radial distance.
void set_intensity_scale(float scale)
Set how much to scale the intensity value by.
void set_mixed_pixel_phi_diff(double phi_diff)
Set the phase difference for detecting MPI.
bool get_calibration_enabled() const
Get whether the calibration is applied.
double get_rad_dist_threshold_max() const
Get the maximum radial distance.
float get_flying_distance_scaled() const
Get another distance threshold which is scaled by the radial distance.
void set_temporal_enabled(bool enabled)
Set whether the temporal filter is enabled.
bool get_rad_dist_threshold_enabled() const
Get the radial distance threshold.
void set_local_means_enabled(bool enabled)
Set Whether the local means filter is enabled.
size_t get_binning_size() const
Get the size of the area to bin, 2 would bin a 2x2 area.
void set_calibration_enabled(bool enabled)
Set whether the calibration is applied.
double get_mixed_pixel_amp_min() const
Get minimum amplitude that pixel needs to have to apply mixed pixel to it.
void set_xyz_dimension(XyzDimension dimension)
Set the dimension of the xyz output.
void set_common_amp_ratio_enabled(bool enabled)
Set whether the common amplitude ratio threshold filter is enabled.
bool get_average_enabled() const
Get whether averaging is enabled.
void set_radial_scale(float scale)
Set how much to scale the radial value by.
void set_mixed_pixel_amp_min(double amp_min)
Set minimum amplitude that pixel needs to have to apply mixed pixel to it.
void set_phase_unwrapping_max_offset(double max_offset)
Set The maximum distance between ideal location and actual.
void set_dist_threshold_enabled(bool enabled)
Set whether the distance threshold filter is enabled.
double get_dist_threshold_max() const
Get the maximum distance allowed.
void set_flying_distance_scaled(float scale)
Set another distance threshold which is scaled by the radial distance.
void set_morph_erode_shape(FlyingShape shape)
Set the shape of the neighboring pixels.
XyzDimension get_xyz_dimension() const
Get the dimension of the xyz output.
void set_mixed_pixel_adaptive_amp_max(double adaptive_amp_max)
Set the maximum amplitude for adaptive sorting.
bool get_gaussian_enabled() const
Get whether the gaussian blur is enabled.
float get_amp_dot_segment_threshold() const
Get the minimum corrected amplitude that is allowed.
size_t get_flying_distance() const
Get the maximum distance allowed between surrounding pixels.
bool get_mpi_detect_enabled() const
Get wether mpi detect is enabled.
const char * get_mixed_pixel_lut_file() const
Get location of the mixed pixel look up table file.
double get_basic_phase_unwrapping_max_offset() const
Get the max radial offset between the two modulation frequencies.
void set_mixed_pixel_aratio(double aratio)
Set the amplitude ratio for detecting MPI.
ProcessingConfig(StringView file_location)
Load processing config from disk.
bool get_dist_threshold_enabled() const
Get whether the distance threshold filter is enabled.
void set_dist_threshold_min(double min)
Set the minimum distance allowed.
double get_amp_threshold_max() const
Get the maximum amplitude allowed.
bool get_amp_dot_segment_enabled() const
Get whether the amplitude dot segmentation filter is enabled.
void set_mpi_detect_aratio(float aratio)
Set The amplitude ratio value.
double get_local_means_sigma() const
Get The local means standard deviation for how close values are.
void set_median_size(size_t size)
Set the median region size.
void set_mixed_pixel_adaptive_amp_min(double adaptive_amp_min)
Set the minimum amplitude for adaptive sorting.
void set_mpi_detect_phi_diff(float phi_diff)
Set the phase difference ratio.
void set_mixed_pixel_lut_file(StringView file_location)
Set location of the mixed pixel look up table file.
void set_intensity_add(float addition)
Set how much to add to the intensity value.
void set_gpu(bool gpu)
Set whether processing on the gpu is enabled.
void set_dist_threshold_max(double max)
Set the maximum distance allowed.
void set_flying_shape(FlyingShape shape)
Set the shape of which surrounding pixels are checked.
ProcessingConfig(tof_processing_config_t ptr)
Construct from pointer.
double get_amp_threshold_min() const
Get the minimum amplitude allowed.
void set_binning_mode(BinningMode mode)
Set the binning mode to use.
void set_average_enabled(bool enabled)
Set whether averaging is enabled.
bool get_basic_phase_unwrapping_enabled() const
Get whether basic phase unwrapping is enabled.
void set_bilateral_enabled(bool enabled)
Set whether the bilateral filter is enabled.
double get_mixed_pixel_phi_diff() const
Get the phase difference for detecting MPI.
float get_radial_scale() const
Get how much to scale the radial value by.
double get_char_add() const
Get the characterization addition component.
void set_bilateral_sigma(double sigma)
Set the bilateral standard deviation.
size_t get_median_size() const
Get the median region size.
void set_gaussian_enabled(bool enabled)
Set whether the gaussian blur is enabled.
double get_dist_threshold_min() const
Get the minimum distance allowed.
size_t get_temporal_nframes() const
Get the maximum number of frames to average together.
size_t get_bilateral_size() const
Get the bilateral region size.