| RMVL 2.4.0 Robotic Manipulation and Vision Library

载入中...
搜索中...
未找到
Public 类型 | Public 成员函数 | 静态 Public 成员函数 | 所有成员列表
rm::LightBlob类 参考
图像轮廓特征（数据组件） » 装甲模块灯条

装甲板灯条 更多...

`#include <rmvl/feature/light_blob.h>`

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

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

## Public 成员函数
const cv::Point2f & | getTopPoint () const
| 获取灯条顶端点
const cv::Point2f & | getBottomPoint () const
| 获取灯条底端点
feature::ptr | clone () override
| 从另一个特征进行构造
Public 成员函数 继承自 rm::feature
float | area () const
| 获取特征面积
const cv::Point2f & | center () const
| 获取特征中心点
float | width () const
| 获取特征宽度
float | height () const
| 获取特征高度
float | angle () const
| 获取特征角度
const std::vector< cv::Point2f > & | corners () const
| 获取特征角点
const StateInfo & | state () const
| 获取特征状态
StateInfo & | state ()
| 获取特征状态

## 静态 Public 成员函数
static ptr | make_feature (const std::vector< cv::Point > &contour)
| LightBlob 构造接口
static ptr | make_feature (const cv::Point2f &top, const cv::Point2f &bottom, float width)
| LightBlob 构造接口，使用若干参数
static ptr | cast (feature::ptr p_feature)
static const_ptr | cast (feature::const_ptr p_feature)

## 额外继承的成员函数
Protected 属性 继承自 rm::feature
float | _width {}
| 特征宽度
float | _height {}
| 特征高度
float | _angle {}
| 特征角度
cv::Point2f | _center
| 特征中心点
std::vector< cv::Point2f > | _corners
| 特征角点
rm::StateInfo | _state
| 特征状态

## 详细描述

装甲板灯条

注解
  "/" 状态角度为正

## 成员类型定义说明

## ◆ const_ptr

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

## ◆ ptr

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

## 成员函数说明

## ◆ cast() [1/2]

const_ptr rm::LightBlob::cast | ( | feature::const_ptr | p_feature | ) |
| inline static

## ◆ cast() [2/2]

ptr rm::LightBlob::cast | ( | feature::ptr | p_feature | ) |
| inline static

## ◆ clone()

feature::ptr rm::LightBlob::clone | ( |  | ) |
| inline override virtual

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

从另一个特征进行构造

返回
  指向新特征的共享指针

实现了 rm::feature.

## ◆ getBottomPoint()

const cv::Point2f & rm::LightBlob::getBottomPoint | ( |  | ) | const
| inline

Python:
| rm.LightBlob.getBottomPoint( |  | ) -> | x, y

获取灯条底端点

## ◆ getTopPoint()

const cv::Point2f & rm::LightBlob::getTopPoint | ( |  | ) | const
| inline

Python:
| rm.LightBlob.getTopPoint( |  | ) -> | x, y

获取灯条顶端点

## ◆ make_feature() [1/2]

ptr rm::LightBlob::make_feature | ( | const cv::Point2f & | top,
|  | const cv::Point2f & | bottom,
|  | float | width )
| static

Python:
| rm.LightBlob.make_feature( | contour | ) -> | <rm.LightBlob object>
| rm.LightBlob.make_feature( | top, bottom, w | ) -> | <rm.LightBlob object>

LightBlob 构造接口，使用若干参数

参数

  [in] | top | 上顶点
  [in] | bottom | 下顶点
  [in] | width | 灯条宽度

返回
  若构造成功则返回 LightBlob 的共享指针，否则返回 nullptr

函数调用图:

## ◆ make_feature() [2/2]

ptr rm::LightBlob::make_feature | ( | const std::vector< cv::Point > & | contour | ) |
| static

Python:
| rm.LightBlob.make_feature( | contour | ) -> | <rm.LightBlob object>
| rm.LightBlob.make_feature( | top, bottom, w | ) -> | <rm.LightBlob object>

LightBlob 构造接口

参数

  [in] | contour | 特征轮廓

返回
  若构造成功则返回 LightBlob 的共享指针，否则返回 nullptr