Dex-Net 2.0: Deep Learning to Plan Robust Grasps with Synthetic Point Clouds and Analytic Grasp Metrics

Jeffrey Mahler, Jacky Liang, Sherdil Niyaz, Michael Laskey, Richard Doan, Xinyu Liu, Juan Aparicio Ojea, Ken Goldberg

I Introduction

Reliable robotic grasping is challenging due to imprecision in sensing and actuation, which leads to uncertainty about properties such as object shape, pose, material properties, and mass. Recent results suggest that deep neural networks trained on large datasets of human grasp labels or physical grasp outcomes can be used to plan grasps that are successful across a wide variety of objects directly from images or point clouds, similar to generalization results in computer vision . However, data collection requires either tedious human labeling or months of execution time on a physical system .

An alternative approach is to plan grasps using physics-based analyses such as caging , grasp wrench space (GWS) analysis , robust GWS analysis , or simulation , which can be rapidly computed using Cloud Computing . However, these methods assume a separate perception system that estimates properties such as object shape or pose either perfectly or according to known Gaussian distributions . This is prone to errors , may not generalize well to new objects, and can be slow to match point clouds to known models during execution . In this paper we instead consider predicting grasp success directly from depth images by training a deep Convolutional Neural Network (CNN) on a massive dataset of parallel-jaw grasps, grasp metrics, and rendered point clouds generated using analytic models of robust grasping and image formation , building upon recent research on classifying force closure grasps and the outcomes of dynamic grasping simulations .

Our primary contributions are: 1) the Dexterity Network (Dex-Net) 2.0, a dataset associating 6.7 million point clouds and analytic grasp quality metrics with parallel-jaw grasps planned using robust quasi-static GWS analysis on a dataset of 1,500 3D object models, 2) a Grasp Quality Convolutional Neural Network (GQ-CNN) model trained to classify robust grasps in depth images using expected epsilon quality as supervision, where each grasp is specified as a planar pose and depth relative to a camera, and 3) a grasp planning method that samples antipodal grasp candidates and ranks them with a GQ-CNN.

In over 1,000 physical trials of grasping single objects on a tabletop with an ABB YuMi robot, we compare Dex-Net 2.0 to image-based grasp heuristics, a random forest , an SVM , and a baseline that recognizes objects, registers their 3D pose , and indexes Dex-Net 1.0 for the most robust grasp to execute. We find that the Dex-Net 2.0 grasp planner is 3×\times faster than the registration-based method, 93%\% successful on objects seen in training (the highest of learning-based methods), and is the best performing method on novel objects, achieving 99%\% precision on a dataset of 40 household objects despite being trained entirely on synthetic data.

II Related Work

Grasp Planning. Given an object and reachability constraints due to the environment, grasp planning considers finding a gripper configuration that maximizes a success (or quality) metric. Methods fall into one of two categories based on success criteria: analytic methods , which consider performance according to physical models such as the ability to resist external wrenches , and empirical (or data-driven) methods , which typically use human labels or the ability to lift the object in physical trials .

Analytic Methods. Analytic approaches typically assume that object and contact locations are known exactly and consider either the ability to resist external wrenches or the ability to constrain the object’s motion . To execute grasps on a physical robot, a common approach is to precompute a database of known 3D objects labeled with grasps and quality metrics such as GraspIt! .Precomputed grasps are indexed using point cloud registration: matching point clouds to known 3D object models in the database using visual and geometric similarity and executing the highest quality grasp for the estimated object instance.

Robust grasp planning (RGP) methods maximize grasp robustness, or the expected value of an analytic metric under uncertainty in sensing and control. This typically involves labeling grasps on a database 3D object models with robust metrics such as probability of force closure or the pose error robust metric and using registration-based planning. Recent research has demonstrated that the sampling complexity of RGP can be improved using Multi-Armed Bandits and datasets of prior 3D objects and robust grasps, such as the Dexterity Network (Dex-Net) 1.0 . In this work we make a major extension to Dex-Net 1.0 by associating synthetic point clouds with robust grasps and training a Convolutional Neural Network to map point clouds and candidates grasps to estimated robustness.

Empirical Methods. Empirical approaches typically use machine learning to develop models that map from robotic sensor readings directly to success labels from humans or physical trials. Human labels have become popular due to empirical correlation with physical success , although they may be expensive to aquire for large datasets. Research in this area has largely focused on associating human labels with graspable regions in RGB-D images or point clouds . Lenz et al. created a dataset of over 1k RGB-D images with human labels of successful and unsuccessful grasping regions, which has been used to train fast CNN-based detection models .

Another line of research on empirical grasp planning has attempted to optimize success in physical trials directly. The time cost of generating samples on a physical robot led to the development active methods for acquiring grasping experiences such as Multi-Armed Bandits using Correlated Beta Processes or Prior Confidence Bounds . Recently Pinto and Gupta scaled up data collection by recording over 40k grasping experiences on a Baxter and iteratively training CNNs to predict lifting successes or to resist grasp perturbations caused by an adversary . Levine et al. scaled up dataset collection even futher, collecting over 800k datapoints with a set of continuously running robotic arms and using deep learning to predict end effector poses. However, this required over 2 months of training across up to 14 robots.

Computer Vision Techniques in Robot Grasping. Grasps for a physical robot are typically planned from images of target objects. Analytic grasp planning methods register images of rigid objects to a known database of 3D models, which typically involves segmentation, classification, and geometric pose estimation from 3D point cloud data in order to index precomputed grasps. However, this multi-stage approach can be prone to many hyperparameters that are difficult to tune and errors can compound across modules.

An alternative approach is to use deep learning to estimate 3D object shape and pose directly from color and depth images . Recent research in robotics has focused on how to improve accuracy in object recognition by structuring the way the neural network fuses the separate color and depth streams from images and adding synthetic noise to synthetic training images .Another approach is to detect graspable regions directly in images without explicitly representing object shape and pose , as it may not always be necessary to explicitly recognize objects and their pose to perform a grasp.

Since training on real images may require significant data collection time, an alternative approach is to learn on simulated images and to adapt the representation to real data . Recent research suggests that in some cases it may be sufficient to train on datasets generated using perturbations to the parameters of the simulator . Notably, Johns et al. used rendered depth images with simulated noise to train a CNN-based detector for planar grasps using dynamic simulations as supervision. We build upon these results by using robust analytic grasp metrics as supervision, using the gripper’s distance from the camera in predictions, and performing extensive evaluations on a physical robot.

III Problem Statement

We consider the problem of planning a robust planar parallel-jaw grasp for a singulated rigid object resting on a table based on point clouds from a depth camera. We learn a function that takes as input a candidate grasp and a depth image and outputs an estimate of robustness , or probability of success under uncertainty in sensing and control.

We assume a parallel-jaw gripper, rigid objects singulated on a planar worksurface, and single-view (2.5D) point clouds taken with a depth camera. For generating datasets, we assume a known gripper geometry and a single overhead depth camera with known intrinsics.

III-B Definitions

III-C Objective

Our goal is to learn a robustness function Qθ∗(u,y)∈Q_{\theta^{*}}(\mathbf{u},\mathbf{y})\in over many possible grasps, objects, and images that classifies grasps according to the binary success metric:

where L\mathcal{L} is the cross-entropy loss function and Θ\Theta defines the parameters of the Grasp Quality Convolutional Network (GQ-CNN) described in Section IV-B. This objective is motivated by that fact that Qθ∗=QQ_{\theta^{*}}=Q for all possible grasps and images when there exists some θ∈Θ\theta\in\Theta such that Qθ=QQ_{\theta}=Q . The estimated robustness function can be used in a grasping policy that maximizes Qθ∗Q_{\theta^{*}} over a set of candidate grasps: πθ(y)=argmaxu∈CQθ(u,y)\pi_{\theta}(\mathbf{y})=\text{argmax}_{\mathbf{u}\in\mathcal{C}}Q_{\theta}(\mathbf{u},\mathbf{y}), where C\mathcal{C} specifies constraints on the set of available grasps, such as collisions or kinematic feasibility. Learning QQ rather than directly learning the policy allows us to enforce task-specific constraints without having to update the learned model.

