RMVL  2.1.0-dev
Robotic Manipulation and Vision Library
载入中...
搜索中...
未找到

神符时间序列 更多...

#include <rmvl/tracker/rune_tracker.h>

类 rm::RuneTracker 继承关系图:
rm::RuneTracker 的协作图:

Public 类型

using ptr = std::shared_ptr<RuneTracker>
 
using const_ptr = std::shared_ptr<const RuneTracker>
 
- Public 类型 继承自 rm::tracker
using ptr = std::shared_ptr<tracker>
 
using const_ptr = std::shared_ptr<const tracker>
 

Public 成员函数

 RuneTracker ()=delete
 
 RuneTracker (combo::ptr p_rune)
 初始化 RuneTracker
 
tracker::ptr clone () override
 从另一个追踪器进行构造
 
void update (combo::ptr p_rune) override
 使用捕获的 rm::Rune 组合体更新追踪器
 
void update (double tick, const GyroData &gyro_data) override
 rm::Rune 目标丢失,使用时间点和陀螺仪数据更新追踪器
 
void initFilter (float init_angle=0.f, float init_speed=0.f)
 滤波器初始化
 
float getRotatedSpeed ()
 获取神符滤波后的角速度(角度制)
 
- Public 成员函数 继承自 rm::tracker
combo::ptr front () const
 获取时间队列中最新的组合体
 
combo::ptr back () const
 获取时间队列中最后的组合体
 
uint32_t getVanishNumber () const
 获取掉帧数
 
size_t size () const
 获取序列数量信息
 
const auto & data () const
 获取时间序列原始数据
 
bool empty () const
 序列是否为空
 
combo::ptr at (size_t _n) const
 索引 - 容器仅能通过内部 at 实现访问保证下标安全
 
RMStatus getType () const
 追踪器类型
 
float getHeight () const
 追踪器修正后的高度
 
float getWidth () const
 追踪器修正后的宽度
 
float getAngle () const
 追踪器修正后的角度
 
const cv::Point2f & getCenter () const
 追踪器修正后的中心点
 
const std::vector< cv::Point2f > & getCorners () const
 追踪器修正后的角点
 
const cv::Point2f & getRelativeAngle () const
 修正后的相对角度(角度制)
 
const CameraExtrinsicsgetExtrinsics () const
 修正后的相机外参
 
const cv::Point2f & getSpeed () const
 获取追踪器修正后的目标转角速度(角度制)
 

静态 Public 成员函数

static ptr make_tracker (combo::ptr p_rune)
 构建 RuneTracker
 
static ptr cast (tracker::ptr p_tracker)
 动态类型转换
 
static const_ptr cast (tracker::const_ptr p_tracker)
 动态类型转换
 

额外继承的成员函数

- Protected 属性 继承自 rm::tracker
std::deque< combo::ptr_combo_deque
 组合体时间队列
 
uint32_t _vanish_num {}
 消失帧数
 
RMStatus _type {}
 追踪器类型
 
float _height {}
 追踪器高度(可表示修正后)
 
float _width {}
 追踪器宽度(可表示修正后)
 
float _angle {}
 追踪器角度(可表示修正后)
 
cv::Point2f _center
 追踪器中心点(可表示修正后)
 
cv::Point2f _relative_angle
 相对目标转角(可表示修正后)
 
std::vector< cv::Point2f > _corners
 追踪器角点(可表示修正后)
 
CameraExtrinsics _extrinsic
 相机外参(可表示修正后)
 
cv::Point2f _speed
 相对目标转角速度
 

详细描述

神符时间序列

注解
  • getCenter() 获取神符组合体修正的中心点,要获取神符旋转中心请访问对应特征
  • getAngle() 考虑圈数的角度,即角度被映射至 \((-\infty,+\infty)\) 的范围,且不经过滤波

成员类型定义说明

◆ const_ptr

using rm::RuneTracker::const_ptr = std::shared_ptr<const RuneTracker>

◆ ptr

using rm::RuneTracker::ptr = std::shared_ptr<RuneTracker>

构造及析构函数说明

◆ RuneTracker() [1/2]

rm::RuneTracker::RuneTracker ( )
delete

◆ RuneTracker() [2/2]

rm::RuneTracker::RuneTracker ( combo::ptr p_rune)
explicit

初始化 RuneTracker

参数
[in]p_rune第一帧神符

成员函数说明

◆ cast() [1/2]

static const_ptr rm::RuneTracker::cast ( tracker::const_ptr p_tracker)
inlinestatic

动态类型转换

参数
[in]p_trackertracker::const_ptr 抽象指针
返回
派生对象指针

◆ cast() [2/2]

static ptr rm::RuneTracker::cast ( tracker::ptr p_tracker)
inlinestatic

动态类型转换

参数
[in]p_trackertracker::ptr 抽象指针
返回
派生对象指针

◆ clone()

tracker::ptr rm::RuneTracker::clone ( )
overridevirtual

从另一个追踪器进行构造

返回
指向新追踪器的共享指针

实现了 rm::tracker.

◆ getRotatedSpeed()

float rm::RuneTracker::getRotatedSpeed ( )
inline

获取神符滤波后的角速度(角度制)

◆ initFilter()

void rm::RuneTracker::initFilter ( float init_angle = 0.f,
float init_speed = 0.f )

滤波器初始化

参数
[in]init_angle初始角度
[in]init_speed初始速度

◆ make_tracker()

static ptr rm::RuneTracker::make_tracker ( combo::ptr p_rune)
inlinestatic

构建 RuneTracker

参数
[in]p_rune第一帧神符模块组合特征(不允许为空)

◆ update() [1/2]

void rm::RuneTracker::update ( combo::ptr p_rune)
overridevirtual

使用捕获的 rm::Rune 组合体更新追踪器

参数
[in]p_rune神符共享指针

实现了 rm::tracker.

◆ update() [2/2]

void rm::RuneTracker::update ( double tick,
const GyroData & gyro_data )
overridevirtual

rm::Rune 目标丢失,使用时间点和陀螺仪数据更新追踪器

参数
[in]tick当前时间点
[in]gyro_data云台数据

实现了 rm::tracker.


该类的文档由以下文件生成: