RCV Lab logo.

Part Finder

Zero Shot 6DoF Pose Estimation

Introduction

What is 6DoF Object Pose Estimation?

When a robot picks up an object, or an augmented reality app overlays a 3D model onto a scene, it needs to know not just what the object is, but exactly where it is and how it is oriented in 3D space. This is the problem of 6DoF (six degrees of freedom) pose estimation: recovering an object's full position (X, Y, Z) and orientation (roll, pitch, yaw) from a camera image.

What This Site Does:

This interface lets you run our state-of-the-art 6DoF pose estimation system on your own objects and scenes, with no training required.

You upload a 3D model of your object (PLY format), an RGB image and depth map of a scene containing a number of instances of the object, and the RGB camera intrinsic parameters. The system will locate each instance of the object in the image and return its precise 6DoF pose.

Under the hood, the method uses a large-scale vision foundation model to extract rich visual features that generalise across the gap between synthetic 3D renderings and real photographs. No task-specific fine-tuning, no labelled data, and no GPU training on your object is required. It works on objects it has never seen before (i.e. zero zhot).

Processing Time:

Onboarding (~5 minutes):Each new part that the system encouters must be preprocessed in an onboarding phase, which generates a data structure based on a textured 3D model. Onboarding is computationally intensive, and takes roughly 5 minutes on consumer hardware. Generating a GPU cache for the onboarded data structure takes an additional 2 minutes.

For this demo, onboarding must be re-run for each submission to conserve disk space on the server.

Inference (~5-10 seconds): Onboarding only needs to be done once per object. Subsequent detections of the same object only take 5-10 seconds per image, depending on the number of parts detected.


Upload Data

Do not upload any sensitive data to this form.

Test Scene

RGB Image upload:

Depth Image upload:

Ensure the RGB image colour channels appear correctly.
Preview will not appear for .npy files.

RGB Preview

Depth Preview

Instances to Detect:

If your scene only has one instance of the object of interest, you should enter 1. If it has multiple you can increase the number, and the system will attempt to find the pose for that many instances.

Camera Information

Camera Intrinsics upload (JSON):

fx:

fy:

cx:

cy:

Depth Scale:

Scale factor so that the units in the depth image match up to 1mm in the real world. Example: if your depth is in meters, then you'd need a scale factor of 1mm/1m = 0.001.

3D Model

3D Model upload (PLY):

Upload a .ply file. Preview it to the right.

Model Scale:

Scale factor so that the units in the model file match up to 1mm in the real world. Example: if your model file is in meters, then you'd need a scale factor of 1mm/1m = 0.001.

3D Model Preview


Download Pose

Notification Email Address:

Email address for the results to be sent to.

Current server status: Loading Server Status

When complete, the results will be emailed to the address you've given, from [email protected]. Your email will not be shared with any 3rd parties.

Expect the result to take at least 5-10 minutes, possibly longer if the server is busy. Your results will be sent by email (from [email protected]) when the processing is complete. You can close this tab now. Be sure to check your spam folder.


Sample Data

The following are links to download sample data that can be used to test out this system. It is taken from the linemod occluded dataset. For this data, there is only one instance of the item of interest (ape).

Model File

RGB Image

Depth Image

Camera Intrinsics

The segmentation mask for the sample data. An example of the expected output from using the sample data.

Mask showing the image as seen by the segmentation engine. (left)

Expected output when using the sample data. The blue highlight is the estimated pose overlayed on the test image. (right)


Contact Us

For any questions, issues, or suggestions regarding Part Finder, feel free to reach out to our team at [email protected].