Supplementary Material for
Superquadrics Revisited: Learning 3D Shape Parsing beyond Cuboids
Despoina Paschalidou1,4 Ali Osman Ulusoy2 Andreas Geiger1,3,4
1
Autonomous Vision Group, MPI for Intelligent Systems Tübingen2
Microsoft 3 University of Tübingen 4 Max Planck ETH Center for Learning Systems{firstname.lastname}@tue.mpg.de

Abstract
In this supplementary document, we present a detailed derivation of the proposed analytical solution to the Chamferloss, which avoids the need for computationally expensive reinforcement learning or iterative prediction. Moreover, we alsopresent additional qualitative results on more complex object categories from the ShapeNet dataset [2] such as cars andmotorbikes and on the SURREAL human body dataset [6]. Furthermore, we also show results on primitive prediction whenusing RGB images instead of 3D occupancy grids as input. Finally, we empirically demonstrate that our bi-directional Chamfer loss formulation indeed works better and results in less local minima than the original bi-directional loss formulation of
Tulsiani et al. [5].

1. Superquadrics
In this work, we propose superquadrics as a shape primitive representation. Their simple parametrization in combination
to their ability to represent a diverse class of shapes makes superquadrics a natural choice for geometric primitives. Moreover, their continuous parametrization is suitable for deep learning as their shape varies continuously with their parameters.
Superquadrics are fully modelled using a set of 11 parameters [1]. The explicit superquadric equation defines the surface
vector r
α1 cos1 η cos2 ω−π/2 ≤ η ≤ π/2(1)r(η, ω) =  α2 cos1 η sin2 ω −π ≤ ω ≤ π
α3 sin1 η
where α = [α1 , α2 , α3 ] determine the size and  = [1 , 2 ] determine the global shape of the superquadric. Fig. 1 visualizes
the shape of superquadrics for different values of 1 and 2 . In addition to the shape parameters, we also associate a rigid
body transformation with each superquadric. This transformation is represented by a translation vector t = [tx , ty , tz ] anda quaternion q = [q0 , q1 , q2 , q3 ] that determines the coordinate system transformation T (x) = R(λ) x + t(λ) from world
coordinates to local primitive-centric coordinates. This transformation as well as the angles η, ω and the scale parameters
α1 , α2 , α3 are illustrated in Fig. 2.

2. Derivation of Pointcloud-to-Primitive Loss
This section provides the derivation of the pointcloud-to-primitive distance LX→P (X, P) in Eq. 11 of the main paper.
For completeness, we restate our notation briefly. We represent the target point cloud as a set of 3D points X = {xi }N
i=1
and we approximate the continuous surface of the mth primitive by a set of 3D points Ym = {ykm }K.
We
furtherdenotek=1
Tm (x) = R(λm ) x + t(λm ) as the mapping from world coordinates to the local coordinate system of the mth primitive.
The pointcloud-to-primitive distance, LX→P , measures the distance from the point cloud to the primitives to ensure thateach observation is explained by at least one primitive. It can be expressed as:"#
Xm
LX→P (X, P) = Ep(z)min ∆i(2)xi ∈X

m|zm =1

Figure 1: Superquadric Shape Space. Superquadrics are a parametric family of surfaces that can be used to describe cubes,
cylinders, spheres, octahedral ellipsoids, etc. [1]. This figure visualizes superquadrics when varying the shape parameters 1
and 2 , while keeping the size parameters α1 , α2 and α3 constant.
where ∆mi denotes the minimal distance from point xi to the surface of the m’th primitive:∆mi =min kTm (xi ) − ykm k2

k=1,..,K(3)

Q
Assuming independence of the existence variables p(z) = m p(zm ), we can replace the expectations in (2) with summations as follows:
#
"
X
X X
m
LX→P (X, P) =···min ∆i p(z)
(4)
z1

zM

xi ∈X

m|zm =1

