Title: Differentiable Blocks World: Qualitative 3D Decomposition by Rendering Primitives
Venue: NeurIPS 2023
Accepted: yes
Keywords: 3D decomposition

3D reconstruction

MVS

primitives

qualitative 3D
Abstract: Given a set of calibrated images of a scene, we present an approach that produces a simple, compact, and actionable 3D world representation by means of 3D primitives. While many approaches focus on recovering high-fidelity 3D scenes, we focus on parsing a scene into mid-level 3D representations made of a small set of textured primitives. Such representations are interpretable, easy to manipulate and suited for physics-based simulations. Moreover, unlike existing primitive decomposition methods that rely on 3D input data, our approach operates directly on images through differentiable rendering. Specifically, we model primitives as textured superquadric meshes and optimize their parameters from scratch with an image rendering loss. We highlight the importance of modeling transparency for each primitive, which is critical for optimization and also enables handling varying numbers of primitives. We show that the resulting textured primitives faithfully reconstruct the input images and accurately model the visible 3D points, while providing amodal shape completions of unseen object regions. We compare our approach to the state of the art on diverse scenes from DTU, and demonstrate its robustness on real-life captures from BlendedMVS and Nerfstudio. We also showcase how our results can be used to effortlessly edit a scene or perform physical simulations. Code and video results are available at https://www.tmonnier.com/DBW.

Differentiable Blocks World: Qualitative 3D Decomposition by Rendering Primitives

Abstract

Given a set of calibrated images of a scene, we present an approach that produces a simple, compact, and actionable 3D world representation by means of 3D primitives. While many approaches focus on recovering high-fidelity 3D scenes, we focus on parsing a scene into mid-level 3D representations made of a small set of textured primitives. Such representations are interpretable, easy to manipulate and suited for physics-based simulations. Moreover, unlike existing primitive decomposition methods that rely on 3D input data, our approach operates directly on images through differentiable rendering. Specifically, we model primitives as textured superquadric meshes and optimize their parameters from scratch with an image rendering loss. We highlight the importance of modeling transparency for each primitive, which is critical for optimization and also enables handling varying numbers of primitives. We show that the resulting textured primitives faithfully reconstruct the input images and accurately model the visible 3D points, while providing amodal shape completions of unseen object regions. We compare our approach to the state of the art on diverse scenes from DTU, and demonstrate its robustness on real-life captures from BlendedMVS and Nerfstudio. We also showcase how our results can be used to effortlessly edit a scene or perform physical simulations. Code and video results are available at www.tmonnier.com/DBW .

1 Introduction

Recent multi-view modeling approaches, building on Neural Radiance Fields [45], capture scenes with astonishing accuracy by optimizing a dense occupancy and color model. However, they do not incorporate any notion of objects, they are not easily interpretable for a human user or a standard 3D modeling software, and they are not useful for physical understanding of the scene. In fact, even though these approaches can achieve a high-quality 3D reconstruction, the recovered content is nothing but a soup of colorful particles! In contrast, we propose an approach that recovers textured primitives, which are compact, actionable, and interpretable.

More concretely, our method takes as input a collection of calibrated images of a scene, and optimizes a set of primitive meshes parametrized by superquadrics [1] and their UV textures to minimize a rendering loss. The approach we present is robust enough to work directly from a random initialization. One of its key components is the optimization of a transparency parameter for each primitive, which helps in dealing with occlusions as well as handling varying number of primitives. This notably requires adapting standard differentiable renderers to deal with transparency. We also show the benefits of using a perceptual loss, a total variation regularization on the textures and a parsimony loss favoring the use of a minimal number of primitives.

Our scene representation harks back to the classical Blocks World ideas [59]. An important difference is that the Blocks World-inspired approaches are typically bottom-up, leveraging low-level image features, such as edges [59], super-pixels [21], or more recently learned features [72, 32], to infer

Input

Output

(a) Prior works,

e.g

., [42]

Input

Optimized textured 3D primitives

(b)

Our work

(c) Application: physics-based simulations

3D blocks. In contrast, we perform a direct top-down optimization of 3D primitives and texture using a rendering loss, starting from a random initialization in the spirit of analysis-by-synthesis. Unlike related works that fit primitives to 3D point clouds [3, 1, 68, 38, 71, 42, 43] (Figure 1a), our approach, dubbed Differentiable Blocks World (or DBW), does not require any 3D reconstruction a priori but instead operates directly on a set of calibrated input images, leveraging photometric consistency across different views (Figure 1b). This makes our approach more robust since methods based on 3D are very sensitive to noise in the reconstructions and have difficulties dealing with incomplete objects. Our setting is similar to existing NeRF-like approaches, but our model is able to recover a significantly more interpretable and parsimonious representation. In particular, such an interpretable decomposition allows us to easily play with the discovered scene, e.g ., by performing physics-based simulations (Figure 1c). Code and video results are available on our project webpage: www.tmonnier.com/DBW .

2 Related Work

Scene decomposition into 3D primitives. The goal of understanding a scene by decomposing it into a set of geometric primitives can be traced back to the very fist computer vision thesis by Larry Roberts on Blocks World [59] in 1963. In it, Roberts shows a complete scene understanding system for a simple closed world of textureless polyhedral shapes by using a generic library of polyhedral block components. In the 1970s, Binford proposes the use of Generalized Cylinders as general primitives [3], later refined by Biederman into the recognition-by-components theory [2]. But applying these ideas to real-world image data has proved rather difficult.

A large family of methods does not consider images at all, instead focusing on finding primitives in 3D data. Building upon the classical idea of RANSAC [11], works like [4, 6, 62, 61, 39, 50, 57] accurately extract various primitive shapes ( e.g ., planes, spheres and cylinders for [62, 61, 39]) from a point cloud. In particular, MonteBoxFinder [57] is a recent RANSAC-based system that robustly extracts cuboids from noisy point clouds by selecting the best proposals through Monte Carlo Tree Search. To avoid the need for RANSAC hyperparameter tuning while retaining robustness, Liu et al . [42] introduce a probabilistic framework dubbed EMS that recovers superquadrics [1]. Other methods instead leverage neural learning advances to robustly predict primitive decomposition from a collection of shapes ( e.g ., ShapeNet [5]), in the form of cuboids [68], superquadrics [55, 53, 71], shapes from a small dictionary [38, 36] or learnable prototypical shapes [10, 54, 43]. However, they are typically limited to shapes of known categories and require perfect 3D data. More generally, the decomposition results of all 3D-based methods highly depend on the quality of the 3D input, which is always noisy and incomplete for real scenes. For a complete survey of 3D decomposition methods, we refer the reader to [28].

More recently, there has been a renewed effort to fit 3D primitives to various image representations, such as depth maps, segmentation predictions or low-level image features. Depth-based approaches [27, 12, 40, 18, 32] naturally associate a 3D point cloud to each image which is then used for primitive fitting. However, the resulting point cloud is highly incomplete, ambiguous and sometimes inaccurately predicted, thus limiting the decomposition quality. Building upon the single-image scene layout estimation [23, 24], works like [21, 37] compute cuboids that best match the predicted surface orientations. Finally, Façade [9], the classic image-based rendering work, leverages user annotations across multiple images with known camera viewpoints to render a scene with textured 3D primitives. In this work, we do not rely on 3D, depth, segmentation, low-level features, or user annotations to compute the 3D decomposition. Instead, taking inspiration from Façade [9] and recent multi-view modeling advances [69, 51, 45], our approach only requires calibrated views of the scene and directly optimizes textured primitives through photometric consistency in an end-to-end fashion. That is, we solve the 3D decomposition and multi-view stereo problems simultaneously.

Multi-view stereo. Our work can be seen as an end-to-end primitive-based approach to multi-view stereo (MVS), whose goal is to output a 3D reconstruction from multiple images taken from known camera viewpoints. We refer the reader to [22, 14] for an exhaustive review of classical methods. Recent MVS works can be broadly split into two groups.

