wikillm

Concept · 8 papers · updated 2026-11-01

Neural implicit surfaces

Neural implicit surfaces store shapes as learned scalar fields and read the surface from a level set. NeuS fits a signed distance, and UNISURF fits occupancy. PhySG adds material and light. CLIP-Forge decodes occupancy from text, iSDF fits online, One-2-3-45 predicts one from one photo, and NeuralRecon, a discrete exception, outputs a voxel TSDF per fragment.

3d-reconstructionsdfvolume-renderingmulti-viewoccupancytext-to-shapeonline-mappingroboticssingle-view-3dfeed-forwardinverse-renderingrelightingmonocular-videotsdfunsigned-distancehuman-object-interactionbody-model-fitting

Markdown23 min read

AI-compiled overview, updated 2026-11-01, not yet reviewed by a human. Every claim cites its source; check it when a detail matters.

Overview

A neural implicit surface stores the shape as a network f that maps a 3D point to a scalar value. In NeuS, f is the signed distance from the surface: it is positive outside and negative inside, and the surface is the zero level set 2106.10689 §3.1 2106.10689 eq. 1. In multi-view methods such as NeuS, training fits f and a colour network to posed photographs, and the mesh is read off the level set afterwards. UNISURF predicts occupancy instead, and its surface is the 0.5 level set 2104.10078 §3 2104.10078 eq. 1. CLIP-Forge also predicts occupancy, and its surface is a threshold on that value 2110.02624 §3.1 2110.02624 §3.3. iSDF also fits a signed distance, but to posed depth frames that arrive as a stream during robot exploration 2204.02296 §4. One-2-3-45 also predicts an SDF and renders it with NeuS-style weights. It needs no per-shape fitting, because one feed-forward network builds the SDF from views that an image model generates 2306.16928 §1 2306.16928 §3.3. PhySG also fits an SDF, from posed photos of one glossy object under static light. It sphere-traces that SDF to the surface and adds a material and an environment light 2104.00674 §3. BEHAVE is the other kind of use. It predicts unsigned distances from a human and from a known object to query points, and it fits a body model and an object template to those values rather than extracting a level set 2204.06950 §4.1 2204.06950 §4.2.

What supervises f differs between the variants. Surface renderers intersect one ray with the surface per pixel. They need object masks and can get stuck in local minima on occluded or thin objects 2106.10689 §1. PhySG is a surface renderer, and its loss separates object pixels from background pixels 2104.00674 §3. Volume renderers integrate along the whole ray, which trains more robustly. Their density has no surface constraint, so meshes taken from it are noisy 2106.10689 §1. UNISURF integrates only over a window around the first surface crossing, and the window narrows during training 2104.10078 §4.3. iSDF renders nothing. Each sampled point is supervised by a bound: the signed distance to the nearest measured surface point in the batch 2204.02296 §4.3 2204.02296 eq. 4.

The requirement all volume-rendering variants share is about the rendering weight w(t) along a ray. It should peak at the surface (unbiased), and when two surfaces lie on one ray, the nearer one should hide the farther one (occlusion-aware) 2106.10689 §3.1. The variants below differ in which of the two they satisfy.

NeuralRecon is the exception in this set. It stores its geometry as a sparse voxel grid of truncated distances rather than as a function that can be evaluated at any point, and it is supervised on those voxels directly, with no rendering step 2104.00681 §3.2 2104.00681 §3.3.

Variants

NeuS: an opaque density from a logistic CDF

Card: NeuS (Wang et al., arXiv:2106.10689).

  • Density. The opacity between two samples comes from the logistic CDF of the SDF, so each segment's alpha is the drop in that CDF divided by the CDF at the near end, clamped at zero 2106.10689 eq. 13.
  • Weight. The weight is the usual transmittance times alpha. For a locally flat surface it peaks at the surface, and it stays occlusion-aware 2106.10689 §3.1 2106.10689 app. B.
  • Sharpness. One trainable scalar s sets how thick the layer around the surface is. Its inverse is expected to approach zero as training converges 2106.10689 §3.1. On curved surfaces the peak offset is second order in 1/s, so the bias shrinks as s grows 2106.10689 app. C.
  • Loss. A colour term, an Eikonal term that keeps f a true distance field, and an optional mask term 2106.10689 §3.2.
  • Mesh. Extracted from the zero level set of f 2106.10689 eq. 1.

