当前位置:   article > 正文

计算机视觉学习14:图像分割----Graph Cut_watershed algorithm、minimum cut normalized cut和gra

watershed algorithm、minimum cut normalized cut和graph cut 图像分割对比图

图像分割

图像分割是将一幅图像分割成有意义区域的过程。区域可以是图像的前景与背景或
图像中一些单独的对象。这些区域可以利用一些诸如颜色、边界或近邻相似性等特
征进行构建。

图割:Graph Cut

图割是将一个有向图分割成两个互不相交的集合,可以用来解决很多计算机视觉方面的问题,诸如立体深度重建、图像拼接和图像分割等计算机视觉方面的不同问题。
从图像像素和像素的近邻创建一个图并引入一个能量或“代价”函数,我们有可能利用图割方法将图像分割成两个或多个区域。图割的基本思想是,相似且彼此相近的像素应该划分到同一区域。

实验

1、用 python-graph 工具包计算一幅较小的图的最大流 / 最小割

代码
from pygraph.classes.digraph import digraph
from pygraph.algorithms.minmax import maximum_flow

gr = digraph()
gr.add_nodes([0,1,2,3])
gr.add_edge((0,1), wt=4)
gr.add_edge((1,2), wt=3)
gr.add_edge((2,3), wt=5)
gr.add_edge((0,2), wt=3)
gr.add_edge((1,3), wt=4)
flows,cuts = maximum_flow(gr, 0, 3)
print ('flow is:' , flows)
print ('cut is:' , cuts)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

首先,创建有 4 个节点的有向图,4 个节点的索引分别 0…3,然后用 add_e

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/神奇cpp/article/detail/782280
推荐阅读
相关标签
  

闽ICP备14008679号