RMVL  1.5.0-dev
Robotic Manipulation and Vision Library
载入中...
搜索中...
未找到
rm 命名空间参考

命名空间

namespace  helper
 
namespace  numeric_literals
 
namespace  para
 
namespace  reflect
 

struct  Argument
 OPC UA 方法参数信息 更多...
 
class  Armor
 装甲模块组合特征 更多...
 
class  ArmorDetector
 装甲板识别模块 更多...
 
class  ArmorPredictor
 装甲预测模块 更多...
 
struct  CameraConfig
 相机初始化配置模式 更多...
 
class  CameraExtrinsics
 相机外参 更多...
 
class  ClassificationNet
 分类网络推理类 更多...
 
class  Client
 OPC UA 客户端 更多...
 
class  ClientView
 OPC UA 客户端视图 更多...
 
class  combo
 特征组合体 更多...
 
struct  CompensateInfo
 补偿模块信息 更多...
 
class  compensator
 弹道下坠补偿模块 更多...
 
class  CurveFitter
 曲线拟合器 更多...
 
class  DataType
 OPC UA 数据类型 更多...
 
struct  DecideInfo
 决策模块信息 更多...
 
class  decider
 目标决策模块 更多...
 
class  DefaultCombo
 默认组合体,包含一个固定的特征,退化为 feature 使用 更多...
 
class  DefaultFeature
 默认图像特征,仅表示一个孤立的点 cv::Point2f 更多...
 
class  DefaultGroup
 默认序列组(一般退化为 trackers 使用) 更多...
 
class  DefaultTracker
 默认追踪器,时间序列仅用于存储组合体,可退化为 combos 使用 更多...
 
struct  DetectInfo
 识别信息结构体 更多...
 
class  detector
 识别检测模块 更多...
 
class  Event
 OPC UA 事件 更多...
 
class  EventType
 OPC UA 事件类型 更多...
 
class  EwTopsis
 熵权 TOPSIS 算法 更多...
 
class  Exception
 该类封装了有关程序中发生的错误的所有或几乎所有必要信息。异常通常是通过 RMVL_Error 和 RMVL_Error_ 宏隐式构造和抛出的 更多...
 
class  ExtendedKalmanFilter
 扩展卡尔曼滤波器 更多...
 
class  feature
 图像中的轮廓特征 更多...
 
struct  FieldMetaData
 数据集字段元数据 更多...
 
class  GravityCompensator
 使用重力模型的补偿模块 更多...
 
class  group
 相关追踪器的空间集合(序列组) 更多...
 
class  GyroCompensator
 整车状态补偿模块 更多...
 
class  GyroDecider
 整车状态决策类 更多...
 
class  GyroDetector
 整车状态识别模块 更多...
 
class  GyroGroup
 整车状态序列组 更多...
 
class  GyroPredictor
 整车状态预测模块 更多...
 
class  GyroTracker
 整车状态追踪器 更多...
 
struct  hash_aggregate
 专为聚合类添加的 hash 生成可调用对象 更多...
 
struct  hash_traits
 哈希生成函数类型 traits 更多...
 
struct  hash_traits< Tp, std::enable_if_t< std::is_aggregate_v< Tp > > >
 聚合类哈希生成函数类型 traits 更多...
 
struct  hash_traits< Tp, std::enable_if_t<!std::is_aggregate_v< Tp > > >
 非聚合类哈希生成函数类型 traits 更多...
 
class  HikCamera
 海康机器人相机库 更多...
 
struct  ImuData
 IMU 数据 更多...
 
class  Interpolator
 函数插值器 更多...
 
class  KalmanFilter
 卡尔曼滤波器 更多...
 
class  KalmanFilterStaticDatas
 卡尔曼滤波静态数据 更多...
 
class  LightBlob
 装甲板灯条 更多...
 
struct  LightIpConfig
 OPT 光源控制器 IP 配置信息 更多...
 
class  Method
 OPC UA 方法 更多...
 
class  MvCamera
 迈德威视相机库 更多...
 
struct  NodeId
 OPC UA 节点 ID 更多...
 
class  NonlinearSolver
 非线性方程求解器 更多...
 
class  Object
 OPC UA 对象 更多...
 
class  ObjectType
 OPC UA 对象类型 更多...
 
class  OnnxNet
 ONNX-Runtime (Ort) 部署库基类 [7] 更多...
 
class  OptCamera
 奥普特机器视觉相机库 更多...
 
