The client required data annotation of road markings and road edges, which later needed to be aligned with geospatial data.
The primary goal was to perform the labeling in 3D, with all work done using polylines. Typically, the Keymakr team uses segmentation or cuboids, but in this case, linear object construction was required.
Key challenges of the project:
-
Hidden bottleneck of 3D data
Working with spatial polylines in 3D is significantly more complex than working with standard 2D images. LiDAR captures the environment as a point cloud, lacking color and visual cues. Road markings may be partially worn out, obscured by vehicles or pedestrians, blurred, or disappear entirely due to
shadows from objects. Under these conditions, an annotator must not simply “draw a line,” but reconstruct the geometry of the road despite incomplete visibility.
One of the key difficulties was occlusion: dynamic and static objects blocked parts of the markings. In a classic 2D workflow, an annotator would simply
break the line, outline the occluding object, and then continue the line. However, in 3D, such a break may be interpreted by the autopilot system as the
actual end of the line, which can critically affect decision-making while driving.
-
Working with aggregated 3D scenes
An additional complexity came from the client’s data format: the scenes were organized not by frames but along a timeline. A static object was technically
present at every moment in time, and if processed frame by frame, the file would grow rapidly in size and take up more space. Any manual refinement
would have turned into an impractical and slow procedure.
Beyond geometry, it was also necessary to account for semantic relationships between lines: when one line transitioned into another, split, changed type, or merged.
-
Measuring confidence level
The project had a unique requirement: the visibility level (confidence level) had to be assigned to every vertex of the polyline. At the same time, the 3D
platform only supported attributes at the whole-object level.
-
Automatic measurement of occlusions and line breaks
If an occlusion exceeded 10 meters, the line had to be split. Manually measuring such distances was extremely time-consuming: each break had to be
measured with a “ruler” tool while switching to the “top view.” This made a custom measurement solution within the converter algorithm essential.
Once the data was converted into the final format, it needed to be converted back into a format readable by the platform, so that the results could be
visually verified. A verification converter needed to be created to finalize the output.
This project demonstrated how the 3D labeling process evolves into an engineering task at the R&D level, and how working with data leads
to the full scale development of solutions for autonomous driving systems. The outcome became an important milestone not only for the
client but also for advancing Keymakr s approach to 3D annotation of complex road scenes.