CPPxDIC
C++ Digital Image Correlation library for fingertip 3D reconstruction
Loading...
Searching...
No Matches
Config Class Reference

#include <config.h>

Public Member Functions

 Config ()
 Configuration implementation for CPPXDIC.
 
void updateVariables ()
 
bool loadFromDicParamsFile (const std::string &filepath="dic_params.txt")
 
bool loadFromNcorrParamsFile (const std::string &filepath="ncorr_params.txt")
 
bool loadFromVisualizationParamsFile (const std::string &filepath="visualization_params.txt")
 
bool loadFromConfigFile (const std::string &filepath="config/default.cfg")
 Load a single unified config file (the middle tier of the override chain).
 
void overrideSubject (const std::string &subject)
 
void overrideRefTrial (int trial)
 

Public Attributes

std::vector< std::string > frictional_conditions = {"glass", "coating", "coating_oil"}
 
int num_pair = 2
 
std::vector< std::pair< int, int > > camera_pairs = {{1, 2}, {4, 3}}
 
int mirrored_num_pair = 7
 
std::vector< int > mirrored_cam_order = {2, 1, 4, 3}
 
double robot_sample_freq = 1000.0
 
double vid_sample_freq = 50.0
 
std::string base_path = "/Users/jaoga/devlab/MultiDIC"
 
std::string data_path
 
std::string dic_path
 
bool im_filter_mode = true
 
bool im_saturation_mode = true
 
bool force_frame_window = false
 
bool automatic_process = true
 
bool parallel_processing = true
 
std::string subject_id = "S09"
 
std::string phase_id = "loading"
 
int material_id = 2
 
std::vector< int > nfcond_set = {5}
 
std::vector< double > spddxlcond_set = {0.04, 0.08}
 
std::string calib_folder_set = "2"
 
int ref_trial_id = 5
 
int idx_frame_start = 10
 
int idx_frame_end = 150
 
int frame_jump = 1
 
bool showvisu = false
 
bool debug_mode = false
 
std::string log_level = ""
 
std::string log_file = ""
 
bool mapLogic = true
 
std::vector< std::string > plotopt = {"Epc1", "Epc2"}
 
std::string deftype = "both"
 
std::string viewplot
 
bool contactAreaLogic = false
 
bool gapLogic = true
 
double maxCorrCoeff = 10.0
 
std::string format = "small"
 
bool smoothTimeLogic = true
 
double filterFreq = 5.0
 
bool smoothSpaceLogic = true
 
int smoothPar_n = 30
 
double smoothPar_sigma = 2.0
 
bool showRobotLogic = true
 
bool showImgLogic = false
 
int camNbr = 0
 
bool tracesLogic = false
 
double FaceAlpha = 1.0
 
std::string lineColor = "none"
 
double quiverScaleFactor = 20.0
 
std::string export_format = "vtk"
 
bool export_each_frame = false
 
std::vector< int > export_frame_list
 
std::string fileversion = "v2"
 
double units_per_pixel = 0.2
 
int subregion_radius = 20
 
int limit_grayscale = 0
 
StepConfig step_d
 
StepConfig step_e
 
StepConfig step_f
 
std::string step_e_stitch_mode = "geometric"
 
bool step_e_ray_bvh = false
 
bool step_e_distortion_removal
 
bool step_d_replacebadcorr
 
bool step_f_temporal_filtering = true
 
double step_f_freq_filt = 10.0
 
bool step_f_compute_rbm = false
 
std::string data_format = "mat"
 
int ncorr_scalefactor = 3
 
std::string ncorr_interp = "quintic_bspline_precompute"
 
std::string ncorr_subregion = "circle"
 
std::string ncorr_dic_config = "no_update"
 
bool ncorr_no_update = true
 
int ncorr_fixed_step_ref = 0
 
double ncorr_cutoff_corrcoef = 10.0
 
std::string ncorr_roi_update_mode = "none"
 
std::string ncorr_accumulation_mode = "none"
 
bool ncorr_save_disps_steps = false
 
bool ncorr_perspective_interp = false
 
std::string ncorr_units = "mm"
 