struct  OptimalOptions
 无约束多维函数优化选项 更多...
 
class  OPTLightController
 OPT 奥普特光源控制器 更多...
 
class  Pilot
 前哨、基地的引导灯 更多...
 
class  PlanarTracker
 平面目标追踪器 更多...
 
class  Polynomial
 N 次多项式 更多...
 
struct  PostprocessOptions
 后处理选项 更多...
 
struct  PredictInfo
 预测模块信息 更多...
 
class  predictor
 目标预测模块 更多...
 
struct  PreprocessOptions
 预处理选项 更多...
 
struct  PublishedDataSet
 待发布的数据集 (PDS) 更多...
 
class  Publisher
 OPC UA 发布者 更多...
 
class  Publisher< TransportID::UDP_UADP >
 使用 UDP 协议以及 UADP 序列化方式的 Publisher 特化 更多...
 
class  RaHeap
 支持随机访问的堆(与 std::priority_queue 具备相同的基础容器筛选条件) 更多...
 
struct  RMStatus
 状态类型 更多...
 
class  Rune
 神符(能量机关) 更多...
 
class  RuneCenter
 神符中心特征 更多...
 
class  RuneDecider
 神符决策模块 更多...
 
class  RuneDetector
 能量机关识别模块(包含已激活、未激活) 更多...
 
class  RuneGroup
 神符序列组 更多...
 
class  RunePredictor
 神符预测模块 更多...
 
class  RuneTarget
 神符靶心特征 更多...
 
class  RuneTracker
 神符时间序列 更多...
 
class  RungeKutta
 Butcher 表形式的常微分方程(组)数值求解器 更多...
 
class  RungeKutta2
 2 阶 2 级 Runge-Kutta 求解器 更多...
 
class  RungeKutta3
 3 阶 3 级 Runge-Kutta 求解器 更多...
 
class  RungeKutta4
 4 阶 4 级 Runge-Kutta 求解器 更多...
 
class  SerialPort
 串行接口通信库 更多...
 
class  Server
 OPC UA 服务器 更多...
 
class  ServerView
 OPC UA 服务器视图 更多...
 
class  SpiRunePredictor
 系统参数辨识神符预测类 更多...
 
class  Subscriber
 OPC UA 订阅者 更多...
 
class  Subscriber< TransportID::UDP_UADP >
 使用 UDP 协议以及 UADP 序列化方式的订阅者特化 更多...
 
class  Tag
 AprilTag 视觉标签特征类 更多...
 
class  TagDetector
 AprilTag 识别器 更多...
 
class  Timer
 定时器 更多...
 
class  tracker
 组合体时间序列 更多...
 
class  TrackerState
 序列组中的追踪器状态 更多...
 
class  TranslationDecider
 平移目标决策类 更多...
 
class  UnionFind
 并查集 更多...
 
struct  UserConfig
 用户信息 更多...
 
class  Variable
 OPC UA 变量 更多...
 
class  VariableType
 OPC UA 变量类型 更多...
 
class  View
 OPC UA 视图 更多...
 

类型定义

using KF21f = KalmanFilter<float, 2U, 1U>
 2 × 1 卡尔曼滤波器
 
using KF21d = KalmanFilter<double, 2U, 1U>
 2 × 1 卡尔曼滤波器
 
using KF31f = KalmanFilter<float, 3U, 1U>
 3 × 1 卡尔曼滤波器
 
using KF31d = KalmanFilter<double, 3U, 1U>
 3 × 1 卡尔曼滤波器
 
using KF32f = KalmanFilter<float, 3U, 2U>
 3 × 2 卡尔曼滤波器
 
using KF32d = KalmanFilter<double, 3U, 2U>
 3 × 2 卡尔曼滤波器
 
using KF42f = KalmanFilter<float, 4U, 2U>
 4 × 2 卡尔曼滤波器
 
using KF42d = KalmanFilter<double, 4U, 2U>
 4 × 2 卡尔曼滤波器
 
using KF63f = KalmanFilter<float, 6U, 3U>
 6 × 3 卡尔曼滤波器
 
using KF63d = KalmanFilter<double, 6U, 3U>
 6 × 3 卡尔曼滤波器
 
using KF64f = KalmanFilter<float, 6U, 4U>
 6 × 4 卡尔曼滤波器
 
using KF64d = KalmanFilter<double, 6U, 4U>
 6 × 4 卡尔曼滤波器
 
