Cover photo

UniPAD: A Universal Pre-training Paradigm for Autonomous Driving Paper Review

Paper review

By Semere Gerezgiher Tesfay

Introduction

Autonomous driving relies heavily on robust 3D perception systems, which require large-scale labeled datasets for training. However, annotating 3D data (LiDAR, camera) is expensive and time-consuming. Self-supervised learning (SSL) offers a solution by leveraging unlabeled data, but existing methods often borrow ideas from 2D vision without addressing 3D-specific challenges like sparsity and irregularity in point clouds.

Enter UniPAD, a novel SSL framework that introduces 3D volumetric differentiable rendering for pre-training. Unlike contrastive or masked autoencoding (MAE) methods, UniPAD reconstructs continuous 3D shapes and their 2D projections through neural rendering, enabling better feature learning for both LiDAR and camera-based models.

Key Contributions

  1. First 3D Differentiable Rendering for SSL in Autonomous Driving

    • Uses neural rendering to implicitly encode 3D geometry and appearance.

  2. Unified Pre-training for 2D & 3D Modalities

    • Works with LiDAR, cameras, or fused inputs.

  3. Memory-Efficient Ray Sampling

    • Reduces computational costs while maintaining accuracy.

  4. State-of-the-Art Performance

    • Achieves 73.2 NDS (detection) and 79.4 mIoU (segmentation) on nuScenes.


Problem Tackled

Existing SSL methods for 3D perception suffer from:

  • Contrastive Learning: Sensitive to positive/negative sample selection.

  • MAE-based Methods: Struggle with sparse, irregular point clouds.

  • Lack of Unified 2D-3D Pre-training: Most approaches specialize in one modality.

UniPAD addresses these by:
Reconstructing masked 3D scenes via rendering (no contrastive pairs needed).
Handling both LiDAR and camera data in a single framework.


Methodology

UniPAD consists of:

  1. Modal-Specific Encoder (processes LiDAR/camera inputs).

  2. Unified 3D Volumetric Representation (combines modalities).

  3. Neural Rendering Decoder (reconstructs masked regions).

    post image
    Figure 1. The overall architecture of UniPAD.

1. Modal-Specific Encoder

  • Input: Masked LiDAR point clouds (PP) or multi-view images (II ).

  • Masking: Block-wise masking (size and ratio: 8 and 0.8 for LiDAR, 32 and 0.3 for images).

  • Encoders:

    • LiDAR: VoxelNet extracts hierarchical features (FpF_p).

    • Camera: ConvNeXt extracts 2D features (FcF_c), lifted to 3D XpX_p via LSS (Lift-Splat-Shoot).

2. Unified 3D Volumetric Representation

Both modalities are transformed into a shared voxel grid VR(X×Y×Z×3)V \in \mathbb{R}^{(X \times Y \times Z\times 3)}:

For images, 3D voxel coordinates XpR(X×Y×Z×3)X_p \in \mathbb{R}^{(X \times Y \times Z \times 3)} are projected to 2D:
Xp=Tc2iTl2cXp X'_p = T_{c2i} T_{l2c} X_p
where:

  • Tl2cT_{l2c} = LiDAR-to-camera transform.

  • Tc2iT_{c2i} = Camera-to-image transform.

Voxel features VV are computed via bilinear (BB) and trilinear (TT) interpolation:
V=B(Xp,Fc)T(Xp,ϕ(Fc))V = B(X'ₚ, F_c) \cdot T(X'ₚ, \phi(F_c))

where ϕ\phi is a convolutional layer with softmax activation. hile BB and TT retrieve the 2D features and scaling factor, respectively.
A projection layer (3D convs) further refines VV.

3. Neural Rendering Decoder

Reconstructs masked regions using differentiable volume rendering:

  1. Ray Sampling: For each pixel, cast a ray ri=o+tidir_i = o +t_id_i (camera origin oo, direction did_i).

  2. Signed Distance Field (SDF) & Color Prediction:

    • Sample DD points along the ray rir_i, i.e., {pj=o+tjdij=1,,D,tj<tj+1}\{p_j = o + t_j d_i | j = 1, \dots, D, t_j < t_{j+1}\}.

    • Predict Signed Distance Field (SDF) and RGB values via MLPs:
      sj=ϕSDF(pj,fj),cj=ϕRGB(pj,fj,di,nj,hj)s_j = \phi_{\text{SDF}}(p_j, f_j), \quad c_j = \phi_{\text{RGB}}(p_j, f_j, d_i, n_j, h_j)

      where njn_j and hjh_j denote the surface normal (gradient at pjp_j) and geometry feature vector from ϕSDF\phi_{SDF}.

  3. Rendering: Accumulate color (Ŷᵢᴿᴳᴮ) and depth (Ŷᵢᵈᵉᵖᵗʰ) via:
    Y^iRGB=j=1Dwjcj,Y^idepth=j=1Dwjtj\hat{Y}_i^{RGB} = \sum_{j=1}^D w_j c_j, \quad Ŷᵢᵈᵉᵖᵗʰ = \sum_{j=1}^D w_j t_j
    where an unbiased and occlusion-aware weight wj=Tjαjw_j = T_j\alpha_j (transmittance TjT_j, opacity αj\alpha_j), and

    Tj=k=1j1(1αk)T_j = \prod^{j-1}_{k=1} (1 - \alpha_k)

    The opacity value is determined by:

    αj=max(αs(sj)αs(sj+1)αs(sj))\alpha_j = \max\left(\frac{\alpha_s(s_j) - \alpha_s(s_{j+1})}{\alpha_s(s_j)}\right), αs(x)=(1+esx)1\alpha_s(x) = (1+ e^{-sx})^{-1}

Memory-Friendly Ray Sampling:

  • Dilation: Skips rays at fixed intervals (I=16I=16).

  • Random: Selects K=512K=512 random rays.

  • Depth-Aware: Prioritizes rays near objects (LiDAR-guided).

    post image
    Figure 2. Illustration of ray sampling strategies: i) dilation, ii) random, and iii) depth-aware sampling.

Loss Function:
Combines L1 losses for RGB and depth:
L=λRGBKi=1KY^iRGBYiRGB+λdepthK+i=1K+Y^idepthYidepth L = \frac{\lambda_{\text{RGB}}}{K} \sum_{i=1}^K |Ŷᵢᴿᴳᴮ - Yᵢᴿᴳᴮ| + \frac{\lambda_{\text{depth}}}{K^+} \sum_{i=1}^{K^+} |\hat{Y}_i^{depth} - Y_i^{depth}|


Implementation Details

used MMDetection3D and train on 4× NVIDIA A100 GPUs.

Input & Preprocessing

  • Image resolution: 1600 × 900

  • Voxel size: [0.075, 0.075, 0.2]

  • Data augmentation: Random scaling, rotation, and masking (image mask: size 32, ratio 0.3; point mask: size 8, ratio 0.8).

Model Architecture

  • Encoders:

    • Image: ConvNeXt-small

    • Point cloud: VoxelNet

  • Voxel representation: 180×180×5180 \times 180 \times 5

  • Feature projection: 3×33 \times 3 conv, reducing to 32-Dim.

  • Decoders:

    • SDF: 6-layer MLP

    • RGB: 4-layer MLP

Training & Optimization

  • Rendering: 512 rays/image, 96 points/ray.

  • Loss weights: λRGB\lambda_{RGB} = 10, λdepth\lambda_{depth} = 10.

  • Optimizer: AdamW (LR: 2e−5 for points, 1e−4 for images).

  • Training schedule: 12 epochs (pre-training), 12–20 epochs (fine-tuning on 20–50% data (point-image)).

  • No CBGS or cut-and-paste augmentation in ablation studies.


post image
Figure 3: Illustration of UniPAD results.

Achievements

  • LiDAR Detection: +9.1 NDS over baselines.

  • Camera Detection: +7.7 NDS.

  • Multi-Modal Fusion: 73.2 NDS, matching SOTA.

  • Segmentation: 79.4 mIoU (nuScenes val set).


Why It Works

  1. Continuous 3D Supervision: Rendering enforces geometric consistency.

  2. Modality-Agnostic: Shared voxel space bridges 2D/3D gaps.

  3. Efficiency: Depth-aware ray sampling cuts compute costs.


Conclusion

UniPAD rethinks SSL for autonomous driving by merging neural rendering with multi-modal pre-training. Its flexibility and performance make it a promising backbone for future perception systems.

Future Work: Extending to dynamic scenes and higher-resolution voxels.


Visuals

  • Fig 1: UniPAD architecture (encoder → voxelization → rendering).

  • Fig 2: Comparison of ray sampling strategies.

  • Fig 3: UniPAD experiment result sample visualizations.

Would you like a deeper dive into the rendering math or ablation studies? Let me know in the comments! 💨

References

Subscribe