Modular multi-step approaches typically rely on several processing steps to extract the final geometry from the images. Most methods [82, 16, 73, 74, 79, 20, 65], including the widely used COLMAP [63], first estimate depth maps for each image (through keypoint matching [63] or neural network predictions [73, 74, 79, 20, 65]), then apply a depth fusion step to generate a textured point cloud. Finally, a mesh can be obtained with a meshing algorithm [30, 34]. Other multi-step approaches directly rely on point clouds [15, 34] or voxel grids [64, 33, 26, 49]. Note that, although works like [26, 49] leverage end-to-end trainable networks to regress the geometry, we consider them as multi-step methods as they still rely on a training phase requiring 3D supervision before being applied to unknown sets of multi-view images. Extracting geometry through multiple steps involves careful tuning of each stage, thus increasing the pipeline complexity.

End-to-end approaches directly optimize a 3D scene representation using photometric consistency across different views along with other constraints in an optimization framework. Recent methods use neural networks to implicitly represent the 3D scene, in the form of occupancy fields [51], signed distance functions [77] or radiance fields, as introduced in NeRF [45]. Several works incorporate surface constraints in neural volumetric rendering to further improve the scene geometry [52, 76, 70, 8, 13], with a quality approaching that of traditional MVS methods. Other methods [17, 80, 19, 48] instead propose to leverage recent advances in mesh-based differentiable rendering [44, 29, 41, 7, 58, 35] to explicitly optimize textured meshes. Compared to implicit 3D representations, meshes are highly interpretable and are straightforward to use in computer graphic pipelines, thus enabling effortless scene editing and simulation [48]. However, all the above approaches represent the scene as a single mesh, making it ill-suited for manipulation and editing. We instead propose to discover the primitives that make up the scene, resulting in an interpretable and actionable representation. A concurrent work PartNeRF [67] introduces parts in NeRFs. However, only synthetic scenes with a single object are studied and the discovered parts mostly correspond to regions in the 3D space rather than interpretable geometric primitives.

3 Differentiable Blocks World

Given a set of N views I 1: N of a scene associated with camera poses c 1: N , our goal is to decompose the 3D scene into geometric primitives that best explain the images. We explicitly model the scene as a set of transparent superquadric meshes, whose parameters, texture and number are optimized to maximize photoconsistency through differentiable rendering. Note that compared to recent advances in neural volumetric representations [51, 45, 78], we do not use any neural network and directly optimize meshes, which are straightforward to use in computer graphic pipelines.

Notations. We use bold lowercase for vectors ( e.g ., a ), bold uppercase for images ( e.g ., A ), doublestruck uppercase for meshes ( e.g ., A ) and write a 1: N the ordered set { a 1 , . . . , a n } .

Input (subset)

Init

Iter 200

Iter 1k

Iter 10k

Final

Output

Background B

Ground G

E2

Superquadric

Primitive block Pk!

11

iIcosphere

Tbg texture

Plane

Tgr texture

Pkpose

Tk texture

Sk scale

Pgr pose

Qk transpar.

3.1 Parametrizing a World of Blocks

We propose to represent the world scene as an explicit set of textured meshes positioned in the 3D space. Figure 2 summarizes our modeling and the parameters updated (top) during the optimization (bottom). Specifically, we model each scene as a union of primitive meshes: (i) an icosphere B modeling a background dome and centered on the scene, (ii) a plane G modeling the ground, and (iii) K primitive blocks P 1: K in the form of superquadric meshes, where K is fixed and refers to a maximum number of blocks. Unless mentioned otherwise, we arbitrarly use K = 10 . We write the resulting scene mesh B ∪ G ∪ P 1 ∪ . . . ∪ P K .

The goal of the background dome is to model things far from the cameras that can be well approximated with a planar surface at infinity. In practice, we consider an icosphere with a fixed location and a fixed scale that is much greater than the scene scale. On the contrary, the goal of the planar ground and the blocks is to model the scene close to the cameras. We thus introduce rigid transformations modeling locations that will be updated during the optimization. Specifically, we use the 6D rotation parametrization of [83] and associate to each block k a pose p k = { r k , t k } ∈ I R 9 such that every point of the block x ∈ I R 3 is transformed into world space by x world = rot( r k ) x + t k , where t k ∈ I R 3 , r k ∈ I R 6 and rot maps a 6D vector to a rotation matrix [83]. Similarly, we associate a rigid transformation p gr = { r gr , t gr } to the ground plane. We next describe how we model variable number of blocks via transparency values and the parametrization of blocks' shape and texture.

Block existence through transparency. Modeling a variable number of primitives is a difficult task as it involves optimizing over a discrete random variable. Recent works tackle the problem using reinforcement learning [68], probabilistic approximations [55] or greedy algorithms [47], which often yield complex optimization strategies. In this work, we instead propose to handle variable number of primitive blocks by modeling meshes that are transparent . Specifically, we associate to each block k a learnable transparency value α k , parametrized with a sigmoid, that can be pushed towards zero to change the effective number of blocks. Such transparencies are not only used in our rendering process to softly model the blocks existence and occlusions (Section 3.2), but also in regularization terms during our optimization, e.g ., to encourage parsimony in the number of blocks used (Section 3.3).

Superquadric block shape. We model blocks with superquadric meshes. Introduced by Barr in 1981 [1] and revived recently by [55], superquadrics define a family of parametric surfaces that exhibits a strong expressiveness with a small number of continuous parameters, thus making a good candidate for primitive fitting by gradient descent. More concretely, we derive a superquadric mesh

from a unit icosphere. For each vertex of the icosphere, its spherical coordinates η ∈ [ -π 2 , π 2 ] and ω ∈ [ -π, π ] are mapped to the superquadric surface through the parametric equation [1]:

where s = { s 1 , s 2 , s 3 } ∈ I R 3 represents an anisoptropic scaling and e = { ϵ 1 , ϵ 2 } ∈ I R 2 defines the shape of the superquadric. Both s and e are updated during the optimization process. Note that by design, each vertex of the icosphere is mapped continuously to a vertex of the superquadric mesh, so the icosphere connectivity - and thus the icosphere faces - is transferred to the superquadric mesh.

Texturing model. We use texture mapping to model scene appearance. Concretely, we optimize K +2 texture images { T bg , T gr , T 1: K } which are UV-mapped onto each mesh triangle using predefined UV mappings. Textures for the background and the ground are trivially obtained using respectively spherical coordinates of the icosphere and a simple plane projection. For a given block k , each vertex of the superquadric mesh is associated to a vertex of the icosphere. Therefore, we can map the texture image T k onto the superquadric by first mapping it to the icosphere using a fixed UV map computed with spherical coordinates, then mapping the icosphere triangles to the superquadric ones (see supplementary material for details).

3.2 Differentiable Rendering

In order to optimize our scene parameters to best explain the images, we propose to leverage recent mesh-based differentiable renderers [41, 7, 58]. Similar to them, our differentiable rendering corresponds to the soft rasterization of the mesh faces followed by a blending function. In contrast to existing mesh-based differentiable renderers, we introduce the ability to account for transparency. Intuitively, our differentiable rendering can be interpreted as an alpha compositing of the transparent colored faces of the mesh. In the following, we write pixel-wise multiplication with ⊙ and the division of image-sized tensors corresponds to pixel-wise division.

Soft rasterization. Given a 2D pixel location u , we model the influence of the face j projected onto the image plane with the 2D occupancy function of [7] that we modify to incorporate the transparency value α k j associated to this face. Specifically, we write the occupancy function as:

