Unsupervised discovery of category and object models. The task

Similar documents
ECS 289H: Visual Recognition Fall Yong Jae Lee Department of Computer Science

Connecting Missing Links: Object Discovery from Sparse Observations Using 5 Million Product Images

Self-Supervised Learning & Visual Discovery

CS 2750: Machine Learning. Clustering. Prof. Adriana Kovashka University of Pittsburgh January 17, 2017

Video Object Proposals

Segmentation and Grouping April 19 th, 2018

Unsupervised Identification of Multiple Objects of Interest from Multiple Images: discover

Beyond bags of features: Adding spatial information. Many slides adapted from Fei-Fei Li, Rob Fergus, and Antonio Torralba

Collect-Cut: Segmentation with Top-Down Cues Discovered in Multi-Object Images

Outline. Segmentation & Grouping. Examples of grouping in vision. Grouping in vision. Grouping in vision 2/9/2011. CS 376 Lecture 7 Segmentation 1

Improving Shape retrieval by Spectral Matching and Meta Similarity

Segmentation and Grouping April 21 st, 2015

Segmentation. Bottom up Segmentation Semantic Segmentation

Previously. Part-based and local feature models for generic object recognition. Bag-of-words model 4/20/2011

Detecting Object Instances Without Discriminative Features

Probabilistic Graphical Models Part III: Example Applications

Classifying Images with Visual/Textual Cues. By Steven Kappes and Yan Cao

Part-based and local feature models for generic object recognition

Introduction to SLAM Part II. Paul Robertson

Analysis: TextonBoost and Semantic Texton Forests. Daniel Munoz Februrary 9, 2009

Grouping and Segmentation

The goals of segmentation

Unsupervised Patch-based Context from Millions of Images

Local features and image matching. Prof. Xin Yang HUST

Automatic Photo Popup

Using Multiple Segmentations to Discover Objects and their Extent in Image Collections

Visual Object Recognition

Object Recognition. Computer Vision. Slides from Lana Lazebnik, Fei-Fei Li, Rob Fergus, Antonio Torralba, and Jean Ponce

CS395T Visual Recogni5on and Search. Gautam S. Muralidhar

MSA220 - Statistical Learning for Big Data

Probabilistic Generative Models for Machine Vision

Image Segmentation continued Graph Based Methods. Some slides: courtesy of O. Capms, Penn State, J.Ponce and D. Fortsyth, Computer Vision Book

CS 534: Computer Vision Segmentation and Perceptual Grouping

EE795: Computer Vision and Intelligent Systems

Web Structure Mining Community Detection and Evaluation

Motion illusion, rotating snakes

TagProp: Discriminative Metric Learning in Nearest Neighbor Models for Image Annotation

Segmentation. Bottom Up Segmentation

CS395T paper review. Indoor Segmentation and Support Inference from RGBD Images. Chao Jia Sep

A Shape Aware Model for semi-supervised Learning of Objects and its Context

Multiple cosegmentation

Video Object Co-Segmentation by Regulated Maximum Weight Cliques

Focusing Attention on Visual Features that Matter

Chapter 3: Supervised Learning

Segmenting Objects in Weakly Labeled Videos

What are we trying to achieve? Why are we doing this? What do we learn from past history? What will we talk about today?

Discriminative classifiers for image recognition

Segmentation and Tracking of Partial Planar Templates

HerbDisc: Towards Lifelong Robotic Object Discovery

Context. CS 554 Computer Vision Pinar Duygulu Bilkent University. (Source:Antonio Torralba, James Hays)

SYDE Winter 2011 Introduction to Pattern Recognition. Clustering

Markov Random Fields and Segmentation with Graph Cuts

Contextual Classification with Functional Max-Margin Markov Networks

Large Scale Image Retrieval

Community detection. Leonid E. Zhukov

Image Segmentation continued Graph Based Methods

Segmentation and Grouping

Part based models for recognition. Kristen Grauman