Naı̈ve computation of (4) has exponential complexity, i.e. for M primitives it requires evaluating the quantity inside theexpectation 2M times. Our key insight is that (4) can be evaluated in linear time if the distances ∆mi are sorted. Without lossof generality, we assume that the distances are sorted in ascending order. This allows us to state the following: if the firstprimitive exists, the first primitive will be the one closest to point xi of the target point, if the first primitive does not exist
and the second does, then the second primitive is closest to point xi and so forth. More formally, this property can be statedFigure 2: Explicit Superquadric Equation. A 3D vector r(η, ω) defines a closed surface in space as η (latitude angle) andω (longitude angle) change in the given intervals (1). The rigid body transformation Tm (x) maps a point from the world
coordinate system to the local coordinate system of the mth primitive.
as follows:min ∆mi =m|zm =1∆1i , if z1 = 1∆2i , if z1 = 0, z2 = 1
..


.


 M
∆i , if zm = 0, . . . , zM = 1(5)

Using (5) we can simplify (4) as follows. We start to carry out the summations over the existence variables one by one.
Starting with the summations over z1 , (4) becomes:



Y
M
M
X 
X X
 X X 1 Ym

LX→P (X, P) =···∆ip(zm̄ ) +(1 − γ1 )p(zm̄ )
···
min
∆i
γ1

m≥2|zm =1

z2
zM
z2
zM
m̄=2
m̄=2
xi ∈X 
|
{z
}

(6)

(†)

The expression, marked with ( † ) corresponds to the case for z1 = 1, namely the 1st primitive is part of the scene. From1
Eq. 5, we know that minm|zm =1 ∆m
i = ∆i for z1 = 1, thus the expression marked with ( † ), can be simplified as follows,( † ) = γ1 ∆1i

X

···

z2

|

M
XY

p(zm̄ ) = γ1 ∆1i(7)

zM m̄=2{z

this term evaluates to 1}

Following this strategy, we can iteratively simplify the remaining terms in (6) and arrive at the analytical form of thepointcloud-to-primitive distance stated in Eq. 11 in the main paper:
X 
LX→P (X, P) =γ1 ∆1i + (1 − γ1 )γ2 ∆2i + · · · + (1 − γ1 )(1 − γ2 ) . . . γM ∆M
i
xi ∈X

=

M
X X
xi ∈X m=1

∆m
i γm

m−1
Y

(8)
(1 − γm̄ )m̄=1Note that our current formulation assumes that at least one primitive exists in the scene. However, this assumption can beeasily relaxed by introducing a “virtual primitive” with a fixed distance to every 3D point on the target point cloud.

3. Qualitative Results on SURREALIn this section, we provide additional qualitative results on the SURREAL human body dataset. In Fig. 3, we illustrate thepredicted primitives of humans in various poses and articulations.

Figure 3: Qualitative Results on SURREAL. Our network learns semantic mappings of body parts across different body
shapes and articulations. For instance, the network uses the same primitive for the left forearm across instances.
We remark that our model is able to accurately capture the various human body parts using superquadric surfaces. Anotherinteresting aspect of our model, which is also observed in [5], is related to the fact that our model uses the same primitive(highlighted with the same color) to represent the same actual human body part. For example, the head is typically captured
using the primitive illustrated with red. For some poses these correspondences are lost. We speculate that this is because the
network does not know whether the human is facing in front or behind.

4. Qualitative Results on ShapeNet
In this section, we provide additional qualitative results on various object types from the ShapeNet dataset [2]. We
also demonstrate the ability of our model to capture fine details in more complicated objects such as motorcycle-bikes andcars. Due to their diverse shape vocabulary, superquadrics can accurately capture the structure of complex objects such as
motorbikes and cars. We observe that our model successfully represents the wheels of all bikes using a flattened ellipsoid
and the front fork using a pointy ellipsoid. Again, we note that our network consistently associates the same primitive withthe same semantic part. For instance, for the motorcycles object category, the primitive colored in red is associated with thesaddle, the primitive colored in green is associated with the front wheel etc. Fig. 6+7 demonstrate several predictions forboth classes using superquadric surfaces as geometric primitives.

Figure 4: Qualitative Results on animals from ShapeNet. We visualize the predictions of our network on the animals classof the ShapeNet dataset. We remark the consistency across primitives and animal parts as well as the ability of our model tocpature details such as ears and tails of animals that could have not beeen captured using cuboidal primitives
Due to superquadrics’ large shape vocabulary, our approach derives expressive scene abstractions that allow for differentiating between different types of vehicles both for motorcycles (scooter, racing bike, chopper etc.) (Fig. 6), cars (sedan,
convertible, coupe, etc.) (Fig. 7), animals (dogs, cats) (Fig. 4) despite that our model leverages only up to 20 primitives per
object. Note that for cars, wheels are not as easily recovered as for motorbikes due to the lack of supervision and since they
are “geometrically occluded” by the body of the car.