bool ncorr_seeds_are_optimized = false
 
double ncorr_cutoff_max_diffnorm = 0.1
 
double ncorr_cutoff_max_corrcoef = 0.5
 
double ncorr_matching_cutoff_max_corrcoef = 1.0
 
int ncorr_threads = 4
 
bool ncorr_use_exact_matlab
 
std::string dic_engine = "cuncorr"
 
int cuncorr_seed_search = 15
 
std::string vtk_format = "ascii"
 
bool vtk_include_scalars = true
 
bool vtk_include_vectors = true
 
std::string ply_format = "ascii"
 
bool ply_include_colors = true
 
std::string csv_delimiter = ","
 
bool csv_include_header = true
 
bool generate_videos = false
 
int video_fps = 10
 
std::string video_codec = "MJPG"
 
int video_quality = 90
 
double video_alpha = 1.0
 
std::string colormap = "jet"
 
std::string colormap_range_mode = "auto"
 
double colormap_min = 0.0
 
double colormap_max = 1.0
 
int colormap_levels = 256
 
bool generate_summary_stats = true
 
std::string stats_format = "txt"
 
bool stats_per_frame = true
 
bool stats_spatial = true
 
bool stats_temporal = true
 
double mesh_decimation = 1.0
 
bool mesh_smoothing = false
 
int mesh_smoothing_iterations = 10
 
bool show_axes = true
 
bool show_colorbar = true
 
bool show_grid = false
 
std::string background_color = "white"
 
std::string material
 

Detailed Description

Definition at line 30 of file config.h.

Constructor & Destructor Documentation

◆ Config()

Config::Config ( )

Configuration implementation for CPPXDIC.

Definition at line 13 of file config.cpp.

Member Function Documentation

◆ loadFromConfigFile()

bool Config::loadFromConfigFile ( const std::string &  filepath = "config/default.cfg")

Load a single unified config file (the middle tier of the override chain).

Implements the config-file tier of the three-tier override chain (CLI args > config file > compiled defaults). The file uses the same INI-style key = value format as dic_params.txt / ncorr_params.txt / visualization_params.txt (see config/default.cfg). All DIC, NCorr and visualization keys may appear in one file; unknown keys are ignored. Values override the compiled defaults; any field absent from the file keeps its compiled default.

Parameters
filepathPath to the unified config file (e.g. config/default.cfg).
Returns
true if the file existed and was read, false otherwise.

Definition at line 607 of file config.cpp.

◆ loadFromDicParamsFile()

bool Config::loadFromDicParamsFile ( const std::string &  filepath = "dic_params.txt")

Definition at line 124 of file config.cpp.

◆ loadFromNcorrParamsFile()

bool Config::loadFromNcorrParamsFile ( const std::string &  filepath = "ncorr_params.txt")

Definition at line 345 of file config.cpp.

◆ loadFromVisualizationParamsFile()

bool Config::loadFromVisualizationParamsFile ( const std::string &  filepath = "visualization_params.txt")

Definition at line 426 of file config.cpp.

◆ overrideRefTrial()

void Config::overrideRefTrial ( int  trial)

Definition at line 628 of file config.cpp.

◆ overrideSubject()

void Config::overrideSubject ( const std::string &  subject)

Definition at line 622 of file config.cpp.

◆ updateVariables()

void Config::updateVariables ( )

Definition at line 18 of file config.cpp.

Member Data Documentation

◆ automatic_process

bool Config::automatic_process = true

Definition at line 61 of file config.h.

◆ background_color

std::string Config::background_color = "white"

Definition at line 255 of file config.h.

◆ base_path

std::string Config::base_path = "/Users/jaoga/devlab/MultiDIC"

Definition at line 46 of file config.h.

◆ calib_folder_set

std::string Config::calib_folder_set = "2"

Definition at line 72 of file config.h.

◆ camera_pairs

std::vector<std::pair<int, int> > Config::camera_pairs = {{1, 2}, {4, 3}}

Definition at line 37 of file config.h.

◆ camNbr

int Config::camNbr = 0

Definition at line 111 of file config.h.

◆ colormap

std::string Config::colormap = "jet"

