To appear in the IEEE/RSJ International Conference on Intelligent Robots and Systems, 2013.
This copy is for personal use only. c 2013 IEEE/RSJ
Prints will be available at http://ieeexplore.ieee.org shortly.

Caging Complex Objects with Geodesic Balls
Dmitry Zarubin

Florian T. Pokorny

Marc ToussaintDanica Kragic

Abstract— This paper proposes a novel approach for thesynthesis of grasps of objects whose geometry can be observed
only in the presence of noise. We focus in particular on the
problem of generating caging grasps with a realistic robot
hand simulation and show that our method can generatesuch grasps even on complex objects. We introduce the ideaof using geodesic balls on the object’s surface in order toapproximate the maximal contact surface between a robotic
hand and an object. We define two types of heuristics which
extract information from approximate geodesic balls in order to
identify areas on an object that can likely be used to generate acaging grasp. Our heuristics are based on two scoring functions.
The first uses winding angles measuring how much a geodesicball on the surface winds around a dominant axis, while thesecond explores using the total discrete Gaussian curvature ofa geodesic ball to rank potential caging postures. We evaluate
our approach with respect to variations in hand kinematics, fora selection of complex real-world objects and with respect to
its robustness to noise.

I. I NTRODUCTION
A popular approach for grasp synthesis in robotics is basedon local contact-level techniques. Given friction coefficientsand an accurate mesh-representation of the object, thesemethods use a grasp quality scoring function Q (e.g. as in[1]) defined in terms of contact points and surface normals on
the object to generate force-closure grasps. The main drawbacks of these methods are that one needs to know friction
coefficients and they typically do not degrade gracefully inthe presence of noise since even a small amount of noise in
the vertex positions of a mesh can result in large deviationsof the estimated normal vectors.
In this work, we study the problem of synthesizing caging
grasps. Such grasps do not necessarily establish contact
with the object, but force the object to remain within abounded distance from the robot hand. While caging grasps
have so far mainly been studied using analytic methods for
simple polygonal objects in 2D, we contribute by providing
a new heuristic synthesis algorithm for such grasps which isapplicable to complex 3D objects. The contributions of thispaper can be summarized as follows:• We introduce the idea of using geodesic balls on an
object’s surface to approximate the contact surface
between a hand and an object.
Dmitry Zarubin and Marc Toussaint are with the Machine Learning and Robotics Lab, Universität Stuttgart, Stuttgart, Germany,{Dmitry.Zarubin,Marc.Toussaint}@ipvs.uni-stuttgart.de.
Florian T. Pokorny and Danica Kragic are with the Centre for Autonomous Systems, Computer Vision and Active Perception Lab, School ofComputer Science and Communication, KTH Royal Institute of Technology,
Stockholm, Sweden, {fpokorny, dani}@kth.se.
This work was supported by the EU FP7 project TOMSY (IST-FP7270436).

Fig. 1. An illustration of our curvature based sphere caging heuristic. The
red area in the top left picture highlights an approximate geodesic ball on
the surface with a large value of our discrete curvature integral. The threeother plots demonstrate an application of our sphere caging heuristic. The
manipulators used for the evaluation are: a net of points (upper right), a
multi-joint 6 finger hand (lower left) and a 3-finger Schunk hand (lower
right).

