My Project
Public Member Functions | List of all members
CameraEC Class Reference

Version of Camera using external container. More...

#include <EC.h>

Inheritance diagram for CameraEC:
Camera

Public Member Functions

template<typename T >
void Undistort (std::map< int, T > &container, int type_id=-1)
 Undistort the items with matching type_id.
 
template<typename T , typename F >
void Undistort (std::map< int, T > &container, F &do_handle_test)
 Undistort the items matching the given functor.
 
template<typename T >
void Distort (std::map< int, T > &container, int type_id=-1)
 Distort the items with matching type_id.
 
template<typename T , typename F >
void Distort (std::map< int, T > &container, F &do_handle_test)
 Distort the items matching the given functor.
 
template<typename T >
bool CalcExteriorOrientation (std::map< int, T > &container, Pose *pose, int type_id=-1)
 Calculate the pose using the items with matching type_id.
 
template<typename T , typename F >
bool CalcExteriorOrientation (std::map< int, T > &container, Pose *pose, F do_handle_test)
 Calculate the pose using the items matching the given functor.
 
template<typename T >
bool UpdatePose (std::map< int, T > &container, Pose *pose, int type_id=-1, std::map< int, double > *weights=0)
 Update the pose using the items with matching type_id.
 
template<typename T >
bool UpdateRotation (std::map< int, T > &container, Pose *pose, int type_id=-1)
 Update the rotation in pose using the items with matching type_id.
 
template<typename T , typename F >
bool UpdateRotation (std::map< int, T > &container, Pose *pose, F do_handle_test)
 Update the rotation in pose using the items matching the given functor.
 
template<typename T , typename F >
bool UpdatePose (std::map< int, T > &container, Pose *pose, F do_handle_test, std::map< int, double > *weights=0)
 Update the pose using the items matching the given functor.
 
template<typename T >
float Reproject (std::map< int, T > &container, Pose *pose, int type_id=-1, bool needs_has_p2d=false, bool needs_has_p3d=false, float average_outlier_limit=0.f)
 Projects p3d in the items matching with type_id into projected_p2d . If type_id == -1 doesn't test the type.
 
template<typename T , typename F >
float Reproject (std::map< int, T > &container, Pose *pose, F do_handle_test, float average_outlier_limit=0.f)
 Projects p3d in the items matching with the given functor.
 
template<typename T >
int EraseUsingReprojectionError (std::map< int, T > &container, float reprojection_error_limit, int type_id=-1, Pose *pose=0)
 Erases the items matching with type_id having large reprojection error. If type_id == -1 doesn't test the type. If pose is given calls Reproject() internally – otherwise assumes it has been called beforehands.
 
bool UpdateRotation (const cv::Mat &object_points, cv::Mat &image_points, Pose *pose)
 Update pose rotations based on new observations.
 
bool UpdateRotation (const cv::Mat &object_points, cv::Mat &image_points, cv::Mat &rot, cv::Mat &tra)
 Update pose rotations (in rodriques&tra) based on new observations.
 
bool UpdatePose (const cv::Mat &object_points, cv::Mat &image_points, Pose *pose, cv::Mat &weights)
 Update existing pose based on new observations.
 
bool UpdatePose (const cv::Mat &object_points, cv::Mat &image_points, cv::Mat &rodriques, cv::Mat &tra, cv::Mat &weights)
 Update existing pose (in rodriques&tra) based on new observations.
 
bool ReconstructFeature (const Pose *pose1, const Pose *pose2, const cv::Point2f *u1, const cv::Point2f *u2, cv::Point3f *p3d, double limit)
 Reconstruct 3D point using two camera poses and corresponding undistorted image feature positions.
 
void Get3dOnPlane (const Pose *pose, cv::Point2f p2d, cv::Point3f &p3d)
 Get 3D-coordinate for 2D feature on the plane defined by the pose (z == 0)
 
void Get3dOnDepth (const Pose *pose, cv::Point2f p2d, float depth, cv::Point3f &p3d)
 Get 3D-coordinate for 2D feature assuming certain depth.
 
- Public Member Functions inherited from Camera
std::string SerializeId ()
 One of the two methods to make this class serializable by Serialization class.
 
bool Serialize (Serialization *ser)
 One of the two methods to make this class serializable by Serialization class. More...
 
 Camera ()
 Constructor.
 
