表格线识别通用库文档
载入中...
搜索中...
未找到
cm::Rects类 参考

矩形列表类 更多...

#include <rects.hpp>

类 cm::Rects 继承关系图:
cm::Rects 的协作图:

Public 成员函数

 Rects ()=default
 矩形类的默认构造函数
 
 Rects (const Rects &rects)=default
 矩形类的拷贝构造函数
 
 Rects (const std::vector< cv::Rect > &rects)
 矩形列表类的带参构造函数
 
 Rects (const std::vector< cv::Vec4i > &rects)
 矩形列表类的带参构造函数
 
 Rects (const std::vector< std::vector< int > > &rects)
 矩形列表类的带参构造函数
 
 ~Rects ()=default
 矩形类的析构函数
 
Rectsoperator= (const std::vector< cv::Rect > &rects)
 矩形类的赋值运算符
 
Rectsoperator= (const std::vector< cv::Vec4i > &rects)
 矩形列表类的赋值拷贝构造函数
 
Rectsoperator= (const std::vector< std::vector< int > > &rects)
 矩形列表类的赋值拷贝构造函数
 
Rect MergeRects () const
 合并矩形框
 
RectsMergeRects (int horizontal_min_distance=0, int vertical_min_distance=0)
 合并矩形框
 
RectsFilterInvalidRects (int min_width=1, int min_height=1)
 根据所给条件过滤无效矩形
 
- Public 成员函数 继承自 cm::List< Rect >
 List ()=default
 列表类的默认构造函数
 
 List (const List< Rect > &list)=default
 列表类的拷贝构造函数
 
 List (const std::vector< Rect > &list)
 列表类的带参构造函数
 
 ~List ()=default
 列表类的析构函数
 
List< Rect > & operator+= (const List< Rect > &list)
 列表类重载加等于运算符
 
List< RectFilter (const FUNC &func) const
 过滤列表项
 
U Reduce (const FUNC &func, U initial_value=U{}) const
 累计列表项
 
List< UMap (const FUNC &func) const
 列表项映射
 
List< RectMutFilter (const FUNC &func)
 过滤列表项
 
U MutReduce (const FUNC &func, U initial_value=U{})
 累计列表项
 
List< UMutMap (const FUNC &func)
 列表项映射
 
const_iterator Max () const
 求列表中的最大值
 
const_iterator Max (const FUNC &func) const
 求列表中的最大值
 
const_iterator Min () const
 求列表中的最小值
 
const_iterator Min (const FUNC &func) const
 求列表中的最小值
 
List< Rect > & Sort ()
 对列表进行排序
 
List< Rect > & Sort (const FUNC &func)
 对列表进行排序
 
iterator Order (size_t index)
 按序获取列表中指定索引的元素
 
iterator Order (size_t index, const FUNC &func)
 按序获取列表中指定索引的元素
 
bool Include (const Rect &value) const
 判断列表中是否包含指定值
 
bool Include (const FUNC &func) const
 判断列表中是否包含满足指定条件的值
 
size_t Index (const Rect &value, size_t from_index=0) const
 查找指定值在列表中的索引
 
size_t Index (const FUNC &func, size_t from_index=0) const
 查找指定值在列表中的索引
 
size_t LastIndex (const Rect &value, size_t from_index=INT_MAX) const
 查找指定值在列表中的索引
 
size_t LastIndex (const FUNC &func, size_t from_index=INT_MAX) const
 查找指定值在列表中的索引
 
size_t Count (const Rect &value) const
 统计列表中指定值的出现次数
 
size_t Count (const FUNC &func) const
 统计满足指定条件的元素个数
 
List< Rect > & Reverse ()
 对列表中的元素进行反转
 
List< Rect > & Shuffle ()
 对列表中的元素进行随机打乱
 
List< Rect > & Fill (const Rect &value)
 将列表中所有元素填充为指定值
 
List< RectSlice (size_t start, size_t end=UINT_MAX) const
 切片提取列表中指定范围的元素
 

详细描述

矩形列表类

该类公有继承 List<Rect> ,用于管理和操作一系列的 矩形