We develop novel heuristics based on winding angles
and discrete curvature integrals to select suitable grasp
centre points for two types of caging grasps which wecall circle and sphere caging. For circle caging, which
is motivated by caging an object by a curve whichis almost closed (as in Fig. 4), we develop a method
for choosing appropriate grasping points using winding
angles. For sphere caging, which is motivated by theidea of enclosing an object as much as possible bya geodesic ball, our approach is based on integrated
discrete Gauss curvature.
• We evaluate our approach in simulation with respect
to noise, for various objects and object sizes and forseveral hand kinematics: a deformable hand simulation
by a net of points, a simulated multi-joint 6-finger handand a 2-finger hand, a 3-finger Schunk hand and a 5finger anthropomorphic hand.
Our paper is structured as follows: In Sections II and
III, we review related literature and the notion of winding
numbers and discrete curvature which we require later on. In
Section IV, we present our approach towards the synthesisof caging grasps, while, in Section V, we discuss our experimental evaluation of this approach. Finally, we conclude ourwork in Section VI and discuss potential future directions.
•II. R ELATED WORKTwo major directions in grasping research are based onforce-closure and caging respectively. In approaches using
force closure grasps – that is grasps which can withstandexternal wrenches in arbitrary direction – a set of potential
grasp hypotheses is usually ranked according to a scoring function measuring the ‘goodness’ of a grasp. Popular
choices include the L1 and L∞ grasp quality functions
defined in [1]. State of the art simulators such as GraspIT[2] and OpenGRASP [3] can be used to determine stablegrasp configurations using random sampling or heuristics
based approaches. An example of a sampling based approachis provided by the work of [4], and the recent work [5]integrates sampling with a suitable object representation andgrasp ranking procedure. While the force closure condition
can be easily evaluated once the local contact geometry is
known, the concept of a caging grasp is more intricate since
it can depend on the full global geometry of the object. Someof the earliest works considered the case of an object in
the plane and defined it to be caged by a set of n points
in the plane if the object could not be moved arbitrarily
far away from these points [6]. An interesting work on therelation between grasping and caging is presented in [7].
There, a caging grasp is considered to provide a useful
waypoint towards a stable force-closure grasp. In [8], theauthors investigated caging grasps for the manipulation ofarticulated objects with handles such as doors and windows.
Their approach generates a set of caging grasps on such
handles which led to a greater success rate compared to a
local contact based approach. In [9], a caging approach based
on topological features of objects with holes is investigated.
A few papers such as [10] have used curvature-based
features to identify grasping configurations. In [10], it isassumed that concave points of a 2D elliptic Fourier descriptor of an object are most suitable for grasping. Good
grasping candidates are preselected by means of curvature
extrema and then evaluated further using the concept offorce-closure. Another related work [11] proposes a graspingalgorithm for unknown 3D objects. There, Gaussian curvature is employed during the segmentation of the object. The
labelling of sub-parts of the object is then done with respect
to neighbourhoods of extrema of Gaussian curvature. These
works depend on the use of point-wise approximations ofGaussian curvature and are hence rather unstable under noise.
While the robustness with respect to noise can be increasedby an additional smoothing step, we shall take a different
approach in our work since we will work with a discrete
version of Gaussian curvature defined for any mesh.
III. BACKGROUND
Let us consider a mesh M with vertex set V (M ) andwhere F (v) denotes the set of faces containing vertex v ∈V (M ). In this case, the total Gauss curvaturePK(v) for a vertex v ∈ V (M ) is defined by K(v) = 2π − f ∈F (v) θ(v, f )[12], where θ(v, f ) denotes the angle of the face f at vertex
v. The sign of K(v) has the same interpretation as thesign of the usual Gaussian curvature, and points are called

Euclidean, spherical or hyperbolic if K(v) = 0, K(v) > 0or K(v) < 0 respectively [12]. Recall that the Gauss-Bonnet
theorem for a smooth closed oriented surface S ⊂ R3
states thatR the integral of the standard Gaussian curvaturesatisfies S K dVol = 2πχ(S), where χ(S) denotes theEuler characteristic of S. The Euler characteristic χ(S)is a topological quantity which is invariant under certain
continuous deformations of S (i.e. homotopies) and we haveχ(S) = 2 − 2g, where g is the genus of the surface.
Interestingly, for a closed polyhedral surface M ⊂ R3 , theGauss-Bonnet theorem has a discrete analogue:
X
K(v) = 2πχ(M ),(III.1)v∈V (M )where the sum is over vertices in M and K now denotes
the discrete total Gauss curvature. Further results in thisdirection are discussed in [12], [13]. While K(v) shares someproperties with the standard Gaussian curvature, anothermore closely related version of K which we shall not use
in this work can be provided by normalizing K(v) by the‘mixed area’ around the vertex v (see [14] for details).
Let us now discuss winding numbers which we shall be
inspired by to define our circle caging heuristic. We shalluse a version of winding numbers for non-closed curves inorder to measure the wrapping of a hand around an object.
Our motivation is similar to [15] and [16] where concepts
from topology such as writhe and winding numbers are used
for grasping and character animation respectively. Recall thatthe winding number of a closed curve γ : [0, 1] → R2 notcontaining the origin in R2 is an integer determining how
many times γ ‘wraps around the origin’ with the sign being
determined by the orientation of γ.
Definition III.1. Let γ : [0, 1] → R2 be closed, smooth andsuppose γ does not traverse the origin. Then the winding
number w(γ) ∈ Z around the origin is given by1(θ(1) − θ(0)).
w(γ) =
2π
where γ(t) = (r(t), θ(t)) in polar coordinates, and where r
denotes the radial and θ the angular coordinate.
For a closed curve, the quantity w(γ) is topological innature and does not change under continuous deformationsof γ not traversing the origin. If we apply the above formula– which is applicable also in the case of piece-wise linear
curves – to non-closed curves, we obtain a measure for how
γ wraps around the origin in a suitable coordinate system.
Note however that this quantity for non-closed curves is nota topological invariant anymore.
IV. M ETHODOLOGY
Unlike the common caging approach of working with aplanar scenario with fingers represented by points or discs
such as in [17], we are interested in the synthesis of caging
grasps in 3D, for a complex object and using a real robot
hand. Since no analytic solution to the general caging grasp
synthesis problem is currently known, we shall explore aheuristic approach which enables us to:rFig. 2. We approximate the projection of the robot hand’s surface onto theturtle object by a geodesic ball whose radius r is proportional to the robot
hand’s finger length.

