1、圖像分割原理
? 圖像分割(image segmentation)技術(shù)是計(jì)算機(jī)視覺領(lǐng)域的一個(gè)重要的研究方向,是圖像語義理解的重要一環(huán)。圖像分割是指將圖像分成若干具有相似性質(zhì)的區(qū)域的過程,從數(shù)學(xué)角度來看,圖像分割是將圖像劃分成互不相交的區(qū)域的過程。近些年來隨著深度學(xué)習(xí)技術(shù)的逐步深入,圖像分割技術(shù)有了突飛猛進(jìn)的發(fā)展,該技術(shù)相關(guān)的場景物體分割、人體前背景分割、人臉人體Parsing、三維重建等技術(shù)已經(jīng)在無人駕駛、增強(qiáng)現(xiàn)實(shí)、安防監(jiān)控等行業(yè)都得到廣泛的應(yīng)用。
? GraphCut是基于圖論的分割方法,此類方法基于圖論的方法利用圖論領(lǐng)域的理論和方法,將圖像映射為帶權(quán)無向圖,把像素視作節(jié)點(diǎn),將圖像分割問題看作是圖的頂點(diǎn)劃分問題,利用最小剪切準(zhǔn)則得到圖像的最佳分割。
2、圖像分割應(yīng)用
1、Graph Cuts
Wij是節(jié)點(diǎn)i到節(jié)點(diǎn)j的(i,j)的權(quán)重,并且是對割C所有的邊的權(quán)重進(jìn)行求和。利用圖割方法進(jìn)行圖像分割的思想是對圖進(jìn)行劃分 以使割代價(jià)Ecut 最小。
2、Graph Cuts改進(jìn)版
Ed是指源點(diǎn)和匯點(diǎn)到各個(gè)像素 之間的連線(前背景先驗(yàn)代價(jià)總和),Es指像素點(diǎn)在分割之 間的連線(鄰域代價(jià)總和)
利用圖割方法進(jìn)行圖像分割的 思想是對圖進(jìn)行劃分以使割代 價(jià)E最小。
3、圖像分割實(shí)現(xiàn)
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)
# -*- coding: utf-8 -*-
from scipy.misc import imresize
from PCV.tools import graphcut
from PIL import Image
from numpy import *
from pylab import *
im = array(Image.open("empire.jpg"))
im = imresize(im, 0.07)
size = im.shape[:2]
print ("OK!!")
# add two rectangular training regions
labels = zeros(size)
labels[3:18, 3:18] = -1
labels[-18:-3, -18:-3] = 1
print ("OK!!")
# create graph
g = graphcut.build_bayes_graph(im, labels, kappa=1)
# cut the graph
res = graphcut.cut_graph(g, size)
print ("OK!!")
figure()
graphcut.show_labeling(im, labels)
figure()
imshow(res)
gray()
axis('off')
show()
4、圖像分割結(jié)果
|
|
|---|
參考文獻(xiàn):圖像分割技術(shù)介紹
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

