header object

How Keymakr built custom
high-precision data solutions
to help a global automotive company handle complex
3D labeling of road markings

Automotive, autonomous driving

Services:
Overview:

Intro

The client is one of the world’s largest tech corporations, ranked among the top 500 companies by market capitalization. It invests heavily in autonomous driving technologies.

The models and algorithms developed by the company enable vehicles to make reliable, real-time decisions. As part of this initiative, the company approached Keymakr to create high-precision 3D labeling of road markings based on LiDAR data, essential for training and validating its autopilot systems.

The challenge

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.

  • Reverse сonverter

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.
The solution
Phase 1. Continuous polylines and automatic overlap removal

In 2D annotation, a line can simply be “broken” at the overlap and continued afterward. However, in 3D, even a small inaccuracy can significantly impact the entire model. If the autonomous system interprets a tiny “gap” in the data as the end of a lane, it may miscalculate the intended trajectory.

The first key solution was to draw each line as a single continuous object and then automatically remove the segments that fell within the overlapping areas. This approach increased both speed and consistency. The method produced cleaner, more coherent data and eliminated the risk of the model misinterpreting overlaps as breaks in the road structure.

Phase 2. Working inside an aggregated 3D scene

In this project, all 3D workflows were carried out in a specialized 3D platform and our official technology partner.

To overcome the limitations of frame by frame labeling, the team used Segments.ai s merge mode to combine all frames into a single three dimensional scene. This transformed a stream of disconnected images into a dense point cloud representation, allowing the road to be viewed as a whole instead of in fragments.

Instead of thousands of isolated frames, the team now worked with a unified spatial model of the entire route, complete with lane lines, overlaps, local markings, curbs, signs, guardrails, and all surrounding objects within approximately 10 meters of the road.

This dramatically improved labeling accuracy:

  • road edges became easier to interpret
  • lines appeared smoother
  • transitions between marking types were clearer and more logical
  • the entire scene gained a coherent semantic structure

At this stage, nearly all lines were mapped, including complex segments involving splits, merges, or surface type transitions. It was within the aggregated 3D scene that the “skeletal structure” of the future annotation was formed.

Once the scene was fully constructed in merge mode, the team switched back to frame by frame editing, using it only for refining areas with overlaps. Operators marked line start and line end points, as well as overlap zones, using polyline or point objects. The geometry of the lines remained unchanged throughout the process, keeping the file compact and preventing the kinds of errors that often occur with large scale frame level modifications.

Phase 3. Confidence level points

Assigning a visibility level to every single vertex of each polyline was one of the unique key requirements of this project.

The 3D platform did not support this functionality by default. A polyline could carry several attributes, but all attributes applied to the entire line never to individual segments or points.

To meet this expectation, the Keymakr team developed a custom system called Confidence level points, which are small local objects placed near each polyline vertex to indicate how well that specific section is visible.

Each point had one of three states:

  • Normal - the line is fully visible
  • Low confidence - noticeable noise or distortion
  • Interpolated - the section is occluded and must be interpolated

This resulted in a fully functional subsystem that provided the exact level of granularity the client s model required. It also became a universal solution that can now be deployed across future 3D projects.

Phase 4. Connection points and structural consistency

For the autopilot system to correctly understand where one line transitions into another, a mechanism was required to link these lines explicitly. The client s documentation specified a special object type connection points, which marked transition locations and stored information about which lines should be connected at each point.

The challenge, however, was that during overlap processing, long lines could be automatically split into multiple segments. Each new segment received its own unique ID. If these IDs were used directly, the logical structure of the network would collapse.

To solve this, the team carefully configured the attributes so the converter could correctly associate the intended lines. Additional logic was implemented to search for the nearest line segments based on their spatial coordinates, reconstruct their relationships, and assign them a unified master ID, effectively merging all fragments back into a single original line.

This ensured perfect structural consistency even in scenarios with complex breaks or long overlaps. Without this mechanism, the line network would have fragmented into a random collection of disconnected segments.

Phase 5. Automatic overlap measurement and line splitting

The client required that lines be automatically split whenever an overlap exceeded 10 meters. In a 3D environment, estimating the length of an occluded segment “by eye” is time consuming, so the team embedded a measurement algorithm directly into the converter.

The algorithm calculated the exact length of each overlapped section and, when necessary, divided the line into separate parts, generating new IDs while preserving the correct master ID relationships.

This approach removed a significant manual burden from operators and eliminated the possibility of human error, a critical factor in tasks where even small inaccuracies could cause major issues downstream.

Phase 6. Validation of individual frames

When global lines are drawn across the entire project, some of them may extend hundreds of meters within a single frame. This model required a specific visibility of 320 meters along the road and 80 meters across in width. So, Keymakr had to hide any objects and lines that fell outside the visibility limits.

To achieve this, the operator placed a cuboid at the vehicles position (the coordinate origin and road center), oriented along the driving direction. In the converter, this cuboid was automatically “expanded” to the required 320×80 meters. A filtering step then removed all non-valid objects lying outside the visibility boundaries defined by the client.

During export, this helper cuboid was removed entirely, leaving behind only the correctly validated data within the required viewing range.

Phase 7. Bidirectional converter and reverse validation

After the main annotation process was completed, all data were converted into the final delivery format. This new format had to be re imported into the 3D platform for visual inspection.

To achieve that, the solutions team developed a reverse converter, which enabled:

  • reconstructing the full structure of lines and their key points
  • visualizing splits, transitions, and complex connections
  • verifying the correctness of IDs and master IDs
  • ensuring that automated operations had not distorted the final dataset

This tool became another major technical achievement of the project. It provided the client with complete transparency at every stage of the pipeline. Today, Keymakr can build reverse converters for virtually any data format, a crucial capability when working with complex 3D datasets.

Results

Despite the scale of the task and the complexity of the data, the project was delivered on time and with high accuracy.
The most significant outcome was not only the completed labeling itself, but the new technological infrastructure built throughout the project.
These solutions increased labeling speed by 21% and ensured the structural integrity and consistency required for autonomous driving algorithms.
The client received a correct, semantically rich, and geometrically precise 3D annotation dataset fully aligned with their technical KPIs. Meanwhile, Keymakr gained a new suite of tools and methods that can now be applied to other projects involving complex 3D and LiDAR data.
“What started as a seemingly simple task - just ‘label the roads’ - evolved into a comprehensive technical solution involving new object types, algorithms, and structural logic essential for next-generation autopilot systems. I’m incredibly proud of our team’s innovative approach and unconventional thinking. And it’s especially rewarding to know that this helped the client’s autonomous system better understand the real world and navigate it more safely.”

Zoya Boyko, Keymakr PM

Reviews
on

down-line
high perfomer
high perfomer emea
leader
star
star
star
star
star

"Delivering Quality and Excellence"

The upside of working with Keymakr is their strategy to annotations. You are given a sample of work to correct before they begin on the big batches. This saves all parties time and...

star
star
star
star
star

"Great service, fair price"

Ability to accommodate different and not consistent workflows.
Ability to scale up as well as scale down.
All the data was in the custom format that...

star
star
star
star
star

"Awesome Labeling for ML"

I have worked with Keymakr for about 2 years on several segmentation tasks.
They always provide excellent edge alignment, consistency, and speed...

More
cases

down-line

Automotive

Delivering scalable traffic detection data for a major automotive company

MusicTech

Providing consensus-based media monitoring to help SoundAware protect the intellectual property rights of creators

Robotics

Helping Cognex with high-quality OCR and object detection datasets for industrial automation