a) synthesize likely caging grasp postures using information about the ‘hand-local’ geometry of an objectb) evaluate differing robot hand geometries for the purposeof generating caging grasps.
Our approach consists of three main parts: a suitable object
mesh representation, a representation of the object/robot
hand interaction and a quality scoring function for two typesof caging heuristics which we call circle and sphere caging.
A. Object representation and preprocessing
We assume that we have a potentially noisy mesh representation M of an object of interest available. Such object
meshes are used e.g. in the work of [18] and can be obtainedusing laser range or Kinect sensor data. Since we will
be interested in efficiently computing approximate geodesicballs on M , and in order for our discrete curvature K to be
distributed evenly across the mesh, we would like to workwith a mesh with approximately equal triangle size. For thispurpose, we chose isotropical remeshing as a pre-processing
step. Isotropical remeshing preserves the shape of the surface
and provides an almost equilateral triangulation. We startwith an input mesh M and perform modifications using thetool [19] in three steps: a) oversampling and a sub-division
is applied to M , b) vertices are uniformly resampled, c) the
positions of the vertices are optimized using area equalizationand Lloyd’s relaxation method. The resulting triangle meshthen has almost equal edge lengths. We chose parameters sothat the maximal deviation between edge-lengths was about
30% of the mean edge length, but this deviation can besignificantly reduced further by increasing the number oftriangles per mesh.
Another important part of the preprocessing is a convex
decomposition of the object. The PhysX Engine [20] which
we are using for realistic physical simulations requires all
shapes to be convex in order to efficiently compute collisions.
For this purpose, we used the convex decomposition library[21] and generated a decomposition of each object into
approximately 100 convex meshes.
B. Representing the hand-object interaction
Common approaches towards the synthesis of both forceclosed grasps and caging grasps simplify the geometry of
the robot’s hand by working only with a discrete number ofcontact points or caging points respectively [18], [17]. In thiswork, we propose to instead think about an approximation

Fig. 3. Geodesic ball approximations Gr (p) (coloured white) for a fixed
vertex p and for radii r of increasing size on an isotropically remeshedbunny object. The size of the radius r corresponds to the finger-length ofdifferent robotic hands.

of the 2D contact surface that a robot hand can make withan object. We model the maximal contact surface between
the robot’s hand and a given closed surface S as a geodesicball Br (p) of radius r and centred at a point p ∈ S. Such ageodesic ball then represents the ‘hand-local’ geometry of M
for a robot hand whose fingers are approximately of lengthr. We think of Br (p) as a first order approximation of the
projection of the robot’s hand onto the object as visualized inFig. 2. Since the calculation of an exact geodesic ball Br (p)is computationally challenging, we use the mesh M withvertex set V and consider a rough approximation of Br (p)by a sub-mesh Gr (p) ⊆ M instead. Since all triangles in M
are approximately equilateral, we use Dijkstra’s algorithm
to determine Gr (p) as follows: we approximate the distance
between two vertices p, q ∈ V by calculating the number ofvertices in the shortest edge-path between them and scaling
the result by the mean edge length. Gr (p) then denotes
the submesh containing all triangles whose vertices are of
distance at most r from p. Fig. 3 displays Gr (p) for a fixed
vertex p and for four different radii of increasing size. Sincer varies with the size of the robotic hand, different geometric
information is captured by Gr (p) for differing hand size.
C. Circle and sphere caging
We propose two types of caging grasp heuristics which
we call circle (S1 ) and sphere (S2 ) caging respectively.
We introduce scoring functions which use our approximate
geodesic balls Gr (p) and which enable us to rank thelikelihood of finding a caging grasps corresponding to oneof these heuristics.
S1 cages: Here, we define a heuristic for caging an
object with a curve γ : [0, 1] → R3 which wraps almost
completely around an elongated part of an object such as
the red curve in Fig. 4. We call this type of grasp an S1 ,or circle cage, since the curve γ is almost a closed circle insimple cases. Inspired by the notion of winding numbers for
closed curves which we recalled in Def. III.1, we propose

Fig. 4.

Illustration of circle and sphere caging on a dumbbell object.

Zr (p)

