Skip to content

Latest commit

 

History

History
149 lines (111 loc) · 9.37 KB

instructions_lidarseg.md

File metadata and controls

149 lines (111 loc) · 9.37 KB

nuScenes-lidarseg Annotator Instructions

Overview

Introduction

In nuScenes-lidarseg, we annotate every point in the lidar pointcloud with a semantic label. All the labels from nuScenes are carried over into nuScenes-lidarseg; in addition, more "stuff" (background) classes have been included. Thus, nuScenes-lidarseg contains both foreground classes (pedestrians, vehicles, cyclists, etc.) and background classes (driveable surface, nature, buildings, etc.).

General Instructions

  • Label each point with a class.
  • Use the camera images to facilitate, check and validate the labels.
  • Each point belongs to only one class, i.e., one class per point.

Detailed Instructions

  • Extremities such as vehicle doors, car mirrors and human limbs should be assigned the same label as the object. Note that in contrast to the nuScenes 3d cuboids, the lidarseg labels include car mirrors and antennas.
  • Minimum number of points
    • An object can have as little as one point. In such cases, that point should only be labeled if it is certain that the point belongs to a class (with additional verification by looking at the corresponding camera frame). Otherwise, the point should be labeled as static.other.
  • Other static object vs noise.
    • Other static object: Points that belong to some physical object, but are not defined in our taxonomy.
    • Noise: Points that do not correspond to physical objects or surfaces in the environment (e.g. noise, reflections, dust, fog, raindrops or smoke).
  • Terrain vs other flat.
    • Terrain: Grass, all kinds of horizontal vegetation, soil or sand. These areas are not meant to be driven on. This label includes a possibly delimiting curb. Single grass stalks do not need to be annotated and get the label of the region they are growing on.
    • Short bushes / grass with heights of less than 20cm, should be labeled as terrain. Similarly, tall bushes / grass which are higher than 20cm should be labeled as vegetation.
    • Other flat: Horizontal surfaces which cannot be classified as ground plane / sidewalk / terrain, e.g., water.
  • Terrain vs sidewalk
    • Terrain: See above.
    • Sidewalk: A sidewalk is a walkway designed for pedestrians and / or cyclists. Sidewalks are always paved.

Classes

The following classes are in addition to the existing ones in nuScenes:

Label ID Label Short Description
0 noise Any lidar return that does not correspond to a physical object, such as dust, vapor, noise, fog, raindrops, smoke and reflections.
24 flat.driveable_surface All paved or unpaved surfaces that a car can drive on with no concern of traffic rules.
25 flat.sidewalk Sidewalk, pedestrian walkways, bike paths, etc. Part of the ground designated for pedestrians or cyclists. Sidewalks do not have to be next to a road.
26 flat.terrain Natural horizontal surfaces such as ground level horizontal vegetation (< 20 cm tall), grass, rolling hills, soil, sand and gravel.
27 flat.other All other forms of horizontal ground-level structures that do not belong to any of driveable_surface, curb, sidewalk and terrain. Includes elevated parts of traffic islands, delimiters, rail tracks, stairs with at most 3 steps and larger bodies of water (lakes, rivers).
28 static.manmade Includes man-made structures but not limited to: buildings, walls, guard rails, fences, poles, drainages, hydrants, flags, banners, street signs, electric circuit boxes, traffic lights, parking meters and stairs with more than 3 steps.
29 static.vegetation Any vegetation in the frame that is higher than the ground, including bushes, plants, potted plants, trees, etc. Only tall grass (> 20cm) is part of this, ground level grass is part of flat.terrain.
30 static.other Points in the background that are not distinguishable. Or objects that do not match any of the above labels.
31 vehicle.ego The vehicle on which the cameras, radar and lidar are mounted, that is sometimes visible at the bottom of the image.

Examples of classes

Below are examples of the classes added in nuScenes-lidarseg. For simplicity, we only show lidar points which are relevant to the class being discussed.

1. noise (class 0)

noise_1 noise_2 noise_3 noise_4

Top

2. flat.driveable_surface (class 24)

driveable_surface_1 driveable_surface_2 driveable_surface_3 driveable_surface_4

Top

3. flat.sidewalk (class 25)

sidewalk_1 sidewalk_2 sidewalk_3 sidewalk_4

Top

4. flat.terrain (class 26)

terrain_1 terrain_2 terrain_2 terrain_2

Top

5. flat.other (class 27)

flat_other_1 flat_other_2 flat_other_3 flat_other_4

Top

6. static.manmade (class 28)

manmade_1 manmade_2 manmade_3 manmade_4

Top

7. static.vegetation (class 29)

vegetation_1 vegetation_2 vegetation_3 vegetation_4

Top

8. static.other (class 30)

static_other_1 static_other_2 static_other_3 static_other_4

Top

9. vehicle.ego (class 31)

Points on the ego vehicle generally arise due to self-occlusion, in which some lidar beams hit the ego vehicle. When the pointcloud is projected into a chosen camera image, the devkit removes points which are less than 1m in front of the camera to prevent such points from cluttering the image. Thus, users will not see points belonging to vehicle.ego projected onto the camera images when using the devkit. To give examples, of the vehicle.ego class, the bird's eye view (BEV) is used instead:

ego_1 ego_2 ego_3 ego_4

Top