Definition at line 235 of file config.h.

◆ colormap_levels

int Config::colormap_levels = 256

Definition at line 239 of file config.h.

◆ colormap_max

double Config::colormap_max = 1.0

Definition at line 238 of file config.h.

◆ colormap_min

double Config::colormap_min = 0.0

Definition at line 237 of file config.h.

◆ colormap_range_mode

std::string Config::colormap_range_mode = "auto"

Definition at line 236 of file config.h.

◆ contactAreaLogic

bool Config::contactAreaLogic = false

Definition at line 96 of file config.h.

◆ csv_delimiter

std::string Config::csv_delimiter = ","

Definition at line 224 of file config.h.

◆ csv_include_header

bool Config::csv_include_header = true

Definition at line 225 of file config.h.

◆ cuncorr_seed_search

int Config::cuncorr_seed_search = 15

Definition at line 212 of file config.h.

◆ data_format

std::string Config::data_format = "mat"

Definition at line 168 of file config.h.

◆ data_path

std::string Config::data_path

Definition at line 47 of file config.h.

◆ debug_mode

bool Config::debug_mode = false

Definition at line 84 of file config.h.

◆ deftype

std::string Config::deftype = "both"

Definition at line 93 of file config.h.

◆ dic_engine

std::string Config::dic_engine = "cuncorr"

Definition at line 211 of file config.h.

◆ dic_path

std::string Config::dic_path

Definition at line 48 of file config.h.

◆ export_each_frame

bool Config::export_each_frame = false

Definition at line 121 of file config.h.

◆ export_format

std::string Config::export_format = "vtk"

Definition at line 120 of file config.h.

◆ export_frame_list

std::vector<int> Config::export_frame_list

Definition at line 122 of file config.h.

◆ FaceAlpha

double Config::FaceAlpha = 1.0

Definition at line 115 of file config.h.

◆ fileversion

std::string Config::fileversion = "v2"

Definition at line 125 of file config.h.

◆ filterFreq

double Config::filterFreq = 5.0

Definition at line 103 of file config.h.

◆ force_frame_window

bool Config::force_frame_window = false

Definition at line 60 of file config.h.

◆ format

std::string Config::format = "small"

Definition at line 99 of file config.h.

◆ frame_jump

int Config::frame_jump = 1

Definition at line 80 of file config.h.

◆ frictional_conditions

std::vector<std::string> Config::frictional_conditions = {"glass", "coating", "coating_oil"}

Definition at line 33 of file config.h.

◆ gapLogic

bool Config::gapLogic = true

Definition at line 97 of file config.h.

◆ generate_summary_stats

bool Config::generate_summary_stats = true

Definition at line 242 of file config.h.

◆ generate_videos

bool Config::generate_videos = false

Definition at line 228 of file config.h.

◆ idx_frame_end

int Config::idx_frame_end = 150

Definition at line 79 of file config.h.

◆ idx_frame_start

int Config::idx_frame_start = 10

Definition at line 78 of file config.h.

◆ im_filter_mode

bool Config::im_filter_mode = true

Definition at line 51 of file config.h.

◆ im_saturation_mode

bool Config::im_saturation_mode = true

Definition at line 56 of file config.h.

◆ limit_grayscale

int Config::limit_grayscale = 0

Definition at line 135 of file config.h.

◆ lineColor

std::string Config::lineColor = "none"

Definition at line 116 of file config.h.

◆ log_file

std::string Config::log_file = ""

Definition at line 88 of file config.h.

◆ log_level

std::string Config::log_level = ""

Definition at line 87 of file config.h.

◆ mapLogic

bool Config::mapLogic = true

Definition at line 91 of file config.h.

◆ material

std::string Config::material

Definition at line 258 of file config.h.

◆ material_id

int Config::material_id = 2

Definition at line 67 of file config.h.

◆ maxCorrCoeff

double Config::maxCorrCoeff = 10.0

Definition at line 98 of file config.h.

◆ mesh_decimation

double Config::mesh_decimation = 1.0

Definition at line 249 of file config.h.

◆ mesh_smoothing

bool Config::mesh_smoothing = false