where σ is a scalar hyperparameter modeling the extent of the soft mask of the face and ∆ j ( u ) is the signed Euclidean distance between pixel u and projected face j , such that ∆ j ( u ) < 0 if pixel u is outside face j and ∆ j ( u ) ≥ 0 otherwise. We consider the faces belonging to the background and the ground to be opaque, i.e ., use a transparency of 1 for all their faces in the occupancy function.

Blending through alpha compositing. For each pixel, we find all projected faces with an occupancy greater than a small threshold at this pixel location, and sort them by increasing depth. Denoting by L the maximum number of faces per pixel, we build image-sized tensors for occupancy O ℓ and color C ℓ by associating to each pixel the ℓ -th intersecting face attributes. The color is obtained through barycentric coordinates, using clipped barycentric coordinates for locations outside the face. Different to most differentiable renderers and as advocated by [46], we directly interpret these tensors as an ordered set of RGBA image layers and blend them through traditional alpha compositing [56]:

We found this simple alpha composition to behave better during optimization than the original blending function used in [41, 7, 58]. This is notably in line with recent advances in differentiable rendering like NeRF [45] which can be interpreted as alpha compositing points along the rays.

3.3 Optimizing a Differentiable Blocks World

We optimize our scene parameters by minimizing a rendering loss across batches of images using gradient descent. Specifically, for each image I , we build the scene mesh as described in Section 3.1

and use the associated camera pose to render an image ˆ I using the rendering process detailed in Section 3.2. We optimize an objective function defined as:

where L render is a rendering loss between I and ˆ I , λ parsi , λ TV , λ over are scalar hyperparameters and L parsi , L TV , L over are regularization terms respectively encouraging parsimony in the use of primitives, favoring smoothness in the texture maps and penalizing the overlap between primitives. Our rendering loss is composed of a pixel-wise MSE loss L MSE and a perceptual LPIPS loss [81] L perc such that L render = L MSE + λ perc L perc . In all experiments, we use λ parsi = 0 . 01 , λ perc = λ TV = 0 . 1 and λ over = 1 . Figure 2 (bottom) shows the evolution of our renderings throughout the optimization.

Encouraging parsimony and texture smoothness. We found that regularization terms were critical to obtain meaningful results. In particular, the raw model typically uses the maximum number of blocks available to reconstruct the scene, thus over-decomposing the scene. To adapt the number of blocks per scene and encourage parsimony, we use the transparency values as a proxy for the number of blocks used and penalize the loss by L parsi = ∑ k √ α k / K . We also use a total variation (TV) penalization [60] on the texture maps to encourage uniform textures. Given a texture map T of size U × V and denoting by T [ u, v ] ∈ I R 3 the RGB values of the pixel at location ( u, v ) , we define:

and write L TV = L tv ( T bg ) + L tv ( T gr ) + ∑ k L tv ( T k ) the final penalization.

Penalizing overlapping blocks. We introduce a regularization term encouraging primitives to not overlap. Because penalizing volumetric intersections of superquadrics is difficult and computationally expensive, we instead propose to use a Monte Carlo alternative, by sampling 3D points in the scene and penalizing points belonging to more than λ blocks, in a fashion similar to [54]. Following [54], λ is set to 1 . 95 so that blocks could slightly overlap around their surface thus avoiding unrealistic floating blocks. More specifically, considering a block k and a 3D point x , we define a soft 3D occupancy function O 3D k as:

where τ is a temperature hyperparameter and Ψ k is the superquadric inside-outside function [1] associated to the block k , such that Ψ k ( x ) ≤ 1 if x lies inside the superquadric and Ψ k ( x ) > 1 otherwise. Given a set of M 3D points Ω , our final regularization term can be written as:

Note that in practice, for better efficiency and accuracy, we only sample points in the region where blocks are located, which can be identified using the block poses p 1: K .

Optimization details. We found that two elements were key to avoid bad local minima during optimization. First, while transparent meshes enable differentiability w.r.t. the number of primitives, we observed a failure mode where two semi opaque meshes model the same 3D region. To prevent this behavior, we propose to inject gaussian noise before the sigmoid in the transparencies α 1: K to create stochasticity when values are not close to the sigmoid saturation, and thus encourage values that are close binary. Second, another failure mode we observed is one where the planar ground is modeling the entire scene. We avoid this by leveraging a two-stage curriculum learning scheme, where texture maps are downscaled by 8 during the first stage. We empirically validate these two contributions in Section 4.3. We provide other implementation details in the supplementary material.

4 Experiments

4.1 DTU Benchmark

Benchmark details. DTU [25] is an MVS dataset containing 80 forward-facing scenes captured in a controlled indoor setting, where the 3D ground-truth points are obtained through a structured

light scanner. We evaluate on 10 scenes ( S24 , S31 , S40 , S45 , S55 , S59 , S63 , S75 , S83 , S105 ) that have different geometries and a 3D decomposition that is relatively intuitive. We use standard processing practices [77, 76, 8], resize the images to 400 × 300 and run our model with K = 10 on all available views for each scene (49 or 64 depending on the scenes). We use the official evaluation presented in [25], which computes the Chamfer distance between the ground-truth points and points sampled from the 3D reconstruction, filtered out if not in the neighborhood of the ground-truth points. We evaluate two state-of-the-art methods for 3D decomposition, EMS [42] and MonteboxFinder (MBF) [57], by applying them to the 3D ground-truth point clouds. We also evaluate them in a setup comparable to ours, where the state-of-the-art MVS method NeuS [70] is first applied to the multi-view images to extract a mesh, which is then used as input to the 3D decomposition methods. We refer to this input as 'NeuS-mesh'.

Results. We compare our Chamfer distance performances to these state-of-the-art 3D decomposition methods in Table 1. For each method, we report the input used and highlight the average number of discovered primitives #P in green (smaller than 10) or red (larger than 10). Intuitively, overly large numbers of primitives lead to less intuitive and manipulative scene representations. Our performances correspond to a single random run (random) and a run automatically selected among 5 runs using the minimal rendering loss (auto). We augment the best concurrent methods with a filtering step using RANSAC to remove the planar ground from the 3D input. Overall, we obtain results that are much more satisfactory than prior works. On the one hand, EMS outputs a reasonable number of primitives but has a high Chamfer distance reflecting bad 3D reconstructions. On the other hand, MBF yields a lower Chamfer distance (even better than ours with the filtering step) but it outputs a significantly higher number of primitives, thus reflecting over-decompositions.

Our approach is qualitatively compared in Figure 3 to the best EMS and MBF models, which correspond to the ones applied on the 3D ground truth and augmented with the filtering step. Because the point clouds are noisy and incomplete (see 360 ◦ renderings in our supplementary material), EMS and MBF struggle to find reasonable 3D decompositions: EMS misses some important parts, while MBF over-decomposes the 3D into piecewise planar surfaces. On the contrary, our model is able to output meaningful 3D decompositions with varying numbers of primitives and very different shapes. Besides, ours is the only approach that recovers the scene appearance (last column). Also note that it produces a complete 3D scene, despite being only optimized on forward-facing views.

4.2 Real-Life Data and Applications

We present qualitative results on real-life captures in Figure 4. The first row corresponds to the Campanile scene from Nerfstudio repository [66] and the last four rows correspond to BlendedMVS scenes [75] that were selected in [76]. We adapt their camera conventions to ours and resize the images to roughly 400 × 300 . From left to right, we show a subset of the input views, a rendering overlaid with the primitive edges, the primitives, as well as two novel view synthesis results. For each scene, we run our model 5 times and automatically select the results with the minimal rendering loss. We set the maximum number of primitives to K = 10 , except the last row where it is increased to

Input view

GT point cloud

EMS [42]

MBF [57]

Ours

Ours rendering

Input (subset)

Rendering

Output

Novel views rendering

Novel views output

Input (subset)

Amodal view synthesis - Nerfacto [66]

Amodal view synthesis -

Ours

Input (subset)

