RePOSE: Fast 6D Object Pose Refinement via Deep Texture Rendering
This work addresses the computational bottleneck in real-time pose estimation for robotics and AR/VR applications, offering a significant speed-up with competitive accuracy.
The paper tackles the problem of slow runtime in 6D object pose refinement by introducing RePOSE, which uses deep texture rendering and differentiable optimization to achieve 92 FPS and a state-of-the-art accuracy of 51.6% on the Occlusion LineMOD dataset, a 4.1% improvement over prior methods.
We present RePOSE, a fast iterative refinement method for 6D object pose estimation. Prior methods perform refinement by feeding zoomed-in input and rendered RGB images into a CNN and directly regressing an update of a refined pose. Their runtime is slow due to the computational cost of CNN, which is especially prominent in multiple-object pose refinement. To overcome this problem, RePOSE leverages image rendering for fast feature extraction using a 3D model with a learnable texture. We call this deep texture rendering, which uses a shallow multi-layer perceptron to directly regress a view-invariant image representation of an object. Furthermore, we utilize differentiable Levenberg-Marquardt (LM) optimization to refine a pose fast and accurately by minimizing the feature-metric error between the input and rendered image representations without the need of zooming in. These image representations are trained such that differentiable LM optimization converges within few iterations. Consequently, RePOSE runs at 92 FPS and achieves state-of-the-art accuracy of 51.6% on the Occlusion LineMOD dataset - a 4.1% absolute improvement over the prior art, and comparable result on the YCB-Video dataset with a much faster runtime. The code is available at https://github.com/sh8/repose.