Naive SDF-to-density conversion

The obvious way to reuse volume rendering takes density as the logistic density of the SDF, \sigma = \phi_s(f), and the standard weight T\sigma. This is occlusion-aware but biased: the weight is already falling at the surface, so its peak lies in front of it 2106.10689 §3.1 2106.10689 app. B. On one DTU scene, the paper's ablation gives a Chamfer distance of 1.49, against 0.59 for NeuS 2106.10689 §4.3.

Straightforward normalised S-density

Normalising the logistic density along the ray gives a weight that is unbiased but not occlusion-aware. Two surfaces on one ray then blend about equally 2106.10689 §3.1. In the same ablation it gives a Chamfer distance of 4.45 and SDF error of 44.34, the worst of the three conversions 2106.10689 §4.3.

UNISURF: occupancy with a shrinking sample window

Card: UNISURF (Oechsle et al., arXiv:2104.10078).

This variant models the surface as an occupancy field o_\theta rather than an SDF. One rendering formula serves both surface and volume rendering, depending on how the samples are placed 2104.10078 §4.1.

  • Weight. The NeRF alpha blending is kept, with occupancy in place of alpha. Each sample's weight is its occupancy times the visibility in front of it, so occlusion is handled by construction 2104.10078 §4.1 2104.10078 eq. 7.
  • Sample window. Samples are stratified in a window around the first surface crossing. The half-width decays exponentially during training, from 1.0 to 0.05 in the paper's DTU setting 2104.10078 §4.3 2104.10078 eq. 13 2104.10078 eq. 14 2104.10078 §4.4.
  • Limit. The authors argue that volume rendering approaches surface rendering as the window shrinks and the sample count grows. The proof is in a supplement that is not in our source 2104.10078 §4.1. This is a limit argument, not the first-order weight-peak analysis that NeuS gives 2106.10689 §3.1.
  • Loss. An L1 colour loss over sampled rays, plus a term that ties the normal at a surface point to the normal at a nearby random point. The paper's loss has no Eikonal term 2104.10078 eq. 9 2104.10078 eq. 10 2104.10078 eq. 11.
  • Results. Author-reported mean DTU Chamfer 1.02 without masks, against 0.90 for IDR with masks 2104.10078 tab. 1. The evaluation cleans the meshes with the object masks, so "without masks" describes training only 2104.10078 §5.2.
  • Ablation. On the Buddha scene, surface rendering alone does not converge, and a uniform volume window gives a worse Chamfer than the shrinking window 2104.10078 fig. 7 2104.10078 §5.5.

PhySG: a surface renderer with spherical-Gaussian shading

Card: PhySG (Zhang et al., arXiv:2104.00674).

This variant is for relighting and material editing. It takes posed photos of one glossy object under one static, distant light, plus object masks 2104.00674 §3. It fits an SDF, a spatially varying albedo, one monochrome specular lobe and a 128-lobe environment map 2104.00674 §3.

  • Rendering. Each ray is sphere-traced to its surface point, with no gradient through the marching. Gradients reach the surface point through implicit differentiation 2104.00674 §3 "Geometry modeling".
  • Normal. The normal is the gradient of the SDF at the surface point 2104.00674 §3.
  • Shading. The light is a spherical-Gaussian mixture, and the rendering equation is evaluated in closed form. No Monte Carlo sampling is used for the light integral 2104.00674 §3 "Appearance modeling".
  • Loss. A colour term, a term that keeps the SDF non-negative on rays that miss the object, an Eikonal term, and a smoothness term 2104.00674 §3 "Loss functions".
  • Assumptions. The light is distant, each object has one shared monochrome specular term, and the rendering omits self-occlusion and indirect light 2104.00674 §3.
  • Matte surfaces. Under Lambertian materials, light and albedo are ambiguous, and the paper says light cannot be recovered without extra priors 2104.00674 §4 "Robustness to material roughness".
  • Results. On synthetic data, novel-view PSNR is 35.93 and relighting PSNR is 33.25 2104.00674 tab. 1. On the synthetic geometry table, PhySG's normal error is 2.528 degrees and IDR's is 2.207, with Chamfer L1 of 0.00142 against 0.00136 2104.00674 tab. 2. On real data the paper's table shows IDR slightly ahead on the same metrics, which the authors attribute to bias in the physics-based appearance model 2104.00674 tab. 3.
  • Compute. The paper trains on one 12 GB GPU for 250k iterations 2104.00674 §3 "Loss functions".

