rapyuta: a cloud robotics platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajaniros...demo...

25
Rapyuta: A Cloud Robotics Platform Gajamohan Mohanarajah, PhD candidate, ETH Zurich

Upload: others

Post on 21-May-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Rapyuta: A Cloud Robotics Platform Gajamohan Mohanarajah, PhD candidate, ETH Zurich

Page 2: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Motivation - I

Page 3: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

More challenges along the way...

Are you serious?Are you serious?

Can I join too?

I wish RoboEarth did some some

processing

Page 4: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Motivation – II

Allowed Delay

Data Rate

OnboardExecution

CloudExecution

Advances in MobileCommunication

Technologies

Data

Page 5: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

The Complete Picture!

Page 6: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Let's look into details

Page 7: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Details

Page 8: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Details

Page 9: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Details

Page 10: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Details

Page 11: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Other use cases •Robot Networking

•rosbridge like functionality

•multi master functionality

Page 12: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Turtlebot: Internet Edition

ASUS USB-N53 (35$)

ODROID U2 (~90$)

Total price < 550$

Task: Tokyo Big Sight #610, Amazon Ireland server, map it in real time!

PrimeSense (200$)

Page 13: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Architecture Overview

Page 14: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Visual Odometry● Process of determining camera pose from

image sequence● Usually feature-based incremental frame to

frame matching● Our approach - keyframe based dense

visual odometry● Dense visual odometry - uses all pixels to

estimate the pose (based on Steinbruecker et al. 2011 & Kerl et al. 2013)

● Keyframe - reference frame that is used to estimate relative pose of other frames

Page 15: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Loop Closure and Global Optimization

Page 16: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Global Optimization Algorithm

● Step 1 : Build error graph of the problem

● Find constraints (edges) between all pairs of keyframes (parallelize)

● Step 2 : Optimize the global error function

● Open-source packages - g2o, ceres

Page 17: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Map Merging● Select a random frame from one map● Extract features● Try to match with frames from other

maps

Page 18: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Evaluation of Bandwidth

● 3.5 MB/s for every frame (h.264 + FFV1)● 300-450 KB/s for keyframes only● Bandwidth is proportional to the speed of

the robot

Page 19: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Evaluation

● Parallel optimizationspeedup more visibleon bigger datasets

● Computation timestops decreasingafter 8 machinesdue to communicationcosts

Page 20: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Demo

Page 21: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Conclusion

● Rapyuta Overview / Architecture● Cloud based multi-robot 3D

mapping system

Page 22: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Thank you for your attention

•Questions?

Page 23: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

25

Why not use a general PaaS for robotics?

•Limitations:

•General: Most supports single process apps

•Google App Engine: Programing APIs, execution time limit

•Heroku: No WebSockets, No inter communication between containers

•OpenShift/Cloud Foundry (New!): General limitations still apply

Page 24: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

26

Other robotic PaaS like frameworks

•Davinci: Single ROS system in the cloud, Hadoop back end for mapping

• UNR-PF (ongoing): Cloud networked robotics platform

Page 25: Rapyuta: A Cloud Robotics Platformroboearth.ethz.ch/wp-content/uploads/2013/03/gajanIROS...Demo Conclusion Rapyuta Overview / Architecture Cloud based multi-robot 3D mapping system

Challenges

•Limited computation power on each robot

•Limited bandwidth and unreliable communication

•Much available computation power on the cloud, but not suitable for real-time processing