IV Learning a Grasp Robustness Function

Solving for the grasp robustness function in objective B.1 is challenging for several reasons. First, we may need a huge number of samples to approximate the expectation over a large number of possible objects. We address this by generating Dex-Net 2.0, a training dataset of 6.7 million synthetic point clouds, parallel-jaw grasps, and robust analytic grasp metrics across 1,500 3D models sampled from the graphical model in Fig. 2. Second, the relationship between point clouds, grasps, and metrics over a large datset of objects may be complex and difficult to learn with linear or kernelized models. Consequently, we develop a Grasp Quality Convolutional Neural Network (GQ-CNN) model that classifies robust grasp poses in depth images and train the model on data from Dex-Net 2.0.

We estimate Qθ∗Q_{\theta^{*}} using a sample approximation of the objective in Equation B.1 using i.i.d samples (S1,u1,x1,y1),...,(SN,uN,xN,yN)∼p(S,u,x,y)(S_{1},\mathbf{u}_{1},\mathbf{x}_{1},\mathbf{y}_{1}),...,(S_{N},\mathbf{u}_{N},\mathbf{x}_{N},\mathbf{y}_{N})\sim p(S,\mathbf{u},\mathbf{x},\mathbf{y}) from our generative graphical model for images, grasps, and success metrics:

Our graphical model is illustrated in Fig. 2 and models p(S,u,x,y)p(S,\mathbf{u},\mathbf{x},\mathbf{y}) as the product of a state distribution p(x)p(\mathbf{x}), an observation model p(y∣x)p(\mathbf{y}|\mathbf{x}), a grasp candidate model p(u∣x)p(\mathbf{u}|\mathbf{x}), and an analytic model of grasp success p(S∣u,x)p(S|\mathbf{u},\mathbf{x}).

where EQE_{Q} is the robust epsilon quality defined in , a variant of the pose error robust metric that includes uncertainty in friction and gripper pose, and collfree(u,x)collfree(\mathbf{u},\mathbf{x}) indicates that the gripper does not collide with the object or table. The supplemental file details the parameters of these distributions.

IV-A2 Database

Dex-Net 2.0 contains 6.7 million datapoints generated using the pipeline of Fig. 3.

3D Models. The dataset contains a subset of 1,500 mesh models from Dex-Net 1.0: 1,371 synthetic models from 3DNet and 129 laser scans from the KIT object database . Each mesh is aligned to a standard frame of reference using the principal axes, rescaled to fit within a gripper width of 5.0cm5.0cm (the opening width of an ABB YuMi gripper), and assigned a mass of 1.0kg1.0kg centered in the object bounding box since some meshes are nonclosed. For each object we also compute a set of stable poses and store all stable poses with probability of occurence above a threshold.

Parallel-Jaw Grasps. Each object is labeled with a set of up to 100 parallel-jaw grasps. The grasps are sampled using the rejection sampling method for antipodal point pairs developed in Dex-Net 1.0 with constraints to ensure coverage of the object surface . For each grasp we evaluate the expected epsilon quality EQE_{Q} under object pose, gripper pose, and friction coefficient uncertainty using Monte-Carlo sampling ,

Rendered Point Clouds. Every object is also paired with a set of 2.5D point clouds (depth images) for each object stable pose, with camera poses and planar object poses sampled according to the graphical model described in Section IV-A1. Images are rendered using a pinhole camera model and perspective projection with known camera intrinsics, and each rendered image is centered on the object of interest using pixel transformations. Noise is added to the images during training as described in Section IV-B3.

IV-B Grasp Quality Convolutional Neural Network

