RMVL  1.5.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 ImuData &imu_data) override
 rm::Rune 目标丢失,使用时间点和 IMU 数据更新追踪器
 
bool invalid () const override
 判断追踪器是否无效
 
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 type () const
 追踪器类型
 
float height () const
 追踪器修正后的高度
 
float width () const
 追踪器修正后的宽度
 
float angle () const
 追踪器修正后的角度
 
const cv::Point2f & center () const
 追踪器修正后的中心点
 
const std::vector< cv::Point2f > & corners () const
 追踪器修正后的角点
 
const cv::Point2f & getRelativeAngle () const
 修正后的相对角度(角度制)
 
const CameraExtrinsicsextrinsic () const
 修正后的相机外参
 
const cv::Point2f & speed () const
 获取追踪器修正后的目标转角速度(角度制)
 

静态 Public 成员函数

static ptr make_tracker (combo::ptr p_rune)
 构建 RuneTracker
 

额外继承的成员函数

- 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
 相对目标转角速度
 

详细描述

神符时间序列

注解
  • center() 获取神符组合体修正的中心点,要获取神符旋转中心请访问对应特征
  • angle() 考虑圈数的角度,即角度被映射至 \((-\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第一帧神符

成员函数说明

◆ clone()

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

从另一个追踪器进行构造

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

实现了 rm::tracker.

◆ getRotatedSpeed()

float rm::RuneTracker::getRotatedSpeed ( )
inline

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

◆ invalid()

bool rm::RuneTracker::invalid ( ) const
overridevirtual

判断追踪器是否无效

重载 rm::tracker .

◆ 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 ImuData & imu_data )
overridevirtual

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

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

实现了 rm::tracker.


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