25 #ifndef INCLUDED_CameraDistortionModel_h_GUID_9A7F6C37_8AE6_40AC_DB51_C9B7B21F9871
26 #define INCLUDED_CameraDistortionModel_h_GUID_9A7F6C37_8AE6_40AC_DB51_C9B7B21F9871
41 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
43 Eigen::Vector2d
const ¢erOfProjectionPixels,
44 Eigen::Vector3d
const &k)
45 : m_fl(focalLengths), m_c(centerOfProjectionPixels), m_k(k) {}
46 Eigen::Vector2d undistortPoint(Eigen::Vector2d
const &pointd)
const {
47 Eigen::Vector2d normalizedDistorted =
48 ((pointd - m_c).array() / m_fl.array()).matrix();
49 double r2 = normalizedDistorted.squaredNorm();
50 Eigen::Vector2d normalizedUndistorted =
52 (1 + m_k[0] * r2 + m_k[1] * r2 * r2 + m_k[2] * r2 * r2 * r2);
53 Eigen::Vector2d undistorted =
54 (normalizedUndistorted.array() * m_fl.array()).matrix() + m_c;
66 #endif // INCLUDED_CameraDistortionModel_h_GUID_9A7F6C37_8AE6_40AC_DB51_C9B7B21F9871
Header wrapping include of and for warning quieting.