by the red contact surface resembling a part of a sphere.
Let us consider using the integrated total Gauss curvature on
Gr (p) as a heuristic for measuring how Gr (p) ⊆ M wraps
around the M , and recall that it equals 2πχ(M ) when Gr (p)covers a closed mesh M completely. In this work, we hence
evaluate whether geodesic balls with a large total curvatureare good candidates for applying a caging grasp. We consider
the scoring function Sr defined byX
Sr (p) =K(v),v∈V (Gr (p))

abwhere K denotes the total Gauss curvature introduced in
Section III and where V (Gr (p)) denotes the vertex set of
an approximate geodesic ball Gr (p) on M . Since the total
Gauss curvature does not distinguish convex and concave
parts of the object and since we would prefer to grasp locallyconvex parts of the object, we furthermore exclude geodesicballs with centre vertices v which have a concave 1-ringneighbourhood in the mesh from further analysis.
D. Hand representation and positioning

Fig. 5. Evaluating potential S1 cages: The blue line highlights vertices close
to the plane Πr (p) for a fixed vertex p and orthogonal to the main axis
Ar (p) of the vertices lying on the depicted geodesic ball Gr (p) with redborder. The wrapping of Gr (p) around the horse is approximated using theangles between the end-points of the blue curve around the central axis of
Gr (p). The upper right sketch illustrates the solid angle AngleZr (p) (a, b)(in green) between the centre of mass Zr (p) and the projections of theend-points of Pr (p) onto Πr (p)a simple approach to quantify the winding of γ aroundthe object: for each vertex p of our object mesh M , wecompute a major axis Ar (p) and centre of mass Zr (p) of theset of vertices of Gr (p) and a plane Πr (p) through Zr (p)which is orthogonal to Ar (p). We now compute an edgepath Pr (p) in the object mesh approximating Πr (p) ∩ Gr (p).
Fig. 5 depicts an example of this calculation. To quantify theamount of winding of Pr (p) around the object, we finallyproject the path Pr (p) onto the plane Πr (p) and computethe winding angle Wr (p) = 2π − AngleZr (p) (a, b), where
AngleZr (p) (a, b) denotes the solid angle between the centreof mass Zr (p) and the projections of the end-points of Pr (p)onto Πr (p). Wr (p) takes values in [π, 2π]. This quantity canbe easily computed without having to represent the projection
γ : [0, 1] → Πr (p) of the curve Pr (p) in polar coordinates
centred at Zr (p) as γ(t) = (r(t), θ(t)). Furthermore, sincefor our purposes γ satisfies π 6 |θ(1) − θ(0)| 6 2π in all but
degenerate cases, we opted to use the winding angle Wr (p)to measure the amount of wrapping of γ around Zr (p).
We now propose to rank the vertices of our object meshby the resulting winding angles Wr (p), with high winding
angles indicating a higher likelihood that the curve Pr (p)yields an S1 caging grasp for the object. Let us now discussa related concept of S2 , or sphere caging, before connecting
the above with the geometry of a robot hand and the actual
synthesis of such cages.
S2 cages: Consider the case of an object-part which is almost completely enclosed by a geodesic ball such as the rightpart of the dumbbell object in Fig. 4 which is clearly caged

We now relate the concepts of circle and sphere caging ofcurves and geodesic balls on an object mesh to the kinematics
of a robot hand. For this purpose, we need to be able to definea correspondence between a pose of a robotic hand and an
approximate geodesic ball Gr (p) or the projection of the path
Pr (p) onto the plane Πr (p) respectively. In our experiments,
which we shall describe later, we have tested several typesof manipulators: an artificial net of small spheres distributed
over an approximate geodesic ball, a simulated multi-joint 6
finger hand (for sphere caging), a multi-joint 2 finger hand(for circle caging), a realistic simulation of a 3 finger Schunk
hand and a 5 finger anthropomorphic hand.
Caging with a net of points: As we already mentioned
in previous sections, an important part of our method is a
projection and approximation of a hand’s contact surface by ageodesic ball. It is logical then to investigate the robustnessof the approach if we had a robotic hand whose contact
surface was very close to such a ball. The recently proposed
Universal Gripper [22] is an example of a deformable handcoming close to this idealization. In our simulation, we
generated a structure designed to imitate a soft robotic handwhich makes a geodesic ball contact with the object. We
created a small sphere for every vertex inside Gr (p) andmoved it along the normal direction by a fixed offset awayfrom the object. Then, we gradually shifted all spheres backtowards the object along the normal direction until a small
threshold distance is achieved. For circle caging, we chose
only those vertices on the mesh close to the path Pr (p)and applied the same procedure to obtain spheres lying near
Pr (p) but outside the object. This procedure then simulates acontact surface obtained using a deformable robot hand andwhich is approximated by a net of points. Examples for both
S1 and S2 cases are depicted in the second column of Fig. 8.
The ‘hexapus’ and the 2-finger hand: Here, we considereda multi-joint 6-finger hand which we created within the freely
available robot simulator libORS [23]. Every finger consists

