|
constexpr double | rm::numeric_literals::operator""_PI (long double num) |
|
constexpr double | rm::numeric_literals::operator""_PI (long long unsigned num) |
|
constexpr double | rm::numeric_literals::operator""_to_rad (long double num) |
|
constexpr double | rm::numeric_literals::operator""_to_rad (long long unsigned num) |
|
constexpr double | rm::numeric_literals::operator""_to_deg (long double num) |
|
constexpr double | rm::numeric_literals::operator""_to_deg (long long unsigned num) |
|
template<typename Tp > |
constexpr Tp | rm::operator+ (Tp val, const cv::Matx< Tp, 1, 1 > &mat) |
|
template<typename Tp > |
constexpr cv::Matx< Tp, 1, 1 > | rm::operator+ (const cv::Matx< Tp, 1, 1 > &mat, Tp val) |
|
template<typename Tp > |
constexpr Tp | rm::operator- (Tp val, const cv::Matx< Tp, 1, 1 > &mat) |
|
template<typename Tp > |
constexpr cv::Matx< Tp, 1, 1 > | rm::operator- (const cv::Matx< Tp, 1, 1 > &mat, Tp val) |
|
template<typename Tp > |
constexpr Tp | rm::deg2rad (Tp deg) |
| 角度转换为弧度
|
|
template<typename Tp > |
constexpr Tp | rm::rad2deg (Tp rad) |
| 弧度转换为角度
|
|
template<typename Tp > |
constexpr cv::Matx< Tp, 3, 1 > | rm::point2matx (cv::Point3_< Tp > point) |
| Point 类型转换为 Matx 类型
|
|
template<typename Tp > |
constexpr cv::Point3_< Tp > | rm::matx2point (cv::Matx< Tp, 3, 1 > matx) |
| Matx 类型转换为 Point 类型
|
|
template<typename Tp > |
constexpr cv::Vec< Tp, 3 > | rm::matx2vec (cv::Matx< Tp, 3, 1 > matx) |
| Matx 类型转换为 Vec 类型
|
|
template<typename Tp1 , typename Tp2 > |
constexpr auto | rm::getDistance (const cv::Point_< Tp1 > &pt_1, const cv::Point_< Tp2 > &pt_2) |
| 获取距离
|
|
template<typename Tp1 , typename Tp2 > |
constexpr auto | rm::getDistance (const cv::Vec< Tp1, 2 > &vec_1, const cv::Vec< Tp2, 2 > &vec_2) |
| 获取距离
|
|
template<typename Tp1 , typename Tp2 > |
constexpr auto | rm::getDistance (const cv::Point3_< Tp1 > &pt_1, const cv::Point3_< Tp2 > &pt_2, CalPlane calplane=CalPlane::xyz) |
| 获取距离
|
|
template<typename Tp1 , typename Tp2 > |
constexpr auto | rm::getDistance (const cv::Vec< Tp1, 3 > &vec_1, const cv::Vec< Tp2, 3 > &vec_2, CalPlane calplane=CalPlane::xyz) |
| 获取距离
|
|
template<typename Tp1 , typename Tp2 > |
constexpr auto | rm::getDistance (const cv::Vec< Tp1, 4 > &line, const cv::Point_< Tp2 > &pt, bool direc=true) |
| 点到直线距离,其中 \(P=(x_0,y_0)\) 到直线 \(l:Ax+By+C=0\) 距离公式为
|
|
template<typename Tp1 , typename Tp2 > |
constexpr auto | rm::getHAngle (const cv::Point_< Tp1 > &start, const cv::Point_< Tp2 > &end, AngleMode mode=RAD) |
| 获取与水平方向的夹角,以平面直角坐标系 \(x\) 轴为分界线, 逆时针 为正方向,范围: \((-180°,180°]\) ,默认返回弧度制
|
|
template<typename Tp1 , typename Tp2 > |
constexpr auto | rm::getVAngle (const cv::Point_< Tp1 > &start, const cv::Point_< Tp2 > &end, AngleMode mode=RAD) |
| 获取与垂直方向的夹角,以平面直角坐标系 \(y\) 轴为分界线, 顺时针 为正方向,范围: \((-180°,180°]\) ,默认返回弧度制
|
|
template<typename Tp > |
constexpr Tp | rm::getDeltaAngle (Tp angle_1, Tp angle_2) |
| 求两个角之间的夹角
|
|
template<typename Tp > |
constexpr Tp | rm::sec (Tp x) |
| 正割 \(\sec(x)\)
|
|
template<typename Tp > |
constexpr Tp | rm::csc (Tp x) |
| 余割 \(\csc(x)\)
|
|
template<typename Tp > |
constexpr Tp | rm::cot (Tp x) |
| 余切 \(\cot(x)\)
|
|
template<typename Tp > |
constexpr Tp | rm::sgn (Tp x) |
| 符号函数
|
|
template<typename Tp > |
constexpr Tp | rm::sigmoid (Tp x, Tp k=1, Tp Kp=1, Tp mu=0) |
| 计算 sigmoid(x) 在某一点的函数值
|
|
template<typename Tp > |
constexpr Tp | rm::cross2D (const cv::Vec< Tp, 2 > &a, const cv::Vec< Tp, 2 > &b) |
| 平面向量外积
|
|
template<typename Tp > |
constexpr Tp | rm::cross2D (const cv::Point_< Tp > &a, const cv::Point_< Tp > &b) |
| 平面向量外积
|
|
template<typename ForwardIterator > |
ForwardIterator::value_type | rm::calculateModeNum (ForwardIterator first, ForwardIterator last) |
| 在指定范围内寻找众数,时间复杂度 O(N)
|
|
template<typename T > |
std::vector< T > | rm::operator+ (const std::vector< T > &vec1, const std::vector< T > &vec2) |
| 使用 std::vector 表示的向量加法
|
|
template<typename T > |
std::vector< T > | rm::operator- (const std::vector< T > &vec1, const std::vector< T > &vec2) |
| 使用 std::vector 表示的向量减法
|
|
template<typename T > |
std::vector< T > & | rm::operator+= (std::vector< T > &vec1, const std::vector< T > &vec2) |
| 使用 std::vector 表示的向量自加
|
|
template<typename T > |
std::vector< T > & | rm::operator-= (std::vector< T > &vec1, const std::vector< T > &vec2) |
| 使用 std::vector 表示的向量自减
|
|
template<typename T > |
std::vector< T > | rm::operator- (const std::vector< T > &vec) |
| 使用 std::vector 表示的向量取反
|
|
template<typename T > |
std::vector< T > | rm::operator* (const std::vector< T > &vec, T val) |
| 使用 std::vector 表示的向量乘法(数乘)
|
|
template<typename T > |
std::vector< T > | rm::operator* (T val, const std::vector< T > &vec) |
| 使用 std::vector 表示的向量乘法(数乘)
|
|
template<typename T > |
std::vector< T > & | rm::operator*= (std::vector< T > &vec, T val) |
| 使用 std::vector 表示的向量乘法(数乘)
|
|
template<typename T > |
std::vector< T > | rm::operator/ (const std::vector< T > &vec, T val) |
| 使用 std::vector 表示的向量除法(数乘)
|
|
template<typename T > |
std::vector< T > & | rm::operator/= (std::vector< T > &vec, T val) |
| 使用 std::vector 表示的向量除法(数乘)
|
|