using KF73f = KalmanFilter<float, 7U, 3U>
 7 × 3 卡尔曼滤波器
 
using KF73d = KalmanFilter<double, 7U, 3U>
 7 × 3 卡尔曼滤波器
 
using EKF31f = ExtendedKalmanFilter<float, 3U, 1U>
 3 × 1 扩展卡尔曼滤波器
 
using EKF31d = ExtendedKalmanFilter<double, 3U, 1U>
 3 × 1 扩展卡尔曼滤波器
 
using EKF32f = ExtendedKalmanFilter<float, 3U, 2U>
 3 × 2 扩展卡尔曼滤波器
 
using EKF32d = ExtendedKalmanFilter<double, 3U, 2U>
 3 × 2 扩展卡尔曼滤波器
 
using EKF42f = ExtendedKalmanFilter<float, 4U, 2U>
 4 × 2 扩展卡尔曼滤波器
 
using EKF42d = ExtendedKalmanFilter<double, 4U, 2U>
 4 × 2 扩展卡尔曼滤波器
 
using EKF52f = ExtendedKalmanFilter<float, 5U, 2U>
 5 × 2 扩展卡尔曼滤波器
 
using EKF52d = ExtendedKalmanFilter<double, 5U, 2U>
 5 × 2 扩展卡尔曼滤波器
 
using EKF53f = ExtendedKalmanFilter<float, 5U, 3U>
 5 × 3 扩展卡尔曼滤波器
 
using EKF53d = ExtendedKalmanFilter<double, 5U, 3U>
 5 × 3 扩展卡尔曼滤波器
 
using EKF63f = ExtendedKalmanFilter<float, 6U, 3U>
 6 × 3 扩展卡尔曼滤波器
 
using EKF63d = ExtendedKalmanFilter<double, 6U, 3U>
 6 × 3 扩展卡尔曼滤波器
 
using EKF64f = ExtendedKalmanFilter<float, 6U, 4U>
 6 × 4 扩展卡尔曼滤波器
 
using EKF64d = ExtendedKalmanFilter<double, 6U, 4U>
 6 × 4 扩展卡尔曼滤波器
 
using EKF73f = ExtendedKalmanFilter<float, 7U, 3U>
 7 × 3 扩展卡尔曼滤波器
 
using EKF73d = ExtendedKalmanFilter<double, 7U, 3U>
 7 × 3 扩展卡尔曼滤波器
 
using EKF74f = ExtendedKalmanFilter<float, 7U, 4U>
 7 × 4 扩展卡尔曼滤波器
 
using EKF74d = ExtendedKalmanFilter<double, 7U, 4U>
 7 × 4 扩展卡尔曼滤波器
 
using EKF83f = ExtendedKalmanFilter<float, 8U, 3U>
 8 × 3 扩展卡尔曼滤波器
 
using EKF83d = ExtendedKalmanFilter<double, 8U, 3U>
 8 × 3 扩展卡尔曼滤波器
 
using EKF84f = ExtendedKalmanFilter<float, 8U, 4U>
 8 × 4 扩展卡尔曼滤波器
 
using EKF84d = ExtendedKalmanFilter<double, 8U, 4U>
 8 × 4 扩展卡尔曼滤波器
 
using EKF94f = ExtendedKalmanFilter<float, 9U, 4U>
 9 × 4 扩展卡尔曼滤波器
 
using EKF94d = ExtendedKalmanFilter<double, 9U, 4U>
 9 × 4 扩展卡尔曼滤波器
 
using Ode = std::function<double(double, const std::vector<double> &)>
 常微分方程
 
using Odes = std::vector<Ode>
 常微分方程组
 
using Func1d = std::function<double(double)>
 一元函数
 
using Func1ds = std::vector<Func1d>
 一元函数组
 
using FuncNd = std::function<double(const std::vector<double> &)>
 多元函数
 
using FuncNds = std::vector<FuncNd>
 多元函数组
 
using DataChangeNotificationCallback = std::function<void(ClientView, const Variable &)>
 数据变更通知回调函数
 
using EventNotificationCallback = std::function<void(ClientView, const std::vector<Variable> &)>
 
using MethodCallback = std::function<std::vector<Variable>(ServerView, const NodeId &, const std::vector<Variable> &)>
 OPC UA 方法回调函数
 
using ValueCallbackBeforeRead = std::function<void(ServerView, const NodeId &, const Variable &)>
 值回调函数,Read 可调用对象定义
 
