Learn how to successfully generate a SLAM point cloud by following these steps.
SLAM PROCESSING IS PURCHASED AS AN ADDED SUBSCRIPTION FOR YOUR ROCK LIDAR. PLEASE REACH OUT TO THE ROCK SUPPORT TEAM FOR MORE INFORMATION.
If you are collecting SLAM data with the Colorized SLAM V2 Dock please follow these instructions for equipment assembly and data collection.
How to assemble the SLAM hardware and capture SLAM data
- Get the equipment out of the SLAM backpack and assemble the handle. It should be tall enough to go over your head while holding. It works best when fully extended.
- Connect the cord to the battery (use the "Type 1 C In/Out" port). Connect the barrel adapter end of the cable to the bottom of the SLAM dock. Don't forget to attach your shoulder strap to your battery for easy carrying!
- Unscrew the camera from your R3 Pro and place back in the case for safe keeping.
- Leave the cover on the LiDAR until it is attached, but DO NOT hold the unit by the cover because it may slip out and fall.
- Attach the ROCK LiDAR unit to the SLAM dock.
- Now that your battery and LiDAR are connected to the SLAM base, you are ready to power on the unit.
- Use the 1 button method to turn on and begin data capture.
- Find a complex scene to calibrate your unit on. For example, the corner of a building or any area that has multiple surfaces. Do not try to calibrate for SLAM against a wall, corner of a room, or flat surface. The side of a building or just one wall indoors would not be a sufficient start point. See video below for details.
- Stand still with your unit capturing the complex scene for 30 seconds before proceeding with your scan. Be careful not to block the LiDAR scanner with your body.
- When you complete your scan, use the 1 button method.
When calibrating SLAM indoors, start the unit facing as many objects across a room as possible. Starting from the corner of a room facing the open field of view may work best.
SLAM Data Collection
Route Planning
SLAM processing relies on the LiDAR sensor and the inertial measurement unit (IMU) to estimate the location of the sensor ("trajectory") as you move. Creating a point cloud using SLAM processing can produce very accurate results but it is very dependent on the subject of the scan and how the operator scans the subject area.
"Drift" is your enemy with SLAM processing. Drift is when sensor movement occurs in real life, but the movement cannot be accurately determined using the data collected. During this movement mismatch between real-life and sensor data the processed trajectory (and therefore the resulting point cloud) will drift away from reality. This drift has two main causes:
1. Too little data
The most common cause of sensor drift occurs when the LiDAR sensor is pointed at a featureless object. This can happen when a directional laser is pointed at the sky, standing too close to and pointing directly at a flat wall, or getting into too small of a room with little or no objects. Under this situation the SLAM processing simply doesn't have enough information to detect movement accurately.
2. Accumulation of error
There is some degree of micro-drifts that occur over time when estimating your position using SLAM. As the length of your scan increases the micro-drifts can add up.
Now that you know the two main causes for "drift", let's look at techniques for Drift Mitigation. When using a 360 LiDAR like the R3 Pro you are much less likely to run into drift from pointing at a featureless wall. This is because even if you get close to the edge of a room, the 360-degree field of view of the sensor allows SLAM to see and localize using features in the rest of the room.
Other ideas on good feature collecting:
- You don't have to scan a building by pointing it straight at the building, you can just walk by it while scanning.
- Avoid areas with symmetrical planar surfaces (e.g. a small pedestrian tunnel with blank walls).
- Don't point the unit directly at a wall or similar surface from close up (within 6 meters or so).
- Be sure all doors are open before starting your scan.
Drift Mitigation: Loop Closure
As mentioned above, drift is also caused by the accumulation of micro-errors in the estimation of the sensor's trajectory. One aspect of this type of drift that we can exploit is that it accumulates over time. This means that earlier portions of a scan will contain less accumulated drift than later parts of a scan. Therefore, if we are able to tie the same object from an earlier part of a scan to a later part of the scan we can measure the amount of accumulated drift and apply corrections to the trajectory. This is called loop closure!
As you scan an area, loop back through a previously scanned area. The smaller the loops, the less accumulated error, and the better the loop closure will do at refining the trajectory between the beginning and end of the loop. Just be sure the loop closure portion overlaps by at least 5 meters.
Other ideas on good Loop Closure:
- Break large areas into smaller sections and be sure to practice loop closure between sections.
- Slow down! Walk slow and methodically. This is especially the case when turning the LiDAR sensor. Keep it slow and steady.
- We suggest performing a loop closure every 60-120 meters to avoid drift larger than a few inches.
Please capture at least one minute of SLAM data to allow for processing.
How to Process SLAM Data
-
- Make sure to register your unit and subscribe to SLAM Processing
- Open ROCK Desktop.
- Select "PROCESS ROCK DATA".
- Select your SLAM LiDAR Data by selecting the folder you copied from your USB and let ROCK Desktop unpack the data.
- Once your LiDAR has been unpacked by ROCK Desktop, select the SLAM checkbox below your sensor profile, then select the environment and capture mode and click, "NEXT" to process your SLAM trajectory.
If you change the Capture Mode, you will receive a notice about your capture mode not matching the current capture mode. You can either update the orientation to the ROCK default for the capture mode, or not.
Users also have the option to adjust the Start Offset and Max Duration of their dataset under the Advanced Settings options.
Once your SLAM trajectory has processed you can upload to the ROCK Cloud by clicking the "upload" button in the top right of your screen, or add GCPs to align your SLAM dataset.
-
- To add GCPs, select the second option down (GCP symbol) on the toolbar to the right, and click "INSERT CONTROL POINTS".
- Upload your CSV of GCPs in WGS84 coordinates and select the proper WGS84 UTM Zone that corresponds to the location of your SLAM dataset. GCPs USED TO ALIGN SLAM MUST BE IN THE WGS84 COORDINATE SYSTEM.
- Once your GCPs have been uploaded to ROCK Desktop, the next step will be to match up your GCPs with your SLAM LiDAR point cloud data. Follow along with our Knowledge Base article on SLAM GCP alignment in ROCK Desktop:
- When your GCPs have been aligned within WGS84 and they have been matched up to the point data you can continue with processing the point cloud by clicking "NEXT" near the bottom right corner and selecting "START PROCESSING".
- Once processing has finished you will see your generated point cloud and you can upload to your ROCK Cloud account!
- To add GCPs, select the second option down (GCP symbol) on the toolbar to the right, and click "INSERT CONTROL POINTS".