The Grasp Quality Convolutional Neural Network (GQ-CNN) architecture, illustrated in Fig. 4 and detailed in the caption, defines the set of parameters Θ\Theta used to represent the grasp robustness function QθQ_{\theta}. The GQ-CNN takes as input the gripper depth from the camera zz and a depth image centered on the grasp center pixel v=(i,j)\mathbf{v}=(i,j) and aligned with the grasp axis orientation φ\varphi. The image-gripper alignment removes the need to learn rotational invariances that can be modeled by known, computationally-efficient image transformations (similar to spatial transformer networks ) and allows the network to evaluate any grasp orientation in the image rather than a predefined discrete set as in . Following standard preprocessing conventions, we normalize the input data by subtracting the mean and dividing by the standard deviation of the training data and then pass the image and gripper depth through the network to estimate grasp robustness. The GQ-CNN has approximately 18 million parameters.

IV-B2 Training Dataset

GQ-CNN training datasets are generated by associating grasps with a pixel v\mathbf{v}, orientation φ\varphi, and depth zz relative to rendered depth images as illustrated in Fig. 3. We compute these parameters by transforming grasps into the camera frame of reference using the camera pose TcT_{c} and projecting the 3D grasp position and orientation onto the imaging plane of the camera . We then transform all pairs of images and grasp configurations to a single image centered on v\mathbf{v} and oriented along φ\varphi (see the left panel of Fig. 4 for an illustration). The Dex-Net 2.0 training dataset contains 6.7 million datapoints and approximately 21.2%21.2\% positive examples for the thresholded robust epsilon quality with threshold δ=0.002\delta=0.002 and a custom YuMi gripper.

IV-B3 Optimization

We optimize the parameters of the GQ-CNN using backpropagation with stochastic gradient descent and momentum . We initialize the weights of the model by sampling from a zero mean gaussian with variance 2ni\frac{2}{n_{i}}, where nin_{i} is the number of inputs to the ii-th network layer . To augment the dataset, we reflect the image about its vertical and horizontal axes and rotate each image by 180∘180^{\circ} since these lead to equivalent grasps. We also adaptively sample image noise from our noise model (see Section IV-A1) before computing the batch gradient for new samples during training to model imaging noise without explicitly storing multiple versions of each image. To speed up noise sampling we approximate the Gaussian Process noise by upsampling an array of uncorrelated zero-mean Gaussian noise using bilinear interpolation. We set hyperparameters based on the performance on a randomize synthetic validation set as described in Section VI-C.

V Grasp Planning

The Dex-Net 2.0 grasp planner uses the robust grasping policy πθ(y)=argmaxu∈CQθ(u,y)\pi_{\theta}(\mathbf{y})=\text{argmax}_{\mathbf{u}\in\mathcal{C}}Q_{\theta}(\mathbf{u},\mathbf{y}) illustrated in Fig. 1. The set C\mathcal{C} is a discrete set of antipodal candidate grasps sampled uniformly at random in image space for surface normals defined by the depth image gradients. Each grasp candidate is evaluated by the GQ-CNN, and the most robust grasp that is (a) kinematically reachable and (b) not in collision with the table is executed. The supplemental file contains additional details.

VI Experiments

We evaluated clasification performance on both real and synthetic data and performed extensive physical evaluations on an ABB YuMi with custom silicone gripper tips designed by Guo et al. to benchmark the performance of grasping a single object. All experiments ran on a Desktop running Ubuntu 14.04 with a 2.7 GHz Intel Core i5-6400 Quad-Core CPU and an NVIDIA GeForce 980, and we used an NVIDIA GeForce GTX 1080 for training large models.

We created a benchmark for grasping single objects on a tabletop to compare grasp planning methods. The setup is illustrated in Fig. 5 and the experimental procedure is described in the caption and shown in the supplemental videohttps://youtu.be/9eqAxk95I3Y. Each grasp planner received as input a color image, depth image, bounding box containing the object, and camera intrinsics, and output a target grasping pose for the gripper. A human operator was required to reset the object in the workspace on each trial, and therefore blinded operators from which grasp planning method was being tested in order to remove bias.

We compared performance on this benchmark with the following metrics:

Success Rate: The percentage of grasps that were able to lift, transport, and hold a desired object after shaking.

Precision: The success rate on grasps that are have an estimated robustness higher than 50%\%. This measures performance when the robot can decide not to grasp an object, which could be useful when the robot has other actions (e.g. pushing) available.