CLIP-Forge: text-to-shape with a conditional flow prior

Card: CLIP-Forge (Sanghi et al., arXiv:2110.02624).

This variant is generative. It learns a prior over shapes rather than fitting one object from photos, and its surface comes from a threshold on occupancy.

  • Shape code. A voxel encoder maps a 32^3 grid to a 128-d embedding, and an implicit decoder predicts occupancy at query points, trained with mean squared error 2110.02624 §3.1 2110.02624 app. A.
  • Prior. A conditional RealNVP flow maps shape embeddings to a unit Gaussian. Its condition is the CLIP image feature of a rendered view 2110.02624 §3.2.
  • Text at test time. The CLIP text feature replaces the image feature as the condition, and the flow is inverted on Gaussian noise 2110.02624 §3.3. The paper does not measure how closely the two feature types match 2110.02624 §3.3.
  • Several shapes. One prompt gives several shapes by sampling the flow again. Nothing is optimised per request 2110.02624 §1 §3.3.
  • Scope. Trained on ShapeNet's 13 classes and generalises poorly beyond them 2110.02624 app. F 2110.02624 §6. It produces geometry only 2110.02624 app. H.

iSDF: online SDF from depth frames

Card: iSDF (Ortiz et al., arXiv:2204.02296).

This variant is online and needs no photos or ground-truth SDF. A randomly initialised MLP is trained as depth frames arrive, with no pretraining 2204.02296 §1 2204.02296 §4.

  • Sampling. Each iteration takes 200 random pixels from each of five frames: the two latest and three keyframes. Along each ray it takes 20 stratified depths, 8 Gaussian depths around the measured depth, and the measured depth itself 2204.02296 §4.2.
  • Bound. Each sample is bounded by the signed distance to the nearest measured surface point in the batch. The paper says this bound is used in all its experiments 2204.02296 §4.3 2204.02296 eq. 4.
  • Loss. Samples in free space get a one-sided loss that is zero between 0 and the bound. Samples near the measured surface get an L1 term to the bound. A cosine term supervises the gradient, and an Eikonal term applies beyond 10 cm from the surface 2204.02296 eq. 6 2204.02296 eq. 8 2204.02296 eq. 10.
  • Truncation. The paper does not state the truncation distance t, so an implementer must pick one 2204.02296 §4.4.
  • Speed. The authors report about 33 ms per training iteration on an i7-8700K with an RTX 2080. The split is about 2 ms sampling, 2 ms bounds, 10 ms forward and 19 ms backward 2204.02296 §5.2 2204.02296 §6.3. Frame rate and tracking are not evaluated.
  • Memory. About 1 MB for the network plus around 20 keyframes. The authors' comparison gives 5 MB for Voxblox and 30 MB for KinectFusion+ 2204.02296 §6.3.
  • Accuracy. Author-reported: SDF error below 6 cm at the end of each of the six main sequences, and lower error than Voxblox and KinectFusion+. The baseline values appear only in a figure 2204.02296 §6.2 2204.02296 fig. 8.
  • Assumptions. Poses come from an external tracker, so this is not SLAM 2204.02296 §4. Evaluation uses simulated ReplicaCAD and handheld ScanNet sequences 2204.02296 §5.1.

One-2-3-45: feed-forward SDF from generated views

Card: One-2-3-45 (Liu et al., arXiv:2306.16928).