Scene editing - Removing ears

Scene editing - Moving arm

K = 50 due to the scene complexity. These results show that despite its simplicity, our approach is surprisingly robust. Our method is still able to compute 3D decompositions that capture both appearances and meaningful geometry on a variety of scene types. In addition, increasing the maximum number of primitives K allows us to easily adapt the decomposition granularity (last row).

In Figure 5, we demonstrate other advantages of our approach. First, compared to NeRF-based approaches like Nerfacto [66] which only reconstruct visible regions, our method performs amodal scene completion (first row). Second, our textured primitive decomposition allows to easily edit the 3D scene (second row). Finally, our optimized primitive meshes can be directly imported into standard computer graphics softwares like Blender to perform physics-based simulations (bottom).

4.3 Analysis

Ablation study. In Table 2, we assess the key components of our model by removing one component at a time and computing the performance averaged over the 10 DTU scenes. We report the final number of primitives, Chamfer distance and rendering metrics. We highlight the varying number of primitives in green (smaller than 5) and red (larger than 5). Results are averaged over five runs,

Method

#P

↓

CD

↓

PSNR

↑

SSIM

↑

LPIPS

↓

K

= 10

(default)

4.60

3.63

20.5

73.5

23.9

K

= 25

7.00

3.58

21.0

74.6

22.5

K

= 50

9.26

3.52

20.9

74.7

22.8

Method

#P

↓

CD

↓

λ

parsi

= 0

.

001

7.44

3.61

λ

parsi

= 0

.

01

(default)

4.60

3.63

λ

parsi

= 0

.

1

1.30

6.88

(a) Missing parts

(b) Unnatural decomposition

(c) Parsimony/fidelity trade-off

PICKWICK

we report the means and standard deviations. Overall, each component except L parsi consistently improves the quality of the 3D reconstruction and the renderings. L parsi successfully limits the number of primitives (and thus, primitive duplication and over-decomposition) at a very small quality cost.

Influence of K and λ parsi . In Table 3, we evaluate the impact of two key hyperparameters of our approach, namely the maximum number of primitives K and the weight of the parsimony regularization λ parsi. Results are averaged over the 10 DTU scenes for 5 random seeds. First, we can observe that increasing K slightly improves the reconstruction and rendering performances at the cost of a higher effective number of primitives. Second, these results show that λ parsi directly influences the effective number of primitives found. When λ parsi = 0 . 1 , this strong regularization limits the reconstruction to roughly one primitive, which dramatically decreases the performances. When λ parsi is smaller, the effective number of primitives increases without significant improvements in the reconstruction quality.

Limitations and failure cases. In Figure 6, we show typical failure cases of our approach. First, for a random run, we may observe bad solutions where parts of the geometry are not reconstructed (Figure 6a). This is mainly caused by the absence of primitives in this region at initialization and our automatic selection among multiple runs alleviates the issue, yet this solution is computationally costly. Note that we also tried to apply a Gaussian kernel to blur the image and propagate gradients farther, but it had little effect. Second, our reconstructions can yield unnatural decompositions as illustrated in Figure 6b, where tea boxes are wrongly split or a single primitive is modeling the bear nose and the rock behind. Finally, in Figure 6c, we show that increasing K from 10 (left) to 50 (right) allows us to trade-off parsimony for reconstruction fidelity. However, while this provides a form of control over the decomposition granularity, the ideal decomposition in this particular case does not seem to be found: the former seems to slightly under-decompose the scene while the latter seems to over-decompose it.

5 Conclusion

We present an end-to-end approach that successfully computes a primitive-based 3D reconstruction given a set of calibrated images. We show its applicability and robustness through various benchmarks, where our approach obtains better performances than methods leveraging 3D data. We believe our work could be an important step towards more interpretable multi-view modeling.

Acknowledgments and Disclosure of Funding

We thank Cyrus Vachha for help on the physics-based simulations; Antoine Guédon, Romain Loiseau for visualization insights; François Darmon, Romain Loiseau, Elliot Vincent for manuscript feedback. This work was supported in part by ANR project EnHerit ANR-17-CE23-0008, gifts from Adobe and HPC resources from GENCI-IDRIS (2022-AD011011697R2, 2022-AD011013538). MA was supported by ERC project DISCOVER funded by the European Union's HorizonEurope Research and Innovation programme under grant agreement No. 101076028. Views and opinions expressed are however those of the authors only and do not necessarily reflect those of the European Union. Neither the European Union nor the granting authority can be held responsible for them.

References

A. H. Barr. Superquadrics and Angle-Preserving Transformations. IEEE Computer Graphics and Applications , 1981.

I. Biederman. Recognition-by-components: a theory of human image understanding. Psychological review , 1987.

T. Binford. Visual Perception by Computer. In IEEE Conference on Systems and Control , 1971.

R. C. Bolles and M. A. Fischler. A RANSAC-Based Approach to Model Fitting and Its Application to Finding Cylinders in Range Data. In IJCAI , 1981.

A. X. Chang, T. Funkhouser, L. Guibas, P. Hanrahan, Q. Huang, Z. Li, S. Savarese, M. Savva, S. Song, H. Su, J. Xiao, L. Yi, and F. Yu. ShapeNet: An Information-Rich 3D Model Repository. arXiv:1512.03012 [cs.CV] , 2015.

T. Chaperon and F. Goulette. Extracting cylinders in full 3D data using a random sampling method and the gaussian image. In VMV , 2001.

W. Chen, J. Gao, H. Ling, E. J. Smith, J. Lehtinen, A. Jacobson, and S. Fidler. Learning to Predict 3D Objects with an Interpolation-based Differentiable Renderer. In NeurIPS , 2019.

F. Darmon, B. Bascle, J.-C. Devaux, P. Monasse, and M. Aubry. Improving neural implicit surfaces geometry with patch warping. In CVPR , 2022.

P. E. Debevec, C. J. Taylor, and J. Malik. Modeling and Rendering Architecture from Photographs: A hybrid geometry- and image-based approach. In SIGGRAPH , 1996.

T. Deprelle, T. Groueix, M. Fisher, V. Kim, B. Russell, and M. Aubry. Learning elementary structures for 3d shape generation and matching. In NeurIPS , 2019.

M. A. Fischler and R. C. Bolles. Random Sample Consensus: A Paradigm for Model Fitting with Applications to Image Analysis and Automated Cartography. Communications of the ACM , 1981.

D. F. Fouhey, A. Gupta, and M. Hebert. Data-Driven 3D Primitives for Single Image Understanding. In ICCV , 2013.

Q. Fu, Q. Xu, Y.-S. Ong, and W. Tao. Geo-Neus: Geometry-Consistent Neural Implicit Surfaces Learning for Multi-view Reconstruction. In NeurIPS , 2022.

Y. Furukawa and C. Hernández. Multi-view stereo: A tutorial. Foundations and Trends® in Computer Graphics and Vision , 2015.

Y. Furukawa and J. Ponce. Accurate, Dense, and Robust Multi-View Stereopsis. In CVPR , 2007.

S. Galliani, K. Lasinger, and K. Schindler. Massively Parallel Multiview Stereopsis by Surface Normal Diffusion. In ICCV , 2015.

J. Gao, W. Chen, T. Xiang, C. F. Tsang, A. Jacobson, M. McGuire, and S. Fidler. Learning Deformable Tetrahedral Meshes for 3D Reconstruction. In NeurIPS , 2020.

A. Geiger and C. Wang. Joint 3D Object and Layout Inference from a Single RGB-D Image. In GCPR , 2015.

S. Goel, G. Gkioxari, and J. Malik. Differentiable Stereopsis: Meshes from multiple views using differentiable rendering. In CVPR , 2022.

X. Gu, Z. Fan, S. Zhu, Z. Dai, F. Tan, and P. Tan. Cascade Cost Volume for High-Resolution Multi-View Stereo and Stereo Matching. In CVPR , 2020.