a)configuration for the circle, and the equal angular spread
between the fingers for the sphere caging case. For the netof points ‘hand’, we simply place the hand over the geodesicball Gr (p) as described in the previous section.

b)

V. S IMULATION E XPERIMENTS

d)

e)

c)
Fig. 6. The configuration of the robot hand before closing fingers for spherea,d) and circle b,e) caging is displayed. The simulated anthropomorphic,
multi-joint 6 and 2 finger hands c,d,e) have more degrees of freedom thanthe Schunk hand displayed in a,b).

of 6 square segments and is attached via a revolute joint to
the hand base. This ‘hexapus’ hand structure is similar tobiologically inspired soft robotic actuators described in [24]and [25]. We define the 2-finger hand displayed in Fig. 6e)
by using only 2 opposing fingers of this ‘hexapus’ hand.
The Schunk hand: We implemented a simulation of the 7
degrees of freedom 3-finger Schunk hand commonly used ingrasping applications (depicted in the top row in Fig. 6).
The anthropomorphic hand: We have further tested a‘human-like’ hand in our experiments. Every finger of thismetamorphic anthropomorphic hand developed in the laboratory of Prof. Jian S. Dai at KCL [26] consists of 3 segments.
The reconfigurable palm allows for additional freedom of thethumb (as shown in Fig 6c).
Positioning and automatic closing of the hands: Recall
that the radius of our approximate geodesic ball Gr (p) is
chosen to match the finger length of our robotic hands, so as
to provide a possibility for the hand to cover such balls with
an open palm posture (Fig. 2 and 6). Our grasp synthesis
is implemented as follows: for a geodesic ball Gr (p) thatis optimal (has highest value) with respect to our scoring
functions Wr (p) or Sr (p), the hand base is first placed at a
certain distance from p along the surface normal direction. A
suitable preshape as in the Fig. 6 is then adopted and the handbase orientation is set to be parallel to the surface and, for thecircle caging case, the main axis along the stretched fingers isaligned orthogonal to the main axis of Gr (p). The ‘hexapus’
hand is used only for S2 caging and the 2-finger hand only
for S1 caging. For the anthropomorphic hand, we selected thesame preshape for both S1 and S2 caging. Next, we gradually
move the palm towards the surface until the distance to thesurface reaches a small threshold, varying with the object
size. In the final phase, we perform a standard autoclose
procedure: we move the finger segments (starting from those
closest to the palm) towards the object until the distance
between each segment and the object is smaller than a fixed
threshold value. This is done preserving the opposing finger

Let us now describe a series of experiments which test
several aspects of our circle and sphere caging heuristics: a)
the general success rates of our approach and its robustness
to noise, b) its dependence on object shape and size c) its
applicability for various robot hand kinematics. We explain
the methodological details of the experimental setup andpresent a success evaluation for our caging heuristics. Finally,
we conclude with a qualitative discussion of several example
cages. Our experimental setup is outlined in Alg. 1.
Algorithm 1 Evaluation algorithm
Require: original 3D model M , scale s, noise level σ
Ensure: stability analysis of cages for K noisy meshes
for 1 to K do
Remove all faces.
Add uniform noise from [−σ, σ] to every vertex.
Reconstruct a new mesh using MeshLab package [27].
Perform isotropical remeshing.
Compute scoring functions according to section IV-C.
Select best grasp centre point on the noisy mesh.
Position and autoclose the hand on the original mesh.
Test if the grasp is a caging grasp using PhysX.
end forreturn % of successful caging grasps (robustness)

A. Evaluation methods
Simulation of perceptual noise: In practice, a triangulated
3D model of an object is constructed from noisy sensor data.
In order to simulate perceptual noise on a synthetic object
mesh, we perturbed every vertex of the original mesh bya uniformly distributed offset in [−σ, σ] and reconstructed
a new mesh from the vertex point cloud using the Poisson
tool from the Meshlab package [27]. The actual value of the
maximal offset σ used in simulations was chosen empiricallyto be equal to 1% of the bounding sphere radius. Afterisotropical remeshing, we then obtain a mesh with 1000
vertices. As a result of this process, the original mesh may
differ significantly from the resulting noisy reconstructedmesh as shown in Fig. 7.
Physical simulation: We applied a realistic physics simulation using the PhysX software package to test if an object
was successfully caged. After placing the hand and closing
the fingers according to section IV-D, the object and themanipulator were copied to the physical environment withgravity and standard friction forces (the friction coefficient
was set to 1). We simulated 10 consecutive random rotationalmotions of the manipulator ‘in air’ for 100 simulation steps
each and deemed a grasp stable if the object was still within asmall distance of the hand and had not fallen onto a simulated
floor under the influence of gravity.