作者
justliulong
日期
2023-12-03

在文件 rects.hpp28 行定义.

构造及析构函数说明

◆ Rects() [1/5]

cm::Rects::Rects ( )
default

矩形类的默认构造函数

◆ Rects() [2/5]

cm::Rects::Rects ( const Rects & rects)
default

矩形类的拷贝构造函数

◆ Rects() [3/5]

cm::Rects::Rects ( const std::vector< cv::Rect > & rects)
inline

矩形列表类的带参构造函数

该构造函数使用标准库提供的vector<cv::Rect>对象构造矩形列表。

参数
rects包含多个cv::Rect对象的向量,每个cv::Rect对象表示一个矩形的左上顶点和宽高(x, y, w, h)
注解
  • 此构造函数遍历一个包含 cv::Rect 对象的 std::vector,每个 cv::Rect 对象代表一个矩形,其中包含矩形的一个端点左上顶点和宽高(x, y, w, h)。
  • 对于每个 cv::Rect 对象,构造函数将其转换为 cm::Rect 对象并添加到 Rects 列表中。这允许直接从 OpenCV 的矩形表示转换为自定义的 Rects 集合,便于后续处理和操作。
作者
justliulong
日期
2023-12-04

在文件 rects.hpp66 行定义.

◆ Rects() [4/5]

cm::Rects::Rects ( const std::vector< cv::Vec4i > & rects)
inline

矩形列表类的带参构造函数

该构造函数使用提供的cv::Vec4i对象列表来构造矩形列表类。

参数
rects包含多个cv::Vec4i对象的向量,每个cv::Vec4i对象表示一个矩形的左上角顶点和宽高(x, y, w, h)
注解
  • 此构造函数遍历一个包含 cv::Vec4i 对象的 std::vector,每个 cv::Vec4i 对象代表一个矩形,其中包含矩形的左上角顶点和宽高(x, y, w, h)。
  • 对于每个 cv::Vec4i 对象,构造函数将其转换为 cm::Rect 对象并添加到 Rects 列表中。这允许直接从 OpenCV 的矩形表示转换为自定义的 Rects 集合,便于后续处理和操作。
示例
cv::Vec4i vec4i1, vec4i2, vec4i3;
// 支持通过 opencv 的Vec4i构造
点类
Definition point.hpp:52
矩形列表类
Definition rects.hpp:28
作者
justliulong
日期
2023-12-04

在文件 rects.hpp92 行定义.

◆ Rects() [5/5]

cm::Rects::Rects ( const std::vector< std::vector< int > > & rects)
inline

矩形列表类的带参构造函数

该构造函数使用提供的标准库vector<vector<int>>构造矩形列表。

参数
rects包含多个std::vector<int>对象的向量,每个std::vector<int>对象表示一个矩形的左上角顶点和宽高(x, y, w, h)
注解
  • 此构造函数遍历一个包含 std::vector<int> 对象的 std::vector,每个 std::vector<int> 对象代表一条线段,其中包含一个矩形的左上角顶点和宽高(x, y, w, h)。
  • 对于每个 std::vector<int> 对象,构造函数将其转换为 cm::Rect 对象并添加到 Rects 列表中。这允许直接从 OpenCV 的矩形表示转换为自定义的 Rects 集合,便于后续处理和操作。
作者
justliulong
日期
2023-12-14

在文件 rects.hpp110 行定义.

◆ ~Rects()

cm::Rects::~Rects ( )
default

矩形类的析构函数

成员函数说明

◆ FilterInvalidRects()

Rects & cm::Rects::FilterInvalidRects ( int min_width = 1,
int min_height = 1 )
inline

根据所给条件过滤无效矩形

根据最小宽度和最小高度条件,过滤出不满足条件的矩形,并更新矩形列表。

参数
min_width最小宽度,小于这宽度的矩形认为不满足条件
min_height最小高度,小于这高度的矩形认为不满足条件
返回
类自身引用,方便链式调用
作者
justliulong
日期
2023-12-04

在文件 rects.hpp264 行定义.

函数调用图:

◆ MergeRects() [1/2]