A. Gupta, A. A. Efros, and M. Hebert. Blocks World Revisited: Image Understanding Using Qualitative Geometry and Mechanics. In ECCV , 2010.

R. Hartley and A. Zisserman. Multiple View Geometry in Computer Vision . Cambridge University Press, 2003.

D. Hoiem, A. Efros, and M. Hebert. Geometric context from a single image. In ICCV , 2005.

D. Hoiem, A. A. Efros, and M. Hebert. Recovering Surface Layout from an Image. IJCV , 2007.

R. Jensen, A. Dahl, G. Vogiatzis, E. Tola, and H. Aanaes. Large Scale Multi-view Stereopsis Evaluation. In CVPR , 2014.

M. Ji, J. Gall, H. Zheng, Y . Liu, and L. Fang. SurfaceNet: An End-to-end 3D Neural Network for Multiview Stereopsis. In ICCV , 2017.

H. Jiang and J. Xiao. A Linear Approach to Matching Cuboids in RGBD Images. In CVPR , 2013.

A. Kaiser, J. A. Ybanez Zepeda, and T. Boubekeur. A Survey of Simple Geometric Primitives Detection Methods for Captured 3D Data. Computer Graphics Forum , 2019.

H. Kato, Y. Ushiku, and T. Harada. Neural 3D Mesh Renderer. In CVPR , 2018.

M. Kazhdan and H. Hoppe. Screened Poisson Surface Reconstruction. ACM Transactions on Graphics , 2013.

D. P. Kingma and J. Ba. Adam: A Method for Stochastic Optimization. In ICLR , 2015.

F. Kluger, H. Ackermann, E. Brachmann, M. Y. Yang, and B. Rosenhahn. Cuboids Revisited: Learning Robust 3D Shape Fitting to Single RGB Images. In CVPR , 2021.

K. Kutulakos and S. Seitz. A Theory of Shape by Space Carving. In ICCV , 1999.

P. Labatut, J.-P. Pons, and R. Keriven. Efficient Multi-View Reconstruction of Large-Scale Scenes using Interest Points, Delaunay Triangulation and Graph Cuts. In ICCV , 2007.

S. Laine, J. Hellsten, T. Karras, Y . Seol, J. Lehtinen, and T. Aila. Modular Primitives for High-Performance Differentiable Rendering. ACM Transactions on Graphics , 2020.

E.-T. Le, M. Sung, D. Ceylan, R. Mech, T. Boubekeur, and N. J. Mitra. CPFN: Cascaded Primitive Fitting Networks for High-Resolution Point Clouds. In ICCV , 2021.

D. C. Lee, A. Gupta, M. Hebert, and T. Kanade. Estimating Spatial Layout of Rooms using Volumetric Reasoning about Objects and Surfaces. In NIPS , 2010.

L. Li, M. Sung, A. Dubrovina, L. Yi, and L. J. Guibas. Supervised Fitting of Geometric Primitives to 3D Point Clouds. In CVPR , 2019.

Y. Li, X. Wu, Y. Chrysanthou, A. Sharf, D. Cohen-Or, and N. J. Mitra. GlobFit: Consistently fitting primitives by discovering global relations. ACM Transactions on Graphics , 2011.

D. Lin, S. Fidler, and R. Urtasun. Holistic Scene Understanding for 3D Object Detection with RGBD Cameras. In ICCV , 2013.

S. Liu, T. Li, W. Chen, and H. Li. Soft Rasterizer: A Differentiable Renderer for Image-based 3D Reasoning. In ICCV , 2019.

W. Liu, Y. Wu, S. Ruan, and G. S. Chirikjian. Robust and Accurate Superquadric Recovery: a Probabilistic Approach. In CVPR , 2022.

R. Loiseau, E. Vincent, M. Aubry, and L. Landrieu. Learnable Earth Parser: Discovering 3D Prototypes in Aerial Scans. arXiv:2304.09704 [cs.CV] , 2023.

M. M. Loper and M. J. Black. OpenDR: An Approximate Differentiable Renderer. In ECCV , 2014.

B. Mildenhall, P. P. Srinivasan, M. Tancik, J. T. Barron, R. Ramamoorthi, and R. Ng. NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis. In ECCV , 2020.

T. Monnier, M. Fisher, A. A. Efros, and M. Aubry. Share With Thy Neighbors: Single-View Reconstruction by Cross-Instance Consistency. In ECCV , 2022.

T. Monnier, E. Vincent, J. Ponce, and M. Aubry. Unsupervised Layered Image Decomposition into Object Prototypes. In ICCV , 2021.

J. Munkberg, W. Chen, J. Hasselgren, A. Evans, T. Shen, T. Muller, J. Gao, and S. Fidler. Extracting Triangular 3D Models, Materials, and Lighting From Images. In CVPR , 2022.

Z. Murez, T. van As, J. Bartolozzi, A. Sinha, V. Badrinarayanan, and A. Rabinovich. Atlas: End-to-End 3D Scene Reconstruction from Posed Images. In ECCV , 2020.

L. Nan and P. Wonka. PolyFit: Polygonal Surface Reconstruction from Point Clouds. In ICCV , 2017.

M. Niemeyer, L. Mescheder, M. Oechsle, and A. Geiger. Differentiable Volumetric Rendering: Learning Implicit 3D Representations without 3D Supervision. In CVPR , 2020.

M. Oechsle, S. Peng, and A. Geiger. UNISURF: Unifying Neural Implicit Surfaces and Radiance Fields for Multi-View Reconstruction. In ICCV , 2021.

D. Paschalidou, L. V. Gool, and A. Geiger. Learning Unsupervised Hierarchical Part Decomposition of 3D Objects from a Single RGB Image. In CVPR , 2020.

D. Paschalidou, A. Katharopoulos, A. Geiger, and S. Fidler. Neural Parts: Learning Expressive 3D Shape Abstractions with Invertible Neural Networks. In CVPR , 2021.

D. Paschalidou, A. O. Ulusoy, and A. Geiger. Superquadrics Revisited: Learning 3D Shape Parsing Beyond Cuboids. In CVPR , 2019.

T. Porter and T. Duff. Compositing Digital Images. In SIGGRAPH , 1984.

M. Ramamonjisoa, S. Stekovic, and V. Lepetit. MonteBoxFinder: Detecting and Filtering Primitives to Fit a Noisy Point Cloud. In ECCV , 2022.

N. Ravi, J. Reizenstein, D. Novotny, T. Gordon, W.-Y. Lo, J. Johnson, and G. Gkioxari. Accelerating 3D Deep Learning with PyTorch3D. arXiv:2007.08501 [cs.CV] , 2020.

L. G. Roberts. Machine perception of three-dimensional solids . PhD thesis, Massachusetts Institute of Technology, 1963.

L. I. Rudin and S. Oshe. Total variation based image restoration with free local constraints. In ICIP , 1994.

R. Schnabel, P. Degener, and R. Klein. Completion and reconstruction with primitive shapes. Computer Graphics Forum , 2009.

R. Schnabel, R. Wahl, and R. Klein. Efficient RANSAC for Point-Cloud Shape Detection. Computer Graphics Forum , 2007.

J. L. Schönberger, E. Zheng, J.-M. Frahm, and M. Pollefeys. Pixelwise View Selection for Unstructured Multi-View Stereo. In ECCV , 2016.

S. Seitz and C. Dyer. Photorealistic Scene Reconstruction by Voxel Coloring. In CVPR , 1997.

A. Sinha, Z. Murez, J. Bartolozzi, V. Badrinarayanan, and A. Rabinovich. DELTAS: Depth Estimation by Learning Triangulation and Densification of Sparse Points. In ECCV , 2020.

