SUP-NeRF: A Streamlined Unification of Pose Estimation and NeRF for Monocular 3D Object Reconstruction
SUP-NeRF predicts and fixes car dimensions, applies three learned pose-refinement steps to projected-box states, then uses object-centric NeRF to constrain monocular scale–depth ambiguity. Errors are 7.01°/0.68m on nuScenes and 6.79°/1.06m for zero-shot KITTI. Fifty NeRF optimization steps take 1.493s without improving pose, and Waymo rotation accuracy also trails FCOS3D.
For category-specific cars in driving images, shared ResNet50 features encode crops / occlusion masks into shape, texture, pose, and dimensions. Eight projected box corners form a camera-parameter-independent visual pose state for three iterative updates. Fixed dimensions then constrain object-centric NeRF, preventing shape scale and object depth from compensating during optimization.
3. Guide to figures and tables
Original Figure 3: shared early features split into pose / shape / texture codes. Three feed-forward pose updates precede object-frame CodeNeRF RGB / occupancy rendering. Source: published ECVA paper. Image copyright belongs to the authors and Springer Nature; reproduced here for paper analysis.Original Tables 2–4: nuScenes-trained models transfer directly to KITTI / Waymo. SUP-NeRF improves KITTI rotation / translation over AutoRF+FCOS3D; Waymo translation improves, but rotation error 10.01° exceeds FCOS3D's 6.65°. Source: published ECVA paper. Table copyright belongs to the authors and Springer Nature; the three original tables are combined for analysis.
4. Problem setting
Input: one car crop, intrinsics, and an occlusion / instance mask.
Strengths: fixed predicted size tackles scale–depth ambiguity; projected boxes are cheaper than full rendering; no external 3D detector; strong nuScenes→KITTI translation transfer.
Limits: masks / crops and strong box supervision; mainly cars; slow NeRF optimization without pose gains; Waymo rotation trails FCOS3D.
Available src/paper-notes/sup-nerf-eccv2024/deep.md
In-depth paper notes
Support reproduction, comparison, related-work writing, and identifying opportunities for further research.
Deep Reading Notes: SUP-NeRF
1. Key assessment
SUP-NeRF starts from monocular NeRF’s unreliable pose optimization:
Shape codes can scale objects;
Translation changes depth;
Both compensate in one view while reducing photometric loss;
Beyond about 25° initial rotation error, NeRF gradients rarely reach the correct basin.
The authors therefore reorder the tasks:
predict dimensions→fix scale and refine pose→NeRF reconstruct shape / texture.
Results support this: nuScenes feed-forward gives 7.01° / 0.68 m, versus 7.07° / 0.73 m after 50 NeRF steps. Projected-box refinement handles pose; NeRF mainly handles visible appearance.
2. Inputs, supervision, and detector independence
Inputs include:
One object RGB crop;
occlusion / occupancy mask;
camera intrinsics;
category-specific learned prior.
No requirement for:
Test-instance CAD;
External monocular 3D detector initializations such as FCOS3D.
Mask R-CNN masks / ROIs remain necessary. Since nuScenes lacks masks, predicted instances are matched to 3D boxes. Training also uses:
Box dimensions and poses;
GT camera views for NeRF decoding;
projected 3D box corners pose loss.
Thus avoiding external 3D detectors does not mean raw-RGB-only inference without detection or 3D supervision.
3. Unified encoder and object NeRF
Original Figure 3: shared early ResNet50 features split into pose / shape / texture branches. Cross-task shortcuts subtract pose features from shape / texture to encourage object-frame representations. Source: published ECVA paper. Image copyright belongs to the authors and Springer Nature; reproduced here for paper analysis.
Inputs are padded / resized to 128×128. Encoder outputs:
256D shape code;
256D texture code;
pose code;
Dimensions HB,WB,LB.
CodeNeRF samples 64 points per ray, rendering only 32×32 RGB / occupancy for losses. Shape space is normalized by observed box diagonals.
Pose loss averages distances between eight projected and GT corners. Training uses 40 epochs, learning rate 10−4, and wocc=0.1,wpose=0.01.
NeRF trains with GT camera poses rather than pose-branch predictions. This stabilizes decoding but weakens reconstruction-to-pose feedback during training; the branches connect sequentially at inference.
4. Projected-box pose module
Original Figure 4: current pose / intrinsics project a fixed-size box to eight corners. Box and image-pose codes yield relative rotation / translation updates. Source: published ECVA paper. Image copyright belongs to the authors and Springer Nature; reproduced here for paper analysis.
Projected corners encode:
Image center / extent;
yaw / viewpoint;
Depth–size projection relationships;
A current-pose state comparable with image evidence.
Axis-angle updates compose on SO(3). Translation uses image updates instead of directly regressing camera-frame Δx,Δy,Δz:
xt+1=xt+vxt,yt+1=yt+vyt,Zt+1=ρtZt.
Image offsets / depth ratios stabilize update magnitude across focal lengths and distances. Camera invariance here means intrinsics enter explicit projection / backprojection, reducing raw-parameter dependence rather than proving full invariance.
5. Random initialization and iterations
Training / inference avoid external 3D pose initialization:
Random 2D centers inside ROIs;
Fixed initial depth Z=20;
Full-range random yaw;
Extra random-axis rotation (−20°,20°);
Three pose iterations.
The capture range exceeds NeRF gradients, but mask-provided ROIs constrain the search; it is not unconditional full-frustum localization.
Three feed-forward updates optionally precede 50 inference-optimization steps:
Original Tables 2–4: each cell compares feed-forward / 50-step NeRF optimization. AutoRF+FCOS3D gives best Waymo rotation; SUP-NeRF mainly improves translation. Source: published ECVA paper. Table copyright belongs to the authors and Springer Nature; original tables are combined for analysis.
nuScenes
Method
RE FF / 50it
TE FF / 50it
PSNR FF / 50it
DE FF / 50it
AutoRF+FCOS3D
9.77 / 10.17°
0.85 / 0.78 m
7.5 / 17.2
1.34 / 0.81 m
SUP-NeRF
7.01 / 7.07°
0.68 / 0.73 m
10.5 / 18.8
0.69 / 0.60 m
Pose is already estimated feed-forward: NeRF gives PSNR +8.3 and DE −0.09 m, but RE +0.06° and TE +0.05 m.
KITTI, nuScenes model zero-shot
SUP-NeRF: 6.79° / 1.06 m;
AutoRF+FCOS3D: 11.95° / 2.20 m.
Rotation decreases 43.2%, translation 51.8%, the strongest setting behind the approximate 50% claim.
Waymo, nuScenes model zero-shot
SUP-NeRF: 10.01° / 1.68 m;
AutoRF+FCOS3D: 6.65° / 3.22 m.
Translation decreases 47.8%, while rotation increases 50.5%. The authors suggest FCOS3D’s larger context helps heavy occlusion. KITTI’s roughly halved rotation / translation do not generalize to Waymo.
Cross-dataset PSNR / DE trail nuScenes substantially, showing weaker transfer for category-NeRF appearance / geometry priors.
7. Ablations and NeRF’s actual role
Pose-only Table 5:
Module
nuScenes RE / TE
KITTI RE / TE
Waymo RE / TE
MLP direct
31.96° / 5.53m
37.58° / 5.31m
30.89° / 10.10m
Corners + PnP
24.79° / 2.82m
35.10° / 3.55m
93.76° / 18.68m
FCOS3D
9.77° / 0.85m
11.95° / 2.20m
6.65° / 3.22m
SUP-NeRF
7.01° / 0.68m
6.79° / 1.06m
10.01° / 1.54m
Projected-corner PnP fails completely on Waymo, supporting learned iterative updates over hard keypoint / PnP solving.
GT initialization is more revealing:
50 NeRF steps move GT poses from 0° / 0m to 2.11° / 0.13m;
SUP initialization moves from 7.01° / 0.68m to 7.07° / 0.73m.
Photometric objectives and pose metrics disagree; reconstruction refinement does not reliably refine poses.
8. Speed
Original Tables 7–8: 49.816M parameters, three feed-forward updates in 18ms; 20 / 50 NeRF steps take 0.608 / 1.493s. Source: published ECVA paper. Table copyright belongs to the authors and Springer Nature; reproduced here for paper analysis.
One A5000:
Mode
Time
3-step feed-forward
0.018 s
FF + 20it
0.608 s
FF + 50it
1.493 s
Real-time potential applies to feed-forward poses / coarse latents; high-quality full NeRF reconstruction gives about 0.67 FPS.
9. Limitations
Primarily driving cars rather than general multicategory objects;
Masks / crops, intrinsics, box labels, and GT camera-pose supervision;
ROI-constrained random initialization;
GT-pose NeRF training versus predicted-pose inference mismatch;
Possible pose degradation from 50 photometric steps;
Worse Waymo rotation than FCOS3D;
Weak cross-domain reconstruction;
Sparse LiDAR depth evaluation rather than full-surface accuracy;
Public code with substantial environment / data preparation.
10. Reproduction checklist
Match 87,048 / 5,000 nuScenes object splits and Mask R-CNN masks;
Restrict categories / IDs to cars;
128×128 encoder, 32×32 render, 64 ray samples, 256D codes;
Reproduce random ROI centers, Z=20, yaw, and random axes;
Fix three pose updates;
Train NeRF with GT poses and compare a predicted-pose variant;
Separate FF, 20-step, and 50-step results;
Report RE / TE alongside PSNR / DE rather than inferring pose gains from rendering;
Avoid KITTI / Waymo fine-tuning;
Include mask detection / cropping in full-pipeline timing;
Test intrinsics, masks, occlusion, and dimension errors.
11. Overall assessment
SUP-NeRF clarifies that monocular photometric optimization can explain images through wrong scales / depths and cannot handle broad pose recovery reliably. Fixed dimensions and three projected-box updates do the effective pose work; KITTI 6.79° / 1.06 m and 18 ms support engineering value.
NeRF refinement does not improve pose, Waymo rotation trails FCOS3D, and full reconstruction takes 1.493 s. The method is an efficient category-pose initializer embedded in an object-NeRF reconstruction system, rather than pose solved by NeRF alone.