CPPxDIC
C++ Digital Image Correlation library for fingertip 3D reconstruction
Loading...
Searching...
No Matches
dic_analysis.h
Go to the documentation of this file.
1
14#ifndef DIC_ANALYSIS_H
15#define DIC_ANALYSIS_H
16
17#include "config.h"
18#include "ncorr.h"
19#include "stage_plan.h"
20#include <vector>
21#include <string>
22
24public:
25 explicit DicAnalysis(const Config& config);
26
33 bool run();
34
46 bool run(const std::vector<int>& trial_target);
47
60 bool run(const std::vector<int>& trial_target, const StagePlan& plan);
61
66 bool runStepE(const std::vector<int>& trial_target) { return dic3DReconstruction(trial_target); }
67
72 bool runStepF(const std::vector<int>& trial_target) { return dicDeformationAnalysis(trial_target); }
73
90 std::vector<int> searchTrialTarget(const std::string& subject);
91
92private:
93 const Config& config_;
94
95 // Analysis steps
96 bool dic2DAnalysis(const std::vector<int>& trial_target, const StagePlan& plan);
97 bool dic3DReconstruction(const std::vector<int>& trial_target);
98 bool dicDeformationAnalysis(const std::vector<int>& trial_target);
99
100 // Helper functions
101 // No-arg overload: looks up trials for config_.subject_id by delegating to
102 // searchTrialTarget(const std::string&). Preserves the original behaviour.
103 std::vector<int> searchTrialTarget();
104 std::vector<std::string> loadImageSequence(const std::string& trial_path);
105 bool setupNcorrAnalysis(const std::vector<std::string>& images,
106 ncorr::DIC_analysis_input& dic_input);
107 bool setupNcorrAnalysis(const std::vector<std::string>& images,
108 const std::string& roi_mask_image_path,
109 ncorr::DIC_analysis_input& dic_input);
110};
111
112#endif // DIC_ANALYSIS_H
DIC Analysis class for CPPXDIC Main analysis functionality equivalent to Matlab dic_analysis....
bool run()
Run complete DIC analysis pipeline Executes preprocessing, Step D, Step E, and Step F in sequence.
bool runStepE(const std::vector< int > &trial_target)
Run 3D Reconstruction (Step E) only — for integration testing Requires Step D outputs (....
bool runStepF(const std::vector< int > &trial_target)
Run Deformation Analysis (Step F) only — for integration testing Requires DIC3Dcombined_*....
StagePlan — selects which pipeline sub-steps a single process executes.
Definition stage_plan.h:21