|
CPPxDIC
C++ Digital Image Correlation library for fingertip 3D reconstruction
|
#include <stereo_calibration.h>
Static Public Member Functions | |
| static std::vector< CalibPoint3D > | generateCylindricalObject (const CylinderCalibSpec &spec) |
| Port of generate_cylindrical_calibration_object_coordinate_file.m. | |
| static bool | writeObjectFile (const std::vector< CalibPoint3D > &pts, const std::string &path, std::string &error_message) |
| Write generated 3D coordinates to a text file (one "x y z" per line). | |
| static std::vector< CalibPoint3D > | readObjectFile (const std::string &path, std::string &error_message) |
| Read a "x y z" per line 3D coordinate file. | |
| static std::vector< CalibPoint2D > | readImagePointsFile (const std::string &path, std::string &error_message) |
| Read a "u v" per line 2D image-point file (one per calibration dot). | |
| static CameraDLT | calcDLTParameters (int camera_id, const std::vector< CalibPoint2D > &image_points, const std::vector< CalibPoint3D > &object_points, std::string &error_message) |
| Port of STEP1_CalcDLTparameters_rewrited.m for a single camera. | |
| static CalibPoint3D | reconstructPoint (const CameraDLT &cam1, const CalibPoint2D &p1, const CameraDLT &cam2, const CalibPoint2D &p2) |
| Triangulate a 3D point from two cameras' DLT parameters and the matched image observations (linear least-squares DLT triangulation, Eigen solve). | |
| static ReconstructionError | reconstructionError (const CameraDLT &cam1, const std::vector< CalibPoint2D > &img1, const CameraDLT &cam2, const std::vector< CalibPoint2D > &img2, const std::vector< CalibPoint3D > &object_points, std::vector< CalibPoint3D > &reconstructed_out) |
| DLT reconstruction-error metric: triangulate every calibration point from the two cameras and compare against the known object coordinates. | |
| static StereoCalibrationResult | calibrateStereoPair (int cam_first_id, const std::vector< CalibPoint2D > &img_first, int cam_second_id, const std::vector< CalibPoint2D > &img_second, const std::vector< CalibPoint3D > &object_points, std::string &error_message) |
| Full StepC driver for one stereo pair: fit both cameras and compute the reconstruction error against the object coordinates. | |
Definition at line 75 of file stereo_calibration.h.
|
static |
Port of STEP1_CalcDLTparameters_rewrited.m for a single camera.
Fits the 11 DLT parameters from 2D<->3D correspondences (reusing Utils::DLT11Calibration) and computes the RMS image reprojection error.
Definition at line 110 of file stereo_calibration.cpp.
|
static |
Full StepC driver for one stereo pair: fit both cameras and compute the reconstruction error against the object coordinates.
Definition at line 237 of file stereo_calibration.cpp.
|
static |
Port of generate_cylindrical_calibration_object_coordinate_file.m.
Generates the 3D coordinates of the calibration dots on the cylinder. Ordering: outer loop over rows (z), inner loop over columns (theta) — matching the MATLAB column-major dot ordering used by the marked images.
Definition at line 29 of file stereo_calibration.cpp.
|
static |
Read a "u v" per line 2D image-point file (one per calibration dot).
Definition at line 92 of file stereo_calibration.cpp.
|
static |
Read a "x y z" per line 3D coordinate file.
Definition at line 74 of file stereo_calibration.cpp.
|
static |
DLT reconstruction-error metric: triangulate every calibration point from the two cameras and compare against the known object coordinates.
Definition at line 201 of file stereo_calibration.cpp.
|
static |
Triangulate a 3D point from two cameras' DLT parameters and the matched image observations (linear least-squares DLT triangulation, Eigen solve).
Definition at line 169 of file stereo_calibration.cpp.
|
static |
Write generated 3D coordinates to a text file (one "x y z" per line).
Definition at line 60 of file stereo_calibration.cpp.