连接的组件标签
Connected Component Labeling
在OpenCV 3.0中,有一个称为ConnectedComponent的函数。
我知道它将其作为输入二进制图像并返回标签和连接组件的数量,但是内部使用了哪些算法?
openCV是开源。您可以查看文档和源代码。
您可以选择2种算法以执行连接的组件lablelling:
-
ccl_wu:基于
"加快连接组件算法的两种策略",使用决策树的SAUF(扫描阵列联合查找)变体,Kesheng Wu等。
-
ccl_grana:基于
"基于决策树的优化基于块的连接组件标签",Costantino Grana等
这仅适用于8个连接组件。
opencv中的默认值> = 3.2( CCL_DEFAULT
)使用WU的算法进行4-触发性,而Grana的算法则用于8个连接性。
在OPENCV 3.0.0中,您使用WU的算法用于4和8连接性,在OPENCV> = 3.2中,您可以选择3个选项之一,根据字段connectivity
和ccltype
:
connectivity 4 | 8
|
type |
|
CCL_DEFAULT Wu | Grana
CCL_WU Wu | Wu
CCL_GRANA Wu | Grana
您可以阅读有关许多来源中的连接组件标记算法
OpenCV实现在这里,并包含以下线索:
//Based on "Two Strategies to Speed up Connected Components Algorithms",
//the SAUF (Scan array union find) variant
//using decision trees
//Kesheng Wu, et al
文章
相关文章:
- 如何将 txt 文件中的行分隔为组件C++
- 使用不同的CRT将新的C++代码与旧的(二进制)组件隔离开来的最佳方法是什么
- 到连接组件算法的问题(递归)
- 两个 COM 组件中 ENUM 的重复条目
- 为什么 gcc 会产生这种奇怪的组件与叮当声?
- C 和 C++ 中开关语句的案例标签的常量值,但显示不同的行为
- 使用 bfs 解决连接组件问题时得到错误的答案
- 如何在ECS框架中更新组件数据和通知系统
- 如何正确指定 goto 语句的标签?
- 如何从ECS中的模板方法获取组件?
- 使用g++静态初始化带有命名标签的嵌套C++结构
- 使用蓝牙组件将数据从Android手机传输到串行设备时出现问题
- 组件上的虚幻引擎可蓝图UFUNCTION会导致构建错误
- 通过水平滚动条更改标签
- 在C++中访问蓝图类组件的正确方法是什么?
- 有关纯 ECS(实体组件系统)和更新系统的问题
- 提高基于组件的游戏引擎的效率
- 根据现有的标签(而不是二进制图像)查找使用 OpenCV 连接的组件
- 如何通过最快的方法删除指定的标签组件
- 连接的组件标签