YOU ARE DOWNLOADING DOCUMENT

Please tick the box to continue:

Transcript
Page 1: A Sample of Monte Carlo Methods in Robotics and Vision

A Sample of Monte Carlo Methodsin Robotics and Vision

Frank DellaertCollege of Computing

Georgia Institute of Technology

Microsoft Research May 27 2004

Page 2: A Sample of Monte Carlo Methods in Robotics and Vision

Credits

Zia KhanTucker BalchMichael KaessRafal ZboinskiAnanth Ranganathan

Page 3: A Sample of Monte Carlo Methods in Robotics and Vision

Outline

The CPL and BORG Labs

Page 4: A Sample of Monte Carlo Methods in Robotics and Vision

Computational Perception Lab@Georgia Tech

Aaron Bobick, Frank Dellaert, Irfan Essa, Jim Rehg,

andThad Starner

Other vision faculty In ECE: Ramesh Jain, Allen Tennenbaum,

Tony Yezzi

Page 5: A Sample of Monte Carlo Methods in Robotics and Vision

Structure from Motion…

Page 6: A Sample of Monte Carlo Methods in Robotics and Vision

…without CorrespondencesCVPR 2000, NIPS, Machine Learning Journal

Page 7: A Sample of Monte Carlo Methods in Robotics and Vision

Current Main Effort: 4D Atlanta

Page 8: A Sample of Monte Carlo Methods in Robotics and Vision

4D Atlanta

Idea:Take 10000 images over 100 yearsBuild a 3D model with a time slider

2 PhD Students2 MSc Students

Assumptions about urban scenes (Manhattan), Symmetry (a la Yi Ma), Grammar-based inference, Markov chain Monte Carlo

Page 9: A Sample of Monte Carlo Methods in Robotics and Vision

Manhattan World

CVPR 2004 Poster, with Grant Schindler

Atlanta World

Page 10: A Sample of Monte Carlo Methods in Robotics and Vision

The BORG lab

With Tucker Balch, Thad Starner

Page 11: A Sample of Monte Carlo Methods in Robotics and Vision

Real-Time Urban Reconstruction

•4D Atlanta, only real time, multiple cameras •Large scale SFM: closing the loop

Page 12: A Sample of Monte Carlo Methods in Robotics and Vision

The Biotracking Project:Tracking Social Insects

Page 13: A Sample of Monte Carlo Methods in Robotics and Vision

Overview

Influx of probabilistic modeling and inference…

Statistics

ComputerVision

Robotics

MachineLearning

Page 14: A Sample of Monte Carlo Methods in Robotics and Vision

A sample of Methods

Particle Filtering (Bootstrap Filter)Monte Carlo Localization

MCMCMulti-Target Tracking

Rao-BlackwellizationEigenTracking

MCMC + RBPiecewise Continuous Curve FittingProbabilistic Topological Maps

Page 15: A Sample of Monte Carlo Methods in Robotics and Vision

Monte Carlo Localization

Page 16: A Sample of Monte Carlo Methods in Robotics and Vision

1D Robot Localization

Prior P(X)

LikelihoodL(X;Z)

PosteriorP(X|Z)

Page 17: A Sample of Monte Carlo Methods in Robotics and Vision

Importance Sampling

Densities are decidedly non-GaussianHistogram approach does not scaleMonte Carlo ApproximationSample from P(X|Z) by:

sample from prior P(x)weight each sample x(r) using an importance weight equal

to likelihood L(x (r);Z)

Page 18: A Sample of Monte Carlo Methods in Robotics and Vision

1D Importance Sampling

Page 19: A Sample of Monte Carlo Methods in Robotics and Vision

Sampling Advantages