Definition at line 250 of file config.h.

◆ mesh_smoothing_iterations

int Config::mesh_smoothing_iterations = 10

Definition at line 251 of file config.h.

◆ mirrored_cam_order

std::vector<int> Config::mirrored_cam_order = {2, 1, 4, 3}

Definition at line 41 of file config.h.

◆ mirrored_num_pair

int Config::mirrored_num_pair = 7

Definition at line 40 of file config.h.

◆ ncorr_accumulation_mode

std::string Config::ncorr_accumulation_mode = "none"

Definition at line 183 of file config.h.

◆ ncorr_cutoff_corrcoef

double Config::ncorr_cutoff_corrcoef = 10.0

Definition at line 181 of file config.h.

◆ ncorr_cutoff_max_corrcoef

double Config::ncorr_cutoff_max_corrcoef = 0.5

Definition at line 197 of file config.h.

◆ ncorr_cutoff_max_diffnorm

double Config::ncorr_cutoff_max_diffnorm = 0.1

Definition at line 196 of file config.h.

◆ ncorr_dic_config

std::string Config::ncorr_dic_config = "no_update"

Definition at line 174 of file config.h.

◆ ncorr_fixed_step_ref

int Config::ncorr_fixed_step_ref = 0

Definition at line 179 of file config.h.

◆ ncorr_interp

std::string Config::ncorr_interp = "quintic_bspline_precompute"

Definition at line 172 of file config.h.

◆ ncorr_matching_cutoff_max_corrcoef

double Config::ncorr_matching_cutoff_max_corrcoef = 1.0

Definition at line 201 of file config.h.

◆ ncorr_no_update

bool Config::ncorr_no_update = true

Definition at line 175 of file config.h.

◆ ncorr_perspective_interp

bool Config::ncorr_perspective_interp = false

Definition at line 185 of file config.h.

◆ ncorr_roi_update_mode

std::string Config::ncorr_roi_update_mode = "none"

Definition at line 182 of file config.h.

◆ ncorr_save_disps_steps

bool Config::ncorr_save_disps_steps = false

Definition at line 184 of file config.h.

◆ ncorr_scalefactor

int Config::ncorr_scalefactor = 3

Definition at line 171 of file config.h.

◆ ncorr_seeds_are_optimized

bool Config::ncorr_seeds_are_optimized = false

Definition at line 195 of file config.h.

◆ ncorr_subregion

std::string Config::ncorr_subregion = "circle"

Definition at line 173 of file config.h.

◆ ncorr_threads

int Config::ncorr_threads = 4

Definition at line 202 of file config.h.

◆ ncorr_units

std::string Config::ncorr_units = "mm"

Definition at line 190 of file config.h.

◆ ncorr_use_exact_matlab

bool Config::ncorr_use_exact_matlab
Initial value:
=
false

Definition at line 203 of file config.h.

◆ nfcond_set

std::vector<int> Config::nfcond_set = {5}

Definition at line 68 of file config.h.

◆ num_pair

int Config::num_pair = 2

Definition at line 34 of file config.h.

◆ parallel_processing

bool Config::parallel_processing = true

Definition at line 62 of file config.h.

◆ phase_id

std::string Config::phase_id = "loading"

Definition at line 66 of file config.h.

◆ plotopt

std::vector<std::string> Config::plotopt = {"Epc1", "Epc2"}

Definition at line 92 of file config.h.

◆ ply_format

std::string Config::ply_format = "ascii"

Definition at line 220 of file config.h.

◆ ply_include_colors

bool Config::ply_include_colors = true

Definition at line 221 of file config.h.

◆ quiverScaleFactor

double Config::quiverScaleFactor = 20.0

Definition at line 117 of file config.h.

◆ ref_trial_id

int Config::ref_trial_id = 5

Definition at line 75 of file config.h.

◆ robot_sample_freq

double Config::robot_sample_freq = 1000.0

Definition at line 42 of file config.h.

◆ show_axes

bool Config::show_axes = true

Definition at line 252 of file config.h.

◆ show_colorbar

bool Config::show_colorbar = true

Definition at line 253 of file config.h.