Rect cm::Rects::MergeRects ( ) const
inline

合并矩形框

该函数遍历所有矩形框,计算它们的最小边界矩形作为合并后的矩形框。计算过程中包括对矩形框的 x、y 坐标以及宽度和高度的计算。

返回
合并后的矩形框
作者
dreamy-xay
日期
2024-01-04

在文件 rects.hpp193 行定义.

函数调用图:
这是这个函数的调用关系图:

◆ MergeRects() [2/2]

Rects & cm::Rects::MergeRects ( int horizontal_min_distance = 0,
int vertical_min_distance = 0 )
inline

合并矩形框

该函数基于距离等参数,在时间复杂度 O(n²) 的情况下合并矩形框,其中距离参数为负数时表示合并重叠矩形框。

参数
horizontal_min_distance横向最小距离(当矩形框之间距离 <= 横向最小距离时合并两个矩形框)
vertical_min_distance纵向最小距离
返回
类自身引用,方便链式调用
作者
dreamy-xay
日期
2024-01-03

在文件 rects.hpp225 行定义.

函数调用图:

◆ operator=() [1/3]

Rects & cm::Rects::operator= ( const std::vector< cv::Rect > & rects)
inline

矩形类的赋值运算符

矩形列表类的赋值拷贝构造函数

该构造函数使用标准库提供的vector<cv::Rect>对象构造矩形列表。

参数
rects包含多个cv::Rect对象的向量,每个cv::Rect对象表示一个矩形的左上顶点和宽高(x, y, w, h)
注解
  • 此构造函数遍历一个包含 cv::Rect 对象的 std::vector,每个 cv::Rect 对象代表一个矩形,其中包含矩形的一个端点左上顶点和宽高(x, y, w, h)。
  • 对于每个 cv::Rect 对象,构造函数将其转换为 cm::Rect 对象并添加到 Rects 列表中。这允许直接从 OpenCV 的矩形表示转换为自定义的 Rects 集合,便于后续处理和操作。
作者
justliulong
日期
2023-12-04

在文件 rects.hpp129 行定义.

◆ operator=() [2/3]

Rects & cm::Rects::operator= ( const std::vector< cv::Vec4i > & rects)
inline

矩形列表类的赋值拷贝构造函数

该构造函数使用提供的cv::Vec4i对象列表来构造矩形列表类。

参数
rects包含多个cv::Vec4i对象的向量,每个cv::Vec4i对象表示一个矩形的左上角顶点和宽高(x, y, w, h)
注解
  • 此构造函数遍历一个包含 cv::Vec4i 对象的 std::vector,每个 cv::Vec4i 对象代表一个矩形,其中包含矩形的左上角顶点和宽高(x, y, w, h)。
  • 对于每个 cv::Vec4i 对象,构造函数将其转换为 cm::Rect 对象并添加到 Rects 列表中。这允许直接从 OpenCV 的矩形表示转换为自定义的 Rects 集合,便于后续处理和操作。
示例
cv::Vec4i vec4i1, vec4i2, vec4i3;
// 支持通过 opencv 的Vec4i构造
作者
justliulong
日期
2023-12-04

在文件 rects.hpp157 行定义.

◆ operator=() [3/3]

Rects & cm::Rects::operator= ( const std::vector< std::vector< int > > & rects)
inline

矩形列表类的赋值拷贝构造函数

该构造函数使用提供的标准库vector<vector<int>>构造矩形列表。

参数
rects包含多个std::vector<int>对象的向量,每个std::vector<int>对象表示一个矩形的左上角顶点和宽高(x, y, w, h)
注解
  • 此构造函数遍历一个包含 std::vector<int> 对象的 std::vector,每个 std::vector<int> 对象代表一条线段,其中包含一个矩形的左上角顶点和宽高(x, y, w, h)。
  • 对于每个 std::vector<int> 对象,构造函数将其转换为 cm::Rect 对象并添加到 Rects 列表中。这允许直接从 OpenCV 的矩形表示转换为自定义的 Rects 集合,便于后续处理和操作。
作者
justliulong
日期
2023-12-14

在文件 rects.hpp177 行定义.


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