コンピュータビジョン特論 B - Graph Cuts - 永橋知行
description
Transcript of コンピュータビジョン特論 B - Graph Cuts - 永橋知行
![Page 1: コンピュータビジョン特論 B - Graph Cuts - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/1.jpg)
コンピュータビジョン特論 B- Graph Cuts -
永橋知行
![Page 2: コンピュータビジョン特論 B - Graph Cuts - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/2.jpg)
エネルギー最小化問題– ラベリング問題
• Image Restoration• Stereo• Image Segmentation• Multi-camera reconstruction
はじめに
Min-Cut/Max-Flow Algorithms
エネルギー関数の最小とする解→ Graph Cuts Algorithm
![Page 3: コンピュータビジョン特論 B - Graph Cuts - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/3.jpg)
ラベリング問題
ラベリング対象– Depth– 物体(領域)
etc..
エネルギー関数の定義
Nqp
qpqpPp
pp LLVLDLE,
, ),()()(
![Page 4: コンピュータビジョン特論 B - Graph Cuts - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/4.jpg)
Potts Interaction Energy Model
Liner Interaction Energy Model
エネルギー最小化モデル
Nqp
qpqpPp
pp IITKIILE),(
),( )(||||)(
Nqp
qpqpPp
pp IITAIILE),(
),( )(||||)(
![Page 5: コンピュータビジョン特論 B - Graph Cuts - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/5.jpg)
Min-Cut/Max-Flow Algorithms とは
グラフ理論でのネットワーク流問題の解法→ Min-Cut/Max-Flow Algorithms
– ネットワーク流問題(最大流問題)• 与えられたネットワークに対して,最大の流れを求める問題
– Ford-Fulkerson's method – Push-Relabel method
![Page 6: コンピュータビジョン特論 B - Graph Cuts - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/6.jpg)
グラフの基礎
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 - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/7.jpg)
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 - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/8.jpg)
最小カットと最大フロー
目的– 最小のエネルギーとなるように分割したい
→ 最小カット問題
最大フロー・最小カットの定理– 最大フローの値 = 最小カットの値
→ 最大フロー問題と最小カット問題は同じ (最大フローが求まれば最小カットも求められる)
![Page 9: コンピュータビジョン特論 B - Graph Cuts - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/9.jpg)
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 - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/10.jpg)
残余ネットワーク
フローが流れているネットワークがあとどれだけのフローを流せるかを表したネットワーク
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 - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/11.jpg)
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 - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/12.jpg)
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 - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/13.jpg)
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 - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/14.jpg)
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 - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/15.jpg)
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 - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/16.jpg)
グラフの作成 (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 - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/17.jpg)
グラフの作成 (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 - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/18.jpg)
グラフの作成 (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 - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/19.jpg)
グラフの分割
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 - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/20.jpg)
Graph Cuts Segmentation 結果( 2D )
![Page 21: コンピュータビジョン特論 B - Graph Cuts - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/21.jpg)
Graph Cuts Segmentation 結果( 3D )
![Page 22: コンピュータビジョン特論 B - Graph Cuts - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/22.jpg)
ステレオ– ピクセル間の対応付け
→ ラベリング問題
Graph Cuts Stereo
)()()()( LELELELE soccdata
Nqpqpqpqpqpqps
PPppocc
qplqpdata
llTKLE
occludedispTCLE
DLE
)}','(),,{()','(),()}','(),,{(
1),(),(
)()(
) ()(
)(
21
![Page 23: コンピュータビジョン特論 B - Graph Cuts - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/23.jpg)
グラフの作成
![Page 24: コンピュータビジョン特論 B - Graph Cuts - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/24.jpg)
Graph Cuts Stereo 結果
![Page 25: コンピュータビジョン特論 B - Graph Cuts - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/25.jpg)
まとめ
Graph Cuts Algorithm– Min-Cut/Max-Flow Algorithms を用いて,エネルギー
関数を最小化
– セグメンテーションやステレオなど幅広く利用
![Page 26: コンピュータビジョン特論 B - Graph Cuts - 永橋知行](https://reader033.fdocument.pub/reader033/viewer/2022061617/5681572c550346895dc4c821/html5/thumbnails/26.jpg)
おしまい