This variant takes one photo and fits nothing per shape. A frozen image model imagines the object from other angles, and one network builds the SDF from those views 2306.16928 §1 2306.16928 §3.

  • Source views. The frozen Zero123 model renders 32 views: 8 anchor views, each with 4 nearby views 10 degrees apart 2306.16928 §4.1 2306.16928 §3.3. Zero123 has no card here, so only the paper's description of it is used.
  • Elevation. The input's camera elevation is unknown, so it is estimated from the four nearby views. Features are matched with LoFTR, and the elevation is chosen by reprojection error over candidate angles 2306.16928 §3.4 2306.16928 app. elevation. On 1,700 random renders the median error is 5.4 degrees and the mean 9.7 degrees 2306.16928 §4.3 2306.16928 fig. 7.
  • Network. A cost volume over the 32 posed views, built from the variance of projected features, feeds a sparse 3D CNN. An MLP predicts the SDF, and a second predicts colour blending weights. The SDF is rendered with NeuS-style weights, and the mesh is taken from it by marching cubes 2306.16928 §3.3.
  • Training. Shapes come from the LVIS subset of Objaverse. One ground-truth view is the target, and the 32 predicted views are the input 2306.16928 §3.3 2306.16928 §4.1. The paper calls mixing ground-truth and predicted views in training essential 2306.16928 §4.3.
  • Why not a per-scene fit. Given the same 32 views with ground-truth poses, TensoRF and NeuS fitted per scene produce distortions and floaters 2306.16928 §3.2 2306.16928 fig. 3.
  • Speed. Author-reported about 45 s per shape on one A100. The reconstruction module takes about 5 s of that 2306.16928 §4.2.
  • Accuracy. Author-reported average F-score 83.5 at a 0.05 threshold, and average CLIP similarity 78.1. Both are on 20 Objaverse and 20 Google Scanned Objects shapes. The F-score is the best in the table, and CLIP similarity is second to Shap-E 2306.16928 tab. 1 2306.16928 §4.2.
  • Ablations. Shown only as figures. Dropping the depth loss misses fine geometry, and training on ground-truth views alone leaves regions missing at inference 2306.16928 §4.3 2306.16928 fig. 8.
  • Limits. Errors of ±30 degrees in the input elevation distort the mesh 2306.16928 §4.3 2306.16928 fig. 10. Most failures come from inconsistent views from the image model 2306.16928 app. failure 2306.16928 fig. 15.
  • Text input. A text-to-image model can supply the photo. The paper gives only figures for this route 2306.16928 §4.4 2306.16928 fig. 11.

NeuralRecon: a voxel TSDF per fragment

Card: NeuralRecon (Sun et al., arXiv:2104.00681).

This variant is discrete. It predicts a sparse grid of truncated signed-distance values for a fragment of nine key frames in one network pass. The input is monocular video, and the poses come from an external SLAM system 2104.00681 §3 2104.00681 §3.1.

  • Volume. Image features from each key frame are back-projected into the fragment's bounding volume. Each voxel gets the average of the views that see it, weighted by visibility 2104.00681 §3.2.
  • Decoding. Three coarse-to-fine levels use sparse 3D convolutions. At each level, two heads predict an SDF value and an occupancy score. Voxels whose occupancy is below 0.5 are removed, and the rest are upsampled 2× before the next level 2104.00681 §3.2 2104.00681 §3.3.
  • Fusion. A ConvGRU carries a hidden state across fragments. It takes the place of the running-average TSDF fusion of KinectFusion 2104.00681 §3.2 2104.00681 §4.3.
  • Surface. The finest level's values are written into a global volume, and Marching Cubes runs on that volume at each time step. No rendering step is involved 2104.00681 §3.2.
  • Loss. Occupancy is trained with binary cross-entropy. SDF is trained with an L1 loss on a log-transformed value. Both losses apply at every level 2104.00681 §3.2.
  • Truncation and voxels. The truncation is 12 cm, and the finest voxel is 4 cm 2104.00681 §3.3. The coarse voxel sizes are not stated in the paper.
  • Speed and accuracy. Author-reported 30 ms per key frame on an RTX 2080 Ti 2104.00681 §4.2 2104.00681 tab. 4. On the ScanNet Atlas split, the single-layer F-score is 0.562, against 0.558 for COLMAP, whose time column reads 2,076 ms 2104.00681 tab. 1.
  • Ablation. With five key frames over the occupied-voxel area, GRU fusion gives an F-score of 0.488, against 0.462 for linear running-average fusion. Going from five to nine key frames over the fragment bounding volume raises the GRU result from 0.494 to 0.516 2104.00681 tab. 5.

