Why Categorize in Computer Vision Why Use Categories
































- Slides: 32
Why Categorize in Computer Vision?
Why Use Categories? People love categories!
Why Use Categories? What if we didn’t have categories? Humuhumunukuapua'a – “fish that grunts like a pig”
Why Use Categories? Our minds work very intimately with categories – Every common noun in English is a category – Proper nouns name object instances – “this, ” “that, ” “the, ” “my, ” “yours, ” etc. refer to object instances anonymously
The Categorization Problem
The Categorization Problem Categorization/Classification: Given a set of pre-defined categories, “bin” this image Does not necessarily require object detection Vertical Dimension: 1. 2. 3. General: “Animal” Basic: “Bird” Specific: “Robin”
The Categorization Problem What kinds of categorization are computers good at? • Basic -- especially when using context clues • Specific -- due to low intra-class variation
The Categorization Problem Bad at? • General, due to high intra-class variation and a lack of visual cues
The Categorization Problem Bad at? • Categories defined by non-visual characteristics (like chairs)
Summary • Semantic categories allow humans to convey a large amount of information concisely • We want computers to be able to do the same • What work has been done on this problem? Has it been successful?
Uses of Categorization
Two Examples 1. Using Context in Categorization 2. Fine-Grain Object Classification
Caltech 101 (2003) • Dataset for basic-level categorization • Objects from 101 classes • Famously difficult
Categorization with Context Goal: Resolve ambiguity between similar-looking objects of different classes using the semantic context of an object Rabinovich et al. (UC San Diego): Objects in Context First paper to attempt to use context at the object level PASCAL 2007 dataset
Categorization with Context
Categorization with Context Approach 1. Segment image to preserve some spatial data 2. Perform Bag-of-Features to give an initial ranked list of labels for each segment 3. Use a Conditional Random Field (CRF) framework to find agreement between segment labels
Categorization with Context
Bag-of-Features with Segmentation Labeling Segments: Confidence:
Conditional Random Field Way to assign joint probabilities to elements without considering every possible combination in the training set
Conditional Random Field Idea • Given set of segments S, set of labels C • Want to find p(C | S) without knowing p(S) • Associate a special graph with C that obeys the “Markov Property” (uses S) • The ordered pair (S, C) is a CRF conditioned on S
Conditional Random Field
Results
Results False correction
Fine-Grain Classification
Fine-Grain Image Categorization Challenge: need good classifiers that capture detail well
Fine-Grain Image Categorization Yao et al. (Stanford): Combining Randomization and Discrimination for Fine-Grained Image Categorization Approach Random forest with discriminative classifiers This is a kind of machine learning framework that allows us to handle the fine detail in this problem.
Fine-Grain Image Categorization
Random Discriminative Tree Approach • For each tree node, train an SVM classifier for a randomly sampled image region • At each node, make a yes-or-no decision • Uses grayscale SIFT descriptors
Random Discriminative Tree
Results
Conclusion • Semantic categories allow humans to convey a large amount of information concisely • Categorization has been used for basic-level object detection and scene recognition • Fine-grain categorization can provide us with expert-level classification of objects • Not all categories are defined by visual characteristics!
Questions?