Beyond Sliding Windows: Object Localization by Efficient Subwindow Search

CS 229 Midterm Review

Video Google faces. Josef Sivic, Mark Everingham, Andrew Zisserman. Visual Geometry Group University of Oxford

Scale and Rotation Invariant Approach to Tracking Human Body Part Regions in Videos

Discriminative Clustering for Image Co-Segmentation

Supervised learning. y = f(x) function

10-701/15-781, Fall 2006, Final

Learning the Ecological Statistics of Perceptual Organization

CSE 473/573 Computer Vision and Image Processing (CVIP) Ifeoma Nwogu. Lectures 21 & 22 Segmentation and clustering

CS 4495 Computer Vision. Segmentation. Aaron Bobick (slides by Tucker Hermans) School of Interactive Computing. Segmentation

Object Discovery in 3D scenes via Shape Analysis

Linear combinations of simple classifiers for the PASCAL challenge

Edge Boxes: Locating Object Proposals from Edges

Effective Latent Space Graph-based Re-ranking Model with Global Consistency

A Hierarchical Conditional Random Field Model for Labeling and Segmenting Images of Street Scenes

Object Detection by 3D Aspectlets and Occlusion Reasoning

Grouping and Segmentation

Segmentation Computer Vision Spring 2018, Lecture 27

Part-Based Models for Object Class Recognition Part 2

Part-Based Models for Object Class Recognition Part 2

Using Machine Learning to Optimize Storage Systems

Geometric Registration for Deformable Shapes 3.3 Advanced Global Matching

Segmentation: Clustering, Graph Cut and EM

Perception IV: Place Recognition, Line Extraction

Discrete Optimization of Ray Potentials for Semantic 3D Reconstruction

Mining Social Network Graphs

Lecture 16 Segmentation and Scene understanding

Local features: detection and description. Local invariant features

Scale and Rotation Invariant Color Features for Weakly-Supervised Object Learning in 3D Space

COSC160: Detection and Classification. Jeremy Bolton, PhD Assistant Teaching Professor

BBS654 Data Mining. Pinar Duygulu. Slides are adapted from Nazli Ikizler

on learned visual embedding patrick pérez Allegro Workshop Inria Rhônes-Alpes 22 July 2015

Recognition of the Target Image Based on POM

Generic Object Detection Using Improved Gentleboost Classifier

Clustering. CS294 Practical Machine Learning Junming Yin 10/09/06

10701 Machine Learning. Clustering

Outline. Data Association Scenarios. Data Association Scenarios. Data Association Scenarios

Recognition Tools: Support Vector Machines

Scalable Object Classification using Range Images

Unsupervised Learning

Lecture 11: E-M and MeanShift. CAP 5415 Fall 2007

Machine Learning for Signal Processing Clustering. Bhiksha Raj Class Oct 2016

Transcription:

Unsupervised discovery of category and object models Martial Hebert The task 1

Common ingredients 1. Generate candidate segments 2. Estimate similarity between candidate segments 3. Prune resulting (implicit) graph 4. Extract subgraphs corresponding to objects 1. Generate candidate segments Regions from multiple segmentations 2

2. Estimate similarity between candidate segments Segments Segments 6 3

3. Prune graph 4. Extract subgraphs corresponding to objects 4

The task: Key issues Discovered Objects In reality: Very large graph Full pairwise comparison intractable for real problems Most of the graph irrelevant to any category Questions: How to cluster segments? How to define robust affinities? How to select/prune candidate segments and edges to reduce graph? Outline Discovered Objects How to cluster segments? Topic model Graph/spectral clustering Graph analysis How to define robust affinities? Robust affinities from contextual information How to select/prune candidate segments and edges to reduce graph? Select segments using learned objectness Prune graph edges using domain constraints 5