TABLE I
ROBUSTNESS OF CAGING HEURISTICS
Experiments
Objects

Scale

Dumbbells
Dumbbells
Dumbbells
Pony
Pony
Pony
Cup
Cup
Cup
Bunny
Bunny
Bunny

1
4
8
1
4
8
1
4
8
1
3
8

Robustness of sphere caging
Curvature
integralvalue, π4±0
3 ± 0.16
0.89 ± 0.02
−7.2 ± 1.6
1.56 ± 0.12
1.77 ± 0.04
−2.36 ± 2.65
1.27 ± 0.53
0.70 ± 0.15
4±02.58 ± 0.11
1.97 ± 0.04

Net ofpointsHexapus
hand

Schunk
hand

100%
100%
0%
100%
90%
0%
100%
50%
20%
100%
100%
20%

100%
100%
0%
100%
80%
40%
100%
10%
60%
100%
100%
20%

50%
100%
0%
80%
20%
0%
80%
10%
40%
80%
60%
30%

Fig. 7. The effect of additional noise on the original meshes (displayedon the left) is shown. For illustration purposes, we display five caging areas
with highest scoring function values. The colour intensity increases with thevalue of Wr and Sr as indicated. Noisy meshes (right column) are generated
from the original meshes (left column) by adding noise, reconstructing froma point cloud and remeshing according to methodological section IV-A. Twotypes of caging grasp scoring functions are presented: S2 for the pony object
and S1 for the cup. Note that the highest scoring areas on the bottom rightcup are overlapping around the handle.

Computational complexity: All experiments were done on
a computer with an Intel i5, 4 Core, 2.40GHz processor
with 4 GB memory. The computation time of our scoring
functions scales in the worst case (small object size compared
to r in Gr (p)) quadratically in the number of vertices. For
small objects, the average computation time was about 20
seconds (1000 vertices per object), while the computation
for medium and large objects took less than a second.
B. Evaluation of our S1 and S2 caging heuristic
We produced 10 synthetic noisy meshes with 1000 vertices
according to the method outlined in the previous section
for the dumbbells, pony, cup and bunny models depicted inFig. 8. We tested three different object sizes with a scaling
factor between 1 and 8. The scaling factor was computed as

Robustness of circle caging
Anthropomorphic
hand
60%
80%
0%
80%
30%
0%
60%
40%
70%
60%
40%
30%

Windingvalue, π

Net ofpoints2-fingerhand

Schunk
hand

2±0
2±0
1.92 ± 0.04
2±02±01.98 ± 0.03
1.99 ± 0.01
2±01.97 ± 0.042±02±01.90 ± 0.05

100%
100%
90%
90%
100%
70%
90%
90%
60%
100%
100%
20%

40%
90%
90%
20%
90%
40%
30%
30%
50%
80%
40%
20%

90%
80%
40%
80%
20%
0%
30%
10%
10%
90%
0%
0%

Anthropomorphic
hand
80%
100%
90%
70%
70%
30%
40%
30%
30%
80%
10%
10%

b
a ratio R
Fl π, where Rb is a bounding sphere radius and Fl
the Schunk hand’s finger length. A value of 1 for the scaleof an object therefore represents an object size such that afull caging inside the robot hand is likely to be possible.
Other scales were chosen empirically in order to represent
medium (3-4) and large (8) scale objects. We followed
Alg. 1 to evaluate our approach but used the same previously
generated K = 10 noisy meshes per object for each scale
and manipulator to speed up the experiments. Results arepresented in Table I for sphere (left side) and circle caging(right side) respectively. The maximal integrated curvature
and winding angles are given as multiples of π.
Manipulators: The net of points showed the best average success rate over all experiments and was the best on average for S1 caging (followed by the anthropomorphic hand)and second best (after the ‘hexapus’ hand) for S2 caging.
The 3-finger Schunk hand demonstrates a high amount ofvariations in stability rates depending on the size and typeof an object. For the latter hand, the object might simply slipout between fingers when small enough, whereas additional
fingers and flexibility prevent this in case of the ‘hexapus’
and anthropomorphic hand which performed slightly better.
Scale: The smallest scale was selected, as explained
above, to enable a full caging by a robot hand. Thus, thestability rate for the net of points or the ‘hexapus’ hand in
this case is close to 100% with a few exceptions in the S1case. For the medium size objects, the results are also goodand demonstrate the ability of our method to select the mostsuitable subparts of an object. Large scale objects are mainly
unstable and success in this case depends fully on the object’s
structure.
S1 and S2 caging: The total Gauss curvature integral
for a closed polyhedral surface M ⊂ R3 equals 2πχ(M ) (seeEq. III.1). Furthermore, recall that χ(M ) = 2 − 2g where gdenotes the genus of M which is non-zero for the cup andpony objects. In the case of genus zero objects such as thebunny and the dumbbells, a good caging success rate seemed
to occur if the integrated curvature over Gr (p) was larger
than 50% of the total (i.e. larger than 2π), but there was asubstantial amount of variation between the robot hands.