using ValueCallbackAfterWrite = std::function<void(ServerView, const NodeId &, const Variable &)>
 值回调函数,Write 可调用对象定义
 
using DataSourceRead = std::function<Variable(ServerView, const NodeId &)>
 数据源回调函数,Read 函数指针定义
 
using DataSourceWrite = std::function<void(ServerView, const NodeId &, const Variable &)>
 数据源回调函数,Write 函数指针定义
 
using ServerUserConfig = UA_StatusCode (*)(UA_Server *)
 服务器配置函数指针,由 nodeset_compiler 生成
 
using FindNodeInServer = ::std::tuple<UA_Server *, ::std::string_view, uint16_t>
 目标节点信息(服务端指针、浏览名、命名空间索引)
 
using FindNodeInClient = ::std::tuple<UA_Client *, ::std::string_view, uint16_t>
 目标节点信息(客户端指针、浏览名、命名空间索引)
 

枚举

enum class  TriggerChannel : uint8_t { TriggerChannel::Chn0 , TriggerChannel::Chn1 , TriggerChannel::Chn2 , TriggerChannel::Chn3 }
 相机外部触发通道 更多...
 
enum class  GrabMode : uint8_t { GrabMode::Continuous , GrabMode::Software , GrabMode::Hardware , GrabMode::RotaryEnc }
 相机采集模式 更多...
 
enum class  HandleMode : uint8_t { HandleMode::Index , HandleMode::Key , HandleMode::ID , HandleMode::IP }
 相机句柄创建方式 更多...
 
enum class  RetrieveMode : uint8_t { RetrieveMode::OpenCV , RetrieveMode::SDK }
 相机数据处理模式 更多...
 
enum  CameraProperties : uint16_t {
  CAMERA_AUTO_EXPOSURE = 0x1 , CAMERA_MANUAL_EXPOSURE = 0x2 , CAMERA_ONCE_EXPOSURE = 0x3 , CAMERA_AUTO_WB = 0x10 ,
  CAMERA_MANUAL_WB = 0x11 , CAMERA_ONCE_WB = 0x12 , CAMERA_EXPOSURE = 0x20 , CAMERA_GAIN = 0x21 ,
  CAMERA_GAMMA = 0x22 , CAMERA_WB_RGAIN = 0x23 , CAMERA_WB_GGAIN = 0x24 , CAMERA_WB_BGAIN = 0x25 ,
  CAMERA_CONTRAST = 0x26 , CAMERA_SATURATION = 0x27 , CAMERA_SHARPNESS = 0x28 , CAMERA_FRAME_HEIGHT = 0x30 ,
  CAMERA_FRAME_WIDTH = 0x31 , CAMERA_TRIGGER_DELAY = 0x40 , CAMERA_TRIGGER_COUNT = 0x41 , CAMERA_TRIGGER_PERIOD = 0x42 ,
  CAMERA_TRIGGER_SOFT = 0x43
}
 相机运行时属性 更多...
 
enum  AngleMode : bool { RAD = true , DEG = false }
 角度制式 更多...
 
enum class  CalPlane : uint8_t { CalPlane::xyz = 0 , CalPlane::xOy = 1 , CalPlane::xOz = 2 , CalPlane::yOz = 3 }
 计算所在平面 更多...
 
enum class  DiffMode : uint8_t { DiffMode::Central , DiffMode::Ridders }
 梯度/导数计算模式 更多...
 
enum class  FminMode : uint8_t { FminMode::ConjGrad , FminMode::Simplex }
 多维函数最优化模式 更多...
 
enum  PixChannel : uint8_t { BLUE , GREEN , RED , AUTO }
 像素通道枚举 更多...
 
enum  EulerAxis : int { X = 0 , Y = 1 , Z = 2 }
 欧拉角转轴枚举 更多...
 
enum class  OrtProvider : uint8_t { OrtProvider::CPU , OrtProvider::CUDA , OrtProvider::TensorRT , OrtProvider::OpenVINO }
 Ort 提供者 更多...
 
enum class  TransportID : uint8_t { TransportID::UDP_UADP = 1U , TransportID::MQTT_UADP = 2U , TransportID::MQTT_JSON = 3U }
 传输协议 更多...
 
enum  AccessLevel : uint8_t { VARIABLE_READ = 1U , VARIABLE_WRITE = 2U }
 