Figure 5: Qualitative Results on chairs from ShapeNet. We visualize the predictions of our network on the chairs class of
the ShapeNet dataset. We observe the consistency across corespondences between primitives and object parts as well as theability of our model to capture the shape of rounded parts.
Fig. 4+5 depicts additional predictions on the animal and the chair object class of the ShapeNet dataset. We observe thatfor both categories our model consistently captures both the structure and the fine details of the depicted object. Note thatchairs that have rounded legs are associated with flattened ellipsoids (Fig. 5), this would not have been possible only withcuboids.

Figure 6: Qualitative Results on motorbikes from ShapeNet. Our network learns semantic mappings of various object partsof different objects within the same category. Our expressive shape abstractions allow for differentiating between different
types of motorbikes (scooter, racing bike, chopper etc.), by sucessfully capturing the shape of various indicative parts suchas the wheels or the front fork of the bike.

Figure 7: Qualitative Results on cars from ShapeNet. We visualize predictions for the object categories car from theShapeNet dataset. Our expressive shape abstractions allow us to differentiate between different car types such as sedan,
coupe etc. This would not have been possible with cuboidal primitives that cannnot model rounded surfaces

5. Network Architecture Details
In this section, we detail the network architecture used throughout our experimental evaluations. Our network comprisesof two main parts, an encoder that learns a low-dimensional feature representation for the input and five regressors thatpredict the parameters of the superquadrics (size α, shape , translations t, rotations q and γ probabilities of existence). As
we already explained in our main submission, the encoder architecture is chosen based on the input type (image, voxelized
input etc.). In our experiments, we consider a binary occupancy grid as an input and the sequence of layers comprising boththe encoder and the regressors are depicted in Figure 8.

Figure 8: Volume-based network architecture. We visualize the layers that comprise our network architecture. Cubes
denote operations that are conducted on 3-dimensional volumes, while rectangles correspond to K-dimensional features.
The number above each shape (cube or rectangle) corresponds to the dimensionality of that layer. For instance, 163 × 4
denotes a feature map of size 163 and 4 channels. Following, our notation, M corresponds to the maximum number ofprimitives predicted.
Note that, for the image-based experiment of section 6 in the supplementary, where we consider an image as an input toour model, we replace the encoder architecture in Fig. 8 with a ResNet18 [3].

5.1. Parsimony Loss Details
We would also like to briefly provide some additional details for our parsimony loss. For completeness, we restate theparsimony loss of Equation 12 in our main submission,
v
!
u M
M
uX
X
Lγ (P) = max α − αγm , 0 + β t
γm
(9)
m=1

Note that the

M
X

m=1

γm corresponds to the expected number of primitives in the predicted parsing. As already mentioned, in

m=1

our main submission, our model suffers from the trivial solution LD (P, X) = 0 which is attained for γ1 = · · · = γm = 0. To
avoid this solution, we introduce the first term of Eq. 9 that penalizes the prediction when the expected number of primitives
is less than 1. The second term penalizes√ the prediction when the expected number of primitives is large. Note that the
maximum value of the second term is β M , while the maximum value of the first term is α. Therefore, in order to allow themodel to use more than one primitive, we set β to a value smaller than α. Typically α = 1.0 and β = 10−3 .

6. Shape Abstraction from a Single RGB Image
In this section, we use the proposed reconstruction loss of Eq. 3, in the main submission, to extract shape primitives
from RGB images instead of occupancy grids. Towards this goal, we render the ShapeNet models to images, and train animage-based network to minimize the same reconstruction loss also used for our volume-based architecture.
More specifically, we replace the encoder architecture, described in Section 3.4 in our main submission, with the ResNet18
architecture [3], without the last fully connected layer. The extracted features are subsequently passed to five independentheads that regress translation t, rotation q, size α, shape  and probability of existence γ for each primitive. During training,
we uniformly sample 1000 points, from the surface of the target object, as well as 200 points from the surface of every
superquadric. For optimization, we use ADAM [4] with a learning rate of 0.001 and a batch size of 32 for 40k iterations. We
observe that our model accurately captures shape primitives even from a single RGB image as input.