Robust Grasp Rate: The percentage of planned grasps with an estimated robustness higher than 50%\%.

Planning Time: The time in seconds between receiving an image and returning a planned grasp.

VI-B Datasets

Fig. 5 illustrates the physical object datasets used in the benchmark:

Train: A validation set of 8 3D-printed objects with adversarial geometric features such as smooth, curved surfaces. This is used to set model parameters and to evaluate performance on known objects.

Test: A set of 10 household objects similar to models in Dex-Net 2.0 with various material, geometric, and specular properties. This is used to evaluate generalization to unknown objects.

We chose objects based on geometric features under three constraints: (a) small enough to fit within the workspace, (b) weight less than 0.25kgkg, the payload of the YuMi, and (c) height from the table greater than 1.0cmcm due to a limitation of the silicone gripper fingertips.

We used four different GQ-CNN training datasets to study the effect on performance, each with a 80-20 image-wise training and validation split:

Adv-Synth: Synthetic images and grasps for the adversarial objects in Train (189k datapoints).

Adv-Phys: Outcomes of executing random antipodal grasps with random gripper height and friction coefficient of μ=0.5\mu=0.5 in 50 physical trials per object in Train (400 datapoints).

Dex-Net-Small: A subset of data from 150 models sampled uniformly from Dex-Net 2.0 (670k datapoints).

Dex-Net-Large: Data from all 1500 models in Dex-Net 2.0 (6.7m datapoints).

VI-C Grasp Planning Methods Used for Comparison

We compared a number of grasp planning methods on simulated and real data. We tuned the parameters of each method based on synthetic classification performance and physical performance on the training objects. All methods other than point cloud registration used the antipodal grasp sampling method described in Section V with the same set of parameters to generate candidate grasps, and each planner executes the highest-ranked grasp according to the method. Additional details on the methods and their parameters can be found in the supplemental file.

Image-based Grasp Quality Metrics (IGQ). We sampled a set of force closure grasp candidates by finding antipodal points on the object boundary using edge detection and ranked grasps by the distance from the center of the jaws to the centroid of the object segmentation mask. We set the gripper depth using a fixed offset from the depth of the grasp center pixel.

Point-Cloud Registration (REG). We also compared with grasp planning based on point cloud registration, a state-of-the-art method for using precomputed grasps . We first coarsely estimated the object instance and pose based on the top 3 most similar synthetic images from Dex-Net 2.0, where similarity is measured as distance between AlexNet conv5 features . After coarse matching, we finetuned the pose of the object in the table plane using Iterated Closest Point with a point-to-plane cost. Finally, we retrieved the most robust gripper pose from Dex-Net 2.0 for the estimated object. The system had a median translational error of 4.5mmmm a median rotational error of 3.5∘ in the table plane for known objects.

Alternative Machine Learning Models (ML). We also compared the performance of a Random Forest with 200 trees of depth up to 10 (ML-RF) motivated by the results of and a Support Vector Machine with the RBF kernel and a regularization parameter of 1 (ML-SVM) motivated by the results of . For the RF we used the raw transformed images and gripper depths normalized by the mean and standard deviation across all pixels as features. For the SVM we used a Histogram of Oriented Gradients (HOG) feature representation. Both methods were trained using scikit-learn on the Adv-Synth dataset.

Grasp Quality CNNs (GQ). We trained the GQ-CNN (abbrev. GQ) using the thresholded robust epsilon metric with δ=0.002\delta=0.002 for 5 epochs on Dex-Net-Large (all of Dex-Net 2.0) using Gaussian process image noise with standard deviation σ=0.005\sigma=0.005. We used TensorFlow with a batch size of 128128, a momentum term of 0.90.9, and an exponentially decaying learning rate with step size 0.950.95. Training took approximately 48 hours on an NVIDIA GeForce 1080. The first layer of 7×77\times 7 convolution filters are shown in the right panel of Fig. 4, and suggest that the network learned finegrained vertical edge detectors and coarse oriented gradients. We hypothesize that vertical filters help to detect antipodal contact normals and the coarse oriented gradients estimate collisions.

