HiPose: Hierarchical Binary Surface Encoding and Correspondence Pruning for RGB-D 6DoF Object Pose Estimation
HiPose predicts hierarchical binary surface codes for each RGB-D point. Coarse point-to-surface correspondences are narrowed bit by bit, rejecting outliers according to the current pose before final Kabsch fitting. LM-O ADD(-S) recall is 89.6 and the three-dataset BOP mean score is 84.6. Pose inference takes 0.075 s, or 0.16 s with detection, without rendering-based refinement.
HiPose decodes predicted binary surface codes progressively: reliable coarse surfaces establish an initial pose; each subsequent bit narrows the surface, and geometric distances prune outlier correspondences. A final Kabsch solve yields RGB-D pose without RANSAC or rendering refinement.
3. Guide to figures and tables
Original Figure 2: the network predicts \(m+n\)-bit surface codes for RGB-D point patches; the first \(m\) bits select coarse regions, and each later bit bisects the corresponding surface. Pose and outliers update together. Source: official CVPR 2024 paper. Image copyright belongs to the paper's authors and IEEE/CVF; reproduced here for paper analysis.Original Table 5: trained on PBR only, HiPose achieves BOP scores of 79.9 / 90.7 / 83.3 on LM-O / YCB-V / T-LESS, mean 84.6; detection plus pose takes 0.16 s without extra refinement. Source: official CVPR 2024 paper. Table copyright belongs to the paper's authors and IEEE/CVF; reproduced here for paper analysis.
4. Problem setting
Input: a detected object’s RGB crop, corresponding depth point cloud, camera intrinsics, and known CAD.
Output: absolute 6DoF object pose in camera coordinates.
Object setting: known-instance estimation, with PBR training supervision for every benchmark object; not zero-shot generalization to arbitrary new CAD models.
Recursively partition the CAD surface using balanced k-means to generate a hierarchical binary code for each vertex.
Fuse RGB and point clouds with an FFB6D-style full-flow bidirectional network; predict masks, binary bits, and per-bit correctness probabilities for visible points.
Reliable first m bits associate points with coarse CAD subsurfaces. Their centroids form 3D–3D correspondences for initial Kabsch pose solving.
Each later bit bisects the surface; distances from points to transformed surfaces under the current pose identify outliers.
Point-to-surface associations eventually become point-to-point correspondences; a final Kabsch solve uses those never pruned.
6. Experiments at a glance
LM-O ADD(-S) recall: 89.6, versus DFTr 77.7 and ZebraPose 76.9.
YCB-V: AUC ADD-S 97.6, AUC ADD(-S) 95.5.
BOP PBR-only: LM-O 79.9, YCB-V 90.7, T-LESS 83.3, mean 84.6.
Pose alone averages 0.075 s; YOLOX detection 0.081 s; the complete pipeline 0.16 s.
Kabsch without pruning gives 86.65, RANSAC+Kabsch 89.12, and hierarchical pruning 89.62.
Inlier precision rises progressively from 66.1% to 76.1% during pruning.
Starting directly at bit 16 removes the hierarchy and substantially hurts performance; starting at bits 9–11 is relatively stable.
7. Quick assessment
Highlight: representation hierarchy, pose solving, and outlier rejection form one progressive process. Speed comes from avoiding rendering and large numbers of sampled RANSAC hypotheses.
Main limitations: known CAD, depth, and object-specific PBR training are required; binary surface-code quality depends directly on mesh partitioning.
Reading tables: 0.075 s is pose-only; 0.16 s includes detection. ADD(-S), AUC, and BOP scores from different tables are not interchangeable.
Intended readers: researchers in RGB-D instance pose, dense 3D–3D correspondence, binary surface codes, and real-time industrial pose.
Available src/paper-notes/hipose-cvpr2024/deep.md
In-depth paper notes
Support reproduction, comparison, related-work writing, and identifying opportunities for further research.
Paper Reading Notes (Deep): HiPose
1. Key assessment
HiPose combines surface representation, pose estimation, and outlier rejection, often separate in dense correspondence pipelines, into one coarse-to-fine geometric process.
Traditional binary surface codes threshold the network output into a CAD vertex in one step, then use PnP / RANSAC. Problems include:
Later bits represent finer surfaces and are harder to predict;
One-step hard quantization discards per-bit confidence;
Incorrect fine bits can move a correspondence far away;
RANSAC and rendering refinement add latency and randomness.
HiPose initially trusts coarse bits, associating a point with a surface region. After establishing an initial pose, each bit narrows the region, and point-to-transformed-surface distances reject outliers at each round. It achieves LM-O ADD(-S) recall 89.6 and complete mean BOP score 84.6, with pose-only runtime 0.075 s. The main contribution is solver-aware decoding rather than a new RGB-D backbone.
2. Task, inputs, and supervision boundaries
Input:
An object ROI from an external detector;
RGB crop;
A point cloud sampled from back-projected ROI depth;
camera intrinsics;
Known target CAD and its hierarchical binary surface code.
The output is absolute R,t in camera coordinates.
HiPose is a seen-object / instance-level method. It trains only on BOP PBR synthetic images, but those images still target known LM-O, YCB-V, and T-LESS CAD models. “Only synthetic data” describes the sim-to-real data source, not zero-shot capability on arbitrary new CAD models.
3. Hierarchical surface encoding
Given a CAD surface with L vertices, balanced k-means recursively bisects the surface. Each vertex receives a binary code of length d:
ci=(ci1,…,cid),cij∈{0,1}.
Early bits encode large regions; later bits narrow them to small local surfaces and ultimately a single vertex. Successive prefixes define nested regions, so partially correct bits still provide a useful coarse point-to-surface correspondence.
Original Figure 2. Blue lines select the initial coarse surface with trusted prefixes; red lines bisect it bit by bit. Pose and outliers update as correspondences become finer. Source: official CVPR 2024 paper. Image copyright belongs to the paper's authors and IEEE/CVF; reproduced here for paper analysis.
The network builds on FFB6D full-flow bidirectional fusion, exchanging features between RGB and point-cloud branches. For each sampled point, one output head predicts:
visible mask;
A binary code of length d=m+n;
A continuous logit for each bit.
Masks and codes use L1 loss with weight α=3. Training runs for 380k iterations, batch 32, with a ConvNeXt image backbone.
4. From bit confidence to the initial surface
The usual approach binarizes predicted c^∈[0,1]d at 0.5. HiPose additionally defines bit correctness probability:
pc=1−∣c^−c^∣,
Here c^ is the quantized bit. Values near 0 or 1 are more confident; those near 0.5 are less trustworthy.
For each point, the last bit exceeding the trust threshold determines the initial surface prefix. Global mdefault prevents an overly coarse surface with weak geometry and an unstable Kabsch initialization. The default starts near bit 10, balancing accuracy and computation.
Coarse surface Sm has centroid gm, which forms a point-to-surface correspondence with observed 3D point P. Kabsch uses all correspondences to obtain initial (R^0,t^0).
5. Hierarchical pruning and deterministic pose solving
At iteration it, the distance between point Pk and candidate surface Sm+it is:
lk=vi∈Sm+itmin∥R^itvi+t^it−Pk∥.
The median of all distances separates inliers from outliers. Retained inliers use finer surface centroids in another Kabsch solve. After n iterations the surface shrinks to a single point; a final Kabsch solve uses point-to-point correspondences never classified as outliers.
Key properties:
No randomly sampled minimal sets, hence RANSAC-free;
Each iteration uses surface partitioning and a small SVD, hence render-free;
Early coarse surfaces tolerate bit errors;
Current pose supplies an outlier criterion, closing the loop between prediction and solving.
6. Does pruning work?
Original Tables 1–2 and Figure 4: hierarchical pruning gives LM-O recall 89.62, above direct Kabsch 86.65 and tuned RANSAC+Kabsch 89.12; inlier precision rises from 66.1% to 76.1% across rounds. Source: official CVPR 2024 paper. Figure and table copyright belongs to the paper's authors and IEEE/CVF; reproduced here for paper analysis.
LM-O ablation:
Variant
ADD(-S) recall
Direct Kabsch
86.65
RANSAC + Kabsch
89.12
Hierarchical pruning
89.62
inlier threshold median→mean
89.47
ConvNeXt-B→ResNet34
88.64
ZebraPose RGB→3D + RANSAC
87.0
naive RGB-D concat + RANSAC
84.5
The gains are modest, but the evidence chain is complete:
Direct Kabsch→pruning +2.97: predicted correspondences still contain substantial outliers;
RANSAC→pruning +0.50: the deterministic hierarchy at least matches tuned random sampling;
Inlier precision 66.1→76.1: rejected correspondences are indeed more often low quality;
Naive RGB-D concatenation gives 84.5, supporting direct 3D–3D correspondence learning and full-flow fusion.
Figure 4 shows relatively stable results when starting at bits 5–11; performance falls after bit 12 and is worst when directly starting at bit 16. The finest surface bits cannot be treated as fully reliable labels, supporting hierarchical decoding.
7. Main results
Original Table 3: HiPose's mean LM-O ADD(-S) recall is 89.6, compared with DFTr 77.7, a gain of 11.9 points. Source: official CVPR 2024 paper. Table copyright belongs to the paper's authors and IEEE/CVF; reproduced here for paper analysis.
LM-O per-object mean:
HiPose 89.6;
DFTr 77.7;
ZebraPose 76.9;
RCVPose 70.2;
FFB6D 66.2.
HiPose improves strongly on objects such as ape / cat / duck, but eggbox 80.3 is slightly below RCVPose 81.2, and holepuncher 95.2 trails PR-GCN 97.2. Mean SOTA does not mean best performance on every object.
YCB-V:
AUC ADD-S: 97.6;
AUC ADD(-S): 95.5;
DFTr gives 96.7 / 94.4.
Gains are smaller than on LM-O because YCB-V metrics are already near saturation.
8. BOP score, speed, and the meaning of “real time”
Original Table 5: HiPose mean BOP score 84.6 and total time 0.16 s; GDRNPP + refinement gives 84.4 / 6.37 s. Source: official CVPR 2024 paper. Table copyright belongs to the paper's authors and IEEE/CVF; reproduced here for paper analysis.
PBR-only BOP score:
Method
LM-O
YCB-V
T-LESS
Mean
Time
GDRNPP + refinement
77.5
90.6
85.2
84.4
6.37 s
HiPose
79.9
90.7
83.3
84.6
0.16 s
Runtime breakdown:
pose estimation: 0.075 s / image;
YOLOX detection: 0.081 s;
Total about 0.156 s, rounded to 0.16 s in the table.
The paper refers to real-time critical applications. More precisely, the complete single-object pipeline runs at about 6.4 FPS, substantially faster than multisecond refinement but below 30 FPS.
9. Relationship to neighboring methods
ZebraPose: retains hierarchical binary surfaces but replaces 2D–3D PnP with RGB-D 3D–3D Kabsch and uses bit confidence for progressive decoding.
FFB6D: borrows the full-flow fusion backbone, but HiPose’s main improvements concern output representation and solving.
MatchU: shares descriptors across objects for unseen CAD models; HiPose surface codes are fixed to target CAD / training objects.
Render-and-compare: depth geometry directly solves precise pose, avoiding iterative rendering refinement at the cost of a hard depth dependency.
10. Limitations and reproducibility checks
Requires object-level CAD and BOP PBR training; new objects still need supervision generation and training;
Object identity from the external detector must be known;
Balanced k-means surface hierarchies and mesh sampling must be consistent;
Object symmetry is mainly handled by ADD(-S) / BOP evaluation; binary codes do not automatically construct symmetry-equivalence classes;
Kabsch is stable only with sufficiently good correspondences; coarse starting bits and trust thresholds remain hyperparameters;
Reproduction must distinguish pose 0.075 s from detection 0.081 s;
BOP comparisons must align detector, PBR-only training, and refinement definitions.
11. Overall assessment
HiPose illustrates a geometric design principle: network outputs can retain hierarchical confidence for the pose solver, allowing coarse pose to clean finer correspondences before committing to the most fragile, detailed matches.
The pruning / RANSAC difference of 89.62 versus 89.12 is small, but deterministic, low-latency inference without refinement has clear engineering value; mean BOP score 84.6 and total time 0.16 s support this route. Its strongest use is as an instance-level baseline for known CAD, reliable RGB-D, and stable throughput requirements.