◆ show_grid

bool Config::show_grid = false

Definition at line 254 of file config.h.

◆ showImgLogic

bool Config::showImgLogic = false

Definition at line 110 of file config.h.

◆ showRobotLogic

bool Config::showRobotLogic = true

Definition at line 109 of file config.h.

◆ showvisu

bool Config::showvisu = false

Definition at line 83 of file config.h.

◆ smoothPar_n

int Config::smoothPar_n = 30

Definition at line 105 of file config.h.

◆ smoothPar_sigma

double Config::smoothPar_sigma = 2.0

Definition at line 106 of file config.h.

◆ smoothSpaceLogic

bool Config::smoothSpaceLogic = true

Definition at line 104 of file config.h.

◆ smoothTimeLogic

bool Config::smoothTimeLogic = true

Definition at line 102 of file config.h.

◆ spddxlcond_set

std::vector<double> Config::spddxlcond_set = {0.04, 0.08}

Definition at line 69 of file config.h.

◆ stats_format

std::string Config::stats_format = "txt"

Definition at line 243 of file config.h.

◆ stats_per_frame

bool Config::stats_per_frame = true

Definition at line 244 of file config.h.

◆ stats_spatial

bool Config::stats_spatial = true

Definition at line 245 of file config.h.

◆ stats_temporal

bool Config::stats_temporal = true

Definition at line 246 of file config.h.

◆ step_d

StepConfig Config::step_d

Definition at line 138 of file config.h.

◆ step_d_replacebadcorr

bool Config::step_d_replacebadcorr
Initial value:
=
true

Definition at line 159 of file config.h.

◆ step_e

StepConfig Config::step_e
Initial value:
= [] {
c.radius = 60;
return c;
}()
Configuration class for CPPXDIC Handles loading and managing parameters equivalent to Matlab global_p...
Definition config.h:16
int radius
Definition config.h:18

Definition at line 139 of file config.h.

◆ step_e_distortion_removal

bool Config::step_e_distortion_removal
Initial value:
=
false

Definition at line 157 of file config.h.

◆ step_e_ray_bvh

bool Config::step_e_ray_bvh = false

Definition at line 156 of file config.h.

◆ step_e_stitch_mode

std::string Config::step_e_stitch_mode = "geometric"

Definition at line 151 of file config.h.

◆ step_f

StepConfig Config::step_f

Definition at line 144 of file config.h.

◆ step_f_compute_rbm

bool Config::step_f_compute_rbm = false

Definition at line 165 of file config.h.

◆ step_f_freq_filt

double Config::step_f_freq_filt = 10.0

Definition at line 164 of file config.h.

◆ step_f_temporal_filtering

bool Config::step_f_temporal_filtering = true

Definition at line 163 of file config.h.

◆ subject_id

std::string Config::subject_id = "S09"

Definition at line 65 of file config.h.

◆ subregion_radius

int Config::subregion_radius = 20

Definition at line 131 of file config.h.

◆ tracesLogic

bool Config::tracesLogic = false

Definition at line 112 of file config.h.

◆ units_per_pixel

double Config::units_per_pixel = 0.2

Definition at line 130 of file config.h.

◆ vid_sample_freq

double Config::vid_sample_freq = 50.0

Definition at line 43 of file config.h.

◆ video_alpha

double Config::video_alpha = 1.0

Definition at line 232 of file config.h.

◆ video_codec

std::string Config::video_codec = "MJPG"

Definition at line 230 of file config.h.

◆ video_fps

int Config::video_fps = 10

Definition at line 229 of file config.h.

◆ video_quality

int Config::video_quality = 90

Definition at line 231 of file config.h.

◆ viewplot

std::string Config::viewplot
Initial value:
=
"below"

Definition at line 94 of file config.h.

◆ vtk_format

std::string Config::vtk_format = "ascii"

Definition at line 215 of file config.h.

◆ vtk_include_scalars

bool Config::vtk_include_scalars = true

Definition at line 216 of file config.h.

◆ vtk_include_vectors

bool Config::vtk_include_vectors = true

Definition at line 217 of file config.h.


The documentation for this class was generated from the following files: