How to Use 3D Object Interpolation to Speed Up Point Cloud Annotation
Label a 3D bounding box at the start and end of a point cloud episode and let spline interpolation fill the frames between. Step-by-step guide with video.

3D object interpolation speeds up point cloud annotation. You label a cuboid in the first and last frames of a segment, and the 3D BBox Interpolation app fills in the frames between with spline interpolation. It works best when the object's motion is simple; for harder trajectories use the MBPTrack tracking tutorial.
You run it inside the LiDAR and sensor fusion labeling toolbox. The toolbox docs cover point cloud episodes.
Labeling 3D point clouds is slow, and every extra frame adds work. If the object's motion is not very complicated, interpolation cuts that work a lot. In this tutorial you will learn what interpolation is and how to run it in Supervisely.
How does 3D interpolation work? (video tutorial)
Follow this step-by-step video guide to learn how to use 3D object interpolation tool for labeling point cloud episodes (sequences) in Supervisely Platform.
What is interpolation, and when to use spline vs linear?
Interpolation is a process of finding unknown intermediate values of some function from the available discrete set of its known values. There are many variants of interpolation. The simplest one is linear interpolation. If you have 2 data points, linear interpolation will be a straight line between these 2 points.
Linear and spline interpolations
| Linear interpolation | Spline interpolation | |
|---|---|---|
| How it works | Straight line between each pair of known points | Low-degree polynomials that fit smoothly together |
| Result | A continuous curve of straight segments | A smoother path |
| Trade-off | Simple and computationally cheap, but not very accurate in some scenarios | Smaller interpolation error |
| Used in the app | No | Yes, a modification of it |
-
Linear interpolation
To get linear interpolation of a set of data points, you need to concatenate linear interpolation between each pair of available data points. The result will look like a continuous curve. Linear interpolation is pretty simple and computationally cheap, but it is not very accurate in some scenarios.
-
Spline interpolation
Unlike linear interpolation, which uses a linear function for each of intervals [Xk, Xk+1], spline interpolation applies low-degree polynomials to find missing data points, and selects the polynomial pieces such that they fit smoothly together. The resulting function will be a piecewise polynomial called a spline.
Compared to linear interpolation, spline interpolation allows to get smoother interpolation and smaller interpolation error. That's why we decided to use it in our app.
How do you run 3D bounding box interpolation in Supervisely?
It is possible to interpolate between data points not only in 2D space, but also in 3D space. Let's assume that you have a number of point cloud episodes and want to label them with bounding boxes. Labeling every single point cloud from scratch can be very time consuming, but you can label only several point clouds and label other point clouds automatically with the help of interpolation.
Supervisely Ecosystem provides a simple tool for interpolating your bounding boxes in point clouds - 3D BBox Interpolation. This app uses a modification of spline interpolation to label point clouds based on bounding boxes given in first and last point clouds in the sequence.
3D BBox Interpolation
Deploy interpolation method as REST API service
This application is started automatically and should be available out of the box. But if it is not, run it yourself or contact your instance administrator to run and make available for all users.
-
Label 3D objects in point cloud segment
Label object with 3D bounding box tool on at least at the beginning and end of the point cloud segment.
-
Interpolate segment
Select range of point clouds (first and last point cloud in the range must be labeled) in the timeline and press
Interpolatebutton. -
Preview results and correct manually if needed
Interpolation will generate new cuboids in the segment, you can preview the object track and correct the position of the 3D bounding box if needed with using the axis arrows.
Conclusion
In this tutorial we learned about simple, fast and efficient way of speeding up point clouds labeling process with interpolation. Sign up and try to label your point clouds for free in Community Edition.
Frequently asked questions
What is 3D object interpolation in point clouds?
You label a 3D bounding box (cuboid) in some frames of a point cloud episode, and the tool computes the cuboids for the frames in between, instead of labeling every frame from scratch.
How many frames do I need to label?
At least the first and last frames of the segment you interpolate.
Is the interpolation linear or spline?
The 3D BBox Interpolation app uses a modification of spline interpolation. Spline interpolation gives a smoother path and a smaller interpolation error than linear interpolation.
When should I use object tracking instead?
Interpolation works best when the motion trajectory is not very complicated. For harder cases, use a 3D tracking model such as MBPTrack, which follows the object from a first cuboid.
Can I correct the interpolated boxes?
Yes. Preview the object track and adjust any cuboid with the axis arrows.
Is the app available out of the box?
It is started automatically and should be available. If it is not, run it yourself or ask your instance administrator to run it and make it available to all users.