enum class  RotStatus : uint8_t { LOW_ROT_SPEED , HIGH_ROT_SPEED }
 旋转状态类型 更多...
 
enum  : std::size_t {
  POS_X = 0 , POS_Y = 1 , POS_Z = 2 , ANG_X = 3 ,
  ANG_Y = 4 , ANG_Z = 5 , YAW = 6 , PITCH = 7 ,
  ROLL = 8
}
 预测对象枚举 更多...
 
enum class  ArmorSizeType : uint8_t { ArmorSizeType::UNKNOWN , ArmorSizeType::SMALL , ArmorSizeType::BIG }
 装甲板大小类型 更多...
 
enum class  RuneType : uint8_t { RuneType::UNKNOWN , RuneType::INACTIVE , RuneType::ACTIVE }
 能量机关激活类型 更多...
 
enum class  TagType : uint8_t {
  TagType::UNKNOWN , TagType::NUM_0 , TagType::NUM_1 , TagType::NUM_2 ,
  TagType::NUM_3 , TagType::NUM_4 , TagType::NUM_5 , TagType::NUM_6 ,
  TagType::NUM_7 , TagType::NUM_8 , TagType::NUM_9 , TagType::CHAR_A ,
  TagType::CHAR_B , TagType::CHAR_C , TagType::CHAR_D , TagType::CHAR_E ,
  TagType::CHAR_F , TagType::CHAR_G , TagType::CHAR_H , TagType::CHAR_I ,
  TagType::CHAR_J , TagType::CHAR_K , TagType::CHAR_L , TagType::CHAR_M ,
  TagType::CHAR_N , TagType::CHAR_O , TagType::CHAR_P , TagType::CHAR_Q ,
  TagType::CHAR_R , TagType::CHAR_S , TagType::CHAR_T , TagType::CHAR_U ,
  TagType::CHAR_V , TagType::CHAR_W , TagType::CHAR_X , TagType::CHAR_Y ,
  TagType::CHAR_Z
}
 AprilTag 视觉标签类型 更多...
 
enum class  RobotType : uint8_t {
  RobotType::UNKNOWN , RobotType::HERO , RobotType::ENGINEER , RobotType::INFANTRY_3 ,
  RobotType::INFANTRY_4 , RobotType::INFANTRY_5 , RobotType::OUTPOST , RobotType::BASE ,
  RobotType::SENTRY
}
 机器人类型 更多...
 
enum class  CompensateType : uint8_t {
  CompensateType::UNKNOWN , CompensateType::UP , CompensateType::DOWN , CompensateType::LEFT ,
  CompensateType::RIGHT
}
 强制补偿类型 更多...
 

函数

void writeCorners (std::ostream &out, const std::vector< std::vector< std::array< float, 2 > > > &corners)
 导出角点数据
 
void readCorners (std::istream &in, std::vector< std::vector< std::array< float, 2 > > > &corners)
 导入角点数据
 
template<typename Tp >
constexpr Tp operator+ (Tp val, const cv::Matx< Tp, 1, 1 > &mat)
 
template<typename Tp >
constexpr cv::Matx< Tp, 1, 1 > operator+ (const cv::Matx< Tp, 1, 1 > &mat, Tp val)
 
template<typename Tp >
constexpr Tp operator- (Tp val, const cv::Matx< Tp, 1, 1 > &mat)
 
template<typename Tp >
constexpr cv::Matx< Tp, 1, 1 > operator- (const cv::Matx< Tp, 1, 1 > &mat, Tp val)
 
template<typename Tp >
constexpr Tp deg2rad (Tp deg)
 角度转换为弧度
 
template<typename Tp >
constexpr Tp rad2deg (Tp rad)
 弧度转换为角度
 
template<typename Tp >
constexpr cv::Matx< Tp, 3, 1 > point2matx (cv::Point3_< Tp > point)
 Point 类型转换为 Matx 类型
 
template<typename Tp >
constexpr cv::Point3_< Tp > matx2point (cv::Matx< Tp, 3, 1 > matx)
 Matx 类型转换为 Point 类型
 
template<typename Tp >
constexpr cv::Vec< Tp, 3 > matx2vec (cv::Matx< Tp, 3, 1 > matx)
 Matx 类型转换为 Vec 类型
 
template<typename Tp1 , typename Tp2 >
constexpr auto getDistance (const cv::Point_< Tp1 > &pt_1, const cv::Point_< Tp2 > &pt_2)
 获取距离
 
