Often I obtain LiDAR data for concept studies and conventional survey (in .dxf format) over a small portion of this. The LiDAR typically covers the broader area and is used for broader studies, catchments, optioneering and concept design. The survey may either be existing survey (for other projects) and provided with the LiDAR, or obtained subsequently specifically for detailed design.

I find that whilst the LiDAR data looks relatively correct, that when compared to the more accurate conventional survey there are often discrepancies. Often the supplier of the data is not familiar with datums or the history of the data, which may also be the cause of some of the discrepancies.

If the discrepancy is relatively uniform, it is relatively straightforward to adjust the LiDAR data. However often this is not the case.

Is there a method to "adjust" LiDAR data to more accurate survey data? I imagine it would be similar to georeferencing of aerial imagery, but in three dimensions.

I understand that it will never be as accurate, but even if it just looks better I would be happy.


What sort of transformation options are available to you depends on whether the LiDAR data in question was collected by a terrestrial (fixed position) scanner or some sort of mobile or airborne platform. If it was collected terrestrially, the answer also depends on whether the data you are speaking of was collected from one scan or multiple scans. Below I lay out a few options, depending on the source of your data:

  1. In terrestrial laser scanning (TLS), data from a single scan can only modified via a single rigid transformation; the transformation is usually given as a 4x4 transformation matrix. If the "inaccurate" LiDAR data that is causing you grief is from a single TLS scan, than you can "correct" those data by applying a new rigid transformation. Determining the correct rigid transformation to apply is a moderately difficult problem for which there are many answers; you could use Iterative Closest Point, some sort of planar feature matching, least squares adjustment of control points, guess and check, etc.

    Many pieces of commercial software can apply a rigid transformation to a large set of points; the free and open source PDAL (pdal.io) package can as well, via its transformation filter: http://www.pdal.io/stages/filters.transformation.html.

    Disclosure: I am the author of PDAL's transformation filter

    Aside: this is why most TLS surveys use scan tiepoints, usually retroreflective objects in the scan area, to link a given TLS survey to known control points and therefor improve the survey accuracy.

  2. If the LiDAR data in question is from more than one TLS scan, then you can adjust each scan's rigid transformation to bring the data into line with your known control, as described above. However, if you are only provided the LiDAR data as a single product, and not as the individual scan files with the existing transformation matrices, then you are most likely out of luck — it is very hard to pick apart the individual scans from a single product file. Your best bet would probably be to fall back to #1 and rigidily transform the entire dataset to get a better registration — it will not be good, but it might be better.

  3. If your LiDAR data is from a mobile or airborne scan, then you're entering another world where each point's position is dependent not only on the reading from the LiDAR unit, but also whatever Inertial Measurement Unit (IMU) was used to locate the LiDAR scanner itself. Correcting for these errors is hard, and I have less experience in this realm (I have worked mostly with TLS surveys). If I were in this situation, with poorly-registered mobile or airborne data, I would punt and take it back to the vendor.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.