To benchmark the architecture outside of our datasets, we trained on the Cornell Grasping Dataset (containing 8,019 examples) and achieved a 93.0%93.0\% recognition rate using grayscale images and an 80−2080-20 imagewise training-validation split compared to 93.7%93.7\% on RGB-D images in the original paper. We also trained several variants to evaluate sensitivity to several parameters:

Dataset Size. We trained a GQ-CNN on Dex-Net-Small for 15 epochs (GQ-S).

Amount of Pretraining We trained three GQ-CNNs on the synthetic dataset of adversarial training objects (Adv-Synth) to study the effect of pretraining with Dex-Net for a new, known set of objects. The model GQ-Adv was trained on only Adv-Synth for 25 epochs. The models GQ-L-Adv and GQ-S-Adv were initialized with the weights of GQ and GQ-S, respectively, and finetuned for 5 epochs on Adv-Synth.

Success Metric. We trained a GQ-CNN using probability of force closure thresholded at 25%\% (GQ-Adv-FC), which is a robust version of the antipodality metric of , and and labels for 400 random grasp attempts on the Train objects using a physical robot (GQ-Adv-Phys).

Noise Levels. We trained a GQ-CNN with zero noise σ=0\sigma=0 (GQ-Adv-LowU) and high noise with σ=0.01\sigma=0.01 (GQ-Adv-HighU).

VI-D Classification of Synthetic Data

The GQ-CNN trained on all of Dex-Net 2.0 had an accuracy of 85.7%\% on a held out validation set of approximately 1.3 million datapoints. Due to the memory and time requirements of training SVMs, we compared synthetic classification performance across methods on the smaller Adv-Synth dataset. Fig. 7 shows the receiver operating characteristic curve comparing the performance of GQ-L-Adv, GQ-S-Adv, GQ-Adv, ML-SVM, and ML-RF on a held-out validation set and Table 7 details the classification accuracy for the various methods. The GQ-CNNs outperformed ML-RF and ML-SVM, achieving near-perfect validation accuracy.

VI-E Performance Comparison on Known Objects

We evaluated the performance of the grasp planning methods on known objects from Train. Each grasp planner had 80 trials (10 per object). The left half of Table II compares the performance with other grasp planning methods and the right half compares the performance of the GQ-CNN varations. We found that GQ planned grasps 3×\times faster than REG and achieved a high 93%\% success rate and 94%\% precision. The results also suggest that training on the full Dex-Net 2.0 dataset was necessary to achieve higher than 90%90\% success.

VI-F Performance Comparison on Novel Objects

We also compared the performance of the methods on the ten novel test objects from Test to evaluate generalization to novel objects. Each method was run for 50 trials (5 per object). The parameters of each method were set based on Train object performance without knowledge of the performance on Test. Table III details the results. GQ performed best with an 80%\% success rate and 100%100\% precision (zero false positives over 2929 grasps classified as robust).

VI-G Generalization Ability of the Dex-Net 2.0 Grasp Planner

We evaluated the generalization performance of GQ in 100 grasping trials on the 40 object test set illustrated in Fig. 8, which contains articulated (e.g. can opener) and deformable (e.g. washcloth) objects. We used the cross entropy method (CEM) , which iteratively samples a set of candidate grasps and re-fits the candidate grasp distribution to the grasps with the highest predicted robustness, in order to find better maxima of the robust grasping policy. More details can be found in the supplemental file. The CEM-augmented Dex-Net 2.0 grasp planner achieved 94%\% success and 99%\% precision (68 successes out of 69 grasps classified as robust), and it took an average of 2.5ss to plan grasps.

VI-H Application: Order Fulfillment

To demonstrate the modularity of the Dex-Net 2.0 grasp planner, we used it in an order fulfillment application with the ABB YuMi. The goal was to grasp and transport a set of three target objects to a shipping box in the presence of three distractor objects when starting with the objects in a pile on a planar worksurface, illustrated in Fig. 8. Since the Dex-Net 2.0 grasp planner assumes singulated objects, the YuMi first separated the objects using a policy learned from human demonstrations mapping binary images to push locations . When the robot detected an object with sufficient clearance from the pile, it identified the object based on color and used GQ-L-Adv to plan a robust grasp. The robot then transported the object to either the shipping box or a reject box, depending on whether or not the object was a distractor. The system successfully placed the correct objects in the box on 4 out of 5 attempts and was successful in grasping on 93%\% of 27 total attempts.