Arbitrary densitiesMemory = O(#samples)Only in “Typical Set”Great visualization tool !

minus: ApproximateRejection and Importance Sampling do

not scale to large spaces

Page 20: A Sample of Monte Carlo Methods in Robotics and Vision

Bayes Filter and Particle Filter

Monte Carlo Approximation:

Recursive Bayes Filter Equation:Motion Model

Predictive Density

Page 21: A Sample of Monte Carlo Methods in Robotics and Vision

Particle Filter

π(3)π(1)π(2)

Empirical predictive density = Mixture Model

First appeared in 70’s, re-discovered by Kitagawa, Isard, …

Page 22: A Sample of Monte Carlo Methods in Robotics and Vision

3D Particle filter for robot pose:Monte Carlo Localization

Dellaert, Fox & Thrun ICRA 99

Page 23: A Sample of Monte Carlo Methods in Robotics and Vision

Multi-Target Tracking

An MCMC-Based Particle Filter for Tracking Multiple, Interacting Targets, ECCV 2004 Prague,With Zia Khan & Tucker Balch

Page 24: A Sample of Monte Carlo Methods in Robotics and Vision

Motivation

How to track many INTERACTING targets ?

Page 25: A Sample of Monte Carlo Methods in Robotics and Vision

Traditional Multi-Target Tracking

In essence: curve fitting !

Page 26: A Sample of Monte Carlo Methods in Robotics and Vision

Ants are not Airplanes !

Interaction changes behavior

Page 27: A Sample of Monte Carlo Methods in Robotics and Vision

Results: Vanilla Particle Filters

Page 28: A Sample of Monte Carlo Methods in Robotics and Vision

Our Solution: MRF Motion Model

MRF = Markov Random Field, built on the fly

Edges indicate interaction

Absence of edges indicates no interaction

Page 29: A Sample of Monte Carlo Methods in Robotics and Vision

MRF Interaction Factor

Pairwise MRF:

Page 30: A Sample of Monte Carlo Methods in Robotics and Vision

Joint MRF Particle Filter

Page 31: A Sample of Monte Carlo Methods in Robotics and Vision

Results: Joint MRF Particle Filter

Page 32: A Sample of Monte Carlo Methods in Robotics and Vision

X’tXt

Solution: Marlov Chain Monte Carlo

Propose a move Q(X’t|Xt)

Calculate acceptance ratio a = Q(Xt | X’t) p(Xt) / Q(X’t | Xt) p(Xt)

If a>=1, accept moveotherwise only accept move with probability a

X0t

Start at X0t

Page 33: A Sample of Monte Carlo Methods in Robotics and Vision

MCMC Particle Filter

Page 34: A Sample of Monte Carlo Methods in Robotics and Vision

Results: MCMC

Page 35: A Sample of Monte Carlo Methods in Robotics and Vision

Quantitative Results (10K frames)

Page 36: A Sample of Monte Carlo Methods in Robotics and Vision

Rao-Blackwellized EigenTracking

Coming CVPR 2004 Talk,With Zia Khan and Tucker Balch

Page 37: A Sample of Monte Carlo Methods in Robotics and Vision

Motivation

Honeybees are more challenging Eigenspace Representation:

Generative PPCA Model (Tipping&Bishop) Learned using EM, from 146 color images of bees

Page 38: A Sample of Monte Carlo Methods in Robotics and Vision

Particle Filter

Added dimensionality = problemSolution: integrate out PPCA coefficients

Location

Appearance

Page 39: A Sample of Monte Carlo Methods in Robotics and Vision

Marginal Bayes Filter

Bayes filter for location and appearance

Marginalized to location only:

Page 40: A Sample of Monte Carlo Methods in Robotics and Vision

Rao-Blackwellized Filter

Hybrid approximation:

Location is sampledEach sample carries a conditional Gaussian over the

appearance coefficientsMarginalization with PPCA is very efficient

Page 41: A Sample of Monte Carlo Methods in Robotics and Vision

Simplified Filter

Dynamic Bayes Net:

Sampled

Gaussian

Approximation:

Page 42: A Sample of Monte Carlo Methods in Robotics and Vision

Sampled

Page 43: A Sample of Monte Carlo Methods in Robotics and Vision

q=0

Page 44: A Sample of Monte Carlo Methods in Robotics and Vision

q=20

Page 45: A Sample of Monte Carlo Methods in Robotics and Vision

Dancers, q=10, n=500

Page 46: A Sample of Monte Carlo Methods in Robotics and Vision

Piecewise Continuous Curve-Fitting

ECCV 2004 Prague, with Michael Kaess and Rafal Zboinski

Page 47: A Sample of Monte Carlo Methods in Robotics and Vision

Reconstructing Objects with Jagged Edges

Page 48: A Sample of Monte Carlo Methods in Robotics and Vision

Subdivision Curves

Page 49: A Sample of Monte Carlo Methods in Robotics and Vision

Tagged Subdivision Curves

Hughes Hoppe paper: piecewise smooth surface fitting

In this context: 3D tagged subdivision curves

Page 50: A Sample of Monte Carlo Methods in Robotics and Vision

Tagged Curve Example

Page 51: A Sample of Monte Carlo Methods in Robotics and Vision

Rao-Blackwellized Sampling

MCMC sampling over discrete tag configurationsFor each sample: optimize over control pointsApproximate mode by a GaussianMarginalize Analytically

Page 52: A Sample of Monte Carlo Methods in Robotics and Vision
Page 53: A Sample of Monte Carlo Methods in Robotics and Vision
Page 54: A Sample of Monte Carlo Methods in Robotics and Vision

Marginals

Page 55: A Sample of Monte Carlo Methods in Robotics and Vision

Probabilistic Topological Maps

Submissions to IROS, NIPS,With Ananth Ranganathan

Page 56: A Sample of Monte Carlo Methods in Robotics and Vision

Motivation

Metric MapsTopological MapsHow to reason about topology given incomplete or

noisy observations ?

Page 57: A Sample of Monte Carlo Methods in Robotics and Vision

Problem

Odometry measurements are noisy:

Page 58: A Sample of Monte Carlo Methods in Robotics and Vision

Correct Topology and ML Path

Given ground truth topology, calculate ML path:

Page 59: A Sample of Monte Carlo Methods in Robotics and Vision

Probabilistic Topological Maps

Page 60: A Sample of Monte Carlo Methods in Robotics and Vision

Set Partitions

Topologies Set Partitions

Page 61: A Sample of Monte Carlo Methods in Robotics and Vision

Bell numbers

1, 2, 5, 15, 52, 203, 877, 4140, 21147, 115975Combinatorial explosion !

Idea: use MCMC Sampling over topologies

Page 62: A Sample of Monte Carlo Methods in Robotics and Vision

MCMC Proposal

Pick k at random, assign it to group t in 1..mSome possibilities:

original

Page 63: A Sample of Monte Carlo Methods in Robotics and Vision

Acceptance Ratio

Pick k at random, assign it to group t in 1..m

Page 64: A Sample of Monte Carlo Methods in Robotics and Vision

Rao-Blackwellized Sampling

MCMC sampling over discrete tag configurationsFor each sample: optimize over robot trajectoryApproximate mode by a GaussianMarginalize Analytically

Page 65: A Sample of Monte Carlo Methods in Robotics and Vision

Results

Page 66: A Sample of Monte Carlo Methods in Robotics and Vision

The End


Related Documents