How to and how not to use graph cuts
-
Upload
stephanie-hebert -
Category
Documents
-
view
49 -
download
0
description
Transcript of How to and how not to use graph cuts
How to and how not to usegraph cuts
Karen Liu and Brett Allen
What graph cuts is good for
• Suppose you want to label the nodes in a graph:
• For each node, you have:– a data term: D(p, fp) – the cost of labeling node p with label fp– a neighbor term, V(fp, fq), the cost of labeling connected nodes p and q with labels fp and fq.
• You want to minimize:
The algorithm
• we used an existing min-cut implementation
• for each α-expansion, we build a graph that expresses the desirability of switching each node’s label to α ( ):
Application 1: Stripe labeling
A harder case
Using graph cuts
color labelcolor pixel),( pfpD
otherwise1
1 if0
if0
),( qp
qp
qp ff
ff
ffV
Results
What went wrong?!
True labeling: … 11 12 13 14 15 16 17 18 19 …
Current labeling: … 11 12 13 1 2 3 17 18 19 …
…any α-expansion will not improve the energy!
α-expansion only works if:
Application 2: Stereo
Using graph cuts
)by shiftedcolor pixelright (color pixelleft ),( pp fwfpD
otherwise1
if0
),(qp
qp
ff
ffV
Results
Graph cuts Ground truth
Parameters: 12 labels (12-34 pixel displacement), w = 10
Results
Results (2)
Input
Graph cuts Ground truth
Results (3)