25 #include <MCTypes.hpp> 27 #include <boost/scoped_ptr.hpp> 28 #include <boost/shared_ptr.hpp> 29 #include <boost/serialization/access.hpp> 30 #include <boost/serialization/split_member.hpp> 33 class MECalibrationWrapper;
45 typedef boost::shared_ptr<MECalibration> CalibrationSPtr;
53 friend class boost::serialization::access;
72 MECalibration(
unsigned int chessboard_width,
unsigned int chessboard_height);
86 MECalibration(
unsigned int image_width,
unsigned int image_height,
87 const MC::FloatTable& intrinsics,
const MC::FloatList& distortion);
99 unsigned int GetImageWidth()
const;
108 unsigned int GetImageHeight()
const;
117 MC::FloatTable GetIntrinsicMatrix()
const;
126 MC::FloatList GetDistortionVector()
const;
135 bool IsCalibrated()
const;
149 bool AddImage(
MEImage& new_image);
170 void Undistort(
MEImage& image);
195 bool SearchChessboardCorners(
MEImage& image,
bool draw_results)
const;
213 static void BlackNormalize(
MEImage& source_image,
const MEImage& black_image);
237 template<
class Archive>
238 void load(Archive& archive,
const unsigned int version);
239 template<
class Archive>
240 void save(Archive& archive,
const unsigned int version)
const;
241 BOOST_SERIALIZATION_SPLIT_MEMBER();
255 boost::scoped_ptr<MECalibrationWrapper>
Wrapper;
unsigned int ImageWidth
Image width of calibration image sequence.
boost::scoped_ptr< MECalibrationWrapper > Wrapper
OpenCV data.
unsigned int ChessboardCornerHeight
The corner count inside the calibration chessboard vertically.
#define MC_DISABLE_COPY(class_name)
Helper macro to disable the copy constructor and assignment operator of a class (object copying) ...
unsigned int ImageHeight
Image height of calibration image sequence.
unsigned int ChessboardCornerWidth
The corner count inside the calibration chessboard horizontally.
bool Calibrated
Whenever the calibration process is finished.
Calibration for a single camera.