FlowBot3D: Learning 3D Articulation Flow to Manipulate Articulated Objects

Ben Eisner*, Harry Zhang*, David Held

In Proceedings, Robotics Science and Systems (RSS) 2022

Paper Link

Code (GitHub)

Poster

Abstract

We explore a novel method to perceive and manipulate 3D articulated objects that generalizes to enable the robot to articulate unseen classes of objects. We propose a vision-based system that learns to predict the potential motions of the parts of a variety of articulated objects to guide downstream motion planning  of the system to  articulate the objects. To predict the object motions, we train a network to output a dense vector field representing the point-wise motion direction of the points in the point cloud under articulation. The system then will deploy an analytical motion planning policy based on this vector field to achieve a grasp that yields maximum articulation. We train the vision system in simulation.  We then demonstrate the capability of our system to generalize to  unseen object instances and novel categories by testing our network in both simulation and real world, deployed on a Sawyer robot without retraining.

montage.mkv

A collage of FlowBot3D in action (videos shown in 5x speed)

RSS Presentation Video


System Pipeline

FlowBot3D System Overview. Our system in deployment has two phases: the Grasp-Selection phase and the Articulation-Execution Phase. The dark red dots represent the predicted location of each point, and the light red lines represent the flow vectors connecting from the current time step's points to the predicted points. Note that the flow vectors are downsampled for visual clarity. In Grasp-Selection Phase, the agent observes the environment in the format of point cloud data. The point cloud data will then be post-processed and fed into the ArtFlowNet, which predicts per-point 3D flow vectors. The system then chooses the point that has the maximum flow vector magnitude and deploys motion planning to make contact with the chosen point using suction. In Articulation-Execution phase, after making suction contact with the chosen argmax point, the system iteratively observes the pointcloud data and predicts the 3D flow vectors. In this phase, the motion planning module would guide the robot to follow the maximum observable flow vector's direction and articulate the object of interest repeatedly.

Interactive 3D Articulation Flow (3D AF) Prediction Visualization Tool

Three-dimensional visualization  of the 3D AF prediction on the point cloud data of a complete door opening rollout. Each red vector represents the predicted motion direction and location of the corresponding blue point. Click the square to pause first and drag around to view the vectors from different angles.  To resume, click the "play" button.

Door Opening 3D Flow Prediction

More Interactive 3D AF Visualizations (linked in the anonymous websites below)

Note: When Panning and Rotating, click Pause first. 

Real-World Experiments (One Model for ALL OBJECTS  Trained Purely IN SIMULATION)

Here we show some comparisons between our method (FlowNet) and End2End (DAgger-Oracle). For End2End, we provide the predicted max-flow point to the agent as the pre-contact phase target point.  Both methods are a single policy trained in simulation without real-world retraining or fine-tuning. 

For each object, we conduct 5 trials, randomizing its pose in the workspace. 

cheststack.mp4

Chest - FlowBot3D

Success

Chest - End2End (DAgger-Oracle)

Failure

teapotstack.mp4

Teapot - FlowBot3D

Success

Teapot - End2End (DAgger-Oracle)

Failure

toiletstack.mp4

Toilet - FlowBot3D

Success

Toilet - End2End (DAgger-Oracle)

Failure

fridgestack.mp4

Fridge - FlowBot3D

Success

Fridge - End2End (DAgger-Oracle)

Failure

drawerstack.mp4

Drawer - FlowBot3D

Success

Drawer - End2End (DAgger-Oracle)

Success

safestack.mp4

Safe - FlowBot3D

Success

Safe - End2End (DAgger-Oracle)

Failure

microwavestack.mp4

Microwave - FlowBot3D

Success

Microwave - End2End (DAgger-Oracle)

Failure

minifridgestack.mp4

Minifridge - FlowBot3D

Success

Minifridge - End2End (DAgger-Oracle)

Failure

jar1stack.mp4

Jar 1 - FlowBot3D

Success

Jar 1 - End2End (DAgger-Oracle)

Success

jar2stack.mp4

Jar 2 - FlowBot3D

Success

Jar 2 - End2End (DAgger-Oracle)

Success

trashcanstack.mp4

Trash Can - FlowBot3D

Success

Trash Can - End2End (DAgger-Oracle)

Failure

laptopstack.mp4

Laptop - FlowBot3D

Success

Laptop - End2End (DAgger-Oracle)

Success

boxstack.mp4

Box - FlowBot3D

Success

Box - End2End (DAgger-Oracle)

Failure

Failure Cases

We note that there are two failure modes: Flow Prediction Failure and Contact Failure


Max Flow Vector is predicted at the wrong position with the wrong direction

flow_failure.MOV

Post-Contact Phase Flow Prediction Direction is Horizontal (Lower left corner)

flow_failure_2.MOV

Here we show two Flow Predication Failures. Wrong 3D flow vector predictions cause the robot to output wrong actions. 

contact_failure.MOV

Here we show a Contact Failure. Physical and geometric properties of the object of interest make it difficult for the robot to grasp.

Simulation Experiments

Selected Comparison of UMP-DI (Top) and Our Model (Bottom) in SAPIEN Simulation.

Door (Revolute)

Laptop (Revolute)

Fridge (Revolute)

Folding Chair (Revolute)

Safe (Revolute)

Safe (Revolute)

Oven (Revolute)

Storage Furniture (Revolute)

Toilet (Revolute)

Table (Prismatic)

Storage Furniture (Prismatic)

Storage Furniture (Prismatic)

Failures

Here we show some failures in simulation. In simulation, since we have a near-perfect contact model, the failures come from wrong 3D flow prediction.

Trash Can (Dumpster) Failure

Predicted Flow (Back and Forth)

Safe Failure

Predicted Flow (Back and Forth)

Dishwasher Failure

Predicted Flow (Back and Forth)

Box Failure

Predicted Flow (Wrong Direction to Begin with)

Results with Two Metrics (Normalized Distance and Success Rate) in Simulation

Supplement Material

RSS_2022___Flow_based_manipulation (1).pdf

Citation Info (BibTex)

@inproceedings{EisnerZhang2022FLOW,

  title={FlowBot3D: Learning 3D Articulation Flow to Manipulate Articulated Objects},

  author={Eisner*, Ben and Zhang*, Harry and Held,David},

  booktitle={Robotics: Science and Systems (RSS)},

  year={2022}

}

Acknowledgements

This research was performed at Robots Perceiving and Doing (RPAD) lab at the Robotics Institute (RI) of Carnegie Mellon University. The authors were supported in part by the donations from NSF CAREER, NSF SAS, and LG. BE is supported by NSF Graduate Research Fellowship under Grant No. DGE1745016. We are grateful to Thomas Weng, Brian Okorn, Daniel Seita, Shikhar Bahl, and Russell Mendonca for feedback on the paper. Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.