YaDICs
V04.14.a
Yet another Digital Image Correlation software: platform dedicated to 2/3D Fluid and Solid kinematics field measurements.
|
It implements the Optical Flow with Integrated kinematics within independant block such as Block-matching strategy. A linear system computed throug a specific kinematics is solved by block regardless of the neighbouring ones. It allows, for example, identifying heterogeneous strain fields keeping basic kinematics at the block scale, avoiding problems leading by finite differences, and taking profit of low noise impact associated to integrated strategies. More...
#include <Ccorrelation_opticalFlow_integrated_block.h>
Public Member Functions | |
virtual void | init (CParameterNetCDF &fp) |
virtual void | assignG (const Cmesh< T, Timg > &oMesh, CImgList< T > &Ke) |
virtual void | reset (const int &thread, CImgList< T > &Ke) |
virtual void | e_ref (const Cimage< Timg > &oImage, const Cmesh< T, Timg > &oMesh, const int &elem, std::vector< T > &ref) |
virtual void | evalShape (const CImg< Timg > &list, const Cimage< Timg > &oImage, const Cfield< T, Timg > &oField, const std::vector< T > &ref, const std::vector< T > &lCoor, const std::vector< T > &gCoor, CImgList< T > &N) |
virtual void | tensors (const int &thread, const CImgList< T > &Ve, const T &residue, CImgList< T > &Ke) |
virtual void | metric (const Cimage< Timg > &oImage, const Cmesh< T, Timg > &oMesh, CImgList< T > &solution, Cfield< T, Timg > &oField, CImgList< T > &N, CImgList< T > &Ve, CImgList< T > &Ke, std::vector< T > &ref, std::vector< T > &offset, std::vector< T > &lCoor, std::vector< T > &gCoor, std::vector< T > &U, std::vector< T > &grad, T &residue, T &deformed, CImg< Timg > &list, CImg< int > &p, CImg< T > ¤t_res) |
virtual void | exec (const Cimage< Timg > &oImage, const Cmesh< T, Timg > &oMesh, Cfield< T, Timg > &oField) |
virtual void | store (Cfield< T, Timg > &oField, const Cimage< Timg > &oImage, const std::vector< T > gCoor, const std::vector< T > &U, const T &deformed, const T &residue) |
virtual void | test (const CImgList< T > &solution, const double &epsilon, Cfield< T, Timg > &oField, T &previous_res, int &iter, int &converged) |
Public Member Functions inherited from Ccorrelation_opticalFlow_integrated< T, Timg > | |
virtual void | assignG (const Cmesh< T, Timg > &oMesh, CImgList< T > &K, CImgList< T > &Ke) |
virtual void | assignL (const Cmesh< T, Timg > &oMesh, CImgList< T > &Ve) |
virtual void | evalGN (const std::vector< T > &grad, const CImgList< T > &N, CImgList< T > &Ve) |
virtual void | evalU (const CImgList< T > &solution, const Cmesh< T, Timg > &oMesh, const int &elem, const CImgList< T > &N, std::vector< T > &U) |
virtual void | gradient (const Cimage< Timg > &oImage, const std::vector< T > &x, std::vector< T > &grad) |
virtual void | assembly (const int &thread, const Cmesh< T, Timg > &oMesh, const int &elem, const CImgList< T > &Ke, CImgList< T > &K) |
virtual void | metric (const Cimage< Timg > &oImage, const Cmesh< T, Timg > &oMesh, CImgList< T > &solution, Cfield< T, Timg > &oField, CImgList< T > &N, CImgList< T > &Ve, CImgList< T > &Ke, std::vector< T > &ref, std::vector< T > &offset, std::vector< T > &lCoor, std::vector< T > &gCoor, std::vector< T > &U, std::vector< T > &grad, T &residue, T &deformed, CImg< Timg > &list, CImg< int > &p, CImg< T > ¤t_res, CImgList< T > &K) |
virtual void | solve (CImgList< T > &K, const Cmesh< T, Timg > &oMesh, CImgList< T > &solution) |
virtual void | export_res (const Cimage< Timg > &oImage, const Cmesh< T, Timg > &oMesh, Cfield< T, Timg > &oField, CImgList< T > &N, std::vector< T > &ref, std::vector< T > &offset, std::vector< T > &lCoor, std::vector< T > &gCoor, std::vector< T > &U, T &residue, T &deformed, CImg< Timg > &list) |
Public Member Functions inherited from Ccorrelation_opticalFlow< T, Timg > | |
void | evalRes_loop (const Cimage< Timg > &oImage, const std::vector< T > &U, const std::vector< T > &x, T &residue, T &deformed) |
void | evalRes_final (const Cimage< Timg > &oImage, const std::vector< T > &U, const std::vector< T > &x, T &residue, T &deformed) |
Public Member Functions inherited from Ccorrelation< T, Timg > | |
virtual void | regularize (const Cmesh< T, Timg > &oMesh, const Cimage< Timg > &oImage, CImgList< T > &solution) |
void | count (const int &increment, const int &dim, int &counter) |
Additional Inherited Members | |
Public Attributes inherited from Ccorrelation_opticalFlow< T, Timg > | |
std::string | m_shape_type |
std::string | m_interpLoop |
std::string | m_interpFinal |
double | m_epsilon |
std::vector< T > | m_ref |
Public Attributes inherited from Ccorrelation< T, Timg > | |
std::string | class_name |
std::string | m_correl_type |
std::string | m_correl_name |
T | m_current_res |
int | m_threadNB |
int | _3D |
int | m_medianFilter |
bool | m_verbose |
It implements the Optical Flow with Integrated kinematics within independant block such as Block-matching strategy. A linear system computed throug a specific kinematics is solved by block regardless of the neighbouring ones. It allows, for example, identifying heterogeneous strain fields keeping basic kinematics at the block scale, avoiding problems leading by finite differences, and taking profit of low noise impact associated to integrated strategies.
|
inlinevirtual |
Optical-flow integrated correlation requires in addition a reference system
Reimplemented from Ccorrelation_opticalFlow_integrated< T, Timg >.
Reimplemented in Ccorrelation_opticalFlow_integrated_block_A< T, Timg >, and Ccorrelation_opticalFlow_integrated_block_A< T, Timg >.