コンピュータビジョン特論 b - graph cuts - 永橋知行

26
ココココココココココココ B Graph Cuts ココココ

Upload: colm

Post on 29-Jan-2016

90 views

Category:

Documents


0 download

DESCRIPTION

コンピュータビジョン特論 B - Graph Cuts - 永橋知行. はじめに. エネルギー最小化問題 ラベリング問題 Image Restoration Stereo Image Segmentation Multi-camera reconstruction. Min-Cut/Max-Flow Algorithms. エネルギー関数の最小とする解 → Graph Cuts Algorithm. ラベリング問題. ラベリング対象 Depth 物体(領域) etc.. エネルギー関数の定義. エネルギー最小化モデル. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

コンピュータビジョン特論 B- Graph Cuts -

永橋知行

Page 2: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

エネルギー最小化問題– ラベリング問題

• Image   Restoration• Stereo• Image Segmentation• Multi-camera reconstruction

はじめに

Min-Cut/Max-Flow Algorithms

エネルギー関数の最小とする解→ Graph Cuts Algorithm

Page 3: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

ラベリング問題

ラベリング対象– Depth– 物体(領域)

etc..

エネルギー関数の定義

Nqp

qpqpPp

pp LLVLDLE,

, ),()()(

Page 4: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

Potts Interaction Energy Model

Liner Interaction Energy Model

エネルギー最小化モデル

Nqp

qpqpPp

pp IITKIILE),(

),( )(||||)(

Nqp

qpqpPp

pp IITAIILE),(

),( )(||||)(

Page 5: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

Min-Cut/Max-Flow Algorithms とは

グラフ理論でのネットワーク流問題の解法→ Min-Cut/Max-Flow Algorithms

– ネットワーク流問題(最大流問題)• 与えられたネットワークに対して,最大の流れを求める問題

– Ford-Fulkerson's method – Push-Relabel method

Page 6: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

グラフの基礎

Flow :流れ Capacity :その Edge に流すことができる Flow の

容量 Source : Flow が発生する場所 Sink : Flow が到着する場所

S t

2/6

2/2

1/1

1/3

2/2

0/2

4/4

1/3

2/5

SourceSink

Node Edge

Capacity

Network

Flow

Page 7: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

s-t cut

エッジを切断して s と t を分割→ s-t cut

s-t cut の際に, s の集合から t の集合へ向かうエッジの容量→ カットの容量

S t

6

2

3

2

2

4

3

5

1

1+3+2=61+5+3=9

1+3+2+2=8

6+2=8

・カットの容量が最小となる s-t cut を求める → 最小カット問題

Page 8: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

最小カットと最大フロー

目的– 最小のエネルギーとなるように分割したい

→ 最小カット問題

最大フロー・最小カットの定理– 最大フローの値  =  最小カットの値

→ 最大フロー問題と最小カット問題は同じ   (最大フローが求まれば最小カットも求められる)

Page 9: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

Ford-Fulkerson's method

フローが最大のときの条件– 残余ネットワーク上で s-t path が存在しない

→   s-t   path が存在すればフローは増加可能

Step1 :全ての枝のフローを 0 で初期化Step2 :現在のフローに関する残余ネットワークを作成Step3 :残余ネットワークに s-t path が存在場合は終了Step4 :残余ネットワークの s-t path をひとつ求め、

それを用いて現在のフローを更新Step5 : Step2 へ戻る

Page 10: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

残余ネットワーク

フローが流れているネットワークがあとどれだけのフローを流せるかを表したネットワーク

S t

2/6

2/2

1/1

1/3

2/2

0/2

4/4

1/3

2/5

S t

ネットワーク

残余ネットワーク2

4

20

02

0

1

21

0

2

3 22

1

4

0

Page 11: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

Ford-Fulkerson‘s method の例

S

0/4

0/3

0/2 t

0/3

0/2

ネットワーク

S

4

3

2 t

3

2

残余ネットワーク

0

0

00

0

Page 12: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

Ford-Fulkerson‘s method の例

S

3/4

0/3

0/2 t

3/3

0/2

ネットワーク

S

1

3

2 t

0

2

残余ネットワーク

3

0

03

0

Page 13: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

Ford-Fulkerson‘s method の例

S

4/4

0/3

1/2 t

3/3

1/2

ネットワーク

S

0

3

1 t

0

1

残余ネットワーク

4

0

13

1

Page 14: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

Ford-Fulkerson‘s method の例

S

4/4

1/3

1/2 t

3/3

2/2

ネットワーク

S

0

2

1 t

0

0

残余ネットワーク

4

1

13

2

残余ネットワークに s-t path が存在しない→ 最大フロー  5

Page 15: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

Graph Cuts Segmentation

)()()( LBLRLE

.0

if1),(

),()(

)()(

""

""

),,,,(

},{},{

||1

otherwise

LLLL

LLBLB

LRLR

bkg

objL

LLLL

qpqp

Nqpqpqp

Pppp

Pp

 

Object or Background ラベル

Object or Background でない確率

近傍との差 大:  B{p,q}= 小近傍との差 小:  B{p,q}= 大

係数領域 (Region) の関数境界 (Boundary) の関数

Page 16: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

グラフの作成 (n-link)

),(

1

2

)(exp

2

},{ qpdist

IIB qp

qp

n-links

Edge Weight Condition

n-link {p, q}

B{p, q} {p, q}∈N

t-link {p, s} λ ∙ Rp(“bkg”) p∈P, p∈OUB

K p∈O

0 p∈B

t-link {p, t} λ ∙ Rp (“obj”) p∈P, p∈OUB

0 p∈O

K p∈B

Page 17: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

グラフの作成 (t-link)

Nqp

qpPp

BK},{

},{max1

n-links

s

t

Edge Weight Condition

n-link {p, q}

B{p, q} {p, q}∈N

t-link {p, s} λ ∙ Rp(“bkg”) p∈P, p∈OUB

K p∈O

0 p∈B

t-link {p, t} λ ∙ Rp (“obj”) p∈P, p∈OUB

0 p∈O

K p∈B

Page 18: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

グラフの作成 (t-link)

)|Pr(ln)"("

)|Pr(ln)"("