BEHAVE: unsigned distances as fitting targets

Card: BEHAVE (Bhatnagar et al., arXiv:2204.06950).

This variant tracks a person and a known rigid object in each frame, from four calibrated RGBD cameras. It does not render, and it does not read a surface from a level set. Its implicit fields are unsigned distances, and they feed a fit 2204.06950 §3 2204.06950 §4.

  • Fields. A 3D CNN, similar to IF-Net, encodes the voxelised human and object points. At each query point, interpolated features feed three heads: unsigned distances to the human and to the object, an SMPL correspondence, and nine orientation values 2204.06950 §4.1 2204.06950 §4.2 2204.06950 §4.4.
  • Object fit. The object energy adds a one-sided point-to-mesh term to the sum of predicted distances at all object mesh vertices. Occluded vertices therefore still target zero distance, and the network supplies the missing surface 2204.06950 eq. 4 2204.06950 §4.2.
  • Human fit. The SMPL term asks that the distance from each query point to its predicted SMPL correspondence, after posing, matches the predicted unsigned distance 2204.06950 eq. 3 2204.06950 §4.1. Off-surface correspondences are posed with LoopReg's diffused SMPL formulation, which the paper does not describe 2204.06950 §4.1.
  • Orientation. The object rotation is initialised from the average of the orientation outputs of query points within 2 cm of the object, turned into a rotation by least squares and an SVD projection 2204.06950 §4.2.
  • Contacts. Query points are marked as contact when both predicted distances fall below a threshold. The paper does not give that threshold, and the marked object vertices are pulled onto their predicted SMPL correspondences 2204.06950 §4.3 2204.06950 eq. 5.
  • Training. All heads use an L2 loss. The targets come from the dataset's SMPL and object fits, and the orientation loss only applies to query points within the contact threshold 2204.06950 §4.4.
  • Cost. The paper queries 30k points per frame, against about 2M for the 128³ grid of IP-Net, and it avoids Marching Cubes. No runtime is reported, so the cost advantage is the authors' claim 2204.06950 §5.3.
  • Results. Author-reported on the BEHAVE recordings: SMPL vertex error 4.99 cm and object vertex error 21.20 cm. The retrained IP-Net and LoopReg reach 6.61 cm and 9.12 cm on the SMPL term, and PHOSA, a single-image method, reaches 13.73 cm and 34.73 cm 2204.06950 tab. 2. Removing the orientation prediction raises object error to 24.02 cm 2204.06950 tab. 3.
  • Scope. The object needs a rigid template mesh, and only its rotation and translation are estimated 2204.06950 §4. The formulation is per frame, with no motion prior or temporal smoothing 2204.06950 §4.

Surface renderers (named, not covered)

  • Surface rendering (IDR and DVR, as the paper names them) needs foreground masks and is the family NeuS is compared against 2106.10689 §1. No card for these papers is in this repository, so nothing from them is used here.

When to use which