VI-I Failure Modes

Fig. 9 displays some common failures of the GQ-CNN grasp planner. One failure mode occured when the RGB-D sensor failed to measure thin parts of the object geometry, making these regions seem accessible. A second type of failure occured due to collisions with the object. It appears that the network was not able to fully distinguish collision-free grasps in narrow parts of the object geometry. This suggests that performance could be improved with more accurate depth sensing and using analytic methods to prune grasps in collsion.

VII Discussion and Future Work

We developed a Grasp Quality Convolutional Neural Network (GQ-CNN) architecture that predicts grasp robustness from a point cloud and trained it on Dex-Net 2.0, a dataset containing 6.7 million point clouds, parallel-jaw grasps, and robust grasp metrics. In over 1,000 physical evaluations, we found that the Dex-Net 2.0 grasp planner is as reliable and 3×\times faster a method based on point cloud registration, and had 99%99\% precision on a test set of 40 novel objects.

In future work, our goal is to approach 100%\% success on known objects by using active learning to adaptively acquire grasps using a policy initialized with a GQ-CNN. Additionally, we plan to exend the method to grasp objects in clutter by using simulated piles of rigid objects from Dex-Net and by augmenting the grasping policy with an option to push and separate objects when no robust grasp is available. We also intend to extend the method to use point clouds from multiple viewpoints and in grasping tasks with sequential structure, such as regrasping for assembly. Furthermore, we plan to release a subset of our code, dataset, and the trained GQ-CNN weights to facilitate further research and comparisons.

Acknowledgments

This research was performed at the AUTOLAB at UC Berkeley in affiliation with the Berkeley AI Research (BAIR) Lab, the Real-Time Intelligent Secure Execution (RISE) Lab, and the CITRIS ”People and Robots” (CPAR) Initiative. The authors were supported in part by the U.S. National Science Foundation under NRI Award IIS-1227536: Multilateral Manipulation by Human-Robot Collaborative Systems, the Department of Defense (DoD) through the National Defense Science & Engineering Graduate Fellowship (NDSEG) Program, the Berkeley Deep Drive (BDD) Program, and by donations from Siemens, Google, Cisco, Autodesk, IBM, Amazon Robotics, and Toyota Robotics Institute. 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 Sponsors. We thank our colleagues who provided helpful feedback, code, and suggestions, in particular Pieter Abbeel, Ruzena Bajcsy, Brenton Chu, Roy Fox, David Gealy, Ed Johns, Sanjay Krishnan, Animesh Garg, Sergey Levine, Pusong Li, Matt Matl, Stephen McKinley, Andrew Reardon, Vishal Satish, Sammy Staszak, and Nan Tian.

Appendix A Parameters of Graphical Model

Our graphical model is illustrated in Fig. 2 and models p(S,g,x,y)p(S,\mathbf{g},\mathbf{x},\mathbf{y}) as the product of a state distribution p(x)p(\mathbf{x}), an observation model p(y∣x)p(\mathbf{y}|\mathbf{x}), a grasp candidate model p(g∣x)p(\mathbf{g}|\mathbf{x}), and a grasp success model p(S∣g,x)p(S|\mathbf{g},\mathbf{x}).

