Pyramid of Arclength Descriptor for Generating Collage of Shapes
賈智量
Outline
Introduction
top-down
bottom-up
Introduction
Introduction
PAD vector
PAD vector
PAD vector
Scale-invariant
Not scale-invariant
PAD vector
長 🡪 不彎, 短 🡪 彎
PAD vector
20∆τ
21∆τ
2n-1∆τ
2n-2∆τ
PAD vector
20∆τ
21∆τ
2n-1∆τ
2n-2∆τ
PAD vector
20∆τ
21∆τ
2n-1∆τ
2n-2∆τ
除上最長的arclength以達到scale-invariant(0~1)
但是 Arclength 不是 Scale-invariant
PAD vector
每個PAD sample point 都建1個PAD vector
每個PAD vector都是自己往左右各取2n(n = 5)個曲率積分
最後在除上最長的arclength以達到scale-invariant
+代表凸 –代表凹
PAD flow
幫每個shape取sample points並算PAD vector
比對PAD vector來找出best K%
計算shared arclength
丟進objective function來找出最好的match
Merge 2 shapes
All shapes
(seed shape)
All shapes
(with PAD)
Best K(1)% shapes
Best K% shapes
Best match
Result
Finish
The rest shapes
PAD flow
PAD flow(step1)
幫每個shape取sample points並算PAD vector
比對PAD vector來找出best K%
計算shared arclength
丟進objective function來找出最好的match
Merge 2 shapes
All shapes
(seed shape)
All shapes
(with PAD)
Best K(1)% shapes
Best K% shapes
Best match
Result
Finish
The rest shapes
PAD flow(step1)
每0.2個pixel取sample point
每個sample point都建1個PAD vector
PAD flow(step2)
幫每個shape取sample points並算PAD vector
比對PAD vector來找出best K%
計算shared arclength
丟進objective function來找出最好的match
Merge 2 shapes
All shapes
(seed shape)
All shapes
(with PAD)
Best K(1)% shapes
Best K% shapes
Best match
Result
Finish
The rest shapes
PAD flow(step2)
因為已經都建好PAD vector了
所以直接點對點的相減即可
D越小代表2條曲線是越接近的
最後取出前K%(1%)當 output
< threshold(0.4)
PAD flow(step3)
幫每個shape取sample points並算PAD vector
比對PAD vector來找出best K%
計算shared arclength
丟進objective function來找出最好的match
Merge 2 shapes
All shapes
(seed shape)
All shapes
(with PAD)
Best K(1)% shapes
Best K% shapes
Best match
Result
Finish
The rest shapes
PAD flow(step3)
(允許gap and overlap)
S(seed shape)
S’(要拼的)
PAD flow(step4)
幫每個shape取sample points並算PAD vector
比對PAD vector來找出best K%
計算shared arclength
丟進objective function來找出最好的match
Merge 2 shapes
All shapes
(seed shape)
All shapes
(with PAD)
Best K(1)% shapes
Best K% shapes
Best match
Result
Finish
The rest shapes
PAD flow(step4)
Shared arclength
Weight of shared arclength
Gap
Weight of Gap
Overlap
Weight of Overlap
也可以加入其他constraint
Scale range constraint 🡪 讓2個matching不要差太多
orientation constraint 🡪 讓2個matching不要上下顛倒
PAD flow(step5)
幫每個shape取sample points並算PAD vector
比對PAD vector來找出best K%
計算shared arclength
丟進objective function來找出最好的match
Merge 2 shapes
All shapes
(seed shape)
All shapes
(with PAD)
Best K(1)% shapes
Best K% shapes
Best match
Result
Finish
The rest shapes
PAD flow(step5)
Recall step3
PAD flow
幫每個shape取sample points並算PAD vector
比對PAD vector來找出best K%
計算shared arclength
丟進objective function來找出最好的match
Merge 2 shapes
All shapes
(seed shape)
All shapes
(with PAD)
Best K(1)% shapes
Best K% shapes
Best match
Result
Finish
The rest shapes
Result
Shape collage
Result
Creative design
puzzle
mosaic
Result
Shape collage + deformation
Discussion
Compare with other methods
3個都是 top-down
大家都有各自的goal
但是目的是最相近的了
每個shapes只能出現1次
為了公平 都是採用PAD裡面有出現的shape
問題大多都是 沒有同時考慮gap and overlap
只針對凸多邊形等等
Discussion
Compare with other description methods
Discussion
Compare with other description methods
可做12HR PAD用750sec 完成
Limitations
Contribution