M. Tancik, E. Weber, E. Ng, R. Li, B. Yi, J. Kerr, T. Wang, A. Kristoffersen, J. Austin, K. Salahi, A. Ahuja, D. McAllister, and A. Kanazawa. Nerfstudio: A Modular Framework for Neural Radiance Field Development. In SIGGRAPH , 2023.

K. Tertikas, D. Paschalidou, B. Pan, J. J. Park, M. A. Uy, I. Emiris, Y . Avrithis, and L. Guibas. PartNeRF: Generating Part-Aware Editable 3D Shapes without 3D Supervision. In CVPR , 2023.

S. Tulsiani, H. Su, L. J. Guibas, A. A. Efros, and J. Malik. Learning Shape Abstractions by Assembling Volumetric Primitives. In CVPR , 2017.

S. Tulsiani, T. Zhou, A. A. Efros, and J. Malik. Multi-view Supervision for Single-view Reconstruction via Differentiable Ray Consistency. In CVPR , 2017.

P. Wang, L. Liu, Y. Liu, C. Theobalt, T. Komura, and W. Wang. NeuS: Learning Neural Implicit Surfaces by Volume Rendering for Multi-view Reconstruction. In NeurIPS , 2021.

Y. Wu, W. Liu, S. Ruan, and G. S. Chirikjian. Primitive-based Shape Abstraction via Nonparametric Bayesian Inference. In ECCV , 2022.

J. Xiao, B. Russell, and A. Torralba. Localizing 3D cuboids in single-view images. In NIPS , 2012.

Y. Yao, Z. Luo, S. Li, T. Fang, and L. Quan. MVSNet: Depth Inference for Unstructured Multi-view Stereo. In ECCV , 2018.

Y. Yao, Z. Luo, S. Li, T. Shen, T. Fang, and L. Quan. Recurrent MVSNet for High-Resolution Multi-View Stereo Depth Inference. In CVPR , 2019.

Y. Yao, Z. Luo, S. Li, J. Zhang, Y. Ren, L. Zhou, T. Fang, and L. Quan. BlendedMVS: A Large-scale Dataset for Generalized Multi-view Stereo Networks. In CVPR , 2020.

L. Yariv, J. Gu, Y. Kasten, and Y. Lipman. Volume Rendering of Neural Implicit Surfaces. In NeurIPS , 2021.

L. Yariv, Y. Kasten, D. Moran, M. Galun, M. Atzmon, R. Basri, and Y. Lipman. Multiview Neural Surface Reconstruction by Disentangling Geometry and Appearance. In NeurIPS , 2020.

A. Yu, V. Ye, M. Tancik, and A. Kanazawa. pixelNeRF: Neural Radiance Fields from One or Few Images. In CVPR , 2021.

J. Zhang. Visibility-aware Multi-view Stereo Network. In BMVC , 2020.

J. Y. Zhang, G. Yang, S. Tulsiani, and D. Ramanan. NeRS: Neural Reflectance Surfaces for Sparse-view 3D Reconstruction in the Wild. In NeurIPS , 2021.

R. Zhang, P. Isola, A. A. Efros, E. Shechtman, and O. Wang. The Unreasonable Effectiveness of Deep Features as a Perceptual Metric. In CVPR , 2018.

E. Zheng, E. Dunn, V. Jojic, and J.-M. Frahm. PatchMatch Based Joint View Selection and Depthmap Estimation. In CVPR , 2014.

Y. Zhou, C. Barnes, J. Lu, J. Yang, and H. Li. On the Continuity of Rotation Representations in Neural Networks. In CVPR , 2019.

Supplementary Material for Differentiable Blocks World: Qualitative 3D Decomposition by Rendering Primitives

In this supplementary document, we provide additional results (Appendix A), details on the DTU benchmark (Appendix B) as well as implementation details (Appendix C), including design and optimization choices.

A Additional Results

Videos for view synthesis, physical simulations and amodal completion. We present additional results in the form of videos at our project webpage: www.tmonnier.com/DBW . Videos are separated in different sections depending on the experiment type. First, we provide view synthesis videos (rendered using a circular camera path), further outlining the quality of both our renderings and our primitive-based 3D reconstruction. Second, we include videos for physics-based simulations. Such simulations were produced through Blender by simply uploading our output primitive meshes. Note that for modeling primitive-specific motions in Blender ( e.g ., in our teaser figure), primitives should not overlap at all, thus requiring a small preprocessing step to slightly move the primitives for a clear separation. Because each primitive is its own mesh, this operation is easily performed within Blender. Finally, we provide video results where we perform scene editing and compare our amodal view synthesis results to the ones of Nerfacto introduced in Nerfstudio [66]. Models for amodal synthesis are optimized on a homemade indoor scene built from a forward-facing capture only. We use Nerfstudio for data processing and data convention.

Rendering comparison with SOTA MVS.

For completeness, we provide the rendering performances of NeRF [45], a SOTA MVS method that does not predict multiple parts. In Table 4, we compare PSNR for our approach and NeRF using the results reported in [76] on the intersected set of 6 DTU scenes.

B DTU Benchmark

In Figure 7, we show for each scene a subset of the input images as well as 360 ◦ renderings of the GT point clouds obtained through a structured light scanner. To compute performances, we use a Python version of the official evaluation: https://github.com/jzhangbs/DTUeval-python .

C Implementation Details

Icosphere and superquadric UV mapping. We use spherical coordinates that we correct to build our texture mapping for the unit icosphere. Figure 8 shows our process with an example. Specifically, we retrieve for each vertex its spherical coordinates η ∈ [ -π 2 , π 2 ] and ω ∈ [ -π, π ] which are linearly mapped to the UV space [0 , 1] 2 . Because such parametrization presents discontinuities and strong triangle deformations at the poles, we perform two corrections. First, we fix discontinuities by copying the border pixels involved (using a circular padding on the texture image) and introducing new 2D vertices such that triangles do not overlap anymore. Second, we avoid distorted triangles at the poles by creating for each triangle, a new 2D vertex positioned in the middle of the other two vertices. As detailed in the main paper, we derive a superquadric mesh from a unit icosphere in such a way that each vertex of the icosphere is continuously mapped to the superquadric vertex. As a result, the texture mapping defined for the icosphere is directly transferred to our superquadric meshes without any modification.

Design choices. Except constants related to the world scale, orientation and position in the 3D space w.r.t. to the known cameras, all our experiments share the same design choices. Specifically, all the following design choices are defined for a canonical 3D scene assumed to be centered and

Input (subset)

View 1

View 2

View 3

View 4

View 5

(a) Raw spherical coordinates

(b) Fixing border discontinuities

(c) Fixing distortions at the poles

mostly contained in the unit cube, with a y-axis orthogonal to the ground and pointing towards the sky. We roughly estimate the scene-specific constants related to the world scale and pose (through coarse visual comparisons or using the camera locations), and apply them to our final scene model to account for the camera conventions.

The background corresponds to a level-2 icosphere (320 faces), the ground plane is subdivided into 128 uniform faces (for visual purposes) and superquadric meshes are derived from level-1 icospheres (80 faces). The scale for the background and the ground is set to 10. The ground is initialized perpendicular to the y-axis and positioned at [0 , -0 . 9 , 0] .The poses of our primitive blocks are initialized using a Gaussian distribution for the 3D translation and a random 6D vector for the rotation such that rotations are uniformly distributed on the unit sphere. We parametrize their scale with an exponential added to a minimum scale value of 0.2 to prevent primitives from becoming too small. These scales are initialized with a uniform distribution in [0 . 5 , 1 . 5] and multiplied by a constant block scale ratio of 0.25 to yield primitives smaller than the scene scale. The superquadric shape parameters are implemented with a sigmoid linearly mapped in [0 . 1 , 1 . 9] and are initialized at 1 (thus corresponding to a raw icosphere). Transparency values are parametrized with a sigmoid and initialized at 0.5. All texture images have a size of 256 × 256 , are parametrized using a sigmoid and are initialized with small Gaussian noises added to gray images.

