## 5 Experimental Analysis
### Experiments on Learned SDBs  
There has been considerable interest in learning-based methods for signed distance bound modelling. Furthermore, this is lately especially true in the area of deep learning [3; 4; 5; 7; 8; 24; 25; 26; 27] (see section \"Implicit representation\" at [[https://github.com/subeeshvasu/Awsome_Deep_Geometry_Learning](https://github.com/subeeshvasu/Awsome_Deep_Geometry_Learning)]([https://github.com/subeeshvasu/Awsome_Deep_Geometry_Learning](https://github.com/subeeshvasu/Awsome_Deep_Geometry_Learning)) (accessed on 26 February 2024) for more (and updated) examples). Figure 3: The four scenes used in our experiments from Section 5.1. Let us consider our analysis to a set of methods that use a neural network (NN) to approximate an SDB of a shape:  
\[\text{NN}_{\theta}(x,y,z)\approx d_{S}(x,y,z), \tag{13}\]  
where \((x,y,z)\in\mathbb{R}^{3}\) is a point in 3D space and \(d_{S}(x,y,z)\) denotes its Euclidean distance to the surface of the shape \(S\). The parameters of the \(NN\) are denoted with \(\theta\). These parameters have to be tuned to make the approximation as best as possible. Our hypothesis is that gridhopping is a faster algorithm for transforming such neural SDBs to triangle meshes than the basic enumeration technique is. This should especially be true for higher grid resolutions. To experimentally test our claim, we take six shapes from the Thingi10K dataset [28] (see Figure 5a). These shapes are represented as triangle meshes, and we need their SDBs. We first sample a dataset of point-distance pairs around each shape (sampling algorithm by [PERSON] et al. [5], implementation: [[https://github.com/marian42/mesh_to_sdf](https://github.com/marian42/mesh_to_sdf)]([https://github.com/marian42/mesh_to_sdf](https://github.com/marian42/mesh_to_sdf)) (accessed on 26 February 2024)):  
\[\{((x_{i},y_{i},z_{i}),d_{i})\}_{i=1}^{S} \tag{14}\]  
An example can be seen in Figure 5b. Next, we use the Adam stochastic gradient descent technique to tune \(\theta\) (from Equation (13)) so that \(\text{NN}_{\theta}(x_{i},y_{i},z_{i})\approx d_{i}\). The NN architecture is very simple: eight layers, each with an embedding dimension equal to \(64\), and the ReLU is set as the activation function. To speed up training, we also use batch normalization in all layers except the last one. This results in about \(30,000\) network weights (120 kB of memory). By modern standards, this is a tiny network, but it is capable of accurately representing the shapes used in our experiments. Note that our methodology trivially extends to other NN approaches for SDB modelling. We decided to go with this one to keep things as simple as possible. Figure 4: Elapsed times plotted against grid resolution for the four different scenes from Figure 3. The legend for all graphs is plotted in the top left one. Note that all axes are logarithmic. Recall that if certain criteria are not met (e.g., Lipschitz continuity), sphere tracing might \"miss\" parts of the surface of the shape, and we obtain an incomplete mesh with grid-hopping [1]. In practice, this means that the NN overestimates the surface distance for some points (e.g., due to the imperfection of the learning algorithm). To circumvent these problems, we shrink the signed distance approximation by factor \(\lambda\): \(\text{SDB}(x,y,z)=\frac{\text{NN}_{\theta}(x,y,z)}{\lambda}\). This procedure slows down gridhopping and has no effects on the speed of the complete enumeration algorithm. We empirically found that \(\lambda=1.5\) works well. This (or a smaller) value results in perfect mesh reconstructions for all shapes, i.e., all methods produce identical meshes. We compare the times needed to polygonize the prepared SDBs for the complete enumeration algorithm and gridhopping. The grid resolution \(N\) varies from 64 to 512. First, all computations are performed on an Intel(R) Core(TM) i7-9750H CPU @ 2.60 GHz. Batching the NN evaluations in chunks of size \(\approx 10,000\) leads to significant speed improvements for both methods.