Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed...

20
Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1 , Gregory Shakhnarovich 2 , and Subhransu Maji 3 1 University of Maryland, College Park 2 Toyota Technological Institute at Chicago 3 University of Massachusetts, Amherst

Transcript of Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed...

Page 1: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

Knowing a Good HOG Filter When You See It:

Efficient Selection of Filters for Detection

Ejaz Ahmed1, Gregory Shakhnarovich2, and Subhransu Maji3

1 University of Maryland, College Park

2 Toyota Technological Institute at Chicago

3 University of Massachusetts, Amherst

Page 2: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

Visual Category as Collection of fi lters

Poselets Mid Level Discriminative Patches

Exemplar SVMs

Page 3: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

Candidate Generation

Candidate Generation

Pool of Filters

Filters are generated using positives and negatives examples.

Generation of a large pool of fi lters.

Positives Negatives

Filter (SVM Classifier)

Page 4: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

Two sources of ineffi ciency

Candidate Selection

CandidateSelection

Selected Filters (n)

(n << N)

Pool of Filters (N)

Impractical to use all generated fi lters.

Redundancy

Noise

good

bad

Page 5: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

Candidate Selection Cont…

Expensive Evaluation

Selected Filters (n)

(n << N)

Run as detectorPool of Filters (N)

Bottleneck

Page 6: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

What we Propose

Expensive Evaluation

Selected Filters (n)

(n << N)

Run as detectorPool of Filters (N)

By passes explicit evaluation

fast

Our Contribution : fast automatic selection of a subset of discriminative and non redundant filters given a collection of filters

Page 7: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

Category Independent Model

Images +/-

Pool (Candidate Filters)N >> n

Selected Filters (n)

fast slow

(w , λ)

Test Category

fast

N candidates

n selected

fast

Can rank fi lters as accurately as a direct evaluation on thousands of examples.

Page 8: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

Poselets

Poselets are semantically aligned discriminative patterns that capture parts of object.

Patches are often far visually, but they are close semantically

Page 9: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

Poselet Architecture

Candidate Selection :

Candidate Generation :

24

76

Timings

generation

selection

Total Time = 20hrs

Page 10: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

Save significantly in training time if we can quickly select small set of relevant exemplars.

ESVMSVM for each positive example

Test time

Redundant Exemplars

Page 11: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

Good Filters Bad Filters

Good / Bad Filters

Gradient orientation within a cell (active simultaneously)

Gradient orientation of neighboring cells (lines, curves)

Page 12: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

Norm: consistent with high degree of alignment. Normalized Norm: Makes norm invariant to fi lter

dimension.

Cell Covariance: Diff erent orientation bins within a cell are highly structured. Gao et al. ECCV 2012

Cell Cross Covariance: Strong correlation between fi lter weights in nearby spatial locations.

Features for fi lter Ranking

Cell Covariance

Cell Cross Covariance

Decreasing Norm

Page 13: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

– representation of fi lter Goal : model ranking score of by a linear functionTraining data : ,

where is number of training categories. where N is number of filters per category. is estimated quality, obtained by expensive method.

is ordered in descending value of - , for measures how much better is from

Slack rescaled hinge loss

Learning to Rank Filters

Page 14: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

Selected parts should be individually good and complimentary.

First fi lter - fi lters selected so farSelect next fi lter using following

Greedy approximation for Diversity

Selected Filters

Not yet Selected

0.9

0.4

0.1

Added to selected set

Page 15: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

LDA Acceleration

(w , λ)

N SVM filters(Candidate Generation)

n Selected Filters(SVM)

N LDA filters(Candidate Generation)

(w , λ)

n Selected Filters(LDA)

n Selected Filters(SVM)

SVM bootstrappi

ng

Poor performan

ce

Goodperforman

ce

Goodperforman

ce

Selection with LDA Acceleration

SVM bootstrapping

LDA

Our Selection Method

Page 16: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

Experiments with Poselets

Test category

Filters used for training from remaining categories

800 poselet fi lters for each categoryGoal : given a category select 100 out of 800 fi ltersRanking taskDetection task

Page 17: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

Performance of Ranker

Predicted ranking vs true ranking as per AP scores.

Norm(svm)

Σ – Norm(svm)

Gao et al. ECCV 2012

Rank(lda)

Rank(svm)< < <

Page 18: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

1x

3x

8x

3x

3x

3x

8x

3x

3x

8x

2.4x

Detection Results

Σ – Norm (svm)

Random

Norm (svm)

10% Val

Norm (svm) + Div

Rank (svm)

Σ – Norm (svm) + Div

Oracle (expensive evaluation)

Rank (svm) + Div

Rank (lda) + Div

Rank (lda) + Div

2X Seeds

Increasin

g Perfo

rmance

Speed up w.r.t. OracleBy constructing a

poselet detector using selected fi lters

Order of magnitude Speed up.Improved performance than Oracle

Page 19: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

Each category has 630 exemplars on average.Goal select 100 exemplars such that they reproduce

result for optimal set of 100 exemplars.Optimal set – weights of each exemplar in the final

scoring model. (Oracle)Frequency of exemplars

Experiments with exemplar SVMs

Frequent Exemplar

Rare Exemplar

Page 20: Knowing a Good HOG Filter When You See It: Efficient Selection of Filters for Detection Ejaz Ahmed 1, Gregory Shakhnarovich 2, and Subhransu Maji 3 1 University.

We have presented an automatic mechanism for selecting diverse set of discriminative fi lters.

Order of magnitude improvement in training time.Our approach is applicable to any discriminative

architecture that uses a collection of fi lters. Insight into what makes a good fi lter for object

detection.Can be used as an attention mechanism during test

time Reduce number of convolutions / hashing lookups.

Bottom line: One can tell whether a fi lter is useful for a category without knowing what that category is, just by “looking” at the fi lter.