SituationUseWhy
Mesh from posed photos, with object masksNeuS with the mask termMean DTU Chamfer 0.77, the lowest of the methods compared in that setting 2106.10689 tab. 1
Mesh from posed photos, no masksNeuS without masksMean Chamfer 0.84, against 1.02 for UNISURF 2106.10689 tab. 1. The paper uses a background model for points outside the unit sphere 2106.10689 app. D.1
Mesh from posed photos, no masks, and an occupancy field is the targetUNISURFMean Chamfer 1.02 without masks, close to IDR's 0.90 with masks 2104.10078 tab. 1. The surface is the 0.5 occupancy level set 2104.10078 §3
Only novel views are neededNot NeuSOn held-out DTU views NeuS reaches a mean PSNR of 28.55 against 29.31 for NeRF 2106.10689 tab. 4
Faster renderingSphere tracing, if a small quality loss is acceptableAbout 320 s down to about 60 s per 1600×1200 image. Mean PSNR 31.97 down to 30.85 2106.10689 app. E 2106.10689 tab. 3
Limited training timeBudget for a long run300k iterations of 512 rays, about 14 h with masks and 16 h without, on one RTX 2080Ti 2106.10689 §4.1 2106.10689 app. D.1
Thin parts or abrupt depth changesNeuS over surface renderingThe paper reports this qualitatively, on its own thin-object captures and BlendedMVS scenes, with no metric 2106.10689 §4.2 2106.10689 fig. 5
Textureless surfacesExpect failuresListed as a limitation and shown as a failure case 2106.10689 §5 2106.10689 fig. 16
Scene larger than a unit sphereNormalise the cameras firstThe method assumes the region of interest lies in a unit sphere 2106.10689 §4.1
Online map from a depth camera while the robot movesiSDFBuilt for a stream of posed depth frames. About 33 ms per training iteration on the authors' hardware 2204.02296 §6.3
Collision costs and gradients for trajectory planningiSDFAuthor-reported lowest collision-cost error on the six main sequences, shown in a figure 2204.02296 §6.2 2204.02296 fig. 8
Parts of a room the camera has not seeniSDF, qualitativelyThe paper reports that iSDF fills unobserved regions and the back of objects, without a numerical measure 2204.02296 §6.1 2204.02296 fig. 5
Real-time room mesh from monocular video, poses from a SLAM system, voxel output acceptableNeuralReconPredicts a fragment in one pass, about 30 ms per key frame on an RTX 2080 Ti 2104.00681 §4.2 2104.00681 tab. 4. Single-layer F-score 0.562 on ScanNet 2104.00681 tab. 1
Continuous field to query at arbitrary pointsNot NeuralReconIts output is a voxel grid, with the finest voxel at 4 cm 2104.00681 §3.3
Posed RGB photos and no depth sensorNeuSiSDF is trained on posed depth images 2204.02296 §4. NeuS is trained on posed photos 2106.10689 §4.1
Poses unknown or unreliableNeither, as publishedNeuS assumes posed images 2106.10689 §4.1. iSDF assumes an external tracker 2204.02296 §4
Shape from a text prompt, with no text–shape pairsCLIP-Forge-style conditional flowTrained on shapes and rendered views only. Author-reported 83.33% category agreement on 224 prompts over ShapeNet's 13 classes 2110.02624 tab. 1
Text prompt for a category outside ShapeNet's 13Not this variantThe model generalises poorly beyond its training categories 2110.02624 app. F
Several shapes for one promptResample the flowEach sample is one flow inversion, with no per-prompt optimisation 2110.02624 §1 §3.3
Mesh of a real object from posed photosNeuS, not CLIP-ForgeCLIP-Forge does not reconstruct from photos. Its inputs are rendered views of training shapes 2110.02624 §3.2
One photo, a mesh in about a minute, no per-shape fittingOne-2-3-45Author-reported about 45 s on one A100, against about 15 min for Zero123+SD and about 90 min for RealFusion in its table 2306.16928 tab. 1
One photo with an unknown camera elevationOne-2-3-45, with a checkIt estimates the elevation itself, but errors of ±30 degrees distort the mesh 2306.16928 §4.3 2306.16928 fig. 10
Several posed photos of one objectNeuSOne-2-3-45 is built for a single input. NeuS is trained on posed photos 2306.16928 §3.2 2106.10689 §4.1
Relighting or changing the material of one object, under one static light, with masksPhySGIt is the only variant here that outputs albedo, a specular lobe and an environment light for editing 2104.00674 §3. Its relighting PSNR of 33.25 is on synthetic data 2104.00674 tab. 1
Matte (Lambertian) object, and relighting is neededNot PhySGLight and albedo are ambiguous under Lambertian materials 2104.00674 §4 "Robustness to material roughness"
Self-shadowing or indirect light matters for the editNot PhySG as publishedThe model omits self-occlusion and indirect light 2104.00674 §3
Person and a known rigid object tracked per frame, with contacts, from calibrated multi-view RGBDBEHAVEAuthor-reported SMPL error 4.99 cm and object error 21.20 cm on its own recordings 2204.06950 tab. 2
Object with no template mesh, or a single RGB imageNot BEHAVEIt needs a rigid template and four RGBD cameras 2204.06950 §3 2204.06950 §4. PHOSA, the single-image baseline, relies on hand-made contacts 2204.06950 §5.1
Temporal smoothing or a motion prior across framesNot BEHAVE as publishedThe formulation is per frame 2204.06950 §4