double GetFovX ()
 Get x-direction FOV in radians.
 
double GetFovY ()
 Get y-direction FOV in radians.
 
void SetSimpleCalib (int _x_res, int _y_res, double f_fac=1.)
 
bool SetCalib (const char *calibfile, int _x_res, int _y_res, FILE_FORMAT format=FILE_FORMAT_DEFAULT)
 Set the calibration file and the current resolution for which the calibration is adjusted to. More...
 
bool SaveCalib (const char *calibfile, FILE_FORMAT format=FILE_FORMAT_DEFAULT)
 Save the current calibration information to a file. More...
 
void Calibrate (ProjPoints &pp)
 Calibrate using the collected ProjPoints.
 
void SetRes (int _x_res, int _y_res)
 If we have no calibration file we can still adjust the default calibration to current resolution

 
void GetOpenglProjectionMatrix (double proj_matrix[16], const int width, const int height, const float far_clip=1000.0f, const float near_clip=0.1f)
 Get OpenGL matrix Generates the OpenGL projection matrix based on OpenCV intrinsic camera matrix K. More...
 
void SetOpenglProjectionMatrix (double proj_matrix[16], const int width, const int height)
 Invert operation for GetOpenglProjectionMatrix.
 
void Undistort (std::vector< PointDouble > &points)
 Unapplys the lens distortion for points on image plane.
 
void Undistort (PointDouble &point)
 Unapplys the lens distortion for one point on an image plane.
 
void Undistort (cv::Point2f &point)
 Unapplys the lens distortion for one point on an image plane.
 
void Distort (cv::Point2f &point)
 Applys the lens distortion for one point on an image plane.
 
void Distort (std::vector< PointDouble > &points)
 Applys the lens distortion for points on image plane.
 
void Distort (PointDouble &point)
 Applys the lens distortion for points on image plane.
 
void CalcExteriorOrientation (const std::vector< cv::Point3d > &pw, const std::vector< PointDouble > &pi, cv::Mat &rodriques, cv::Mat &tra) const
 Calculate exterior orientation.
 
void CalcExteriorOrientation (const std::vector< PointDouble > &pw, const std::vector< PointDouble > &pi, cv::Mat &rodriques, cv::Mat &tra) const
 Calculate exterior orientation.
 
void CalcExteriorOrientation (const std::vector< PointDouble > &pw, const std::vector< PointDouble > &pi, Pose *pose) const
 Update existing pose (in rodriques&tra) based on new observations. Use (CV_32FC3 and CV_32FC2) for matrices.
 
void CalcExteriorOrientation (std::vector< cv::Point3d > &pw, std::vector< cv::Point2d > &pi, Pose *pose)
 
bool CalcExteriorOrientation (const cv::Mat &object_points, cv::Mat &image_points, Pose *pose)
 
bool CalcExteriorOrientation (const cv::Mat &object_points, cv::Mat &image_points, cv::Mat &rodriques, cv::Mat &tra)
 
void ProjectPoint (const cv::Point3d &pw, const Pose *pose, cv::Point2d &pi) const
 Project one point.
 
void ProjectPoint (const cv::Point3f &pw, const Pose *pose, cv::Point2f &pi) const
 Project one point.
 
void ProjectPoints (std::vector< cv::Point3d > &pw, Pose *pose, std::vector< cv::Point2d > &pi) const
 Project points.
 
void ProjectPoints (const cv::Mat &object_points, const cv::Mat &rotation_vector, const cv::Mat &translation_vector, cv::Mat &image_points) const
 Project points.
 
void ProjectPoints (const cv::Mat &object_points, double gl[16], cv::Mat &image_points) const
 Project points.
 
void ProjectPoints (const cv::Mat &object_points, const Pose *pose, cv::Mat &image_points) const
 Project points

 

Additional Inherited Members

- Public Attributes inherited from Camera
cv::Mat calib_K
 
double calib_K_data [3][3]
 
cv::Mat calib_D
 
double calib_D_data [4]
 
- Protected Attributes inherited from Camera
int calib_x_res
 
int calib_y_res
 
int x_res
 
int y_res
 

Detailed Description

Version of Camera using external container.

Definition at line 491 of file EC.h.


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