Tips for labeling cuboid sequences

This page describes some tips and tricks to label cuboids in point cloud sequences faster.

General tips

Use your GPU in Chrome for better performance

Use your GPU in Chrome to make sure the 3D point cloud interface runs smoothly.

Label object by object

By labeling object by object, we mean first labeling an object in the whole sequence, before moving on to the next object. This is typically easier and faster than labeling all objects on the first frame, then all objects on the second frame, and so on.

Use hotkeys for fine adjustments

Your mouse is perfectly suitable for quickly drawing a cuboid or for moving it to roughly the right position. However, for fine adjustments, you’re probably better off using your keyboard. Segments.ai has hotkeys for almost everything, including for moving a cuboid and for changing its dimensions. Better still, you can customize all the hotkeys to your liking:

pageCustomize hotkeys

Learn about keyframes and remove-keyframes

Keyframe interpolation is enabled by default on point cloud sequences with cuboid annotations. It allows you to label a sequence perfectly by only labeling a few “key” frames, while the rest of the frames are completed automatically. On Segments.ai, there are also remove-keyframes that indicate when an object disappears. More precisely, a remove-keyframe means that the object is not present in that frame and all frames before the next normal keyframe.

You can learn about adding, moving, and removing keyframes on this page:

pageUse keyframe interpolation

How to find objects

In order to find objects to label, you can use the main point cloud viewer. You can move through the interface either by using your mouse or the hotkeys (w, a, s, d by default). Learn more about navigating the 3D scene on the following page:

pageView and navigate in the 3D interface

If the point cloud sequence has images associated with it, they can often be helpful for locating objects that might otherwise be hard to spot in the point clouds. Learn more about using images in the 3D interface on the following page:

pageUpload, view, and overlay images

How to label a static object

  1. Go to the first frame where the static object is visible.

  2. Toggle the merged point cloud view if it is available.

  3. Draw a cuboid around the object.

  4. Disable the merged point cloud view.

  5. Go through the sequence to find the frame where the object disappears.

    Tip: you can use the batch mode for navigating through a sequence faster.

  6. Remove the cuboid in the frame where the object disappears.

Use an is_static attribute

Add an is_static track-level attribute to the categories that can be static (see Configure the label editor). When this attribute is checked, you can edit the position/dimensions/rotation of a cuboid in one frame, and these changes will be applied to all other frames automatically.

How to label a dynamic object

  1. Go to the first frame where the static object is visible.

  2. Draw a cuboid around the object.

  3. Go through the sequence to find the last frame where the object is visible.

  4. Move the cuboid to the correct position.

  5. Remove the cuboid in the frame where the object disappears.

  6. Adjust the object in the frames where the cuboid’s position is the farthest away from the real object’s position. Keyframe interpolation will interpolate the object linearly in the frames in between. If the object does not move linearly, use smart propagation to propagate the cuboid automatically.

  7. When the sequence is roughly labeled, go through the sequence by using the arrow keys and make fine adjustments using keyboard hotkeys.

How to label a static object that starts moving

Labeling a static object that starts moving is basically the same as labeling a dynamic object. To label the static part:

  1. Place a keyframe on the first frame where the object is static.

  2. Add a keyframe to the last frame where the object is static (by double-clicking under the frame).

This way, you make sure that the object remains static between the keyframes.

Last updated