class sophus::BrownConradyTransformΒΆ
#include <brown_conrady.h> class BrownConradyTransform { public: // typedefs using ProjInCameraZ1Plane = Eigen::Matrix<TScalar, 2, 1> ; using PixelImage = Eigen::Matrix<TScalar, 2, 1> ; using Params = Eigen::Matrix<TScalar, kNumParams, 1> ; using DistorationParams = Eigen::Matrix<TScalar, kNumDistortionParams, 1> ; // fields static constexpr int kNumDistortionParams = 8; static constexpr int kNumParams = kNumDistortionParams + 4; static constexpr const std::string_view kProjectionModel = "BrownConrady: fx, fy, cx, cy, k1, k2, p1, p2, k3, k4, k5, k6"; // methods template <class TParamScalarT, class TPointScalarT> static PixelImage<typename Eigen::ScalarBinaryOpTraits<TParamScalarT, TPointScalarT>::ReturnType> projImpl( DistorationParams<TParamScalarT> const& distortion, PixelImage<TPointScalarT> const& point_normalized ); template <class TScalar> static PixelImage<TScalar> unprojImpl( DistorationParams<TScalar> const& distortion, PixelImage<TScalar> const& uv_normalized ); template <class TParamsTypeT, class TPointTypeT> static PixelImage<typename TPointTypeT::Scalar> distort( Eigen::MatrixBase<TParamsTypeT> const& params, Eigen::MatrixBase<TPointTypeT> const& proj_point_in_camera_z1_plane ); template <class TScalar> static ProjInCameraZ1Plane<TScalar> undistort( Params<TScalar> const& params, PixelImage<TScalar> const& pixel_image ); template <class TParamsTypeT, class TPointTypeT> static Eigen::Matrix<typename TPointTypeT::Scalar, 2, 2> dxDistort( Eigen::MatrixBase<TParamsTypeT> const& params, Eigen::MatrixBase<TPointTypeT> const& proj_point_in_camera_z1_plane ); };