Optimization details. All our experiments share the same optimization details. We use Pytorch3D framework [58] to build our custom differentiable rendering process and use the default hyperparameter σ = 10 -4 . Our model is optimized using Adam [31] with a batch size of 4 for roughly a total of 25k iterations. We use learning rates of 0.05 for the texture images and 0.005 for all other parameters, and divide them by 10 for the last 2k iterations. Following our curriculum learning process, we optimize the model for the first 10k iterations by downsampling all texture images by 8. Then, we optimize using the full texture resolution during the next 10k iterations. Finally, to further increase the rendering quality, we threshold the transparency values at 0.5 to make them binary, remove regularization terms related to transparencies ( i.e ., L parsi and L over), divide the weights for the other terms L perc and L TV by 10, decrease the smoothness rendering parameter σ to 5 × 10 -6 and finetune our model for the final 5k iterations. In particular, this allows the model to output textures that are not darken by non-binary transparencies. During the optimization, we systematically kill blocks reaching a transparency lower than 0.01 and at inference, we only show blocks with a transparency greater than 0.5. Similar to [54], we use λ = 1 . 95 and τ = 0 . 005 in our overlap penalization.

Computational cost. Optimizing our model on a scene roughly takes 4 hours on a single NVIDIA RTX 2080 Ti GPU. Since MBF [57] and EMS [42] directly operate on the 3D point cloud without computing textures, they are much faster and compute primitives in a couple of minutes. To get comparable timings however, we have to account for a method that computes 3D point clouds from the calibrated images, which is typically longer depending on the method. For example, we report MBF and EMS results using the mesh extracted from NeUS [70], which typically takes 14 hours to converge on a single DTU scene.

Peer reviews:
{"IS_META_REVIEW": false, "comments": "SUMMARY:\nThe paper presents a method for producing simple \"blocks world\" 3D geometry for a scene from posed RGB images. Compared with multi-view 3D reconstruction approaches that produce point clouds or nerfs, the emphasis is on producing a simple, robust and (somewhat) object-aligned 3D representation. The representation used here is a collection of superquadric blobs. The main technical contribution is in the adaptation of differentiable rendering techniques to collections of superquadrics with support for transparency. Experiments show fitting various numbers of superquadrics to standard multi-view datasets such as DTU. The results show that the method can fit scenes with multiple sub-objects with reasonable quality, but is limited in the details it can reconstruct due to a limited number of superquadrics (usually ~10, one example shows 17).\n\nSTRENGTHS:\nThe paper is very well written and the main concepts are easy to understand. Relevant related work is discussed in detail. \n\nThe approach is simple and appealing: given posed images, fit a set of textured primitives such that they reconstruct the images. It is a purely optimization-based approach without a learned prior, so in theory it should apply equally well across any image collection. The main technical novelty beyond the high-level concept is an adaptation of the soft rasterizer idea to handle transparent layers of superquadrics, which may be useful in other contexts.\n\nThe work could encourage others to investigate these sorts of \"blocks world\" representations.\n\nWEAKNESSES:\nMy main concern with the paper is the results. The quality of the fits is pretty good for the number of superquadrics used, but still coarse, and the texture map can only do so much if the geometric complexity of the shape is higher than the superquadrics can handle (e.g., pitched roof of the building, top row fig. 3). The most impressive result is the gundam figure with 17 primitives (fig. 4), and the system apparently produces tight fits only for actual \"blocks world\" scenes (fig. 1).  \n\nI understand that the method is not targeted at photorealistic reconstruction. However, the usual criticism of \"blocks world\"-style approaches is that they are unrealistic, because the world isn't actually made out of blocks. The fidelity of the results of this method seem to confirm this criticism, which is a bit disappointing.\n\nThe limitations section suggests that the method is prone to bad local minima. This is a reasonable limitation but it is not surprising; it seems like an obvious limitation of this sort of optimization. Standard techniques such as coarse-to-fine optimization, or primitive splitting, were apparently not explored (unlike, for example, 3D Gaussian Splatting, Kerbl, et al., SIGGRAPH 2023). The paper states that K=10 was chosen for all experiments (l. 239) but the reader is left to wonder why this (small) number of primitives was chosen. \n\nMore minor: the adaptation of soft rasterizer to multiple layers seems like it could get slow for many layers, but this limitation is also not discussed.\n\nQUESTIONS:\nHow was the number K=10 chosen? What happens if K=100, or K=1000? More generally, what is limiting the detail level of the fits?\n\nWhy does the model get caught in bad local minima (in more detail)? Would just increasing the number of restarts avoid the minima?\n\nAre the parameters (sigma) of the soft rasterization adjusted on a schedule during optimization, similar to the original soft rasterizer paper? What is the effect, if any, of the soft rasterizer approximation on the optimization (i.e., what is the effect of varying sigma)? \n\nHow does the model behave for different values of the parsimony parameter? Is there an ablation showing the effect of that parameter?\n\nLIMITATIONS:\nAs mentioned above, it would be nice to have a more detailed description of the limits of the optimization. Just saying it gets caught in bad local minima isn't all that helpful. What is the cause of these minima? Why doesn't the soft rasterization and the transparency handling smooth out the loss landscape sufficiently?", "TITLE": "Official Review", "RECOMMENDATION": 5, "REVIEWER_CONFIDENCE": 5, "SOUNDNESS_CORRECTNESS": 3, "DATE": "2023-06-27"}

{"IS_META_REVIEW": false, "comments": "SUMMARY:\nThis paper presents an optimization-based method to recover 3D textured primitives from image observations. The core of the method is a fully differentiable and parsimonious 3D scene representation consisting of a background dome, ground plane, and a collection of multiple superquadrics, where the transformations as well as the UV-mapped textures are jointly optimized. By introducing transparency into the primitives, the authors devise an effective rendering mechanism that is optimizer-friendly and adaptive to different numbers of primitives. The proposed method is compared to 3D-based counterparts that fit primitives to the ground-truth point cloud and shows better representational compactness and fitting tightness. The primitive-based representation allows for various applications such as physics simulation and amodal shape completion.\n\nSTRENGTHS:\n1. The task of 3D decomposition from image collections is novel. Previous works either fit 3D primitives directly from point clouds, or build a low-level representation of the scene from images. This paper is the first effort to compute 3D primitives using image observations, and such a task would be useful in many other aspects including data transfer, scene editing, etc.\n2. The idea of optimization through rendering is novel. Inspired by the effective differentiable rendering scheme from NeRF, the paper introduces the transparency of the primitives and uses alpha blending to render, which is fast and effective. Such an idea is clever and inspiring.\n3. The presentation is good and the writing is clear. The paper is very clear in explaining the core ideas and the scene representation. Also, I could not find any grammatical errors or obvious typos in the writing.\n4. Results are compelling. The decomposition of 3D primitives is promising even for very complicated shapes such as robots. The decision boundaries of the primitives are clear and could be even useful for unsupervised semantic segmentation.\n\nWEAKNESSES:\nThe main weakness of the paper is in its evaluation. In particular, the following experimental results should be reported:\n1. Running EMS [41] and MBF [55] on the geometries recovered by, e.g., NeuS [13, 67]. From Fig.3 it could be clearly seen that even for 'GT point cloud' provided by DTU dataset, there are missing regions. Hence it would be fairer if the input of EMS and MBF is point clouds sampled from the NeuS-mesh. This would make the experimental results & comparisons more convincing as this aligns the inputs of the proposed method and the baselines.\n2. The rendering quality (e.g., PSNR) should be compared against NeRF-based baselines, or other mesh-based baselines, such as NVDiffRast, PartNeRF, or Nerfacto. Although I could understand that the rendering quality is not the main pursuit of the paper, it would be good to have such a comparison for completeness. Actually, the author could add metrics that compare the representation compactness (such as the file size for a scene) just to show off the advantage of using this mid-level representation. Additionally, it would be very interesting to show how the rendering quality, optimization time, and scene size vary when the number of primitives grows.\n3. Running time of the method and the baselines should be compared (or at least discussed).\n\nQUESTIONS:\n1. If the superquadrics are optimized to a cuboid, the textures along the edge will be squeezed and thus wasted (as it will not be reflected in the final rendering). Is there a possibility that the UV mapping could be also optimized to best utilize the pixels in the texture?\n2. In Eq(2), how is $\\Delta_j(\\mathbf{u})$ computed in a differentiable manner? It would be helpful to visualize $\\mathbf{O}$ (in supplementary maybe) and describe [7] in more detail for better understanding.\n3. How could the method be extended to large scenes? Will a coarse-to-fine optimization strategy help solve the local minima issue?\n\nLIMITATIONS:\nThe limitations are clearly stated in Sec4.3, and the author should include some exemplar failure cases (figures) in the supplementary material.", "TITLE": "Official Review", "RECOMMENDATION": 7, "REVIEWER_CONFIDENCE": 4, "SOUNDNESS_CORRECTNESS": 3, "DATE": "2023-07-01"}