Fig. 8. We display examples of grasps generated by our method. The three top rows represent attempted S2 caging grasps and the lower two attempted
S1 cages respectively. All displayed grasps apart from the grasps on the leg of the pony in the case of the net of points, the Schunk hand and theanthropomorphic hand (second, fourth and fifth column in the third row) pass our PhysX caging test. The first column shows reconstructed noisy mesheswith the selected approximate geodesic ball Gr (p) in red and centred at the vertex with highest Sr (p) (first three objects) and highest Wr (p) (lower two
meshes). The edge-path Pr (p) is highlighted in blue for circle cages. The other four columns demonstrate generated grasps for four types of manipulators.
The topmost cup object has smallest size (scale factor of 1). The dumbbells are of medium size and the pony in the middle and the second cup are large.
Finally, the last row shows generated S1 grasps for a medium sized pony object.

In case of S1 caging, the winding value was always close
to 2π (full circle). Interestingly, this does not always guarantee a good performance since a cylindrical subpart might be
too small or not reachable at all, preventing a good caging
grasp. Nevertheless, the net of points, the anthropomorphic
and the 2-finger hand have shown promising stability rates.
The third finger in the case of the Schunk hand might beboth beneficial (e.g. when the object is very small) anddisadvantageous (e.g. due to collisions).
In summary, the high percentages of stable grasps for the‘net of points’ indicate that our proposed heuristic scoring
functions can successfully generate such grasps. However,differing robotic hands are not equally well suited for S1and S2 cages as can be seen from Table I.
C. Qualitative discussion
Figure 8 displays some of the highest scoring geodesicballs together with corresponding generated grasps for several examples. The first cup object has smallest scale and canthus be fully covered by all manipulators. Since all Gr (p)in this case have the same integrated curvature (e.g. zero forthe original cup mesh), the first vertex in the list of vertices
for this mesh is chosen to be the central vertex p of Gr (p).
The synthesized grasps for the medium size dumbbells object(integrated value of 3π ± 0.16π) also appeared to be stable.
The last two examples show the robust behaviour of thegenerated cages for large and medium size objects in thecase of S1 caging. The evaluation of some of these caging
grasps is presented in the supplementary video.
VI. C ONCLUSION
In this work, we have proposed and evaluated two newcaging synthesis methods which we call circle and spherecaging. We have developed heuristic scoring functions forboth caging types which allow us to identify robust caging
grasps on complex 3D objects. Our approach is basedon a novel geodesic ball representation of the hand-object
interaction. We evaluated our proposed methods using arealistic physics simulation, with respect to robustness undersimulated sensor noise and with respect to various object
sizes and types of manipulators.
Our geodesic ball approach represents an approximation ofthe ‘hand-local’ geometry and is, to some extent, independentof the exact kinematic structure of the robotic hand. In future,
we would like to investigate more elaborate approximations
and investigate an implementation of our approach using
several robot hands suitable for applying such caging grasps.
Our method might be particularly interesting to combine with
soft robotic actuators (e.g. created in laboratories [24], [25],and [22]).
Another potential approach could be to investigate further
semi-global characteristics of a surface and to develop further
methods which lead to robust caging grasps. For example, acombination of S1 and S2 scoring functions with reachability
constraints could be a possible future direction.