We model the state distribution as p(x)=p(γ)p(O)p(To∣O)p(Tc)p(\mathbf{x})=p(\gamma)p(\mathcal{O})p(T_{o}|\mathcal{O})p(T_{c}). We model p(γ)p(\gamma) as a Gaussian distribution N(0.5,0.1)\mathcal{N}(0.5,0.1) truncated to $.Wemodel. We modelp(\mathcal{O})asadiscreteuniformdistributionover3Dobjectsinagivendataset.Wemodelas a discrete uniform distribution over 3D objects in a given dataset. We modelp(T_{o}|\mathcal{O})=p(T_{o}|T_{s})p(T_{s}|\mathcal{O}),whereis, where isp(T_{s}|\mathcal{O})isadiscreteuniformdistributionoverobjectstableposesandis a discrete uniform distribution over object stable poses andp(T_{o}|T_{s})isuniformdistributionover2Dposes:is uniform distribution over 2D poses:\mathcal{U}([-0.1,0.1]\times[-0.1,0.1]\times[0,2\pi)).Wecomputestableposesusingthequasi−staticalgorithmgivenbyGoldbergetal..Wemodel. We compute stable poses using the quasi-static algorithm given by Goldberg et al. . We modelp(T_{c})asauniformdistributiononsphericalcoordinatesas a uniform distribution on spherical coordinatesr,\theta,\varphi\sim\mathcal{U}([0.65,0.75]\times[0,2\pi)\times[0.05\pi,0.1\pi])$, where the camera optical axis always intersects the center of the table.

Our distribution over grasps is a uniform distribution over pairs of antipodal points on the object surface that are parallel to the table plane. We sample from this distribution for a fixed coefficient of friction μ=0.6\mu=0.6 and reject samples outside the friction cone or non-parallel to the surface.

We compute grasp robustness metrics using the graphical model and noise parameters of .

Appendix B Grasp Sampling Methods

Our goal is to learn policy parameters θ\theta that maximize the success rate of planned grasps over a distribution on point clouds that can be generated from a set of possible objects D\mathcal{D}:

We propose to approach the objective of equation B.1 by using a greedy grasping policy πθ(y)=argmaxu∈CQθ(u,y)\pi_{\theta}(\mathbf{y})=\text{argmax}_{\mathbf{u}\in\mathcal{C}}Q_{\theta}(\mathbf{u},\mathbf{y}) with respect to a GQ-CNN robustness function Qθ(u,y)Q_{\theta}(\mathbf{u},\mathbf{y}), where C\mathcal{C} specifies constraints on candidate grasps such as kinematic feasibility. We explore two implementations of the robust grasping policy: (1) sampling a large, fixed set of antipodal grasps and choosing the most robust one and (2) optimizing for the most robust grasp using derivative free optimization.

The antipodal grasp sampling method used in the paper is designed to sample antipodal grasps specified as a planar pose, angle, and height with respect to a table. The algorithm is detailed in Algorithm 1. We first threshold the depth image to find areas of high gradient. Then, we use rejection sampling over pairs of pixels to generate a set of candidate antipodal grasps, incrementally increasing the friction coefficient until a desired number of grasps is reached in case the desired number cannot be achieved with a smaller friction coefficient. We convert antipodal grasps in image space to 3D by assigning discretizing the gripper height between the height of the grasp center pixel relative and the height of the table surface itself.

B-B Derivative Free Optimization

One problem with choosing a grasp from a fixed set of candidates is that the set of candidates may all have a low probability of success. This can be difficult when an object can only be grasped in a small set of precise configurations, such as the example in Fig. 10. Some of these failures can be seen in the right panel of the failure modes figure in the original paper.

In our second generalization study we addressed this problem using the cross entropy method (CEM) , a form of derivative-free optimization, to optimize for the most robust grasp by iteratively resampling grasps from a learned distribution over robust grasps and updating the distribution. The method, illustrated in Algorithm 2, models the distribution on promising grasps using a Gaussian Mixture Model (GMM) and seeds the initial set of grasps with antipodal point pairs using Algorithm 1 with no iterative friction coefficient updates. The algorithm takes as input the number of CEM iterations mm, the number of initial grasps to sample nn, the number of grasps to resample from the model cc, the number of GMM mixure components kk, a friction coefficient μ\mu, and elite percentage γ\gamma, and the GQ-CNN QθQ_{\theta}, and returns an estimate of the most robust grasp u\mathbf{u}. In our generalization experiment we used m=3m=3, n=100n=100, c=50c=50, μ=0.8\mu=0.8, k=3k=3, and γ=25%\gamma=25\%. The qualitative performance of our method on several examples from our experiments is illustrated in Fig. 11.

References