{"IS_META_REVIEW": false, "comments": "SUMMARY:\nThis paper (DBW) presents a way to fit superquadric blocks to a scene, starting from multiple images with calibrated cameras. Unlike recent other methods, they don't start with 3D data in the form of point clouds or meshes. The compositional nature of the recovered scene is shown by manipulating the recovered shape on standard tools, simulating other physics-based effects, etc. Another feature is the recovery of textures along with the geometry which adds appearance to the composed scene. Results are shown on selected DTU scenes as well as on a few real-world images.\n\nSTRENGTHS:\nCompositionally recovering a scene as textured super quadrics is what the paper primarily achieves. This is being done directly using differentiable rendering without going through a 3D representation. The optimisation is achieved by different losses to ensure good fit to the observed shape. Recovering texture along with shape is also a plus.\n\nWEAKNESSES:\nI have some concerns about the presentation of the prior work leading upto this one. My understanding is thus:\n\n- Tulsiani et al have 2 papers in CVPR 2017. One is on Differentiable Ray Consistency (DRC) and the other on Learning Shape Abstractions (LSA) ([66] in the present manuscript)\n- The DRC's is the approach in my view that should motivate DBW presented in this paper. It presents an unsupervised (or self-supervised) way to fit geometry from images with camera matrices. The LSA paper fits cuboids to point clouds and is similar in that aspect of the work.\n- Later, Superquadrics were reintroduced in CVPR2019 [53] and fitted probabilistically in CVPR2022 [41], both from point cloud data.\n- I see the DBW paper as introducing Superquadrics to the DRC paper, taking ideas also from papers [41], [53], [66], and others.\n- I am surprised that the DRC paper is neither acknowledged nor referred to. Is there a reason for that?\n\nQUESTIONS:\nAblation results in Table 2 and in the supplementary are interesting. However, I see that all rows (except possibly the last row that removes L_perc) have results that are very close to one another. I realise only one loss term is removed in each of the table rows and I don't see a dominant factor in any. What happens if multiple losses are removed? I realise the combinatorics is high, but I feel we could have more insights from them\n\nSee my question on the DRC paper elsewhere.\n\nIt is true that given posed camera views (as necessary for this work), a 3D representation of the scene (as volumetric grids, point clouds, or meshes) is available effectively for free (using well-established methods). Why not use them also in the DWC framework? What happens if some 3D information is added?\n\nLIMITATIONS:\nThe primary complaint I have about this work concerns its utility to tasks.\n\n- Compositionality and interpretability are the major advantages of compositional segmentation of 3D scenes into parts. This holds when the geometry was fit into cuboids in the prior work.\n- Replacing cuboids with superquadrics does not increase its compositionality or interpretability, in my view. The recovery shape may appear to fit the scene better, but which downstream tasks are enabled by it?\n- It is good to see the scene being edited, collided/collapsed, water poured over it, etc. However, these are enabled at this level even by a cuboid decomposition.\n- I am glad to see texture being recovered simultaneously; However, the quality of texture combined with the \"boxiness\" of superquadrics make the new views generated incorrect. This can be seen in the supplementary videos. For example, th Scan24 of the \"house\" appears boxy even with texture applied to it.\n- NeRF and its descendants will provide much higher-quality view generation with appearance than this method can ever give as the geometry is approximated here. So, new view synthesis with the recovered texture is not really useful.\n- Simple geometric reasoning of the scene is possible with compositional segmentation done by DBW, but I don't see a whole lot added by this work over doing the same with simple blocks or a simple extension of the DRC work.\n\nI would like to know which use-cases are much better served by the DBW method presented here.", "TITLE": "Official Review", "RECOMMENDATION": 5, "REVIEWER_CONFIDENCE": 4, "SOUNDNESS_CORRECTNESS": 3, "DATE": "2023-07-02"}

{"IS_META_REVIEW": false, "comments": "SUMMARY:\nThis paper focuses on parsing a scene into mid-level 3D representations made of a small set of textured primitives. The main contributions are as follows:1) Unlike existing primitive decomposition methods which requires 3D data, this approach relies directly on images as input.\n2) The proposed method reconstructs and decomposes 3D models through differentiable rendering based optimization, by modeling primitives as superquadric meshes and optimizing their parameters from scratch with an image rendering loss. 3) A transparency is modeled for each primitive, which is critical for better optimization and also enables handling varying numbers of primitives.\n\nSTRENGTHS:\nThis paper propose a novel 3D reconstruction, segmentation and texture mapping approach by a differentiable rendering based optimization, which is heuristic for 3D content generation. The technical part sounds correct and reasonable, and the experimental results show better quality to other SOTA methods of primitive fitting.\n\nWEAKNESSES:\n1. The motivation is this paper should be made clear. Why using a differentiable rendering based optimization? What is its advantages to other SOTA MVS reconstruction and texture mapping works.\n2. Although lacking comparisons to SOTA MVS reconstruction and texturing works, the reconstruction quality of this approach seems not so good as these SOTA methods.\n3. The proposed method is more similar to some evolution-based 3D reconstruction methods, like Hiep, V.H.; Keriven, R.; Labatut, P.; Pons, J.P. Towards high-resolution large-scale multi-view stereo. In CVPR 2009, pp. 1430–1437. Usually these kinds of methods consume much time for iterative evolution process. The paper lacks time statistics.\n4. As claimed in the paper, the proposed method works better for water-tight objects and is not so suitable for scenes, which will limit its applications.\n\nQUESTIONS:\n1. Can more explanations be added in introduction for the motivation why we should use a differentiable rendering based optimization?\n2. Can comparisons with some SOTA MVS reconstruction and texturing works be added?\n3. Since this method is similar to a vectorized modeling work, can comparisons with some vectorization works like \"PolyFit\" be added?\n4. Since this method is more similar to an evolution-based 3D reconstruction method, can comparisons with some evolution-based 3D reconstruction works like \"Hiep, V.H.; Keriven, R.; Labatut, P.; Pons, J.P. Towards high-resolution large-scale multi-view stereo. In CVPR 2009, pp. 1430–1437\" be added?\n5. The time statistics of the experimental cases should be reported.\n\nLIMITATIONS:\nAs claimed in the paper, the proposed method works better for water-tight objects and is not so suitable for scenes, which will limit its applications. Can you explain more clearly the reason?", "TITLE": "Official Review", "RECOMMENDATION": 5, "REVIEWER_CONFIDENCE": 4, "SOUNDNESS_CORRECTNESS": 3, "DATE": "2023-07-06"}