template<typename Tp1 , typename Tp2 >
constexpr auto getDistance (const cv::Vec< Tp1, 2 > &vec_1, const cv::Vec< Tp2, 2 > &vec_2)
 获取距离
 
template<typename Tp1 , typename Tp2 >
constexpr auto getDistance (const cv::Point3_< Tp1 > &pt_1, const cv::Point3_< Tp2 > &pt_2, CalPlane calplane=CalPlane::xyz)
 获取距离
 
template<typename Tp1 , typename Tp2 >
constexpr auto 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 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 getHAngle (const cv::Point_< Tp1 > &start, const cv::Point_< Tp2 > &end, AngleMode mode=RAD)
 获取与水平方向的夹角,以平面直角坐标系 \(x\) 轴为分界线, 逆时针 为正方向,范围: \((-180°,180°]\) ,默认返回弧度制
 
template<typename Tp1 , typename Tp2 >
constexpr auto getVAngle (const cv::Point_< Tp1 > &start, const cv::Point_< Tp2 > &end, AngleMode mode=RAD)
 获取与垂直方向的夹角,以平面直角坐标系 \(y\) 轴为分界线, 顺时针 为正方向,范围: \((-180°,180°]\) ,默认返回弧度制
 
template<typename Tp >
constexpr Tp getDeltaAngle (Tp angle_1, Tp angle_2)
 求两个角之间的夹角
 
template<typename Tp >
constexpr Tp sec (Tp x)
 正割 \(\sec(x)\)
 
template<typename Tp >
constexpr Tp csc (Tp x)
 余割 \(\csc(x)\)
 
template<typename Tp >
constexpr Tp cot (Tp x)
 余切 \(\cot(x)\)
 
template<typename Tp >
constexpr Tp sgn (Tp x)
 符号函数
 
template<typename Tp >
constexpr Tp sigmoid (Tp x, Tp k=1, Tp Kp=1, Tp mu=0)
 计算 sigmoid(x) 在某一点的函数值
 
template<typename Tp >
constexpr Tp cross2D (const cv::Vec< Tp, 2 > &a, const cv::Vec< Tp, 2 > &b)
 平面向量外积
 
template<typename Tp >
constexpr Tp cross2D (const cv::Point_< Tp > &a, const cv::Point_< Tp > &b)
 平面向量外积
 
template<typename ForwardIterator >
ForwardIterator::value_type calculateModeNum (ForwardIterator first, ForwardIterator last)
 在指定范围内寻找众数,时间复杂度 O(N)
 
template<typename T >
std::vector< T > operator+ (const std::vector< T > &vec1, const std::vector< T > &vec2)
 使用 std::vector 表示的向量加法
 
template<typename T >
std::vector< T > operator- (const std::vector< T > &vec1, const std::vector< T > &vec2)
 使用 std::vector 表示的向量减法
 
template<typename T >
std::vector< T > & operator+= (std::vector< T > &vec1, const std::vector< T > &vec2)
 使用 std::vector 表示的向量自加
 
template<typename T >
std::vector< T > & operator-= (std::vector< T > &vec1, const std::vector< T > &vec2)
 使用 std::vector 表示的向量自减
 
template<typename T >
std::vector< T > operator- (const std::vector< T > &vec)
 使用 std::vector 表示的向量取反
 
template<typename T >
std::vector< T > operator* (const std::vector< T > &vec, T val)
 使用 std::vector 表示的向量乘法(数乘)
 
template<typename T >
std::vector< T > operator* (T val, const std::vector< T > &vec)
 使用 std::vector 表示的向量乘法(数乘)
 
template<typename T >
std::vector< T > & operator*= (std::vector< T > &vec, T val)
 使用 std::vector 表示的向量乘法(数乘)
 
template<typename T >
std::vector< T > operator/ (const std::vector< T > &vec, T val)
 使用 std::vector 表示的向量除法(数乘)
 
template<typename T >
std::vector< T > & operator/= (std::vector< T > &vec, T val)
 使用 std::vector 表示的向量除法(数乘)
 
double derivative (Func1d func, double x, DiffMode mode=DiffMode::Central, double dx=1e-3)
 计算一元函数的导数
 
std::vector< double > grad (FuncNd func, const std::vector< double > &x, DiffMode mode=DiffMode::Central, double dx=1e-3)
 计算多元函数的梯度
 
std::pair< double, double > region (Func1d func, double x0, double delta=1)
 采用进退法确定搜索区间
 