w 8/7/2013 Clustering: Topic models Avoid comparing segments explicitly by estimating directly correspondence between segments and unknown (latent) models. z 4 z 3 z 2 z 1 Clustering: Topic models (PLSA) Segment j K topics z k = objects K P w i d j = P z k d j P(w i z k ) k=1 z = x Histogram of visual words: d P(w i d j ) Word w i P(w i d j ) P(w i z) P(z d j ) 6

From topics to segments Segment score = estimated from difference (KLD) between actual distribution of words in image segment and predicted distribution P(w i z) Select segment with highest score Example From LabelMe dataset.. 7

Clustering: Topics models Extension to LDA by parameterizing and sampling from p(z d) Fewer parameters, reduced overfitting More general forms (NMF) Fixed K Similarity matrix B.C. Russell, A.A. Efros, J. Sivic, W.T. Freeman, A. Zisserman. Using multiple segmentations to discover objects and their extent in image collections. CVPR 2006. T. Tuytelaars, C.H. Lampert, M.B. Blaschko, W. Buntine. Unsupervised Object Discovery: A Comparison. IJCV 2010. Clustering: Graph and spectral techniques A B 8

A B Min cut A, B 1 vol(a) + 1 vol(b) cut( A, B) vol( A) s ij i A, j B s ij i A, j A Clustering: Graph and spectral techniques Example: Normalized cuts N segments S = N x N similarity matrix D = degree matrix (D ii = j s ij ) Relaxed problem: Indicator vector of (A,B) approximated by 2 nd principal eigenvector of D 1 2(D S)D 1 2 9

N segments 8/7/2013 Clustering: Spectral techniques Example: Normalized cuts Eigenvectors of D 1 2(D S)D 1 2 K-means on row vectors N segments S = N x N similarity matrix D = degree matrix (D ii = j S ij ) Need to know K Scalability issues Y.J. Lee, K. Grauman. Foreground Focus: Unsupervised Learning from Partially Matching Images. IJCV. 2009. Discriminative clustering http://www.di.ens.fr/willow/events/cvml2013/materials/slides/thurs day/coseg13.pdf 10

Issues and limitations Requires complete graph (or at least computing all the affinities for all the edges) Alternative: Retain edges with high affinity only; compute subset of edges only Sparse graph Requires fixing the number of clusters K in advance Alternative: Automatic stopping criterion Clustering: Graph analysis Idea: Don t try to explain the whole graph by a coverage of clusters. Instead extract a few reliable influential subgraphs by analogy with network analysis. Don t fix the number of clusters K in advance Examples: Link analysis [G. Kim, C. Faloutsos, M. Hebert. Unsupervised modeling of object categories using link analysis techniques. CVPR 2008.] Graph sampling [N. Payet, S. Todorovic. From a set of shapes to object discovery. ECCV 2010.] Community discovery [H. Kang, T. Kanade, M. Hebert. Discovering object instances from scenes of daily living. ICCV 2011.] 11

Example graph Community discovery Betweenness = number of shortest paths passing through an edge High betweenness Low betweenness 12

Community discovery Iteratively remove edges with high betweenness Optional: Randomize selection: Betweenness of any edge of component C < C Automatic stopping criterion (no K) [Freeman 1979; Tyler et.al. 2003] 26 13

27 Example: Groups of similar segments 14

Community discovery Appropriate for graphs following power law Empirically, graphs obtained by thresholding appearance/shape similarity follow that model Average degree = 3.1 Density = 16% Efficient with respect to graph size J. Leskovec, K.J. Lang, and M. Mahoney. Empirical comparison of algorithms for network community detection. Intern. Conf. on World wide web, WWW 10. 2010. J.R. Tyler, D.M. Wilkinson, B.A. Huberman. Automated discovery of community structure within organizations. Intern. Conf. on Communities and Technologies.. 2003. Discovered Objects How to cluster segments? Topic model Graph/spectral clustering Graph analysis How to define robust affinities? Robust affinities from contextual information How to select/prune candidate segments and edges to reduce graph? Select segments using learned objectness Prune graph edges using domain constraints 15