R EFERENCES[1] C. Ferrari and J. Canny, “Planning optimal grasps,” IEEE ICRA, pp.
2290–2295, 1992.
[2] A. T. Miller and P. K. Allen, “Graspit!: A versatile simulator for
robotic grasping,” IEEE Robotics and Automation Magazine, vol. 11,
pp. 110–122, 2004.
[3] B. León, S. Ulbrich, R. Diankov, G. Puche, M. Przybylski, A. Morales,
T. Asfour, S. Moisio, J. Bohg, J. Kuffner, and R. Dillmann, “Opengrasp: a toolkit for robot grasping simulation,” in Proc. of the second
international conference on simulation, modeling, and programming
for autonomous robots, ser. SIMPAR’10, 2010, pp. 109–120.
[4] C. Borst, M. Fischer, and G. Hirzinger, “Grasping the dice by dicing
the grasp,” in IEEE/RSJ IROS, 2003, pp. 3692–3697.
[5] J.-P. Saut and D. Sidobre, “Efficient models for grasp planning witha multi-fingered hand.” Robotics and Autonomous Systems, vol. 60,
no. 3, pp. 347–357, 2012.
[6] E. Rimon and J. W. Burdick, “Mobility of Bodies in Contact - I: A
New 2nd Order Mobility Index for Multiple-Finger Grasps,” 1994.
[7] A. Rodriguez, M. T. Mason, and S. Ferry, “From caging to grasping.”
I. J. Robotic Res., vol. 31, no. 7, pp. 886–900, 2012.
[8] R. Diankov, S. Srinivasa, D. Ferguson, and J. Kuffner, “Manipulation
planning with caging grasps,” in 2008 IEEE International Conferenceon Humanoid Robots, December 2008.
[9] J. A. Stork, F. T. Pokorny, and D. Kragic, “Integrated motion and clasp
planning with virtual linking,” in IEEE/RSJ IROS, 2013.
[10] B. Calli, M. Wisse, and P. Jonker, “Grasping of unknown objects via
curvature maximization using active vision.” in IEEE/RSJ IROS, 2011,
pp. 995–1001.
[11] S. El-Khoury and A. Sahbani, “A new strategy combining empiricaland analytical approaches for grasping unknown 3d objects,” Robotics
and Autonomous Systems, vol. 58, no. 5, pp. 497 – 507, 2010.
[12] K. Polthier and M. Schmies, “Straightest geodesics on polyhedralsurfaces,” in ACM SIGGRAPH 2006 Courses, ser. SIGGRAPH ’06.
New York, NY, USA: ACM, 2006, pp. 30–38.
[13] Y. G. Reshetnyak, Geometry IV: Non-regular Riemannian Geometry,ser. Encyclopaedia of Mathematical Sciences. Springer, 1993.
[14] M. Meyer, M. Desbrun, P. Schröder, and A. H. Barr, “Discrete
differential-geometry operators for triangulated 2-manifolds,” 2002.
[15] D. Zarubin, V. Ivan, M. Toussaint, T. Komura, and S. Vijayakumar, “Hierarchical motion planning in topological representations.” inRobotics: Science and Systems, 2012.
[16] S. L. H. Edmond and T. Komura, “Character motion synthesis by
topology coordinates,” in Computer Graphics Forum (Proc. Eurographics 2009), vol. 28, no. 2, Munich, Germany, 2009.
[17] M. Vahedi and A. F. van der Stappen, “On the complexity of the set ofthree-finger caging grasps of convex polygons,” in Robotics: Scienceand Systems, 2009.
[18] T. Asfour, K. Regenstein, P. Azad, J. Schröder, A. Bierbaum,
N. Vahrenkamp, and R. Dillmann, “ARMAR-III: An Integrated Humanoid Platform for Sensory-Motor Control,” in IEEE/RAS Int. Conf.
on Humanoid Robots (Humanoids), 2006, pp. 169–175.
[19] S. Fuhrmann, J. Ackermann, T. Kalbe, and M. Goesele, “Direct resampling for isotropic surface remeshing.” in VMV, R. Koch, A. Kolb,
and C. Rezk-Salama, Eds. Eurographics Association, pp. 9–16.
[20] NVIDIA PhysX, “http://www.geforce.com,” 2012.
[21] J. W. Ratcliff, “http://code.google.com/p/convexdecomposition/,”2009.
[22] E. Brown, N. Rodenberg, J. Amend, A. Mozeika, E. Steltz, M. R.
Zakin, H. Lipson, and H. M. Jaeger, “Universal robotic gripper basedon the jamming of granular material,” Proceedings of the National
Academy of Sciences, vol. 107, no. 44, pp. 18 809–18 814, Oct. 2010.
[23] M. Toussaint, “libors: Open robot simulation toolkit,
http://ipvs.informatik.uni-stuttgart.de/mlr/marc/source-code/,” 2012.
[24] R. Deimel and O. Brock, “A compliant hand based on a novel
pneumatic actuator,” in IEEE ICRA, 2013.
[25] F. Ilievski, A. D. Mazzeo, R. F. Shepherd, X. Chen, and G. M.
Whitesides, “Soft robotics for chemists,” Angew Chem Int Ed Engl,
vol. 50, 2011.
[26] G. Wei, J. Dai, S. Wang, and H. Luo, “Kinematic analysis and prototype of a metamorphic anthropomorphic hand with a reconfigurable
palm,” International Journal Of Humanoid Robotics, vol. 8, no. 3, pp.
459 – 479, 2011.
[27] P. Cignoni, M. Corsini, and G. Ranzuglia, “Meshlab: an open-source
3d mesh processing system,” ERCIM News, no. 73, pp. 45–46, April
2008.