LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning...

46
LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research Cambridge with Nebojsa Jojic, MSR Redmond 7 th July 2006

Transcript of LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning...

Page 1: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

LOCUS(Learning Object Classes with Unsupervised Segmentation)

A variational approach to learning model-based segmentation.

John Winn Microsoft Research Cambridge

with Nebojsa Jojic, MSR Redmond

7th July 2006

Page 2: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Overview

Learning object models

The LOCUS model

Experiments & results

Extensions to LOCUS

Page 3: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Goal

Long Term Goal

Recognise ~10,000 object classes.

Page 4: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Learning from ‘buckets’ of images

Horsemodel

Learningalgorithm

•Object Segmentation

•Object Recognition

•Object Detection

Page 5: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Object segmentation

+Horsemodel

LOCUS

Page 6: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Related work

Page 7: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Constellation modelsWeakly supervised

Probabilistic framework

Sparse

No segmentation

Object class recognition by unsupervised scale-invariant learning. R. Fergus, P. Perona, and A. Zisserman. CVPR 2003A Bayesian approach to unsupervised One-Shot learning of Object categories. L. Fei-Fei, R. Fergus, and P. Perona. ICCV 2003

Page 8: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Fragment-based

Learning to segment. E. Borenstein and S. Ullman. ECCV 2004Combining top-down and bottom-up segmentation. E. Borenstein, E. Sharon, and S. Ullman. CVPR 2004

Dense model

Supervised

Non-probabilistic

No global shape model

Page 9: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Codebook-based

Combined object categorization and segmentation with an implicit shape model. B. Leibe, A. Leonardis, and B. Schiele. ECCV ‘04

Probabilistic

Dense model

Supervised

Ad-hoc inference

Page 10: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

OBJ CUTProbabilistic

Dense model

Supervised

Requires video

Page 11: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

LOCUS overview

Weakly supervised learning Buckets of images - no annotation required.

Probabilistic generative modelof both object and background.

Dense modelAll pixels modelled, not just at interest points.

Combines global and local cuesModels global shape and local appearance + edges.

Iterative inference processSimultaneous localisation, segmentation, pose estimation.

Page 12: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

The LOCUS model

Page 13: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

LOCUS model

Deformation field D

Position & size T

Class shape π Class edge sprite μo,σo

Edge image e

Image

Object appearance λ1

Background appearance λ0

Mask m

Shared between images

Different for each image

Page 14: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

LOCUS model: appearance

background

object

Mask m

Background mixture coefficients

λ0

Objectmixture coefficients

λ1Image z

Shared mixture components:

Page 15: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

LOCUS model: mask

background

object

8-neighbour Markov Random Field (as used in GrabCut)

favours segmentation along contrast edges

Page 16: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

LOCUS model: shape/position

TNT4T2 T3T1

Transformation

Class shape π

Page 17: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Iterative inference

TNT4T2 T3T1

Class shape π

Iteration #1

Page 18: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Iterative inference

TNT4T2 T3T1

Class shape π

Iteration #2

Page 19: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Iterative inference

TNT4T2 T3T1

Class shape π

Iteration #3

Page 20: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Iterative inference

TNT4T2 T3T1

Class shape π

Iteration #5

Page 21: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Iterative inference

TNT4T2 T3T1

Class shape π

Iteration #8

Page 22: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Iterative inference

TNT4T2 T3T1

Class shape π

Iteration #12

Page 23: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Non-rigid objectsClass shape π

Translation and scale is not enough.

Page 24: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

LOCUS model: pose

Class shape π

T 0 50 100 150 200

0

50

100

150

Deformation field D

5x5 blocks

Prior ensures smoothness

Page 25: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

LOCUS model: poseClass shape π

TD1 TD2 TD3 TDN

Page 26: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

LOCUS model: edge

TD1 TD2 TD3 TDN

Edge images e …

Original images

Class edge sprite μo,σo

Page 27: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

LOCUS model: overview

Deformation field D

Position & size T

Class shape π Class edge sprite μo,σo

Edge image e

Image

Object appearance λ1

Background appearance λ0

Mask m

Shared between images

Different for each image

Page 28: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Inference

Aim to infer all latent variables, For each image: background appearance λ0, object

appearance λ1, deformation D, transformation T, mask m, Class variables: shape π, edge sprite μo, σo.

Bayesian inference is carried out using variational message passing with a fully factorised variational distribution.

Optimisation of grid-structured variational free energy terms (relating to the deformation field D and the mask m) achieved using graph cuts.

Page 29: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Experiments & results

Page 30: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Experiments

LOCUS applied to 8 sets of 20 images each containing objects of the same class.

•Horses•Faces•Cars (rear)•Cars (side)

•Motorbikes•Aeroplanes•Cows•Trees

For each class, we ran separate experiments for color and texture appearance models.

Page 31: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Results: horses

Page 32: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Results: horses

Page 33: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Results: cars

Page 34: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Results: cars

Page 35: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Results: remaining classes

Cars (rear)Faces Motorbikes Planes Cows Trees

Page 36: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Segmentation accuracy

Horses Cars (side)

LOCUS (color)LOCUS (texture)

unannotated training images

93.1%93.0%

91.4%94.0%

Borenstein et al.hand-segmented training images

93.6% -

Each image segmented separately

88.6% 82.1%

To evaluate segmentation quantitively, we used hand segmentations for horses and cars (side).

Page 37: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Object registration

Transformation + deformation field registers object outlines (and some internal edges).

Page 38: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Object registration

Page 39: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Extensions to LOCUS

Page 40: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Recognition + segmentation

Object recognition using only global shape:

Overall: 88% accuracy.

Page 41: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Probabilistic Index Maps2 indices 9 indices

Each image has a ‘palette’ of appearance models – palette invariance.

Page 42: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Probabilistic Index Maps

Page 43: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Learning objects from video

Object shape

Object edge sprite

Page 44: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Locumotion

Add flow and track constraints to achieve motion segmentation:

Tracking/flow estimation by Larry Zitnick

Page 45: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Conclusions

LOCUS gives unsupervised segmentations of accuracy equivalent to state-of-the-art supervised methods.

General-purpose model allows:Object localisationPose estimationObject segmentationMotion segmentation/object trackingObject recognition/detection (in combination

with discriminative model)

Page 46: LOCUS (Learning Object Classes with Unsupervised Segmentation) A variational approach to learning model- based segmentation. John Winn Microsoft Research.

Questions ?