Implementation sketch

Per-ray weights from SDF samples, as in NeuS. Variants differ in the two marked lines. UNISURF uses the occupancy value directly as alpha, and draws its samples from a window around the first surface crossing 2104.10078 §4.1 2104.10078 §4.3. CLIP-Forge does not render rays: a flow inverted under the text condition gives a shape embedding, and the decoder is thresholded on a grid 2110.02624 §3.3. iSDF does not render rays either. It bounds each sampled point by the nearest measured surface point in the batch and minimises a per-point loss 2204.02296 §4.3 2204.02296 §4.4. One-2-3-45 uses NeuS-style weights as well, but its SDF comes from a feed-forward network over generated views 2306.16928 §3.3. PhySG finds one surface point per pixel by sphere tracing, and shades it with a closed-form spherical-Gaussian integral rather than by sampling the ray 2104.00674 §3. NeuralRecon does none of these steps. It back-projects image features into a voxel grid, decodes that grid coarse-to-fine, and fuses fragments with a GRU, with no ray sampling 2104.00681 §3.2. BEHAVE does not sample rays either. It evaluates unsigned distances at query points and fits a body model and a template to them 2204.06950 §4.1 2204.06950 §4.2.

Pseudocode
# NeuS-style opaque weights for one ray  [arxiv:2106.10689 §3.1] [eq. 13]
def opaque_weights(sdf, s):
    # Logistic CDF of s * SDF at the section points, in (0, 1)
    cdf = sigmoid(s * sdf)
    # Alpha per segment: drop in CDF, clamped at zero  [eq. 13]
    # Naive variant instead uses 1 - exp(-sigma * delta), sigma = phi_s(f)
    alpha = clamp((cdf[:-1] - cdf[1:]) / cdf[:-1], min=0)
    # Transmittance in front of each segment, starting at 1  [eq. 11]
    trans = cumprod(1 - alpha, exclusive=True)
    return trans * alpha
    # Colours are taken at segment mid-points, not section points  [app. D.1]
    # Straightforward variant normalises phi_s over the ray instead  [eq. 4]

Colour is then the weighted sum of per-point colours. The loss is an L1 colour term, plus an Eikonal term on \|\nabla f\| and an optional mask term 2106.10689 §3.2. The paper trains with 64 uniform samples and then four rounds of 16 importance samples per ray 2106.10689 app. D.1.

Contradictions

The papers report different tasks and metrics. NeuS and UNISURF both report Chamfer distance on the 15 DTU scans 2106.10689 tab. 1 2104.10078 tab. 1. NeuS's table gives UNISURF's no-mask numbers, and they match UNISURF's own table on every scan. CLIP-Forge reports FID, MMD and accuracy on text-to-shape generation 2110.02624 tab. 1. iSDF reports SDF error, collision-cost error and gradient cosine distance on simulated and handheld room-scale sequences 2204.02296 §5.1 2204.02296 §5.3. One-2-3-45 reports F-score and CLIP similarity for single-photo mesh generation, on 40 Objaverse and Google Scanned Objects shapes 2306.16928 tab. 1. PhySG reports PSNR and normal error on synthetic inverse rendering and relighting 2104.00674 tab. 1. NeuralRecon reports F-score and depth metrics on ScanNet and 7-Scenes, from monocular video 2104.00681 tab. 1 2104.00681 tab. 3. BEHAVE reports vertex errors on human-object tracking, and its PHOSA numbers are after Procrustes alignment, a step the paper names for depth ambiguity 2204.06950 §5.1. Numbers across these tasks are not comparable, and no disagreement between the papers' results is known.

