







Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
This document from west virginia university outlines a method for image segmentation using graph cuts. The concept of the min cut problem and how it can be used to perform segmentation. It also covers the creation of a weighted, undirected graph from an image and the use of existing algorithms to find the minimum cut, which is then converted into a segmentation.
Typology: Study notes
1 / 13
This page cannot be seen from the preview
Don't miss anything!








Computer Science and Electrical Engineering Dept. West Virginia University
2nd March 2007
(^1) Introduction
(^2) The min cut problem
(^3) Segmentation using graph cuts
Introduction
Reduce the problem of image segmentation to the problem of graph cuts. We can then use existing algorithms for graph cuts to perform segmentation. We will present an interactive technique for segmenting an object from the background (only 2 regions). The user must specify some hard constraints : some pixels which are known to belong to the object, and some pixels which are known to belong to the background.
Introduction
Let G = { V , E } be a graph which consists of nodes V and edges E. In general, the edges may be directed or undirected weighted or unweighted The algorithm presented here uses a weighted, undirected graph. Additionally, all weights are assumed to be positive.
The min cut problem
Let the set of nodes include 2 special nodes (terminal nodes) labeled S and T. An S/T cut (or just ”cut”) is a subset C of E such that there is no path between S and T when C is removed from E. The cost of a cut is the sum of all of the weights of the edges in C. The min-cut problem is to find the cut with minimum weight.
Segmentation using graph cuts
(^1) Introduction
(^2) The min cut problem
3 Segmentation using graph cuts
Segmentation using graph cuts
Convert the image into an undirected, weighted graph. Create a node v ∈ V for each pixel in the image. Pick a neighborhood system to use I (^) for example : 4 or 8 neighbor system in 2D I (^) for example : 6 or 26 neighbor system in 3D For each pair of neighbors create an edge (n-link). Set the weight for each n-link to Bp , q (pixel similarity).
Bp , q is a measure of the similarity of image intensities at pixels p and q.
Bp , q = c exp(− ( Ip − Iq )^2 2 σ^2
dist ( p , q )
Segmentation using graph cuts
Incorporate the initialization - a set of pixels O and B in object and background. Create 2 terminal nodes, S and T. I (^) S node represents the ”object” I (^) T node represents the ”background” For each image vertex, p, create an edge to S (”obj terminal”) I (^) If p ∈ O then wp , S = K (a large constant) I (^) If p ∈ B then wp , S = 0 I (^) Else, wp , S = λ Rp (” bkg ”) For each image vertex, p, create an edge to T (”bkg terminal”) I (^) If p ∈ O then wp , T = 0 I (^) If p ∈ B then wp , T = K I (^) Else, wp , S = λ Rp (” obj ”) Rp ( A ) is a region-based function reflecting how well the intensity at p fits into ”object” or ”background” initialization.
Segmentation using graph cuts
The function Ap ( C ) returns the region of pixel, p, given the cut, C.
Ap ( C ) = { ”obj” if { p , T } ∈ C ”bkg” if { p , S } ∈ C