BIbkgR

OIobjR

p

p

n-links

s

t

Edge Weight Condition

n-link {p, q}

B{p, q} {p, q}∈N

t-link {p, s} λ ∙ Rp(“bkg”) p∈P, p∈OUB

K p∈O

0 p∈B

t-link {p, t} λ ∙ Rp (“obj”) p∈P, p∈OUB

0 p∈O

K p∈B

Page 19: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

グラフの分割

n-links

s object

t backgroundcut

Edge Weight Condition

n-link {p, q}

B{p, q} {p, q}∈N

t-link {p, s} λ ∙ Rp(“bkg”) p∈P, p∈OUB

K p∈O

0 p∈B

t-link {p, t} λ ∙ Rp (“obj”) p∈P, p∈OUB

0 p∈O

K p∈B

Page 20: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

Graph Cuts Segmentation  結果( 2D )

Page 21: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

Graph Cuts Segmentation  結果( 3D )

Page 22: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

ステレオ– ピクセル間の対応付け

→ ラベリング問題

Graph Cuts Stereo

)()()()( LELELELE soccdata

Nqpqpqpqpqpqps

PPppocc

qplqpdata

llTKLE

occludedispTCLE

DLE

)}','(),,{()','(),()}','(),,{(

1),(),(

)()(

) ()(

)(

21

Page 23: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

グラフの作成

Page 24: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

Graph Cuts Stereo  結果

Page 25: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

まとめ

Graph Cuts Algorithm– Min-Cut/Max-Flow Algorithms  を用いて,エネルギー

関数を最小化

– セグメンテーションやステレオなど幅広く利用

Page 26: コンピュータビジョン特論 B -  Graph Cuts  - 永橋知行

おしまい