Within the NeuS paper and its released code, these differ, and the NeuS card's Paper vs code section lists them.

  • Importance-sampling sharpness. The paper uses a fixed s = 32 \cdot 2^i in round i 2106.10689 app. D.1. The code uses 64 \cdot 2^i.
  • Where the SDF is evaluated for alpha. The paper uses SDF values at both ends of each segment 2106.10689 app. D.1. The code evaluates the SDF once at the mid-point and extrapolates to the ends.
  • Mask-free slope annealing. The released code blends the alpha slope over the first 50k iterations of mask-free training. The paper does not describe this.

CLIP-Forge has its own gaps, and the sources are the paper and the CLIP-Forge card's Paper vs code section.

  • Seed reporting. The ablations average three seeds, but the main result reports the best seed 2110.02624 app. A. The RealNVP-D row gives FID 2591.87 2110.02624 tab. 4, and the main setting gives 2425.25 2110.02624 tab. 1.
  • Stage 2 optimiser. The paper gives a learning rate of 1e-4 and 100 epochs for both stages 2110.02624 §4. The released code uses a different flow learning rate and a longer default run.

PhySG has its own gaps, and the sources are the paper and the PhySG card's Paper vs code section.

  • Synthetic metric alignment. The synthetic inverse-rendering table aligns each prediction to ground truth with per-channel median scale factors before the metrics are computed 2104.00674 §4 "Synthetic data". That alignment is not in the released repository, so the numbers are hard to reproduce exactly.
  • Ray start and eikonal samples. The paper starts sphere tracing at a bounding box and does not say whether the box is a cube or a sphere 2104.00674 §3 "Geometry modeling". The released code uses a sphere for ray start and a cube for the Eikonal samples, and adds the ray-hit points to the Eikonal samples 2104.00674 §3 "Loss functions".

iSDF has its own gaps, and the sources are the paper and the iSDF card's Paper vs code section.

  • Bound method. The paper says the batch bound is used in all experiments 2204.02296 §4.3. The card records that the released configs use the ray bound instead.
  • Optimiser. The paper gives Adam with weight decay 2204.02296 §4.4. The released code uses AdamW, which applies the decay differently.

NeuralRecon has its own gaps, and the sources are the paper and the NeuralRecon card's Paper vs code section.

  • Key-frame rule. The paper requires both a translation and a rotation threshold to be exceeded 2104.00681 §3.1. The released code accepts either one.
  • Feature volume. The released code adds one channel, the normalised mean depth of each voxel over its views, to the averaged image features. The paper does not mention it.
  • Loss weights. The released training config sets level weights and an occupancy positive weight of 1.5. The paper states neither value.

One-2-3-45 has its own gaps, and the sources are the paper and the One-2-3-45 card's Paper vs code section.

  • Depth loss weight. The paper sets the depth weight to 1 and calls depth supervision essential 2306.16928 app. training 2306.16928 §4.3. The card records that the released training config sets it to 0.0. The paper does not say which setting produced its model.
  • Training length. The paper states 300k iterations [arxiv:2306.16928 app. training]. The card records a shorter run in the released config.

BEHAVE has its own gaps, and the sources are the paper and the BEHAVE card's Pitfalls section. The total energy has no weights between its terms 2204.06950 eq. 1, and the optimiser and its stopping rule are not stated 2204.06950 §4. The contact threshold for network-predicted contacts is not given 2204.06950 §4.3. The paper's pseudo-ground-truth comes from fits and crowd-marked keypoints 2204.06950 §3, so its errors are relative to those fits.

Baseline numbers in the DTU table are partly copied from other papers and not rerun 2106.10689 §4.2 2106.10689 tab. 1. Compare them with that in mind.

Papers

Source and license

Compiled from the papers listed on this page, all published under CC BY, CC BY-SA or CC0, with citations. See each paper's page for its authors and license.