Skip to content

Scan Processing

Back at the workstation: filtering noise and artifacts from the raw cloud, registering multiple scans into one, georeferencing it to world coordinates, and the five-minute quality check that gates the first traced vector.

7 min read

A point cloud does not come out of the scanner clean. Chapter 7 explained how LiDAR works, Chapter 8 covered the field work, and Chapter 9 covered the ground control. This chapter covers what happens at the workstation: filtering the raw cloud, registering multiple scans into one, anchoring the result to the world, and verifying it is good enough to trace vectors on.

Filtering: removing what does not belong

The first processing step is filtering. The raw point cloud contains points you want (road surfaces, curbs, buildings, poles, signs) and points you do not (noise, moving objects, sensor artifacts).

Sensor noise. Every LiDAR produces some false returns: points that do not correspond to any real surface. These are typically isolated, with few or no neighbors within a plausible distance. A statistical outlier filter removes them: for each point, count the neighbors within a radius. If the count is below a threshold, discard the point.

Motion artifacts. Moving objects appear as streaks or smears. They are harder to remove automatically because a streak can look like a linear feature, a curb or a pole. The most reliable approach is to capture multiple passes: a forklift that moved during pass one is stationary or absent during pass two. Difference filters identify points that appear in only one pass and flag them for removal.

Reflection artifacts. Phantom points behind windows or mirrored surfaces are removed with a mirror detection filter: it looks for points that are geometrically implausible given the scanner position, points behind surfaces the laser could not have penetrated.

Ground filtering. Separating ground points from non-ground points is the most important filter in the HD mapping pipeline. Road surfaces, curbs, and lane markings are ground points. Buildings, poles, vehicles, and vegetation are above ground. The distinction matters because vectors are traced on the ground, not in the air.

The most common approach is cloth simulation filtering: imagine draping a cloth over the inverted point cloud. The cloth settles on the highest points, which in the inverted cloud are the lowest ground points. Everything above the cloth is non-ground. The algorithm is not perfect. Steep curbs and dense vegetation can fool it. But it correctly classifies 95% of points on a site like Harbor Yard. The remaining 5% are corrected by hand.

Registration: aligning multiple scans

If the site was captured in a single pass by a vehicle-mounted scanner, the SLAM system produces a single registered point cloud and registration is done. If the site required multiple passes, or a combination of vehicle and handheld scans, those separate clouds must be aligned into one.

The process is iterative closest point (ICP), the same algorithm Chapter 12 covers running online for localization. In practice, the operator does not run ICP manually. The processing software does it. What the operator does is verify the result.

Open the aligned cloud. Look at the overlap zones: the regions where two scans meet. If the registration is correct, the two scans form a single continuous surface. Curb edges align. Wall surfaces are flush. Road markings from one scan continue seamlessly into the next.

If the registration is wrong, you see it immediately: a curb that splits into two parallel lines offset by 10 cm. A wall that doubles. A road surface with a visible seam. The fix is to provide the ICP algorithm with a better initial alignment, typically by manually selecting three matching points in each cloud, and re-running the alignment.

Georeferencing: anchoring to the world

Chapter 9 covered the field half of earth-anchoring: how control coordinates get measured, and whether the map needs an anchor at all. This section is the workstation half: applying that anchor to the registered cloud.

A registered point cloud is internally consistent but floats in an arbitrary coordinate frame. Georeferencing places it in a known coordinate system so that every vector traced on it inherits real-world coordinates automatically.

When the map does need an anchor, the gold standard input is formal ground control: the surveyed markers of Chapter 9, precisely located in a known projection such as UTM zone 10N. This matters most for long-distance accuracy. A point cloud that only has to agree with itself can drift over hundreds of meters without anyone noticing. A georeferenced cloud agrees with the real world across the whole site, and with any other dataset referenced to the same frame.

Not every site needs that level of ceremony. For a small, self-contained site that a single point cloud scan can cover, fixed references already present in the scene can serve as ground truth alignment marks: the corner of a building, the base of a lamp post, a painted curb line, a bollard. Their world coordinates come from RTK readings captured during the scan, one per reference. The only requirement is that each reference be easy to identify in the scan data, a feature sharp and unambiguous enough that the operator can pick the same point in the cloud that exists in the world. A handful of well-chosen fixed references is enough to hold a single-scan site in place.

At Harbor Yard, both approaches are in play. The survey nail anchors the site through the rig’s RTK-corrected trajectory, as Chapter 9 described, and the RTK readings at the six landmarks tie the rest of the site to it. The loading dock interiors, scanned by handheld where the total station could not reach, were anchored to fixed features of the dock itself: column bases, dock-edge corners, the bolted rails of the dock levelers. Each was easy to find in the cloud and stable between capture sessions.

The georeferencing software finds the rigid transform (rotation, translation, and scale) that best aligns the reference positions in the point cloud with their known coordinates, whether those coordinates came from a surveyor or from a fixed feature. After transformation, the residual error at each reference tells you how good the alignment is. A residual that stands out far from the rest is the tell: that reference was misidentified, or it has moved since capture, and you investigate it before proceeding.

Quality checks: the five-minute verification

Before you trace a single vector, run these checks:

  1. Point density. Sample the road surface at several locations. Density should be uniform, with no patches below the minimum threshold for tracing (roughly 50 points per square meter for lane-level work).
  2. Coverage. Overlay a grid on the site plan. Every cell that contains a mapped feature must contain point cloud data. Empty cells are gaps.
  3. Registration. Zoom into overlap zones at high magnification. Curb edges, wall corners, and pole bases must align across scans.
  4. Georeferencing. Check the residuals at each GCP. If any GCP exceeds the accuracy budget, investigate before proceeding.
  5. Ground classification. Sample the ground/non-ground classification at several locations. Check that road surfaces are classified as ground and that low vegetation and curbs are not misclassified.

A technician who knows the site can run all five checks in under five minutes. The checks catch errors that would otherwise surface hours later, when the tracer finds the point cloud unusable and the pipeline restarts from processing.

What comes next

The next chapter covers SLAM: how the scanner’s motion is estimated, how the scans are aligned in real time, and why the chicken-and-egg problem of building a map while tracking your position within it is the intellectual heart of mobile robotics.

Found an error or have a suggestion?

Report an erratum or send feedback →

In this Part

Keep reading

Beyond the book

Build your own HD map.

Veer Studio is the spatial compiler this handbook teaches you to use. Download it and map a site, or tell us about your site and we will show you a validated map.

← Back to HD Map HandbookContinue to Simultaneous Localization and Mapping →