std::pair< double, double > fminbnd (Func1d func, double x1, double x2, const OptimalOptions &options={})
 一维函数最小值搜索
 
std::pair< std::vector< double >, double > fminunc (FuncNd func, const std::vector< double > &x0, const OptimalOptions &options={})
 无约束多维函数的最小值搜索 [4] [8] ,可参考 多维无约束最优化方法
 
std::pair< std::vector< double >, double > fmincon (FuncNd func, const std::vector< double > &x0, const FuncNds &c, const FuncNds &ceq, const OptimalOptions &options={})
 有约束多维函数的最小值搜索
 
std::vector< double > lsqnonlin (const FuncNds &funcs, const std::vector< double > &x0, const OptimalOptions &options={})
 无约束非线性最小二乘求解
 
cv::Mat binary (cv::Mat src, PixChannel ch1, PixChannel ch2, uint8_t threshold)
 通道相减二值化
 
cv::Mat binary (cv::Mat src, uint8_t threshold)
 亮度阈值二值化
 
cv::Point2f calculateRelativeAngle (const cv::Matx33f &cameraMatrix, cv::Point2f center)
 计算相机中心与目标中心之间的相对角度
 
cv::Point2f calculateRelativeCenter (const cv::Matx33f &cameraMatrix, cv::Point2f angle)
 计算目标中心在像素坐标系下的坐标
 
cv::Vec2f cameraConvertToPixel (const cv::Matx33f &cameraMatrix, const cv::Matx51f &distCoeffs, const cv::Vec3f &center3d)
 计算 3D 目标点在像素坐标系下的坐标
 
cv::Point2f cameraConvertToPixel (const cv::Matx33f &cameraMatrix, const cv::Matx51f &distCoeffs, const cv::Point3f &center3d)
 计算 3D 目标点在像素坐标系下的坐标
 
template<typename Tp >
cv::Matx< Tp, 3, 3 > euler2Mat (Tp val, EulerAxis axis)
 欧拉角转换为旋转矩阵
 
std::string format (const char *fmt,...)
 返回使用类 printf 表达式格式化的文本字符串。
 
void breakOnError ()
 触发非法内存操作
 
void throwError (const Exception &exc)
 抛出异常
 
void error (int _code, std::string_view _err, const char *_func, const char *_file, int _line)
 发出错误信号并引发异常
 
const char * getBuildInformation ()
 返回完整的配置输出
 
const char * getVersionString ()
 返回库版本字符串
 
int getVersionMajor ()
 返回主要库版本
 
int getVersionMinor ()
 返回次要库版本
 
int getVersionPatch ()
 返回库版本的修订字段
 
constexpr NodeId nodeBoolean (0, UA_NS0ID_BOOLEAN)
 数据类型节点:Boolean 节点 ID
 
constexpr NodeId nodeSbyte (0, UA_NS0ID_SBYTE)
 数据类型节点:Sbyte 节点 ID
 
constexpr NodeId nodeByte (0, UA_NS0ID_BYTE)
 数据类型节点:Byte 节点 ID
 
constexpr NodeId nodeInt16 (0, UA_NS0ID_INT16)
 数据类型节点:Int16 节点 ID
 
constexpr NodeId nodeUint16 (0, UA_NS0ID_UINT16)
 数据类型节点:Uint16 节点 ID
 
constexpr NodeId nodeInt32 (0, UA_NS0ID_INT32)
 数据类型节点:Int32 节点 ID
 
constexpr NodeId nodeUint32 (0, UA_NS0ID_UINT32)
 数据类型节点:Uint32 节点 ID
 
constexpr NodeId nodeInt64 (0, UA_NS0ID_INT64)
 数据类型节点:Int64 节点 ID
 
constexpr NodeId nodeUint64 (0, UA_NS0ID_UINT64)
 数据类型节点:Uint64 节点 ID
 
constexpr NodeId nodeFloat (0, UA_NS0ID_FLOAT)
 数据类型节点:Float 节点 ID
 
constexpr NodeId nodeDouble (0, UA_NS0ID_DOUBLE)
 数据类型节点:Double 节点 ID
 
constexpr NodeId nodeString (0, UA_NS0ID_STRING)
 数据类型节点:String 节点 ID
 
constexpr NodeId nodeDatetime (0, UA_NS0ID_DATETIME)
 数据类型节点:Datetime 节点 ID
 
