Sim2Real View Invariant Visual Servoing by Recurrent Control
arXiv:1712.07642
Abstract
Humans are remarkably proficient at controlling their limbs and tools from a wide range of viewpoints and angles, even in the presence of optical distortions. In robotics, this ability is referred to as visual servoing: moving a tool or end-point to a desired location using primarily visual feedback. In this paper, we study how viewpoint-invariant visual servoing skills can be learned automatically in a robotic manipulation scenario. To this end, we train a deep recurrent controller that can automatically determine which actions move the end-point of a robotic arm to a desired object. The problem that must be solved by this controller is fundamentally ambiguous: under severe variation in viewpoint, it may be impossible to determine the actions in a single feedforward operation. Instead, our visual servoing system must use its memory of past movements to understand how the actions affect the robot motion from the current viewpoint, correcting mistakes and gradually moving closer to the target. This ability is in stark contrast to most visual servoing methods, which either assume known dynamics or require a calibration phase. We show how we can learn this recurrent controller using simulated data and a reinforcement learning objective. We then describe how the resulting model can be transferred to a real-world robot by disentangling perception from control and only adapting the visual layers. The adapted model can servo to previously unseen objects from novel viewpoints on a real-world Kuka IIWA robotic arm. For supplementary videos, see: https://fsadeghi.github.io/Sim2RealViewInvariantServo
Supplementary video: https://fsadeghi.github.io/Sim2RealViewInvariantServo
References in corpus (7)
- Adam: A Method for Stochastic Optimization
- Very Deep Convolutional Networks for Large-Scale Image Recognition
- TensorFlow: Large-Scale Machine Learning on Heterogeneous Distributed Systems
- Memory-based control with recurrent neural networks
- Learning to Poke by Poking: Experiential Learning of Intuitive Physics
- Preparing for the Unknown: Learning a Universal Policy with Online System Identification
- Learning to Fly by Crashing
Cited by in corpus (13)
- Learning by Playing - Solving Sparse Reward Tasks from Scratch
- Non-Smooth Newton Methods for Deformable Multi-Body Dynamics
- From Machine Learning to Robotics: Challenges and Opportunities for Embodied Intelligence
- Self-driving scale car trained by Deep reinforcement learning
- DoorGym: A Scalable Door Opening Environment And Baseline Agent
- Dexterous Manipulation with Deep Reinforcement Learning: Efficient, General, and Low-Cost
- RL-CycleGAN: Reinforcement Learning Aware Simulation-To-Real
- Investigation of Error Simulation Techniques for Learning Dialog Policies for Conversational Error Recovery
- Hierarchical Policy for Non-prehensile Multi-object Rearrangement with Deep Reinforcement Learning and Monte Carlo Tree Search
- End-to-end Active Object Tracking and Its Real-world Deployment via Reinforcement Learning
- Model-based Behavioral Cloning with Future Image Similarity Learning
- Morphology-Agnostic Visual Robotic Control
- How to Train your Quadrotor: A Framework for Consistently Smooth and Responsive Flight Control via Reinforcement Learning