graph cuts - school of computingsrikumar/cv_spring2017_files/graph cuts.p… · •max-flow /...
TRANSCRIPT
![Page 1: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/1.jpg)
Graph CutsSrikumar Ramalingam
School of Computing
University of Utah
![Page 2: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/2.jpg)
Outline
• Introduction
• Pseudo-Boolean Functions
• Submodularity
• Max-flow / Min-cut Algorithm
• Alpha-Expansion
![Page 3: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/3.jpg)
Segmentation Problem
[Boykov and Jolly’2001,Rother et al. 2004]
![Page 4: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/4.jpg)
Stereo Reconstruction
• Choose the disparities from the discrete set: ),...,2,1( L
![Page 5: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/5.jpg)
Image Denoising
Original Denoised
image
![Page 6: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/6.jpg)
Semantic Labeling (Building, ground, sky)
[Hoiem, Efros, Hebert,
IJCV, 2007 ]
![Page 7: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/7.jpg)
Image Labeling Problems
![Page 8: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/8.jpg)
Labeling is highly structured
Highly unlikely
Image Courtesy: Lubor Ladicky
![Page 9: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/9.jpg)
Labeling is highly structured
Slide Courtesy: Lubor Ladicky
![Page 10: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/10.jpg)
Image Labeling Problems
Slide Courtesy: Lubor Ladicky
![Page 11: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/11.jpg)
Outline
• Introduction
• Pseudo-Boolean Functions
• Submodularity
• Max-flow / Min-cut Algorithm
• Alpha-Expansion
![Page 12: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/12.jpg)
Pseudo Boolean Functions (PBF)• Variables: 1,0,...,, 21 nxxx
[Boros&Hammer’2002]
• Negations: 1,01 ii xx
• Pseudo-Boolean Functions (PBF):
» Maps a Boolean vector to a real number.
Rf n }1,0{:
• Has unique multi-linear representation:
» For example:
321424321 532),,,( xxxxxxxxxf
![Page 13: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/13.jpg)
Posiforms for Pseudo-Boolean functions (PBF)• Posiforms: Non-negative multi-linear polynomial except
maybe the constant terms.
13
32142 5)1(32 xxxxx
321424 5331 xxxxxx
[Boros&Hammer’2002]
• Several posiforms exist for a given function.
321424 53)1(32 xxxxxx
321424321 532),,,( xxxxxxxxxf
321424 5332 xxxxxx
• Provides bounds for minimization, e.g. 1
![Page 14: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/14.jpg)
Set Functions are Pseudo Boolean Functions (PBF)
• Finite ground set },...,2,1{ nV
• Set function (Input - subset of , output - real number)V
Rf V
s 2:
• 1-1 correspondence exists between
and subset of
1,0,...,, 21 nxxx
.VS
1ix Si
0ix Si)4,2,1(}1,0,1,1{
}4,3,2,1{
4321
xxxx
V
![Page 15: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/15.jpg)
Set Functions are Pseudo Boolean Functions (PBF)
• Consider a PBF32424321 532),,,( xxxxxxxxf
• Equivalent to a set function
2)0)(1(5)0)(1(32})2,1({ sf
7)1)(1(5)0)(1(32})3,2({ sf
![Page 16: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/16.jpg)
Outline
• Introduction
• Pseudo-Boolean Functions
• Submodularity
• Max-flow / Min-cut Algorithm
• Alpha-Expansion
![Page 17: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/17.jpg)
Submodular set functions (Union-Intersection)
• A set function is submodular if and only if:
VBABAfBAfBfAf ,),()()()(
Rf V 2:
VBA ,
![Page 18: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/18.jpg)
Equivalent Definitions
Slide Courtesy: Krause, Jegelka
![Page 19: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/19.jpg)
Questions
Slide Courtesy: Krause, Jegelka
![Page 20: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/20.jpg)
Submodularity Example
Slide Courtesy: Krause, Jegelka
![Page 21: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/21.jpg)
Submodularity Example
Slide Courtesy: Krause, Jegelka
![Page 22: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/22.jpg)
Submodularity Example
Slide Courtesy: Krause, Jegelka
![Page 23: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/23.jpg)
Submodularity Example
Slide Courtesy: Krause, Jegelka
![Page 24: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/24.jpg)
Set cover is submodular
Slide Courtesy: Krause, Jegelka
![Page 25: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/25.jpg)
Submodular set functions (Union-Intersection)
VBABAfBAfBfAf ,),()()()(
Let us consider a very simple case with only two variables and1x .2x
}2{},1{},2,1{ BAV
Using submodularity, we have:
)0,0()1,1()1,0()0,1(
)0,0()1,1(
)1,0()0,1(
2121
2121
ffff
xxfxxf
xxfxxf
)0,0(f )1,0(f
)0,1(f )1,1(f
• Main diagonal elements are smaller than off-diagonal ones.
• Blue is larger than red.
![Page 26: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/26.jpg)
Quadratic Pseudo Boolean Functions (QPBF)
• Example of quadratic pseudo Boolean functions
4321214321 531),,,( xxxxxxxxxxf
[Boros&Hammer’2002]
![Page 27: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/27.jpg)
Submodular Quadratic Pseudo Boolean Functions
• A QPBF is submodular if and only if all quadratic coefficients are non-positive.
3221213213 5315),,( xxxxxxxxxf
![Page 28: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/28.jpg)
Example for submodular QPBF
}3,2{},2,1{},3,2,1{ BAV
}2{},3,2,1{ BABA
7)1)(1(5)1)(0(3)1(3015)( Bf
13)0)(1(5)0)(1(3)1(3115)( Af
5)1)(1(5)1)(1(3)1(3115)( BAf
12)0)(1(5)0)(0(3)1(3015)( BAf
3231213213 53315),,( xxxxxxxxxf
)125713(),()()()( BAfBAfBfAf
![Page 29: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/29.jpg)
Outline
• Introduction
• Pseudo-Boolean Functions
• Submodularity
• Max-flow / Min-cut Algorithm
• Alpha-Expansion
![Page 30: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/30.jpg)
Max-flow/Min-cut
Image courtesy: Lubor Ladicky
![Page 31: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/31.jpg)
Max-flow/Min-cut
![Page 32: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/32.jpg)
Max-flow/Min-cut
![Page 33: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/33.jpg)
Max-flow/Min-cut
![Page 34: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/34.jpg)
s
t
• A submodular QPBF can be associated with a network .fvG
tx2
1xs
1x
2x
• There is 1-1 correspondence every edge in network and
every term in .f
• Let us denote source by and sink by 0s .1t
• An edge that goes from to is denoted by 1x 2x .21xx
21xx1x 2x
Network model for submodular QPBF
![Page 35: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/35.jpg)
Network model for submodular QPBF
2121 43 xxxxf
• Given a QPBF we rewrite it using a posiform representation
using only three types of terms:
s ttxx 22 11 xsx
1x 2x21xx
1x 2x
,jixx ,ix ,ix
)444(3 222121 xxxxxxf
2121 4333 xxtxxsf
22121 4)1(43 xxxxxf
2121 433 xxxxf
2121 4)333(3 xxxxf
2121 4)1(333 xxxxf
s
t
1x 2x
3
4
3
![Page 36: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/36.jpg)
• There is a one-one correspondence between values of and s-t cut values of [Hammer 1965]
Network model for submodular QPBF
f .vG
4}),({
)1,0(
21
21
xxC
xxf
s
t
3
3
1x 2x4
s-t mincut[Ford&Fulkerson’62,Goldberg&Tarzan86]
21xx1xs
tx2
![Page 37: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/37.jpg)
• There is a one-one correspondence between values of and s-t cut values of [Hammer 1965]
Network model for submodular QPBF
f .vG
s
t
3
3
1x 2x4
633}),{},,({
)0,1(
12
21
txsxC
xxf
f.vG
s-t mincut[Ford&Fulkerson’62,Goldberg&Tarzan86]
Thus we can compute the minimum of using maxflow/mincut algorithm on the associated
![Page 38: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/38.jpg)
Network model for non-submodular QPBF
• There is no polynomial-time algorithm for s-t mincut on a network with negative edge capacities.
• A submodular QBPF can always be associated with a network with non-negative edge capacities.
• A non-submodular QBPF can be associated with a
network as follows:
f
vG
2121
2121
2121
453
)1(453
43
xxxsxsf
xxxxf
xxxxf
s
t
3 5
1x 2x-4
![Page 39: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/39.jpg)
Minimizing Quadratic Pseudo Boolean Functions
• If QPBF is submodular, use maxflow algo.. [Ford&Fulkerson’62,Goldberg&Tarzan86]
[Boros&Hammer’2002]
• If QPBF is non-submodular, Belief propagation or other
message passing algorithms.
![Page 40: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/40.jpg)
Multi-label Problems
• Choose the disparities from the discrete set: ),...,2,1( L
![Page 41: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/41.jpg)
Multi-label ProblemsExact Methods:
Transform the given multi-label problems to Boolean problems and solve them using maxflow/mincut algorithms or QPBO techniques.
[Not covered in this course!]
Approximate Methods:
Develop iterative move-making algorithms where each move corresponds to a Boolean problem.
![Page 42: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/42.jpg)
Outline
• Introduction
• Pseudo-Boolean Functions
• Submodularity
• Max-flow / Min-cut Algorithm
• Alpha-Expansion
![Page 43: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/43.jpg)
Boolean Energy Function• Variables .1,0,...,, 21 nxxx
j
xi }.1,0{ jxi
lm
xx ji lxi .mx j
1
0
1
0
1
0
1
0
21 21212211),(
i j
j
x
i
x
ij
xx
j
j
x
j
x
j
j
x
j
xxxE
- cost of assigning
- cost of jointly assigning and
Energy function:
![Page 44: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/44.jpg)
Move Making Algorithms
Solution Space
Energ
y
[Image courtesy: Pushmeet Kohli, Phil Torr]
![Page 45: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/45.jpg)
Move Making Algorithms
Solution Space
Energ
y
Search
Neighbourhood
Current Solution
Optimal Move
[Image courtesy: Pushmeet Kohli, Phil Torr]
![Page 46: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/46.jpg)
Expansion
building
[Boykov et al. 2001]
![Page 47: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/47.jpg)
Expansion• Let and be two adjacent variables whose labels are
not
iy jy
.
iy
jy
al
bl
retain
retain
.
[Boykov et al. 2001]
In the move space, we compute if the two variables should retain the same labels or move to label
![Page 48: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/48.jpg)
Expansion• In the move space, we use two Boolean variables and to
denote and respectively. The encoding is shown below:
iy jyix jx
1
0
ii
iai
xy
xly
1
0
jj
jaj
xy
xly
ba
ji
ll
yy a
ji
l
yy
ji yy
b
ji
l
yy
01
jixx
11
jixx
00
jixx
10
jixx
=
[Boykov et al. 2001]
• Submodularity condition states that the sum of main diagonal elements is less than the sum of elements in the off-diagonal:
![Page 49: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/49.jpg)
• Submodularity condition states that the sum of main diagonal elements is less than the sum of elements in the off-diagonal:
![Page 50: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/50.jpg)
Expansion
[Boykov et al. 2001][Image courtesy: Lubor Ladicky]
![Page 51: Graph Cuts - School of Computingsrikumar/cv_spring2017_files/Graph Cuts.p… · •Max-flow / Min-cut Algorithm •Alpha-Expansion. Max-flow/Min-cut Image courtesy: Lubor Ladicky](https://reader033.vdocuments.us/reader033/viewer/2022060322/5f0d8ae17e708231d43ae0a8/html5/thumbnails/51.jpg)
Thank You