"hard" 使用 python 监督图像分割
"hard" supervision in image segmentation with python
在Python中有几个用于分割的包和方法。但是,如果我先验地知道某些像素(而不是其他像素)对应于特定对象,我如何使用它来分割其他对象?
python 中实施的哪些方法适合这种方法?
谢谢。
您需要了解一下半自动图像分割。半自动透视中的图像分割意味着您 知道 某些像素属于什么 class - 前景或背景。鉴于此 先验 信息,目标是最小化能量函数,该函数最好将其余像素分割成前景和背景。
我所知道的最好的两种方法是图形切割和随机游走。如果你想研究它们的基础知识,你应该分别阅读 Boykov (Graph Cuts) 和 Grady (Random Walks) 的规范论文:
- 图切割 - Boykov:http://www.csd.uwo.ca/~yuri/Papers/ijcv06.pdf
- 随机游走 - 格雷迪:http://webdocs.cs.ualberta.ca/~nray1/CMPUT615/MRF/grady2006random.pdf
对于Graph Cuts,OpenCV使用GrabCut算法,它是原始Graph Cuts算法的扩展:http://en.wikipedia.org/wiki/GrabCut。本质上,您在要分割的对象周围环绕一个框,高斯混合模型用于对前景和背景建模,对象将从该框内的背景中分割出来。此外,您可以在框内添加前景和背景标记以进一步限制解决方案,以确保获得良好的结果。
查看官方 OpenCV 教程了解更多详情:http://docs.opencv.org/trunk/doc/py_tutorials/py_imgproc/py_grabcut/py_grabcut.html
对于随机游走,这是在 scikit-image library and here's a great tutorial on how to get the segmentation up and running off of their official website: http://scikit-image.org/docs/dev/auto_examples/plot_random_walker_segmentation.html
中实现的
祝你好运!
在Python中有几个用于分割的包和方法。但是,如果我先验地知道某些像素(而不是其他像素)对应于特定对象,我如何使用它来分割其他对象?
python 中实施的哪些方法适合这种方法?
谢谢。
您需要了解一下半自动图像分割。半自动透视中的图像分割意味着您 知道 某些像素属于什么 class - 前景或背景。鉴于此 先验 信息,目标是最小化能量函数,该函数最好将其余像素分割成前景和背景。
我所知道的最好的两种方法是图形切割和随机游走。如果你想研究它们的基础知识,你应该分别阅读 Boykov (Graph Cuts) 和 Grady (Random Walks) 的规范论文:
- 图切割 - Boykov:http://www.csd.uwo.ca/~yuri/Papers/ijcv06.pdf
- 随机游走 - 格雷迪:http://webdocs.cs.ualberta.ca/~nray1/CMPUT615/MRF/grady2006random.pdf
对于Graph Cuts,OpenCV使用GrabCut算法,它是原始Graph Cuts算法的扩展:http://en.wikipedia.org/wiki/GrabCut。本质上,您在要分割的对象周围环绕一个框,高斯混合模型用于对前景和背景建模,对象将从该框内的背景中分割出来。此外,您可以在框内添加前景和背景标记以进一步限制解决方案,以确保获得良好的结果。
查看官方 OpenCV 教程了解更多详情:http://docs.opencv.org/trunk/doc/py_tutorials/py_imgproc/py_grabcut/py_grabcut.html
对于随机游走,这是在 scikit-image library and here's a great tutorial on how to get the segmentation up and running off of their official website: http://scikit-image.org/docs/dev/auto_examples/plot_random_walker_segmentation.html
中实现的祝你好运!