alex sorokin: opencv/mechanical turk presentation

17
Summer 09 is over. When did that happen?

Upload: willow-garage

Post on 16-Nov-2014

13.790 views

Category:

Documents


2 download

DESCRIPTION

Alex Sorokin's presentation on his work this summer building a server to annotate data collected from the Willow Garage PR2 robot. This server would submit jobs to people on Amazon's Mechanical Turk service to get labeled training data.

TRANSCRIPT

Page 1: Alex Sorokin: OpenCV/Mechanical Turk Presentation

Summer 09 is over.

When did that happen?

Page 2: Alex Sorokin: OpenCV/Mechanical Turk Presentation

What have I done?

• Tools for annotating data• Tools to for data access• Executive to capture data autonomously• Annotation lifting• PR2 challenge

Page 3: Alex Sorokin: OpenCV/Mechanical Turk Presentation

Data annotation

Page 4: Alex Sorokin: OpenCV/Mechanical Turk Presentation

New modes of annotation

• Several new ways toannotate data– Multiple fast

bounding boxes– Zoom-in interface for

detailed polygonalannotation

– Grouping images totrack people

– Free text labels

http://vm7.willowgarage.com/mt/good_results/bottles-p-2/p1/

Page 5: Alex Sorokin: OpenCV/Mechanical Turk Presentation

New modes of annotation

• Several new ways toannotate data– Multiple fast

bounding boxes– Zoom-in interface for

detailed polygons– Grouping images to

track people– Free text labels

http://vm7.willowgarage.com/mt/good_results/bottles-p-2/p1/

Page 6: Alex Sorokin: OpenCV/Mechanical Turk Presentation

New modes of annotation

• Several new ways toannotate data– Multiple fast

bounding boxes– Zoom-in interface for

detailed polygonalannotation

– Grouping images totrack people

– Free text labels

Page 7: Alex Sorokin: OpenCV/Mechanical Turk Presentation

New modes of annotation

• Several new ways toannotate data– Multiple fast

bounding boxes– Zoom-in interface for

detailed polygonalannotation

– Grouping images totrack people

– Free text labels

Page 8: Alex Sorokin: OpenCV/Mechanical Turk Presentation

Grading!

• Just filter out poorresults

Much easier thanannotating yourself

• New task to run gradingon MechTurk

• Random sample ofthumbnails

• Grading by worker• Track grading conflicts

http://vm7.willowgarage.com/mt/grading/thumbnails_random/prf-jul-08-L2-p/

Page 9: Alex Sorokin: OpenCV/Mechanical Turk Presentation

Grading!

• Just filter out poorresults

Much easier thanannotating yourself

• New task to rungrading on turk

• Random sample ofthumbnails

• Grading by worker

http://vm7.willowgarage.com/mt/grading/thumbnails_random/prf-jul-08-L2-p/

Page 10: Alex Sorokin: OpenCV/Mechanical Turk Presentation

Data annotation server

• Django server to manage dataannotation process

• Stable server• Consistent user interface• Scalable task architecture• First 5 users• ROS integration across 2+ different masters

– Image in (over HTTP post)– cv_mech_turk/ExternalAnnotation out

http://vm7.willowgarage.com/

Page 11: Alex Sorokin: OpenCV/Mechanical Turk Presentation

Data access

• Bag server– Random access into a bag file– Replay of select messages

• Bag image view– Browsing images off a bag– Example client to the bagserver

Page 12: Alex Sorokin: OpenCV/Mechanical Turk Presentation

Data lifting

• 2D to 3D correspondence• Annotation of laser clouds with object

labels, image coordinates an image IDs• Image storage server• Static map of all annotations• Whiteboard detector from static object

map

Page 13: Alex Sorokin: OpenCV/Mechanical Turk Presentation

Camera “calibration”

• Create a virtual cameraand move it to align withthe laser cloud or robotmodel

• Fix major calibrationerrors

http://pr.willowgarage.com/wiki/camera_offsetter

before

after

Page 14: Alex Sorokin: OpenCV/Mechanical Turk Presentation

Data collection executive

• High level executive based on M2 pythonexecutive– Move to waypoints– Position head– Record data– Record action state

• Select images when the “record” action wasactive and annotate them.

Page 15: Alex Sorokin: OpenCV/Mechanical Turk Presentation

PR2 challenge

• Integrated ROS components into a completebehavior.

• Preemptable high level state machine:– Allows to switch between autonomy and teleop– Preempts child actions– External GUI to watch and control the executive

• Great prototype for hardware in the loop test

Page 16: Alex Sorokin: OpenCV/Mechanical Turk Presentation

PR2 challenge• Integrated ROS

components into acomplete behavior.

• Preemptable high levelstate machine:– Allows to switch between

autonomy and teleop– Preempts child actions– External GUI to watch

and control the executive• Great prototype for

hardware in the looptest and learning

Page 17: Alex Sorokin: OpenCV/Mechanical Turk Presentation

Thank you