Figure 9: Shape Abstraction from a Single RGB Image. We visualize predictions for various ShapeNet object categories
using a single RGB image as input to our model.

7. Quantitative Analysis
In this section, we provide additional details regarding the quantitative comparison of Table 1 in our main paper. For
evaluation, we report two metrics the mean Chamfer distance and the mean Volumetric IoU. Volumetric IoU is defined as
the quotient of the volume of the two meshes’ intersection and the volume of their union. We obtain unbiased estimates ofthe volume of the intersection and the union by randomly sampling points from the bounding volume and determining if
the points lie inside our outside the ground truth / predicted mesh. The computation of the Chamfer distance is discussed indetail in our main submission throughout Section 3. Regarding the comparison in Table 1 of our main submission, we wantto mention that cuboids are a special case of superquadrics, thus fitting objects with cuboids is expected to lead to worse
results compared to superquadrics.

8. Empirical Analysis of Reconstruction Loss
In this section, we provide empirical evidence regarding our claim that our Chamfer-based reconstruction loss leads tomore stable training compared to the truncated bi-directional loss of Tulsiani et al. [5]. Towards this goal, we directly opti-

mize/train for the primitive parameters, i.e., not optimizing the weights of a neural network but directly fitting the primitives.
We perform this experiment on a 2D toy example and compare the results when using the proposed loss to the results using
the truncated distance formulation in [5]. We visualize the evolution of parameters for both optimization objectives as training progresses. We observe that the truncated loss proposed in [5] is more likely to converge to local minima (e.g. figures
11k-11o), while our loss consistently avoids them.

(a) Iteration 0(b) Iteration 10(c) Iteration 20(d) Iteration 30(e) Iteration 40(f) Iteration 50(g) Iteration 60(h) Iteration 70(i) Iteration 80(j) Iteration 90(k) Iteration 100(l) Iteration 110(m) Iteration 120(n) Iteration 130(o) Iteration 140

(a) Iteration 150(b) Iteration 160(c) Iteration 170(d) Iteration 180(e) Iteration 190(f) Iteration 200(g) Iteration 210(h) Iteration 220(i) Iteration 230(j) Iteration 240(k) Iteration 250(l) Iteration 260(m) Iteration 270(n) Iteration 280(o) Iteration 290

Figure 11: Empirical Analysis of Reconstruction Loss. We illustrate the evolution of two cuboid abstractions using ourreconstruction loss with Chamfer distance and the truncated bi-directional loss of Tulsiani et al. [5].

References[1] Alan H Barr. Superquadrics and angle-preserving transformations. IEEE Computer Graphics and Applications (CGA), 1981. 1, 2
[2] Angel X. Chang, Thomas A. Funkhouser, Leonidas J. Guibas, Pat Hanrahan, Qi-Xing Huang, Zimo Li, Silvio Savarese, Manolis
Savva, Shuran Song, Hao Su, Jianxiong Xiao, Li Yi, and Fisher Yu. Shapenet: An information-rich 3d model repository. arXiv.org,
1512.03012, 2015. 1, 5
[3] Kaiming He, Xiangyu Zhang, Shaoqing Ren, and Jian Sun. Deep residual learning for image recognition. In Proc. IEEE Conf. on
Computer Vision and Pattern Recognition (CVPR), 2016. 8, 9
[4] Diederik P. Kingma and Jimmy Ba. Adam: A method for stochastic optimization. In Proc. of the International Conf. on Learning
Representations (ICLR), 2015. 9[5] Shubham Tulsiani, Hao Su, Leonidas J. Guibas, Alexei A. Efros, and Jitendra Malik. Learning shape abstractions by assemblingvolumetric primitives. In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), 2017. 1, 5, 9, 10, 11[6] Gül Varol, Javier Romero, Xavier Martin, Naureen Mahmood, Michael J. Black, Ivan Laptev, and Cordelia Schmid. Learning fromsynthetic humans. In Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR), 2017. 1