0% found this document useful (0 votes)
88 views64 pages

Manual

The document is a manual for the MANDEYE mobile mapping system, detailing its software components including Lidar odometry, multi-view terrestrial laser scan registration, and georeferencing methods. It provides step-by-step instructions for using the software, including downloading necessary files, processing Lidar data, and aligning scans using ground control points. Additionally, it includes case studies and answers to common user questions.

Uploaded by

Victor Ivan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
88 views64 pages

Manual

The document is a manual for the MANDEYE mobile mapping system, detailing its software components including Lidar odometry, multi-view terrestrial laser scan registration, and georeferencing methods. It provides step-by-step instructions for using the software, including downloading necessary files, processing Lidar data, and aligning scans using ground control points. Additionally, it includes case studies and answers to common user questions.

Uploaded by

Victor Ivan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

MANUAL v0.

72

February 1, 2025
ii
Contents

1 Introduction 1

2 Lidar odometry (step 1) 3

3 Multi view terrestrial laser scan registration (steps 2 and 3) 9


3.1 Step 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.2 Step 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

4 Georeferencing 27
4.1 Georeferencing with point cloud . . . . . . . . . . . . . . . . . 27
4.2 Georeferencing with WGS84toCartesian . . . . . . . . . . . . 29
4.3 Georeferencing with ground control points (GCP) . . . . . . . 37

5 End-use case studies 47


5.1 Precise forestry . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.1.1 Terrestrial laser scanning . . . . . . . . . . . . . . . . . 47

6 Questions from end users 59

iii
iv CONTENTS
Chapter 1

Introduction

This manual is prepared for mobile mapping system MANDEYE available


as open hardware project. The software is composed of:

• Lidar odometry (for initial trajectory calculation),

• Multi view terrestrial laser scan registration (for final trajectory calcu-
lation).

• Georeferencing with point cloud

To use the software click the link below:


[Link]
and download the latest version of files: [Link], lidar_odometry_step_1.exe,
multi_session_registration_step_3.exe and multi_view_tls_registration_step_2.exe.
Then put all of the downloaded files in one folder and proceed to next chapter.

1
2 CHAPTER 1. INTRODUCTION
Chapter 2

Lidar odometry (step 1)

This software calculates trajectory based on Lidar and IMU data. It based
on novel approach that I published in [Link]
article/S2352-7110(23)00314-X/pdf. Basically it is SAM (Smoothing
and Mapping) approach that is using multi view Normal Distributions Trans-
form in pose graph SLAM framework writen from scratch in Python (SymPy)
and C++ (Eigen). In Release v0.37 there is new option ’Consistency’ that
smooths the trajectory. You can use it before saving data (please follow
instructions in GUI).

3
4 CHAPTER 2. LIDAR ODOMETRY (STEP 1)

Figure 2.1: Step 1 - loading data.

Figure 2.2: Step 2 - select all *.csv and *.laz files from folder that MANDEYE
mobile mapping system created on USB drive.
5

Figure 2.3: Step 3 - press ’compute all’. Check console mean time and folder
’preview’.

Figure 2.4: Optional step: intermediate results are stored in ’preview’ folder.
6 CHAPTER 2. LIDAR ODOMETRY (STEP 1)

Figure 2.5: Optional step: You can watch the progress in open source Cloud-
Compare software by loading all *.laz files from ’preview’ folder.

Figure 2.6: Progress in console.


7

Figure 2.7: Final data in CloudCompare.

Figure 2.8: Final data ready for export.


8 CHAPTER 2. LIDAR ODOMETRY (STEP 1)

Figure 2.9: Exported final files.


Chapter 3

Multi view terrestrial laser scan


registration (steps 2 and 3)

3.1 Step 2

Figure 3.1: Load [Link] prepared by ’Lidar odometry’.

