Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning...

49
Object Lesson: Discovering and Learning to Recognize Objects Paul Paul Fitzpatrick Fitzpatrick MIT CSAIL MIT CSAIL USA USA

Transcript of Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning...

Page 1: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Object Lesson:

Discovering and

Learning to Recognize

Objects

Object Lesson:

Discovering and

Learning to Recognize

Objects

– – Paul Fitzpatrick Paul Fitzpatrick ––

MIT CSAILMIT CSAIL

USAUSA

Page 2: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

robots and learning

Robots have access to physics, and physics is a good teacher

Physics won’t let you believe the wrong thing for long

Robot perception should ideally integrate experimentation, or at least learn from (non-fatal) mistakes

forwardseemssafe…

Page 3: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

a challenge: object perception

Object perception is a key enabling technology

Many components:– Object detection– Object segmentation– Object recognition

Typical systems require human-prepared training data; can we use autonomous experimentation?

Page 4: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

a challenge: object perception

Object perception is a key enabling technology

Many components:– Object detection– Object segmentation– Object recognition

Typical systems require human-prepared training data; can we use autonomous experimentation?

Fruit detection

Page 5: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

a challenge: object perception

Object perception is a key enabling technology

Many components:– Object detection– Object segmentation– Object recognition

Typical systems require human-prepared training data; can we use autonomous experimentation?

Fruit segmentation

Page 6: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

a challenge: object perception

Object perception is a key enabling technology

Many components:– Object detection– Object segmentation– Object recognition

Typical systems require human-prepared training data – can’t adapt to new situations autonomously

Fruit recognition

Page 7: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

talk overview

Perceiving through experiment – Example: active segmentation

Learning new perceptual abilities opportunistically– Example: detecting edge orientation– Example: object detection, segmentation, recognition

An architecture for opportunistic learning– Example: learning about, and through, search activity

Page 8: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

talk overview

Perceiving through experiment – Example: active segmentation

Learning new perceptual abilities opportunistically– Example: detecting edge orientation– Example: object detection, segmentation, recognition

An architecture for opportunistic learning– Example: learning about, and through, search activity

Page 9: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

active segmentation Object boundaries are not

always easy to detect visually

Solution: Cog sweeps arm through ambiguous area

Any resulting object motion helps segmentation

Robot can learn to recognize and segment object without further contact

Page 10: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

active segmentation Detect contact between

arm and object using fast, coarse processing on optic flow signal

Do detailed comparison of motion immediately before and after collision

Use minimum-cut algorithm to generate best segmentation

1 2 3 4 5

9876 10

Page 11: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

active segmentation

Page 12: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

active segmentation Not always practical!

No good for objects the robot can view but not touch

No good for very big or very small objects

But fine for objects the robot is expected to manipulate

Head segmentation the hard way!

Page 13: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

listening to physics Active segmentation is

useful even if robot normally depends on other segmentation cues (color, stereo)

If passive segmentation is incorrect and robot fails to grasp object, active segmentation can use even clumsy collision to get truth

Seems silly not to use this feedback from physics and keep making the same mistake

table

car

Page 14: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

talk overview

Perceiving through experiment – Example: active segmentation

Learning new perceptual abilities opportunistically– Example: detecting edge orientation– Example: object detection, segmentation, recognition

An architecture for opportunistic learning– Example: learning about, and through, search activity

Page 15: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

talk overview

Perceiving through experiment – Example: active segmentation

Learning new perceptual abilities opportunistically– Example: detecting edge orientation– Example: object detection, segmentation, recognition

An architecture for opportunistic learning– Example: learning about, and through, search activity

Page 16: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

opportunistic learning

To begin with, Cog has three categories of perceptual abilities:– Judgements it can currently make (e.g. about color, motion, time)

– Judgements it can sometimes make (e.g. boundary of object, identity of object)

– Judgements it cannot currently make (e.g. counting objects)

With opportunistic learning, the robot takes judgements in the sometimes category and works to promote them to the can category by finding reliable correlated features that are more frequently available– Example: analysis of boundaries detected through motion yields purely