constexpr NodeId nodeObjectsFolder (0, UA_NS0ID_OBJECTSFOLDER)
 对象节点:ObjectsFolder 节点 ID
 
constexpr NodeId nodeTypesFolder (0, UA_NS0ID_TYPESFOLDER)
 对象节点:TypesFolder 节点 ID
 
constexpr NodeId nodeViewsFolder (0, UA_NS0ID_VIEWSFOLDER)
 对象节点:ViewsFolder 节点 ID
 
constexpr NodeId nodeObjectTypesFolder (0, UA_NS0ID_OBJECTTYPESFOLDER)
 对象节点:ObjectTypesFolder 节点 ID
 
constexpr NodeId nodeVariableTypesFolder (0, UA_NS0ID_VARIABLETYPESFOLDER)
 对象节点:VariableTypesFolder 节点 ID
 
constexpr NodeId nodeServer (0, UA_NS0ID_SERVER)
 对象节点:Server 节点 ID
 
constexpr NodeId nodeFolderType (0, UA_NS0ID_FOLDERTYPE)
 对象类型节点:FolderType 节点 ID
 
constexpr NodeId nodeBaseObjectType (0, UA_NS0ID_BASEOBJECTTYPE)
 对象类型节点:BaseObjectType 节点 ID
 
constexpr NodeId nodeBaseEventType (0, UA_NS0ID_BASEEVENTTYPE)
 对象类型节点:BaseEventType 节点 ID
 
constexpr NodeId nodeBaseDataVariableType (0, UA_NS0ID_BASEDATAVARIABLETYPE)
 变量类型节点:BaseDataVariableType 节点 ID
 
constexpr NodeId nodePropertyType (0, UA_NS0ID_PROPERTYTYPE)
 变量类型节点:PropertyType 节点 ID
 
constexpr NodeId nodeOrganizes (0, UA_NS0ID_ORGANIZES)
 引用类型节点:Organizes 节点 ID
 
constexpr NodeId nodeHasTypeDefinition (0, UA_NS0ID_HASTYPEDEFINITION)
 引用类型节点:HasTypeDefinition 节点 ID
 
constexpr NodeId nodeHasComponent (0, UA_NS0ID_HASCOMPONENT)
 引用类型节点:HasComponent 节点 ID
 
constexpr NodeId nodeHasProperty (0, UA_NS0ID_HASPROPERTY)
 引用类型节点:HasProperty 节点 ID
 
constexpr NodeId nodeHasSubtype (0, UA_NS0ID_HASSUBTYPE)
 引用类型节点:HasSubtype 节点 ID
 
constexpr NodeId nodeHasModellingRule (0, UA_NS0ID_HASMODELLINGRULE)
 引用类型节点:HasModellingRule 节点 ID
 
NodeId operator| (NodeId origin, rm::FindNodeInServer &&fnis)
 服务端路径搜索
 
NodeId operator| (NodeId origin, rm::FindNodeInClient &&fnic)
 客户端路径搜索
 
bool operator== (const RMStatus &lhs, const RMStatus &rhs)
 判断两个 RMStatus 是否相等
 

变量

constexpr double PI = ::std::numbers::pi
 圆周率: \(\pi\)
 
constexpr double e = ::std::numbers::e
 自然对数底数: \(e\)
 
constexpr double SQRT_2 = ::std::numbers::sqrt2
 根号 2: \(\sqrt2\)
 
constexpr double PI_2 = PI / 2.
 PI / 2: \(\frac\pi2\)
 
constexpr double PI_4 = PI / 4.
 PI / 4: \(\frac\pi4\)
 
Timer timer
 全局定时器对象
 
constexpr UA_Byte typeflag_ns0 []
 DataType 到对应 NS0 下的类型名的映射
 

枚举类型说明

◆ RotStatus

enum class rm::RotStatus : uint8_t
strong

旋转状态类型

枚举值
LOW_ROT_SPEED 

低转速

HIGH_ROT_SPEED 

高转速

函数说明

◆ getVersionMajor()

int rm::getVersionMajor ( )
inline

返回主要库版本

◆ getVersionMinor()

int rm::getVersionMinor ( )
inline

返回次要库版本

◆ getVersionPatch()

int rm::getVersionPatch ( )
inline

返回库版本的修订字段

◆ getVersionString()

const char * rm::getVersionString ( )
inline

返回库版本字符串

注解
"For example: 3.6.0-dev"
参见
getVersionMajor, getVersionMinor, getVersionPatch