使用Boost Graph Library从多个来源首先搜索广度

时间:2015-02-19 21:17:41

标签: c++ breadth-first-search boost-graph

我希望能够在BGL中使用bfs来查找森林中的所有树,这基本上是使用多个源顶点查找连接的组件。例如,它可以用于找到图像的不同连接区域以实现图像分割(这只是其中一种情况)。如何在BGL中使用breadth_first_search来执行此操作?任何指向示例/来源的指针都将非常感谢!我调查了BGL文档,但没有成功找到我想要做的事情。

1 个答案:

答案 0 :(得分:1)

只需使用boost中已存在的connected components即可。有一个有用的example。之后,图中的所有顶点都将具有到其组件的映射。如果您真的想在单个零件上使用BFS,只需使用访客并将节点推送到矢量中。

您可以使用以下命令指定起始节点:

breadth_first_search(graph, visitor(vis).root_vertex(root_vertex_descriptor));