visual features that are predictive of edge orientation

– Example: assuming a non-hostile environment (some continuity in time and space) segmented views of objects can be grouped and purely visual features inferred that are characteristic of distinct objects

Page 17: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

training a model of edge appearance

Robot initially only perceives oriented edges through active segmentation procedure

Robot collects samples of edge appearance along boundary, and builds a look-up table from appearance to orientation angle

Now can perceive orientation directly

This is often built in, but it doesn’t have to be

Page 18: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

most frequent samples

1st

21st

41st

61st

81st

101st

121st

141st

161st

181st

201st

221st

Page 19: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

some tests

Red = horizontal Green = vertical

Page 20: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

natural images

0000 909000 454500 45450022.522.500 22.522.500 22.522.500 22.522.500

Page 21: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

talk overview

Perceiving through experiment – Example: active segmentation

Learning new perceptual abilities opportunistically– Example: detecting edge orientation– Example: object detection, segmentation, recognition

An architecture for opportunistic learning– Example: learning about, and through, search activity

Page 22: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

on to object detection…

Page 23: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

on to object detection…

look for this… …in this

Page 24: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

on to object detection…

Page 25: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

on to object detection…

Page 26: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

on to object detection…geometry alone

geometry + color

Page 27: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

other examples

Page 28: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

other examples

Page 29: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

other examples

Page 30: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

just for fun

look for this… …in thisresult

Page 31: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

real object in real images

Page 32: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

yellow on yellow

Page 33: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

multiple objects

camera image

response foreach object

implicated edgesfound and grouped

Page 34: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

attention

Page 35: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

first time seeing a ball

sees ball,“thinks” it is cube

correctly differentiatesball and cube

robot’scurrent

view

recognizedobject (as seenduring poking) pokes,

segmentsball

Page 36: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

open object recognition

Page 37: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

talk overview

Perceiving through experiment – Example: active segmentation

Learning new perceptual abilities opportunistically– Example: detecting edge orientation– Example: object detection, segmentation, recognition

An architecture for opportunistic learning– Example: learning about, and through, search activity

Page 38: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

talk overview

Perceiving through experiment – Example: active segmentation

Learning new perceptual abilities opportunistically– Example: detecting edge orientation– Example: object detection, segmentation, recognition

An architecture for opportunistic learning– Example: learning about, and through, search activity

Page 39: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

physically-grounded perception

active segmentation

object segmentation

edge catalog

object detection(recognition, localization,

contact-free segmentation)

affordance exploitation[with Giorgio Metta]

(rolling)

manipulator detection(robot, human)

Page 40: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

socially-grounded perception

Page 41: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

socially-grounded perception

Page 42: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

opportunistic architecture: a virtuous circle

familiar activities

familiar entities (objects, actors, properties, …)

use constraint of familiar activity to

discover unfamiliar entity used within it

reveal the structure of unfamiliar activities by

tracking familiar entities into and through them

Page 43: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

a virtuous circle

poking, chatting

car, ball, cube, and their names

discover car, ball, and cube through poking; discover their names

through chatting

Page 44: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

a virtuous circle

poking, chatting, search

car, ball, cube, and their names

follow named objects into search activity, and observe

the structure of search

Page 45: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

learning about search

Page 46: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

a virtuous circle

poking, chatting, search

car, ball, cube, and their names

follow named objects into search activity, and observe

the structure of search

Page 47: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

a virtuous circle

poking, chatting, searching

car, ball, cube, toma, and their names

discover novel object through poking, learn its name (e.g. ‘toma’)

indirectly during search

Page 48: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

finding the toma

Page 49: Object Lesson: Discovering and Learning to Recognize Objects Object Lesson: Discovering and Learning to Recognize Objects – Paul Fitzpatrick – MIT CSAIL.

Paul Fitzpatrick, MIT CSAIL, Humanoids 2003

conclusion: why do this?

The quest for truly flexible robots

Humanoid form is general-purpose, mechanically flexible

Robots that really live and work amongst us will need to be as general-purpose and adaptive perceptually as they are mechanically