Affinity definition: Learn from known categories Idea: Define affinity between regions in a way that maximizes efficiency of discovery by Discarding irrelevant graph edges Adding/reinforcing edges that could not be found from appearance alone The missing link problem 16

Affinity definition: Learn from known categories Idea: Define affinity between regions in a way that maximizes efficiency of discovery by Discarding irrelevant graph edges Adding/reinforcing edges that could not be found from appearance alone Examples: Learn similarity metric from known categories [C. Galleguillos, B. McFee, S. Belongie, G. Lanckriet. From region similarity to category discovery. CVPR 2011.] Use known categories as context to unfamiliar categories Completing missing links by using prior data Robust affinities: Context from known categories 1 2 3 4 Previous methods: Cluster images/regions based on their appearance Insight: Let familiar objects serve as context for unfamiliar objects [Sivic et al. 2005, Russell et al. 2006, Liu et al. 2006, Lee et al. 2008, Kim et al. 2008, ] [Y. Lee and K. Grauman. Object-graphs for context-aware category discovery. CVPR 2010. 17

Intuition: context-aware discovery??? sky sky sky driveway house? grass grass house truck fence grass house?? driveway driveway [Lee & Grauman, Object-Graphs, CVPR 2010, TPAMI 2011] General idea An unknown region within an image Model the topology of category predictions relative to the unknown (unfamiliar) region Example from Y. Lee 18

P c i s 8/7/2013 Assumptions N known categories Classifier produces posterior P c i s for each segment s and category c i i Example from Y. Lee Object-graphs An unknown region within an image Closest nodes in its object-graph 3a 1a 2a S 0 Average posteriors of i nearest regions: Consider spatially near regions above and below, record distributions for each known class. j th superpixel above, below 3b 0 self 2b b t s r 1a above b t s r 1b H 1 (s) 1b below g(s) = [,,, ] b t s r H 0 (s) 0 self b t s r Ra above b t s r H R (s) Rb below b t s r 1 st nearest region out to R th nearest Example from Y. Lee 19

Example object-graphs unknown building sky road Colors indicate the predicted known category (max posterior) Example from Y. Lee Example 3D object-graphs sky ground unknown tree road sky grass Colors indicate the predicted known category (max posterior) Example from Y. Lee 20

Clusters from region-region affinities Unknown Regions K χ 2(a u s i, a u s j ) K χ 2(g s i, g s j ) u Appearance channel Example from Y. Lee Examples Example from Y. Lee 21

Observations Added term on context from known categories allows for grouping of segments with distinct appearance How to select the segments to cluster ( unknown segments )? Don t want to disturb segments with high confidence from know categories Need to limit the number of segments for the clustering Non-parametric approach Classifiers may not be available for known categories (Large) prior data may be available Can we use it directly instead of trained classifiers 22

Large prior dataset Assumption (Approximate) matching based on appearance features H. Kang, M. Hebert, A. A. Efros, T. Kanade. Connecting Missing Links: Object Discovery from Sparse Observations. ECCV 2012. Add term data term to affinity: c d s i, s j = Φ s i Φ(s j ) K Ψ(s) s 23

Adding data-driven similarity links Segment Matching Links Connected Missing Links Adding data-driven similarity links Segment Matching Links Connected Missing Links 24

Comments Domain-specific Better suited to instance discovery 25

Discovered Objects How to cluster segments? Topic model Graph/spectral clustering Graph analysis How to define robust affinities? Robust affinities from contextual information How to select/prune candidate segments and edges to reduce graph? Use known categories Select segments using learned objectness Prune graph edges using domain constraints Why controlling the number of segments (if possible!)? More candidate segments lead to better recall (more choices) but lower precision (more choices!) Chicken-and-egg problem: If we knew which regions are likely to be object we could start with better candidates but that s the point of discovery General idea: Independent guess at likelihood of being an object segment 26

Increase object segmentation recall Increase object segmentation recall 27

Increase object segmentation recall Increase object segmentation recall 28

Increase object segmentation recall Special case: Known categories Use the entropy of the distribution of class posterior over known categories as criterion to select segments i P c i s log P(c i s) Known = sky, road Example from Y. Lee 29

Segment selection: Learned objectness Idea: Reduce the size of the graph by selecting only object-like segments based on a separately learned objectness measure Reduces the number of nodes Objectness/Object saliency Parametric: Model explicitly learned from training data Region objectness [Endres, Hoiem, ECCV 2010] Box objectness [Alexe, Deselaers, Ferrari, CVPR 2010, PAMI 2012] Saliency [Zhu et al. CVPR 2012, Feng et al. ICCV2011] 30

Non-parametric objectness Non-parametric: Consistency of matches with a large repository of prior images Object regions tend to match more consistent regions from the dataset Criterion 1: Average similarity Criterion 2: Consistency Visual + Metadata (categories) 31

Qualitative comparisons: CMU ADL Input images Kang et al. Endres, Hoiem Alexe et al. Qualitative comparisons: UW RGB-D Input images Kang et al. Endres, Hoiem Alexe, et al. 32

Object discovery with segments of high objectness Basic segments: 4390 segments; More segments: ~17,000 segments Discovered Objects How to cluster segments? Topic model Graph/spectral clustering Graph analysis How to define robust affinities? Robust affinities from contextual information How to select/prune candidate segments and edges to reduce graph? Select segments using learned objectness Prune graph edges using domain constraints 33

Pruning the graph: Using domain constraints Idea: Reduce the size of the graph by enforcing domain constraints early Reduces the number of edges Pruning the graph: Using domain constraints General Graph / Machine Learning tools Specific Purpose Systems Slide from A. Collet 34

General Graph / Machine Learning tools Specific Purpose Systems - Domain Knowledge + Insight: Formalize the concept of Domain Knowledge Result: Common Formulation for Object Discovery Slide from A. Collet 35

Graph-based discovery Pairwise Similarity Graph Candidate Generation Clustering Slide from A. Collet Similarity graphs -No domain knowledge- 72 Slide from A. Collet 36

Constrained similarity graphs Objects on support surfaces 73 Slide from A. Collet Constrained similarity graphs Scene is static (3D overlap) 74 Slide from A. Collet 37

Constrained similarity graphs Objects are planar 75 Slide from A. Collet Constraints Bernoulli distribution: Measurable yes/no question about nodes or edges with probability of success p Slide from A. Collet 38

Examples of Constraints are candidates and similar in appearance? Measure with is candidate on a support surface? Detect support Check if is supported with support Slide from A. Collet Constraint Expressions Scene is static AND ( Objects supported OR Objects are planar ) Slide from A. Collet 39

The Logic of Constraints Negation Conjunction Disjunction Scene is static AND ( Objects lie on tables OR Objects are planar ) Slide from A. Collet Discovery with domain knowledge Constrained Similarity Graph Candidate Generation Clustering Slide from A. Collet 40

No constraints: O(n 2 ) pairwise similarities Adjacency matrix time edge = 0 edge = 1 time Motion and sequencing : only sample data stream if there is motion : data stream is ordered, forms short sequences time time 41

: 3D overlap between candidates within sequence : Shape similarity between candidates 42

: Appearance similarity between candidates Impact of constraints Visual Similarity + Metadata Visual Similarity 43

Robotic Object Discovery Example evaluation (small) 190x Example from A. Collet Example evaluation (large) 521234 frames Discovered 864 objects 283 correct 166 valid 415 invalid Processing time: 18 m 34 s 58682 candidates 431121 edges 88 44

Discovered Objects How to cluster segments? Topic models Graph/spectral clustering Graph analysis How to define robust affinities? Robust affinities from contextual information How to select/prune candidate segments and edges to reduce graph? Select segments using learned objectness Prune graph edges using domain constraints 45