19
Parallel and Distributed Graph Cuts by Dual Decomposition Petter Strandmark Fredrik Kahl Lund University

Parallel and Distributed Graph Cuts by Dual Decomposition

  • Upload
    hazel

  • View
    38

  • Download
    0

Embed Size (px)

DESCRIPTION

Petter Strandmark Fredrik Kahl. Parallel and Distributed Graph Cuts by Dual Decomposition. Lund University. Applications of Graph Cuts. Image denoising. Stereo estimation. Shape fitting from point clouds. Segmentation. Graph Cuts. 3. 3. 1. 1. 1. 2. 1. 1. 1. 1. 2. 2. 2. 1. 1. - PowerPoint PPT Presentation

Citation preview

Page 1: Parallel and Distributed Graph Cuts by Dual Decomposition

Parallel and DistributedGraph Cuts by Dual Decomposition

Petter Strandmark Fredrik Kahl

Lund University

Page 2: Parallel and Distributed Graph Cuts by Dual Decomposition

Applications of Graph Cuts

Image denoising Stereo estimation

SegmentationShape fitting from point clouds

Page 3: Parallel and Distributed Graph Cuts by Dual Decomposition

Graph Cuts

S T

2

1

1

3

1

1

3

1

2

1

3

2

11

2

1

5

2

1

1

4

23

1 1 22 1 1

Minimum cut: 4

1 1

Page 4: Parallel and Distributed Graph Cuts by Dual Decomposition

Previous work Delong and Boykov, CVPR 2008

Implementation of push-relabel Excellent speed-up for 2-8 processors Method of choice for dense 3D graphs

CUDA-cuts: Vineet and Narayanan, CVGPU CVPR 2008 Push-relabel on GPU Not clear what range of regularization can be used

L1-norm: Bhusnurmath and Taylor, PAMI 2008 Solves continuous problem on GPU Not faster than augmenting paths on single

processor

Page 5: Parallel and Distributed Graph Cuts by Dual Decomposition

Previous work Liu and Sun, CVPR 2010

” Parallel Graph-cuts by Adaptive Bottom-up Merging” Splits large graph into several pieces Augmenting paths found separately Pieces merged together and search trees reused

Our approach Graph split into several pieces Solutions constrained to be equal with dual variables Shared memory not required

See Komodakis et al. in ICCV 2007 for dual decomposition

Page 6: Parallel and Distributed Graph Cuts by Dual Decomposition

Dual decompositionOptimization problemIs converted into

such that .

Two separate problem

s!

The dual function is

Dualize the constraint!

Page 7: Parallel and Distributed Graph Cuts by Dual Decomposition

===≠

Decomposition of graphs3

1

1

3

1

1

4

23

1 21

1

34

23

1

2

1

3

2

11

2

12

1

11

2

3

1

3

x2x1 y1 S T

½½

𝜆4 𝜆4y2

Page 8: Parallel and Distributed Graph Cuts by Dual Decomposition

Global solution

Zero duality gap Dual function has a maximum such that

the constraints are met Global solution guaranteed!

OriginalMin-cut Problem

DecomposedMin-cut Problem

Û?

Û

Linear Progra

mÛ Dual Linear

Program

Û

Decomposed Linear

ProgramÛ

Page 9: Parallel and Distributed Graph Cuts by Dual Decomposition

Integer graphs

Theorem: If the graph weights are even integers, there exists an integer vector maximizing the dual function.

This means that the dual problem can be solved without floating point arithmetic.

Page 10: Parallel and Distributed Graph Cuts by Dual Decomposition

Solution procedure

Begin with a graph

Split into two parts

Constrained to be equalon the overlap

-123

=

Independent problems!

Page 11: Parallel and Distributed Graph Cuts by Dual Decomposition

Multiple splits

Page 12: Parallel and Distributed Graph Cuts by Dual Decomposition

Multiple splits (3D)

Page 13: Parallel and Distributed Graph Cuts by Dual Decomposition

ResultsBerkeley segmentation database

301 images

2 processors

4 processors

Page 14: Parallel and Distributed Graph Cuts by Dual Decomposition

Convergence

Iteration 1 2 3 4 5 ... 10 11Differences

108 105 30 33 16 ... 9 0

Time (ms) 245 1.5 1.2 0.1 0.08 ... 0.07 0.47

1152 × 1536

Page 15: Parallel and Distributed Graph Cuts by Dual Decomposition

Regularization

Easy problem: 230 ms

Hard problem: 4 s

Page 16: Parallel and Distributed Graph Cuts by Dual Decomposition

”Worst case” scenario

S T

This choice of split severes all possible s/t paths

Parallel approach still 30% faster

Page 17: Parallel and Distributed Graph Cuts by Dual Decomposition

Multiple computers

Page 18: Parallel and Distributed Graph Cuts by Dual Decomposition

Multiple computers LUNARC cluster

401 × 396 × 312 7 seconds 4 computers

95 × 98 × 30 × 19 80-connectivity12.3 GB 4 computers

512 × 512 × 2317 6-connectivity131 GB 36 computers

Not much data need to be exchanged, 54kB in the first example

4D MRI data

3D CT data

Page 19: Parallel and Distributed Graph Cuts by Dual Decomposition

Conclusions

Dual decomposition allows: Faster processing Solving larger graphs

Open source C++/Matlab Python