9
10CHAPTER 3. MULTI VIEW TERRESTRIAL LASER SCAN REGISTRATION (STEPS 2

Figure 3.2: Prepare field of view and change decimation to see more points.
Generate random colors option is recommended for next steps as every scan
will be in a different color.

Figure 3.3: Turn on Manual Pose Graph Loop Closure Mod, then choose two
different scans that share scanned objects, but difference in their numbers is
as big as possible e.g. when you made a loop during scanning and came back
to the same place after some time. Then click add edge.
3.1. STEP 2 11

Figure 3.4: Turn on manipulate active edge, turn on gizmo and align scan
to scan manually.

Figure 3.5: Once You are not capable of aligning more accurately, then turn
off gizmo and repetitively use ICP until scans align to the level at which
nothing can change anymore.
12CHAPTER 3. MULTI VIEW TERRESTRIAL LASER SCAN REGISTRATION (STEPS 2

Figure 3.6: Turn off manipulate active edge, click ”set initial poses as motion
model”, then click ”compute pose graph SLAM”.

Figure 3.7: Turn off Manual Pose Graph Loop Closure Mod and inspect if
everything is ok, if not, repeat steps from figures 3.3-3.6 (choose another pair
of scans, refine them and compute the pose graph SLAM).
3.1. STEP 2 13

Figure 3.8: Once the job is done click Save session button to save changes
to [Link] and export data to *.laz. The latter is Your map that can be
loaded by e.g. CloudCompare.
14CHAPTER 3. MULTI VIEW TERRESTRIAL LASER SCAN REGISTRATION (STEPS 2

Should a division of a session be needed, follow the steps


below that describe how to do this in multi view tls reg-
istration step 2 program which is part of the HDMap-
ping software:

Figure 3.9: Load the session as usual into step 2, prepare boundary scan
numbers that will outline parts of scans, when prepared toggle off the simple
gui.
3.1. STEP 2 15

Figure 3.10: Scroll down to list of scans and click hide all.
16CHAPTER 3. MULTI VIEW TERRESTRIAL LASER SCAN REGISTRATION (STEPS 2

Figure 3.11: Write indexes of the beginning scan and ending scan then click
Show selected. The scans between the indicated ones will appear. This step
may be repeated to build a session form many, separated fragments.
3.1. STEP 2 17

Figure 3.12: With desired scans selected scroll up, select save subsession and
click save session. Save the session to a new .json session file.

Figure 3.13: After a .json session file is saved, proceed with creating new
resso .reg file and saving poses to it.
18CHAPTER 3. MULTI VIEW TERRESTRIAL LASER SCAN REGISTRATION (STEPS 2

Figure 3.14: Do the same as in previous step with initial poses file - create
new file and save it.

3.2 Step 3

Figure 3.15: Add sessions that you want to align.


3.2. STEP 3 19

Figure 3.16: Choose [Link] files - effects of the lidar odometry step.
20CHAPTER 3. MULTI VIEW TERRESTRIAL LASER SCAN REGISTRATION (STEPS 2

Figure 3.17: Click load sessions button and wait for the chosen sessions to
load.
3.2. STEP 3 21

Figure 3.18: When all of the sessions have loaded activate Manual Pose
Graph Loop Closure Mode. If more than 2 sessions were loaded, deactivate
sessions till two of them remain. After that the button should appear.
22CHAPTER 3. MULTI VIEW TERRESTRIAL LASER SCAN REGISTRATION (STEPS 2

Figure 3.19: Choose 2 individual scans of the same area, one from the first
session, other from the second session and click add edge.
3.2. STEP 3 23

Figure 3.20: Click manipulate active edge, then gizmo and as in the step 2
align scans as precisely as possible and then repeatedly use ICP till nothing
changes.
24CHAPTER 3. MULTI VIEW TERRESTRIAL LASER SCAN REGISTRATION (STEPS 2

Figure 3.21: After aligning scans turn off Manual Pose Graph Loop Closure
Mode, click Optimize and if everything is ok then click Save results. Should
anything go wrong and sessions haven’t orientated as planned just use Revert
button. Repeat steps 3.13-3.15 until two sessions are aligned with a satisfying
effect.
3.2. STEP 3 25

Figure 3.22: At the end or in the middle of work you can save your project
to .json file, which can be loaded next time multi session registration step 3
is used.
26CHAPTER 3. MULTI VIEW TERRESTRIAL LASER SCAN REGISTRATION (STEPS 2
Chapter 4

Georeferencing

4.1 Georeferencing with point cloud

It is possible to set session as ground truth. Thus, optimization process (Pose


GRAPH SLAM) will not change its poses. Other sessions can be aligned
against ground truth session by adding edges.

Figure 4.1: Use multi view tls registration step2 program to open TLS files.

27
28 CHAPTER 4. GEOREFERENCING

Figure 4.2: Mark calculate offset for WHU-TLS, load AlignedPointCloud


from WHU-TLS (select all *.las/laz files in folder)
4.2. GEOREFERENCING WITH WGS84TOCARTESIAN 29

Figure 4.3: 1: save RESSO file, 2: update initial poses from RESSO file
(select file from 1), 3: update poses from RESSO file (select file from 1), 4:
set checkbox is ground truth, 5: save session.

4.2 Georeferencing with WGS84toCartesian


It uses [Link]
WGS84toCartesian. It is a small and efficient library written in modern C++
library to convert WGS84 latitude/longitude positions to/from Cartesian
positions using Mercator projection. If You have MANDEYE with GNSS
receiver, then it saves data in [Link] files. This is ASCII file with

timestamp lat lon alt hdop satelites-tracked height age time fix-quality

30 CHAPTER 4. GEOREFERENCING

Figure 4.4: Georeferencing step 1: load gnss files and convert from wgs84 to
Cartesian using Mercator projection.

Figure 4.5: Georeferencing step 2: mark all gnss files and load.
4.2. GEOREFERENCING WITH WGS84TOCARTESIAN 31

Figure 4.6: Georeferencing step 3: check/uncheck ’show GNSS correspon-


dences’ to see gnss-poses correspondences. Remark: You can use gizmo for
manual initial trajectory to GNSS alignment.

Figure 4.7: Georeferencing step 4: Check Manual Pose Graph Loop Closure
Mode, then set initial poses as motion model, then Compute Pose Graph
SLAM.
32 CHAPTER 4. GEOREFERENCING

Below is an example of how to download and create ground truth


data from exemplary ALS data (free polish ALS data available
as part of ISOK: [Link]
with scans prepared through HDMapping software. Figures from
4.8 to 4.12 serve only as an example of how the process of gathering and
preparing ALS data may look like.

To download ALS data Geoportal site will be used - [Link]


[Link].

Figure 4.8: After [Link] site is loaded choose


Geoportal krajowy tab.
4.2. GEOREFERENCING WITH WGS84TOCARTESIAN 33

Figure 4.9: After Geoportal has loaded, on the right side of the screen select
Dane do pobrania, then Dane pomiarowe NMT, where 2 options are possible.

Figure 4.10: Whenever it is possible EVRF LIDAR version should be chosen


over KRON36 version, as the former is more current than the latter. As can
be seen on the screen there are parts without EVRF version and in such
cases KRON86 is the only option.
34 CHAPTER 4. GEOREFERENCING

Figure 4.11: When LIDAR has been chosen zoom in to the map until tiles
are seen. To download simply click on the tile with left mouse button and
choose WMS, LIDAR.

Figure 4.12: Then choose the newest version (usually the highest one) and
use the link to download .laz file. Repeat this and previous step for every
tile that covers your area of interest.
4.2. GEOREFERENCING WITH WGS84TOCARTESIAN 35

Figure 4.13: If merging of downloaded tiles is needed, I recommend us-


ing LAStools software. Download [Link] from release page (https:
//[Link]/LAStools/LAStools/releases). From folder bin/ extract
[Link] and put it in the folder where tile .laz files are stored. Open
windows command prompt, move to directory with .laz files and write com-
mand: [Link] -i *.laz -o ¡your output .laz file name¿.laz
36 CHAPTER 4. GEOREFERENCING

Figure 4.14: Open step 2 of this manual (3.1), unmatch simple gui, select
calculate offset and load WHU-TLS data (many laz./las. files may be cho-
sen).
4.3. GEOREFERENCING WITH GROUND CONTROL POINTS (GCP)37

Figure 4.15: After loading scans successfully check ground truth option and
save session as new .json file that contains all loaded scans. Now these scans
may be loaded to serve as ground truth session that other scans can be
aligned to.

4.3 Georeferencing with ground control points


(GCP)
Prepare at least 3 ground control points with e.g. GPS receiver (Longitude,
Latitude, Altitude), see figures 4.16, 4.17, 4.18. Prepare GCP in local co-
ordinate system using arbitrary chosen projection, thus each one has x, y, z
coordinates. Please apply offset to GSPs and store it to export data in global
coordinate system.
During survey please place MANDEYE on top of each GCP (for at least
30 seconds) that LiDAR xy center will be exactly in the xy center of GCP
(see figures 4.19 and 4.20). The resulting trajectory should be as shown in
figure 4.22. Measure LiDAR optic center height above ground as shown in
figure 4.21. Adding GCPs to the system is done via trajectory node picking
(see figure 4.23). First, check box ’Show ground control point gui’ in ’Single
session processing’ window. Second, check box ’picking trajectory node and
38 CHAPTER 4. GEOREFERENCING

adding GCP mode’. Third, read GUI help and pick GCP corresponding node
of the trajectory with middle mouse button and pressing ’ctrl’. Fourth, add
GCP observation to the system by clicking ’Add Ground Control Point’ (see
figure 4.24). Now it is possible to change GCP name, uncertainty (sigma
x, sigma y, sigma z), coordinates (x, y, z) and LiDAR height above ground.
Now it is time to manual transformation of the trajectory using GIZMO (see
figures 4.25 and 4.26). Uncheck ’manipulate only marked gizmo’ to move all
nodes of the trajectory that all GPCs are in proper positions. You can save
session to json to store all GPS in the project file.
Important notice: starting from v0.59 you can align session to all GCPs
with button ’Register session to Ground Control Points (trajectory is rigid)’
placed in the end of GUI window ’Ground Control Point’. This functionality
is preserving the shape of the trajectory, thus the consecutive relative poses
will not change. It is recommended to use it before applying ’Manual Pose
Graph Loop Closure Mode’.
All GPCs are considered in ’Manual Pose Graph Loop Closure Mode’, so
they will converge assuming assigned uncertainty. To export point cloud to
global reference system applied offset has to be provided in GUI (see figure
4.27). Thus, for all point the offset transformation will applied during export.

Figure 4.16: Ground control points - example 1.


4.3. GEOREFERENCING WITH GROUND CONTROL POINTS (GCP)39

Figure 4.17: Ground control points - example 2.

Figure 4.18: Ground control points - example 3.


40 CHAPTER 4. GEOREFERENCING

Figure 4.19: LiDAR xy center is exactly in the xy center of GCP.


4.3. GEOREFERENCING WITH GROUND CONTROL POINTS (GCP)41

Figure 4.20: LiDAR xy center is exactly in the xy center of GCP.


42 CHAPTER 4. GEOREFERENCING

Figure 4.21: Measurement of LiDAR optic center height above ground (GCP
ground plane).
4.3. GEOREFERENCING WITH GROUND CONTROL POINTS (GCP)43

Figure 4.22: Trajectory with ground control point.

Figure 4.23: GCP picking.

Figure 4.24: Adding GCP observation.


44 CHAPTER 4. GEOREFERENCING

Figure 4.25: Manual transformation of the trajectory using GIZMO (un-


check manipulate only marked gizmo to move all nodes of the trajectory).

Figure 4.26: Found proper transformation GCPs to trajectory nodes.


4.3. GEOREFERENCING WITH GROUND CONTROL POINTS (GCP)45

Figure 4.27: Applying offset to export point cloud in global reference system.
46 CHAPTER 4. GEOREFERENCING
Chapter 5

End-use case studies

5.1 Precise forestry

5.1.1 Terrestrial laser scanning

Figure 5.1: Hardware: Mandeye Mission Recorder + Livox AVIA + tripod.

47
48 CHAPTER 5. END-USE CASE STUDIES

Figure 5.2: Hardware: Mandeye Mission Recorder + Livox AVIA + tripod.

Figure 5.3: Hardware: Mandeye Mission Recorder + Livox AVIA + tripod.


5.1. PRECISE FORESTRY 49

Figure 5.4: Data collection strategy: multiple STOP SCANS around the
tree.

Figure 5.5: Objective: registered data.


50 CHAPTER 5. END-USE CASE STUDIES

Figure 5.6: Objective: registered data.

Figure 5.7: Step1: open ’multi view tls registration step 2’ program version
¿= 0.72 and umark ’simple gui’.
5.1. PRECISE FORESTRY 51

Figure 5.8: Step2: Load data using button ’load AlignedPointCloud from
WHI-TLS’.

Figure 5.9: Step3: Mark all *.laz files collected by MANDEYE MISSION
RECORDER.
52 CHAPTER 5. END-USE CASE STUDIES

Figure 5.10: Step4: Read info.

Figure 5.11: Step5: Change ’Points render subsampling’ and press ’generate
random colors’.
5.1. PRECISE FORESTRY 53

Figure 5.12: Step6: Press ’hide all’, check first and second point cloud, check
’gizmo’ for second point cloud.

Figure 5.13: Step7: Move second point cloud by gizmo and press ’1 ICP’ to
align second point cloud to previous one.
54 CHAPTER 5. END-USE CASE STUDIES

Figure 5.14: Step8: Uncheck ’gizmo’ then press ’1 ICP’ !.

Figure 5.15: Step9: Repeat this procedure for all consecutive pairs of scans.
5.1. PRECISE FORESTRY 55

Figure 5.16: Step10: Check ’Normal Distributions Transform’ and press


’ndt optimization’.

Figure 5.17: Step12: If You are not satisfied with the result change bucket
size to 1,1,1 and press ’ndt optimization’.
56 CHAPTER 5. END-USE CASE STUDIES

Figure 5.18: Step13: If You are not satisfied with the result change bucket
size to 0.75,0.75,0.75 and press ’ndt optimization’.

Figure 5.19: Step14: If You are not satisfied with the result change bucket
size to 0.5,0.5,0.5 and press ’ndt optimization’.
5.1. PRECISE FORESTRY 57

Figure 5.20: Step15: If You are not satisfied with the result change bucket
size to 0.3,0.3,0.3 and press ’ndt optimization’.

Figure 5.21: Step16: Save result as RESSO file.


58 CHAPTER 5. END-USE CASE STUDIES

Figure 5.22: Step17: Load data in full resolution. Unmark ’simple gui’,
unmark ’decimation during load’, load all data like in step2, update poses
from RESSO file.

Figure 5.23: Step18: Save full resolution data using button ’save all marked
scans to laz (as one global scan), You can play with point cloud by using
CloudCompare.’
Chapter 6

Questions from end users

Do you have recommendations on how to best record data?


I recommend stop/scan mode for most accurate mapping. Continuous map-
ping is for increase the time of the survey.
How much distance can be between two consecutive start/stop ac-
quisitions?
I suggest not more than 10 meters.
Do they need to overlap? To which degree?
Stop/scans should be overlapped at least 50%.
Continuous scanning: can the sensor change its tilt/angle during
the recording phase? Or does it assume being in a upright position
all the time?
I suggest that MANDEYE is somehow a upright position all the time.
How “fast” am I allowed to move (I actually did a rather slow
walk).
I was tested it up to 8 km/h
Can the sensor change height while recording?
Yes.
Why first scan is blurry?
You should follow [Link]
blob/main/doc/manual/manual_v0_2/mandeye_dev_manual_v0_2.pdf - sec-
tion 2.2 turn on continous scanning (MANDEYE DEV/PRO)
Do you have a video of operating MANDEYE DEV?
I am planning launching MANDEYE YouTube channel ASAP.
Why there are 2 operations of stopping the scan?
MANDEYE is working within single session scheme. It means all data will
be recorded to one folder. MANDEYE will make new folder after turn of
turn on procedure.
The usb that came with mandeye DEV has files in it, do i need to

59
60 CHAPTER 6. QUESTIONS FROM END USERS

format it?
If You have MANDEYE from me (januszbedkowski@[Link]) then Re-
lease programs and manuals are on USB. Please do not format it, just use it.
How much can i scan in one session?
I suggest not more than 5km. It will be much easier to work with such ses-
sion. Obviously long single session can be split into sub sessions, so dont
worry if You make any mistake during data collection.

You might also like