extracting subimages of an unknown category … · extracting subimages of an unknown category from...

40
1 Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja Beckman Institute, UIUC Presented by Tingfan Wu

Upload: vocong

Post on 18-Aug-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

1

Extracting Subimages of an Unknown Category from a Set of Images

Sinisa Todorovic and Narendra AhujaBeckman Institute, UIUC

Presented by Tingfan Wu

Page 2: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Objective

Page 3: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Clusters

General Steps

Training Images

Random segmentsfeature vectors

Unseen image

C3

C2C1

ModelsFt1=(x1,x2….xn)Ft2=(x1,x2….xn)Ft3=(x1,x2….xn)Ft4=(x1,x2….xn)feature vectors

F1=(x1,x2….xn)F2=(x1,x2….xn)F3=(x1,x2….xn)F4=(x1,x2….xn)

• Varieties– Segmetation Methods– Feature Spaces– Clustering Methods

= C1

Page 4: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Segment out all the cars

….

fused tree model for cars

Unseen image

Training images

Segmented Cars

Segmentation Trees

OverviewOverview

Multiscale Seg.

Page 5: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Segment out all the cars

….

fused tree model for cars

Unseen image

Training images

Segmented Cars

Segmentation Trees

MultiscaleMultiscaleSegmentation TreeSegmentation Tree

Page 6: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Feature Extraction = Image Segmentation

Page 7: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Multiscale Segmentation Tree

Page 8: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Region Descriptor on Tree Node

Attr(Node) = Description of the region

Page 9: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

What are good region descriptors?

• Photometric– Gray level

• Geometric (rotation invariant)– Area– C.M.– Boundary Shape Histogram

• Hybrid – Salient descriptor

• Topology– Recursive containment of regions

(¹ v ; ¾2v )

hv (1 : : : K )

(av )(xv ; yv )

(©v )hv (1)

hv (2)

hv (8)

Can be rotation invariant

hv (3)

Page 10: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Salient Descriptor for a Region

• An outstanding region among siblings?– Brighter/darker?– Noisier /more homogenous– Larger/Smaller– Higher/lower entropy

on boundary shape• Empirical result: best λ=0.5

Photometric Geometric

hv (1)hv (2)

hv (8)

. . .

Page 11: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Salience Contract Flow(microview)

Average Direction and Magnitude

¡!©v

¡!wv=d2+

++

+

++

Page 12: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Salience Contract Flow(macroview)

Page 13: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Match salience contract flow

~¡!©1 ¼

¡!©2

Page 14: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Store Regional Descriptor on Treenode

Photometric Geometric Salient

Page 15: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Segment out all the cars

….

fused tree model for cars

Unseen image

Training images

Segmented Cars

Segmentation Trees

Maximal CommonMaximal CommonSubtreeSubtree Matching Matching

Page 16: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Segment out all the cars

….

fused tree model for cars

Unseen image

Training images

Segmented Cars

Segmentation Trees

How does it works?How does it works?

Page 17: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Inexact Matching: Structural Noise

Use tree edit distance instead

Page 18: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Tree Edit Distance• Editor Operations : costs ~ Dissimilarity(x,y)

– Remove a node– Add a node – Replace a node

-

+r

Page 19: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Metaphor: String Edit Distance• Unifying Editor Operations

– Remove a node– Add a node (removal on partner) – Replace a node (paired removal on both string/tree)

AABBBBCCEdit : Add Y

AABBYBBCC

Edit : Remove Y

AABBXBBCCEdit : Replace X with Y

AABBYBBCC

Edit : Remove X Edit : Remove Y

Page 20: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Tree Edit Distance• Editor Operation (with costs)

– Two way removal only

t t’u=E1(t)∩E2(t’)Dist.(t, t’) = Dist.(t, u) + Dist(u, t’)

E():Sequenceof removal

E1() E1()

Page 21: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Reduce Edit-Distance matching to Non-edit matching

• Transitive Closure• (see animation)

Closure Original

Page 22: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Matching Criteria

Page 23: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Divide and Conquer

Try all pairs of (v, v’) combinations = O(|t| + |t’|)

NP-complete QP approx. O(|Cvv’|)

Page 24: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Segment out all the cars

….

fused tree model for cars

Unseen image

Training images

Segmented Cars

Segmentation Trees

Model Model GenerationGeneration

Page 25: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Model: Union of Subtrees

NP-Hard

1.Pairwise matching2.One by one union

Sub-optimalOptimal

= ∪

Next TreeT = T u Tnext

Page 26: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Category Model

Page 27: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Segment out all the cars

….

fused tree model for cars

Unseen image

Training images

Segmented Cars

Segmentation Trees

Testing:Testing:SegmentationSegmentation

Page 28: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Segment out all the cars

fused tree model for cars

Unseen image Segmented Cars

Testing: Detect & SegmentationMaximal CommonMaximal CommonSubtreeSubtree Matching Matching

Match : (Similarity > Thresh) (precision/recall)

Page 29: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Performace Evaluaton

Page 30: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Results (Caltech 101 Face)

Varying Matching Thresh. (precision/recall)

Page 31: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Results (UIUC Car Side View)

#positive/#training: 5/10 vs 10/20(2hr on P4-2.4G/2G)

Page 32: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Results (Caltech 101 Face)

#positive/#training: 3/6 vs 6/12

Rotation Invariant

Page 33: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Caltech (Cars Rear View)

#positive/#training: 10/20

Page 34: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Conclusion

• Contribution– Good Image Representation Seg. Tree

• Small amount of training data– Cf. Statistical Learning/Clustering

• Ex. Visual Words + pLSA

• Allow Non-category Images noise• Allow occlusion (disconnected regions)

Page 35: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Region Descriptor

Annotated Recursive Tree

Salient Flow

Sliced area histogram

Region Area

Graylevel

xx

xxx

x

x

x

TopologicalGeometricPhotmetric

Page 36: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Thank you

• Quicktopic

Page 37: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Cf. Visual Words+pLSA

• Visual Words recognize connected object only• Tree Matching is more conservative due to

intersection

Page 38: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Cf. Visual Words +pLSA

Visual Words/pLSA

Tree matching

Page 39: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

Caltech FacesVisual Words/pLSA

Tree matching

Page 40: Extracting Subimages of an Unknown Category … · Extracting Subimages of an Unknown Category from a Set of Images Sinisa Todorovic and Narendra Ahuja ... – Remove a node – Add

ReSPEC(Use Color Histogram)