装甲模块组合特征
更多...
#include <rmvl/combo/armor.h>
|
static ptr | make_combo (LightBlob::ptr p_left, LightBlob::ptr p_right, const ImuData &imu_data, double tick, ArmorSizeType armor_size_type=ArmorSizeType::UNKNOWN) |
| Armor 构造接口
|
|
static void | loadSVM (const std::string &path) |
| 加载 SVM 装甲板大小分类的 *.xml 文件
|
|
static void | imuConvertToCamera (const cv::Matx33f &gyro_rmat, const cv::Vec3f &gyro_tvec, const ImuData &imu_data, cv::Matx33f &cam_rmat, cv::Vec3f &cam_tvec) |
| 装甲板相机外参从 IMU 坐标系转化为相机坐标系
|
|
static void | cameraConvertToImu (const cv::Matx33f &cam_rmat, const cv::Vec3f &cam_tvec, const ImuData &imu_data, cv::Matx33f &gyro_rmat, cv::Vec3f &gyro_tvec) |
| 装甲板相机外参从相机坐标系转化为 IMU 坐标系
|
|
static bool | isContainBlob (LightBlob::ptr blob, Armor::ptr armor) |
| 判断单个装甲板所在区域内是否包含指定的灯条
|
|
static cv::Mat | getNumberROI (cv::Mat src, const_ptr p_armor) |
| 根据图像中指定装甲板的信息,截取仅包含数字的 ROI
|
|
装甲模块组合特征
- 注解
- 特征包括
[0]
: 左灯条,[1]
: 右灯条
- 角点为
[0]
: 左灯条下顶点,[1]
: 左灯条上顶点,[2]
: 右灯条上顶点,[3]
: 右灯条下顶点
◆ const_ptr
◆ ptr
◆ cameraConvertToImu()
static void rm::Armor::cameraConvertToImu |
( |
const cv::Matx33f & | cam_rmat, |
|
|
const cv::Vec3f & | cam_tvec, |
|
|
const ImuData & | imu_data, |
|
|
cv::Matx33f & | gyro_rmat, |
|
|
cv::Vec3f & | gyro_tvec ) |
|
static |
装甲板相机外参从相机坐标系转化为 IMU 坐标系
- 参数
-
[in] | cam_rmat | 相机坐标系下的装甲板旋转矩阵 |
[in] | cam_tvec | 相机坐标系下的装甲板平移向量 |
[in] | imu_data | IMU 数据信息 |
[out] | gyro_rmat | IMU 坐标系下的装甲板旋转矩阵 |
[out] | gyro_tvec | IMU 坐标系下的装甲板平移向量 |
◆ clone()
◆ getArmorType()
◆ getComboRatio()
float rm::Armor::getComboRatio |
( |
| ) |
|
|
inline |
◆ getCornerAngle()
float rm::Armor::getCornerAngle |
( |
| ) |
|
|
inline |
◆ getError()
float rm::Armor::getError |
( |
| ) |
|
|
inline |
◆ getLengthRatio()
float rm::Armor::getLengthRatio |
( |
| ) |
|
|
inline |
◆ getNumberROI()
static cv::Mat rm::Armor::getNumberROI |
( |
cv::Mat | src, |
|
|
const_ptr | p_armor ) |
|
static |
◆ getPose()
const cv::Vec2f & rm::Armor::getPose |
( |
| ) |
const |
|
inline |
◆ getWidthRatio()
float rm::Armor::getWidthRatio |
( |
| ) |
|
|
inline |
◆ imuConvertToCamera()
static void rm::Armor::imuConvertToCamera |
( |
const cv::Matx33f & | gyro_rmat, |
|
|
const cv::Vec3f & | gyro_tvec, |
|
|
const ImuData & | imu_data, |
|
|
cv::Matx33f & | cam_rmat, |
|
|
cv::Vec3f & | cam_tvec ) |
|
static |
装甲板相机外参从 IMU 坐标系转化为相机坐标系
- 参数
-
[in] | gyro_rmat | IMU 坐标系下的装甲板旋转矩阵 |
[in] | gyro_tvec | IMU 坐标系下的装甲板平移向量 |
[in] | imu_data | IMU 数据信息 |
[out] | cam_rmat | 相机坐标系下的装甲板旋转矩阵 |
[out] | cam_tvec | 相机坐标系下的装甲板平移向量 |
◆ isContainBlob()
判断单个装甲板所在区域内是否包含指定的灯条
- 参数
-
[in] | blob | 指定的灯条 |
[in] | armor | 单一装甲板 |
- 返回
- 是否包含灯条中心
◆ loadSVM()
static void rm::Armor::loadSVM |
( |
const std::string & | path | ) |
|
|
inlinestatic |
加载 SVM 装甲板大小分类的 *.xml 文件
- 参数
-
◆ make_combo()
Armor 构造接口
- 注解
- 若提供具体的
armor_size_type
参数,则不进行可行性验证,直接强制构造
- 参数
-
[in] | p_left | 左灯条共享指针 |
[in] | p_right | 右灯条共享指针 |
[in] | imu_data | 当前时刻组合特征对应的 IMU 数据 |
[in] | tick | 捕获组合特征的时间点 |
[in] | armor_size_type | 需要指定的大小装甲板类型,默认为 ArmorSizeType::UNKNOWN |
- 返回
- 若成功,返回 Armor 的共享指针,否则返回空
◆ setExtrinsic()
◆ setType()
该类的文档由以下文件生成: