---
title: 'CenterDepth: Object-Centric Monocular Depth'
url: https://www.emergentmind.com/topics/centerdepth
type: topic
---

# CenterDepth: Object-Centric Monocular Depth

CenterDepth is a point-based, detection-driven paradigm for monocular depth estimation, designed to enable high-efficiency and robust performance specifically in the context of automotive perception for urban scenes. By localizing objects through center keypoints and regressing depth only at these semantic anchor points, CenterDepth bypasses traditional pixelwise or fully convolutional depth map predictions, yielding computational and accuracy benefits, especially for far-range and small objects in datasets with severe height-scale imbalance [2504.18773].

## 1. Architectural Overview

CenterDepth operates as a one-stage, keypoint-based detector, directly inspired by CenterNet, but extended to monocular depth estimation. The architecture comprises the following main components:

- **Backbone**: Multiple backbones are supported, including Hourglass-104 (HGL104), ResNet-101 with deformable convolutions (ResNet101-DCN), VoVNet-99, DLA-34, and ResNet-18. Each extracts a multi-scale feature map $F \in \mathbb{R}^{N \times N \times C}$ encoding spatial and semantic cues.
- **Detection Head**: Outputs a heatmap $H(x, y) \in [0,1]$ for object center localization and two parallel regression heads for object box size $(w, h)$, optionally with sub-pixel offsets.
- **Center-anchored Depth Head**: Rather than regressing a dense depth map, a scalar depth $D_c$ is predicted exclusively at each detected center $(x_c, y_c)$ via features pooled from a local region.
- **Center FC-CRFs Module**: A region-restricted, fully connected conditional random field fuses multi-scale features. The FC-CRFs propagate information from all pixels within region $R = \{(x,y)\,|\,|x-x_c|\leq w/2, |y-y_c|\leq h/2\}$ to the corresponding center anchor.
- **Joint Detection + Depth**: Training is performed end-to-end with a shared backbone; the detector and depth estimation heads are fully integrated, allowing simultaneous learning of semantic localization and depth regression [2504.18773].

This design enables CenterDepth to remain lightweight, end-to-end, and inherently structured for object-centric downstream tasks.

## 2. Center FC-CRFs: Depth Refinement via CRF Energy Minimization

The Center FC-CRFs module recasts depth estimation within a detected box as a CRF energy minimization problem. Each pixel in the region $R$ and the center pixel are nodes in the CRF. The model includes the following potential terms:

- **Pairwise Potential**:
  $$
  \psi_p(D(x_i), D(x_c)) = \omega_{i,c} \| D(x_i) - D(x_c) \|^2
  $$
  where $\omega_{i,c} = \exp\left( - \| f(x_i) - f(x_c) \|^2 / (2 \sigma_f^2) \right )$
  encodes similarity in feature space, emphasizing dependence between semantically similar pixels [2504.18773, Eq. 3–4].

- **Unary Potential**:
  $$
  \psi_u(D(x_i)) = (D(x_i) - \hat{D}(x_i))^2
  $$
  aligning estimated depths to local predictions from the depth head.

- **Total Energy**:
  $$
  E(D) = \sum_{(x,y)\in R} \psi_u(D(x,y)) + \sum_{(x_i,y_i)\in R} \psi_p(D(x_i, y_i), D(x_c, y_c))
  $$
  [2504.18773, Eq. 5].

For inference, a closed-form solution or mean-field updates yield a refined center depth:
$$
D_c^{\text{new}} = \frac{ \lambda \hat{D}_c + \sum_i \omega_{i,c} D_i }{ \lambda + \sum_i \omega_{i,c} }
$$
and optionally update surrounding pixels. This procedure enforces smoothness among depth predictions inside each object proposal while anchoring the final estimate at the detected center [2504.18773].

## 3. Detection-Based Depth Estimation Pipeline

The learning objective adopts a multi-task formulation:

- **Center Key-point Heatmap Loss** (Focal Loss variant):
  $$
  L_{kp} = -\frac{1}{N_{pos}} \sum_{i:(x_i,y_i)=pos} (1-\hat{H}_i)^\alpha \log\hat{H}_i
  -\frac{1}{N_{neg}} \sum_{j:(x_j,y_j)=neg} (\hat{H}_j)^\beta (\hat{H}_j)^\alpha \log(1-\hat{H}_j)
  $$
  [zhou2019objects].

- **Size Regression Loss**:
  $$
  L_{wh} = \sum_{obj} |w_{pred} - w_{gt}| + |h_{pred} - h_{gt}|
  $$

- **Raw Depth Regression**:
  $$
  L_{dep} = \sum_{obj} \| \hat{D}_c - D_c^{gt} \|_1
  $$

- **Full Multi-task Loss**:
  $$
  L = L_{kp} + \lambda_{wh} L_{wh} + \lambda_{dep} L_{dep}
  $$
  with weights optimized via cross-validation (e.g., $\lambda_{wh}=0.1$, $\lambda_{dep}=1.0$).

During inference, peaks in $H(x,y)$ yield object centers, sizes are extracted, and Center FC-CRFs are solved to provide a final depth per center [2504.18773].

## 4. VirDepth: Synthetic Benchmark for Monocular Detection and Depth

CenterDepth is benchmarked and trained on the VirDepth dataset, a large-scale, scenario-specific synthetic dataset generated using CARLA and Unreal Engine 4. The data-collection protocol employs three co-located cameras (RGB, depth, semantics), with the ego-vehicle traversing urban environments and capturing:

- RGB images
- Ground-truth depth maps
- Semantic segmentation
- 2D and 3D bounding boxes (CAD-based projection)

VirDepth statistics:
- Five urban scenes, 15,000 images at $1242\times375$ resolution
- Over 180,000 annotated targets, 0–200 m range, object types: cars, vans, trucks, bicycles, pedestrians
- ≥3 objects per image per 50 m bin on average; objects >200 m or occluded are filtered
- Dataset splits: scenes 1–4 for training, scene 5 for validation/test
- Tasks: 2D detection, 3D detection, monocular center-point depth estimation [2504.18773]

*This dataset enables efficient benchmarking of detection-driven depth estimation models across diverse distance and occlusion regimes.*

## 5. Experimental Results and Comparative Evaluation

Extensive evaluation on VirDepth demonstrates substantial improvements in both depth accuracy and computational efficiency:

- **Monocular Depth at Object Centers**: CenterDepth outperforms global depth methods, particularly at large ranges and for small objects.
  - CenterDepth (Ours, HGL104 backbone): $\delta_1 = 0.989$, RMSE = 2.106
  - DepthAnythingV2: $\delta_1 = 0.832$, RMSE = 13.155
  - MonoDepth2: $\delta_1 = 0.811$, RMSE = 16.802

- **3D Detection Depth** (R101 backbone): $\delta_1 = 0.983$, RMSE = 2.688 vs SMOKE ($\delta_1 = 0.821$, RMSE = 9.324) and FCOS3D ($\delta_1 = 0.750$, RMSE = 5.837).

- **Distance-binned MAE** (150–200 m): CenterDepth achieves MAE = 3.351 while global baselines exceed MAE = 36.

- **Speed/Accuracy Efficiency**:
  
  | Backbone    | Time (ms) | $\delta_1$ | MAE   | RMSE  |
  |-------------|-----------|------------|-------|-------|
  | HGL104      |   15.6    |  0.989     | 1.394 | 2.106 |
  | ResNet-101  |    9.5    |  0.983     | 2.834 | 2.688 |
  | ResNet-18   |    3.4    |  0.909     | 3.415 | 6.436 |

- **Far-Target Performance** (150–200 m, mAP$_{0.5:0.95}$): CenterDepth (512×512) = 45.4% at 6.1 ms, YOLOv8s = 30.0% at 4.3 ms.

Qualitative analyses reveal substantial improvements in small-object recall at long distances and preserve structure critical for autonomous planning tasks via depth-augmented BEV representations [2504.18773].

## 6. Pseudocode and Training Workflow

Training and inference pipelines are structured as follows:

**Training Loop**:
```python
for epoch in 1..E:
    for images I, annotations {(x_c, y_c), w, h, D_gt}:
        F = Backbone(I)
        H = HeatmapHead(F)
        w_hat, h_hat = SizeHead(F)
        D_hat = DepthHead(F)
        L_kp  = HeatmapFocalLoss(H, (x_c, y_c))
        L_wh  = L1((w_hat, h_hat), (w, h))
        L_dep = L1(D_hat(x_c, y_c), D_gt)
        L_total = L_kp + λ_wh * L_wh + λ_dep * L_dep
        Backpropagate L_total, update weights
```

**Inference**:
```python
input I
F = Backbone(I)
H = HeatmapHead(F)
detect peaks in H → {(x_c^k, y_c^k)}
for each center k:
    w^k, h^k = predicted size
    define region R^k
    compute D_hat_i for all i in R^k
    solve CRF energy E(D) → D_c^k
    output 2D box + depth D_c^k
```

This workflow permits real-time operation and seamless deployment on automotive or robotic platforms [2504.18773].

## 7. Relation to Alternative Center-based Approaches

CenterDepth is situated within the broader family of center-based monocular 3D detection and depth estimation methods. Notably, Center3D [2005.13423] introduces a *CenterDepth* module pairing explicit 2D-3D center offsets with hybrid depth heads:

- **Offset Regression**: Learns to bridge the geometric gap between 2D bounding box centers and true projected 3D centers to align depth predictions with physical object locations. The offset $\Delta c^i$ is regressed and applied before metric depth backprojection.
- **Classification-Regression Fusion**: Two depth heads—Linear Increasing Discretization (LID, classification-dominated) and DepJoint (regression-focused with Eigen scaling)—are fused to yield robust per-object depth estimation.
- **Full Pipeline**: Center3D’s CenterDepth module combines center localization, offset correction, and depth regression, yielding state-of-the-art tradeoffs in 3D AP and BEV AP on KITTI with low computational overhead [2005.13423].

A plausible implication is that detection-driven, point-based depth estimation offers inherent resilience for imbalanced object scales and long-range detection compared to dense, pixelwise, convolutional monocular depth regression. This is evidenced in scenarios such as path planning, where per-object center depths facilitate explicit BEV reconstructions for downstream tasks [2504.18773, Fig. 7].

---

References:  
- Depth as Points: Center Point-based Depth Estimation [2504.18773]  
- Center3D: Center-based Monocular 3D Object Detection with Joint Depth Understanding [2005.13423]

Source: https://www.emergentmind.com/topics/centerdepth