| RMVL 2.4.0 Robotic Manipulation and Vision Library

载入中...
搜索中...
未找到
Public 类型 | Public 成员函数 | 静态 Public 成员函数 | 所有成员列表
rm::GyroTracker类 参考final
追踪器/特征组合的时间序列（数据组件） » 旋转装甲时间序列

整车状态追踪器 更多...

`#include <rmvl/tracker/gyro_tracker.h>`

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

## Public 类型
using | ptr = std::shared_ptr<GyroTracker>
using | const_ptr = std::shared_ptr<const GyroTracker>
Public 类型 继承自 rm::tracker
using | ptr = std::shared_ptr<tracker>
using | const_ptr = std::shared_ptr<const tracker>

## Public 成员函数
tracker::ptr | clone () override
| 从另一个追踪器进行构造
void | update (double, const ImuData &) override
| 未捕获 combo，但使用其余数据更新追踪器（即目标丢失时的操作）
void | update (combo::ptr p_combo) override
| 使用捕获的 combo 更新平面目标追踪器
void | updateVanishState (bool is_vanish)
| 更新消失状态
float | getDuration () const
| 获取帧差时间
const cv::Vec2f & | getPose () const
| 获取修正后的装甲板姿态法向量
float | getRotatedSpeed () const
| 获取绕 y 轴的自转角速度（俯视顺时针为正，滤波数据，弧度）
Public 成员函数 继承自 rm::tracker
virtual bool | invalid () const
| 判断追踪器是否无效
combo::ptr | front () const
| 获取时间队列中最新的组合体
combo::ptr | back () const
| 获取时间队列中最后的组合体
uint32_t | getVanishNumber () const
| 获取掉帧数
size_t | size () const
| 获取序列数量信息
const std::deque< combo::ptr > & | data () const
| 获取时间序列原始数据
bool | empty () const
| 序列是否为空
combo::ptr | at (size_t _n) const
| 索引 - 容器仅能通过内部 at 实现访问保证下标安全
const StateInfo & | state () const
| 追踪器状态
StateInfo & | state ()
| 追踪器状态
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 CameraExtrinsics & | extrinsic () const
| 修正后的相机外参
const cv::Point2f & | speed () const
| 获取追踪器修正后的目标转角速度（角度制）

## 静态 Public 成员函数
static ptr | make_tracker (combo::ptr p_armor)
| 构建 GyroTracker
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 {}
| 消失帧数
StateInfo | _state {}
| 追踪器状态
float | _height {}
| 追踪器高度（可表示修正后）
float | _width {}
| 追踪器宽度（可表示修正后）
float | _angle {}
| 追踪器角度（可表示修正后）
cv::Point2f | _center
| 追踪器中心点（可表示修正后）
cv::Point2f | _relative_angle
| 相对目标转角（可表示修正后）
std::vector< cv::Point2f > | _corners
| 追踪器角点（可表示修正后）
CameraExtrinsics | _extrinsic
| 相机外参（可表示修正后）
cv::Point2f | _speed
| 相对目标转角速度

## 详细描述

整车状态追踪器

## 成员类型定义说明

## ◆ const_ptr

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

## ◆ ptr

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

## 成员函数说明

## ◆ cast() [1/2]

const_ptr rm::GyroTracker::cast | ( | tracker::const_ptr | p_tracker | ) |
| inline static

## ◆ cast() [2/2]

ptr rm::GyroTracker::cast | ( | tracker::ptr | p_tracker | ) |
| inline static

## ◆ clone()

tracker::ptr rm::GyroTracker::clone | ( |  | ) |
| override virtual

Python:
| rm.GyroTracker.clone( |  | ) -> | <rm.GyroTracker object>

从另一个追踪器进行构造

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

实现了 rm::tracker.

## ◆ getDuration()

float rm::GyroTracker::getDuration | ( |  | ) | const
| inline

Python:
| rm.GyroTracker.getDuration( |  | ) -> | time

获取帧差时间

## ◆ getPose()

const cv::Vec2f & rm::GyroTracker::getPose | ( |  | ) | const
| inline

Python:
| rm.GyroTracker.getPose( |  | ) -> | px, py

获取修正后的装甲板姿态法向量

## ◆ getRotatedSpeed()

float rm::GyroTracker::getRotatedSpeed | ( |  | ) | const
| inline

Python:
| rm.GyroTracker.getRotatedSpeed( |  | ) -> | val

获取绕 y 轴的自转角速度（俯视顺时针为正，滤波数据，弧度）

## ◆ make_tracker()

ptr rm::GyroTracker::make_tracker | ( | combo::ptr | p_armor | ) |
| inline static

Python:
| rm.GyroTracker.make_tracker( | armor | ) -> | <rm.GyroTracker object>

构建 GyroTracker

参数

  [in] | p_armor | 第一帧装甲（不允许为空）

## ◆ update() [1/2]

void rm::GyroTracker::update | ( | combo::ptr | p_combo | ) |
| override virtual

Python:
| rm.GyroTracker.update( | armor | ) -> | None

使用捕获的 combo 更新平面目标追踪器

参数

  [in] | p_combo | 待传入 tracker 的平面目标，必须严格保证不为空

实现了 rm::tracker.

## ◆ update() [2/2]

void rm::GyroTracker::update | ( | double | tick,
|  | const ImuData & | imu_data )
| inline override virtual

Python:
| rm.GyroTracker.update( | armor | ) -> | None

未捕获 combo，但使用其余数据更新追踪器（即目标丢失时的操作）

参数

  [in] | tick | 当前时间点
  [in] | imu_data | 当前 IMU 信息

实现了 rm::tracker.

## ◆ updateVanishState()

void rm::GyroTracker::updateVanishState | ( | bool | is_vanish | ) |
| inline

Python:
| rm.GyroTracker.updateVanishState( | is_vanish | ) -> | None

更新消失状态

参数

  [in] | is_vanish | 是否消失