diff --git a/README.md b/README.md index 34dd9580..2dda9e1a 100644 --- a/README.md +++ b/README.md @@ -112,14 +112,18 @@ More information can be found in: # Documentation -- [Applications](./documentation/Applications/README.md) -- [Benchmarks](./documentation/Benchmarks/) -- [CompatibleCommunityProjects](./documentation/CompatibleCommunityProjects/README.md) -- [Hardware](./documentation/HARDWARE/README.md) -- [Build and Installation](./documentation/InstallationGuide/README.md) -- [KnowledgeBase](./documentation/KnowledgeBase/README.md) -- [Tools](./documentation/Tools/README.md) -- [Videos](./documentation/VIDEOs/README.md) +The knowledge base (applications, hardware, build guide, tools, videos, +publications and the LiDAR/LIO odometry benchmark suite) now lives in the +project wiki: **https://github.com/MapsHD/HDMapping/wiki** + +- [Applications](https://github.com/MapsHD/HDMapping/wiki/Applications) +- [Benchmarks](https://github.com/MapsHD/HDMapping/wiki/Benchmarks) +- [Compatible Community Projects](https://github.com/MapsHD/HDMapping/wiki/Compatible-Community-Projects) +- [Hardware](https://github.com/MapsHD/HDMapping/wiki/Hardware) +- [Build and Installation](https://github.com/MapsHD/HDMapping/wiki/Build-and-Installation) +- [Knowledge Base](https://github.com/MapsHD/HDMapping/wiki/Knowledge-Base) +- [Tools](https://github.com/MapsHD/HDMapping/wiki/Tools) +- [Videos](https://github.com/MapsHD/HDMapping/wiki/Videos) # Our datasets - [[HUMANOID-LIO-DATASET]](https://zenodo.org/records/21318128) diff --git a/documentation/Benchmarks/LANE_DETECTION/bib/S0925231226002614.bib b/bib/S0925231226002614.bib similarity index 100% rename from documentation/Benchmarks/LANE_DETECTION/bib/S0925231226002614.bib rename to bib/S0925231226002614.bib diff --git a/documentation/Benchmarks/LIDAR_POINT_REPRESENTATIONS/bib/lemke2026vernata.bib b/bib/lemke2026vernata.bib similarity index 100% rename from documentation/Benchmarks/LIDAR_POINT_REPRESENTATIONS/bib/lemke2026vernata.bib rename to bib/lemke2026vernata.bib diff --git a/documentation/Applications/README.md b/documentation/Applications/README.md deleted file mode 100644 index bd1a9580..00000000 --- a/documentation/Applications/README.md +++ /dev/null @@ -1,41 +0,0 @@ -# Possible applications: -- autonomous driving (ultimate goal for this project) -- caving -- speleology -- surveying -- culture heritage -- environmental management -- geology -- urban search and rescue -- urban mapping -- ground truth for AGV (Automated Guided Vehicle) -- mobile robot navigation -- precision forestry -- agricultural robotics -- underground mining -- education -- entertainment -- forensics -- critical infrastructure inspection -- space exploration -- protection systems -- digital twin content generation -- automation in construction -- etc... - -![largescalemapping1](images/100-2.gif) -City level survey (perspective view). -![largescalemapping2](images/100.gif) -City level survey (top view). - -![largescalemapping1](images/a.jpg) -3D data from aerial LiDAR mapping. -![largescalemapping2](images/b.jpg) -Aerial LiDAR fused with ground MANDEYE data (fixed issue with missing elevations). - -![largescalemapping1](images/a0.jpg) -Construction site. -![largescalemapping2](images/a6.jpg) -Construction site augmented with MANDEYE 3D data. -![largescalemapping2](images/change.jpg) -Construction progress monitoring, scale blue - smallest changes, red - largest changes. diff --git a/documentation/Applications/images/100-2.gif b/documentation/Applications/images/100-2.gif deleted file mode 100644 index fd2461ec..00000000 Binary files a/documentation/Applications/images/100-2.gif and /dev/null differ diff --git a/documentation/Applications/images/100.gif b/documentation/Applications/images/100.gif deleted file mode 100644 index eeb40b1d..00000000 Binary files a/documentation/Applications/images/100.gif and /dev/null differ diff --git a/documentation/Applications/images/a.jpg b/documentation/Applications/images/a.jpg deleted file mode 100644 index 78f4049d..00000000 Binary files a/documentation/Applications/images/a.jpg and /dev/null differ diff --git a/documentation/Applications/images/a0.jpg b/documentation/Applications/images/a0.jpg deleted file mode 100644 index f474350b..00000000 Binary files a/documentation/Applications/images/a0.jpg and /dev/null differ diff --git a/documentation/Applications/images/a6.jpg b/documentation/Applications/images/a6.jpg deleted file mode 100644 index 3c9f7972..00000000 Binary files a/documentation/Applications/images/a6.jpg and /dev/null differ diff --git a/documentation/Applications/images/b.jpg b/documentation/Applications/images/b.jpg deleted file mode 100644 index aa79a324..00000000 Binary files a/documentation/Applications/images/b.jpg and /dev/null differ diff --git a/documentation/Applications/images/change.jpg b/documentation/Applications/images/change.jpg deleted file mode 100644 index c0135ebd..00000000 Binary files a/documentation/Applications/images/change.jpg and /dev/null differ diff --git a/documentation/Benchmarks/AI_LIO+/README.md b/documentation/Benchmarks/AI_LIO+/README.md deleted file mode 100644 index 6e773a39..00000000 --- a/documentation/Benchmarks/AI_LIO+/README.md +++ /dev/null @@ -1,3 +0,0 @@ -# AI_LIO+ (no assignee) - -- https://www.sciencedirect.com/science/article/pii/S0925231226017157?via%3Dihub ([[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/AI_LIO_PLUS_Survey.bib), no source code - survey article containing links to methods) diff --git a/documentation/Benchmarks/AI_LIO/README.md b/documentation/Benchmarks/AI_LIO/README.md deleted file mode 100644 index f7503f4c..00000000 --- a/documentation/Benchmarks/AI_LIO/README.md +++ /dev/null @@ -1,8 +0,0 @@ -# AI_LIO - -- https://www.sciencedirect.com/science/article/abs/pii/S0921889025001903 (2025, Elsevier RAS, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/MFS-LO.bib), no source code) -- https://www.mdpi.com/2072-4292/17/15/2661 (2025, MDPI Remote Sensing, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/UnMinkLO-Net.bib), DNN model not available) -- https://github.com/IRMVLab/TransLO (2023, AAAI, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/TransLO.bib)) -- https://github.com/IRMVLab/PWCLONet (2021, IEEE/CVF CVPR, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/PWCLO-Net.bib)) -- https://github.com/IRMVLab/DSLO (2024, arXiv, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/DSLO.bib), DNN model not available) -- https://superodometry.com/supermap \ No newline at end of file diff --git a/documentation/Benchmarks/AUTONOMOUS_VEHICLE/README.md b/documentation/Benchmarks/AUTONOMOUS_VEHICLE/README.md deleted file mode 100644 index 0cf90b2d..00000000 --- a/documentation/Benchmarks/AUTONOMOUS_VEHICLE/README.md +++ /dev/null @@ -1 +0,0 @@ -https://github.com/WATonomous/wato_monorepo \ No newline at end of file diff --git a/documentation/Benchmarks/DYNAMIC_POINTS_REMOVAL/README.md b/documentation/Benchmarks/DYNAMIC_POINTS_REMOVAL/README.md deleted file mode 100644 index e69de29b..00000000 diff --git a/documentation/Benchmarks/LANE_DETECTION/README.md b/documentation/Benchmarks/LANE_DETECTION/README.md deleted file mode 100644 index 74a29dea..00000000 --- a/documentation/Benchmarks/LANE_DETECTION/README.md +++ /dev/null @@ -1,3 +0,0 @@ -Hongrui Kou, Ziyu Wang, Zhouhang Lv, Cheng Wang, Zixuan Guo, Yuxin Zhang, Lane detection for autonomous driving: A comprehensive review, ([[BIB]](https://github.com/MapsHD/HDMapping/blob/main/documentation/Benchmarks/LANE_DETECTION/bib/S0925231226002614.bib), https://www.sciencedirect.com/science/article/abs/pii/S0925231226002614) - - diff --git a/documentation/Benchmarks/LIDAR_BA/README.md b/documentation/Benchmarks/LIDAR_BA/README.md deleted file mode 100644 index d036882d..00000000 --- a/documentation/Benchmarks/LIDAR_BA/README.md +++ /dev/null @@ -1,3 +0,0 @@ -- https://github.com/xuankuzcr/Global-LVBA -- https://arxiv.org/pdf/2410.08935 -- https://ieeexplore.ieee.org/abstract/document/11015251 diff --git a/documentation/Benchmarks/LIDAR_POINT_REPRESENTATIONS/README.md b/documentation/Benchmarks/LIDAR_POINT_REPRESENTATIONS/README.md deleted file mode 100644 index 799edcab..00000000 --- a/documentation/Benchmarks/LIDAR_POINT_REPRESENTATIONS/README.md +++ /dev/null @@ -1 +0,0 @@ -- [1] https://github.com/rai-opensource/vernata (2026, IROS, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/documentation/Benchmarks/LIDAR_POINT_REPRESENTATIONS/bib/lemke2026vernata.bib)) diff --git a/documentation/Benchmarks/LIO+/README.md b/documentation/Benchmarks/LIO+/README.md deleted file mode 100644 index 30508d54..00000000 --- a/documentation/Benchmarks/LIO+/README.md +++ /dev/null @@ -1,45 +0,0 @@ -# LIO+ Benchmark: - -## Assignee : Michal W. - -## Checked - -| Project | Original repository | Work / test repository | Work / test docker | Tested on dataset | Paper | Year | -|---|---|---|---|---|---|---| -| COIN-LIO | [COIN-LIO](https://github.com/ethz-asl/COIN-LIO) | [mw-COIN-LIO](https://github.com/mwlasiuk/mw-COIN-LIO) | [Dockerfile](https://github.com/mwlasiuk/mw-COIN-LIO-docker) | [Dataset](https://drive.google.com/drive/folders/1aYDiMkVfTCyCR7pwHDfYItw0eWMeHqVs) | [Paper](https://arxiv.org/pdf/2310.01235) | 2024 | -| Coco-LIC | [Coco-LIC](https://github.com/APRIL-ZJU/Coco-LIC) | [mw-Coco-LIC](https://github.com/mwlasiuk/mw-Coco-LIC) | [Dockerfile](https://github.com/mwlasiuk/mw-Coco-LIC-docker) | [Dataset](https://onedrive.live.com/?id=3E715B7AA136191A%21s09ed4aaae0cd42eaa8798bdb2929679d&cid=3E715B7AA136191A&redeem=aHR0cHM6Ly8xZHJ2Lm1zL2YvYy8zZTcxNWI3YWExMzYxOTFhL0VxcEs3UW5ONE9wQ3FIbUwyeWtwWjUwQmp6M3B5SjBrd3l2d3BCQkx0elI0YlE%5FZT1UcVBOOEU)| [Paper](https://arxiv.org/pdf/2309.09808) | 2023 | -| r3live | [r3live](https://github.com/hku-mars/r3live) | [mw-r3live](https://github.com/mwlasiuk/mw-r3live) | [Dockerfile](https://github.com/mwlasiuk/mw-r3live-docker) | [Dataset](https://onedrive.live.com/?redeem=aHR0cHM6Ly8xZHJ2Lm1zL2YvYy8zZTcxNWI3YWExMzYxOTFhL0VxcEs3UW5ONE9wQ3FIbUwyeWtwWjUwQmp6M3B5SjBrd3l2d3BCQkx0elI0YlE%5FZT1UcVBOOEU&id=3E715B7AA136191A%21s09ed4aaae0cd42eaa8798bdb2929679d&cid=3E715B7AA136191A) | [Paper](https://arxiv.org/pdf/2109.07982) | 2021 | -| LVI-SAM | [LVI-SAM](https://github.com/TixiaoShan/LVI-SAM) | [mw-LVI-SAM](https://github.com/mwlasiuk/mw-LVI-SAM) | [Dockerfile](https://github.com/mwlasiuk/mw-LVI-SAM-docker) | [Dataset](https://drive.google.com/drive/folders/1q2NZnsgNmezFemoxhHnrDnp1JV_bqrgV) | [Paper](https://arxiv.org/pdf/2104.10831) | 2021 | - -## Checked but failing: -| Project | Original repository | Work / test repository | Work / test docker | Tested on dataset | Paper | Year | -|---|---|---|---|---|---|---| -| FAST-LIVO2 | [FAST-LIVO2](https://github.com/hku-mars/FAST-LIVO2) | [mw-FAST-LIVO2](https://github.com/mwlasiuk/mw-FAST-LIVO2) | [Dockerfile](mw-FAST-LIVO2-docker) | Invalid dataset link : error 404 | [Paper](https://arxiv.org/pdf/2408.14035) | 2024 | - -\* place dataset __bag__ files in desired directory and remember their path as this directory must be mounted to docker image - -## To check : - -| Project | Repository| Note| -|---|---|---| -| Ground-Fusion2 |[Ground-Fusion2](https://github.com/sjtuyinjie/Ground-Fusion2) | - | -| Ultra-Fusion| [Ultra-Fusion](https://github.com/sjtuyinjie/Ultra-Fusion) | Successor of Ground-Fusion2 | -| RI-LIO| [RI-LIO](https://github.com/RoboFeng/RI-LIO) | Invalid dataset link : error 404 | - - -## No code published: - -| Project | Paper | -|---|---| -| RELEAD: Resilient Localization with Enhanced LiDAR Odometry in Adverse Environments | [Paper](https://arxiv.org/pdf/2402.18934) | - - -## Possible datasets: -- https://drive.google.com/drive/folders/1hEn3sBAvQhSdUFnGMZCCv-W0Ynj2rWBs -- https://projects.asl.ethz.ch/datasets/enwide/ -- https://drive.google.com/drive/u/0/folders/1uR476FzjN3PfAiCknVKtuZi3_QfVvSdA - -## Interesting links: -- https://arxiv.org/pdf/2505.06483 -- https://github.com/hku-mars/fast-livo -- https://github.com/MISTLab/Intensity_based_LiDAR_SLAM diff --git a/documentation/Benchmarks/LIO/README.md b/documentation/Benchmarks/LIO/README.md deleted file mode 100644 index aacd4f6f..00000000 --- a/documentation/Benchmarks/LIO/README.md +++ /dev/null @@ -1,184 +0,0 @@ -If You are looking for end-to-end mobile mapping framework You can start from this project. -We provide a benchmark for other approaches: RKO-LIO (2026), R-VoxelMap (2026), BIEVR-LIO (2026), SE3-LIO (2026), EllipseLIO(2026), D-LIO (2026), FORM (2026), Super-LIO (2026), DALI_SLAM (2025), lidar_odometry_ros_wrapper (2025), SuperOdometry (2021), mola_lidar_odometry (2025), RESPLE (2025), GenZ-ICP (2025), MM-LINS (2025), Voxel-SLAM (2024), NV-LIOM (2024), c3p-voxelmap (2024), I2EKF-LO (2024), LIO-EKF (2024), iG-LIO (2024), GLIM (2024), Point-LIO (2024), LOG-LIO2 (2024), DLIO (2023), SLICT (2023), RA-L, KISS-ICP (2023), Faster-LIO (2022), VoxelMap (2022), DLO (2022), CT-ICP (2021), FAST-LIO (2020), LOAM-Livox (2019), LeGO-LOAM (2018). -**Our goal is to find/develop/discover best end-to-end mobile mapping framework.** -To cite benchmark suite please use as follows: -``` -@article{BEDKOWSKI2026102822, -title = {MapsHD: A benchmark suite for LiDAR odometry frameworks}, -journal = {SoftwareX}, -volume = {35}, -pages = {102822}, -year = {2026}, -issn = {2352-7110}, -doi = {https://doi.org/10.1016/j.softx.2026.102822}, -url = {https://www.sciencedirect.com/science/article/pii/S2352711026003146}, -author = {Janusz Bȩdkowski and Michał Pełka and Karol Majek and Marcin Matecki and Adrian Radulescu and Charles Hamesse and Ethan Decleyn and Przemysław Lekston and Tomasz Owerko and Przemysław Kuras and Michał Ciszewski and Jakub Kolecki and Karolina Tomaszkiewicz and Łukasz Ambroziński and Joanna Koszyk and Bartosz Hyla and Karolina Pargieła and Anna Malczewska and Tomasz Lipecki and Artur Adamek and Bartosz Mitka and Klapa Przemysław and Pelagia Gawronek and Martin Mokros and Jozef Výboštok and Juliána Chudá and Michal Skladan and Carlos Cabo and Kim André Anstensen and Craciun Daniel-Marian and Antun Jakopec and Michal Wlasiuk and Kornel Mrozowski and Maksymilian Kulicki and Krzysztof Stereńczak and Oskar Bartosz and Jakub Markiewicz and Sławomir Łapiński and Adam Kostrzewa and Mariana Campos and Machi Zawidzki and Jacek Szklarski and Rami Faraj and Loris Redovniković and Jurica Jagetić and Samer Karam and Răzvan Dumbravă and Milosz Mielcarek and Grzegorz Krok and Michal Laszkowski and Jaroslaw Wajs and Jakub Chudziński}, -keywords = {LiDAR odometry, LiDAR-inertial odometry, Benchmarking}, -abstract = {This paper describes a software toolbox for LiDAR (Light Detection and Ranging) and LiDAR-Inertial Odometry qualitative and quantitative evaluation. We provide software as https://github.com/MapsHD organization with all necessary information at https://github.com/MapsHD/HDMapping. Our software contributions are a) ground truth data processing tool, b) dockerized state-of-the-art LO and LIO algorithms, c) multi-session data registration to common coordinate system, d) Absolute Pose Error (APE) and Relative Pose Error (RPE) metrics, e) import/export tools for easier 3D data handling and visualizing, e.g., in Cloud Compare software. This software is compatible with ROS1 (Robot Operating System) and ROS2 data formats. We show an example benchmark of LeGO-LOAM, LIO-SAM, FAST-LIO, DLO, VoxelMap, Faster-LIO, KISS-ICP, CT-ICP, SLICT, DLIO, GLIM, iG-LIO, LIO-EKF, I2EKF-LO, GenZ-ICP, RESPLE, odometry_ros_wrapper, Point-LIO, and LOAM-Livox algorithms. For all experiments we provide movies. The contribution of the paper is software-oriented LO/LIO algorithm benchmark suite. The novelty lies in the integration of multiple benchmarking steps into a unified framework, thus overall effort needed for qualitative and quantitative evaluation is reduced.} -} -``` - -# Compatible other SOTA LIO algorithms (benchmark) - -Download the dataset from [Bunker DVI Dataset](https://charleshamesse.github.io/bunker-dvi-dataset/) - -![Bunkier](/images/sx1.png) -![Benchmark](/images/bunker1.png) -![HDMapping LIO](/images/hdmapping-lio.png) - -We provide HDMapping-LIO: easy to run, easy to test LiDAR Inertial Odometry that is as accurate as FAST-LIO, FASTER-LIO and much more precise [[movie]](https://youtu.be/UB-Hx7qgey8). - - -All following algorithms are generating session compatible with 'multi_view_tls_registration_step_2'. -It is designed for a benchmark. - -- https://github.com/MapsHD/benchmark-HDMapping-ground-truth (2026, 'under review', [[movie]](https://youtu.be/8sHyUNC3mZs)) -- [1] https://github.com/MapsHD/benchmark-HDMapping_LIO-to-HDMapping (2026, 'under review', [[movie]](https://youtu.be/9AUvPTLUcos)) -- [2] https://github.com/MapsHD/benchmark-rko_lio-to-HDMapping (2026, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/RKO-LIO.bib), movie ToDo) -- [3] https://github.com/MapsHD/benchmark-R-VoxelMap-to-HDMapping (2026, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/R-VoxelMap.bib), movie ToDo) -- [4] https://github.com/MapsHD/benchmark-BIEVR-LIO-to-HDMapping (2026, arXiv, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/bievr-lio.bib), movie ToDo) -- [5] https://github.com/MapsHD/benchmark-SE3-LIO-to-HDMapping (2026, ICRA, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/SE3-LIO.bib), movie ToDo) -- [6] https://github.com/MapsHD/benchmark-EllipseLIO-to-HDMapping (2026, arXiv, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/EllipseLIO.bib), movie ToDo) -- [7] https://github.com/MapsHD/benchmark-D-LIO-to-HDMapping (2026, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/D-LIO.bib), movie ToDo) -- [8] https://github.com/MapsHD/benchmark-FORM-to-HDMapping (2026, ICRA, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/form.bib), [[movie]](https://youtu.be/2c2ySFIncyA)) -- [9] https://github.com/MapsHD/benchmark-Super-LIO-to-HDMapping (2026, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/Super-LIO.bib), [[movie]](https://youtu.be/CQmLOdV_mQA)) -- [10] https://github.com/MapsHD/benchmark-DALI_SLAM-to-HDMapping (2025, Elsevier ISPRS, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/DALI-SLAM.bib)) -- [11] https://github.com/MapsHD/benchmark-lidar_odometry_ros_wrapper-to-HDMapping (2025, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/lidar_odometry_ros_wrapper.bib), [[movie]](https://youtu.be/w233P_MZMWk)) -- [12] https://github.com/MapsHD/benchmark-SuperOdometry-to-HDMapping (2021, IROS, 2025, ICRA, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/SuperOdometry.bib), [[movie]](https://youtu.be/2bRunzG43sw)) -- [13] https://github.com/MapsHD/benchmark-mola_lidar_odometry-to-HDMapping (2025, IJRR, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/mola-lidar-odometry.bib), [[movie]](https://youtu.be/KcVTTurel44)) -- [14] https://github.com/MapsHD/benchmark-RESPLE-to-HDMapping (2025, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/RESPLE.bib), [[movie]](https://youtu.be/5PAB4xJmMoo)) (ToDo --> add to automated benchmark) -- [15] https://github.com/MapsHD/benchmark-GenZ-ICP-to-HDMapping (2025, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/GenZ-ICP.bib), [[movie]](https://youtu.be/vgGkucOBVg4)) -- [16] https://github.com/MapsHD/benchmark-MM-LINS-to-HDMapping (2025, TIV, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/MM-LINS.bib), movie ToDo) -- [17] https://github.com/MapsHD/benchmark-PIN-SLAM-to-HDMapping (2024, TRO, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/PIN-SLAM.bib), movie ToDo) -- [18] https://github.com/MapsHD/benchmark-SR-LIO-to-HDMapping (2024, IROS, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/sr-lio.bib), movie ToDo) -- [19] https://github.com/MapsHD/benchmark-Voxel-SLAM-to-HDMapping (2024, arXiv, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/Voxel-SLAM.bib), 2nd place ICRA HILTI 2023 SLAM Challenge, 1st place ICCV 2023 SLAM Challenge, movie ToDo) -- [20] https://github.com/MapsHD/benchmark-NV-LIOM-to-HDMapping (2024, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/NV-LIOM.bib), movie ToDo) -- [21] https://github.com/MapsHD/benchmark-c3p-voxelmap-to-HDMapping (2024, arXiv, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/c3p-voxelmap.bib), movie ToDo) -- [22] https://github.com/MapsHD/benchmark-I2EKF-LO-to-HDMapping (2024, arXiv, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/I2EKF-LO.bib), [[movie]](https://youtu.be/B2358Gn62Ho)) -- [23] https://github.com/MapsHD/benchmark-LIO-EKF-to-HDMapping (2024, ICRA, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/LIO-EKF.bib), [[movie]](https://youtu.be/R4Cn1LJ4U_E)) -- [24] https://github.com/MapsHD/benchmark-iG-LIO-to-HDMapping (2024, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/iG-LIO.bib), [[movie]](https://youtu.be/KlZf7nHeVmI)) -- [25] https://github.com/MapsHD/benchmark-GLIM-to-HDMapping (2024, arXiv, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/GLIM.bib), [[movie]](https://youtu.be/zyZDJECqOG0)) -- [26] https://github.com/MapsHD/benchmark-Point-LIO-to-HDMapping (2024, JAIS, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/Point-LIO.bib), [[movie]](https://youtu.be/JlD1hDJHcrs)) -- [27] https://github.com/MapsHD/benchmark-LOG-LIO2-to-HDMapping (2024, arXiv, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/LOG-LIO2.bib), movie ToDo) -- [28] https://github.com/MapsHD/benchmark-PV-LIO-to-HDMapping (2023, no publication, movie ToDo) -- [29] https://github.com/MapsHD/benchmark-DLIO-to-HDMapping (2023, ICRA, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/DLIO.bib), [[movie]](https://youtu.be/xFLqFcoAtk8)) -- [30] https://github.com/MapsHD/benchmark-SLICT-to-HDMapping (2023, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/SLICT.bib), [[movie]](https://youtu.be/TUaJN7FJOFU)) -- [31] https://github.com/MapsHD/benchmark-KISS-ICP-to-HDMapping (2023, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/KISS-ICP.bib), [[movie]](https://youtu.be/GyB8UuQN0Io)) -- [32] https://github.com/MapsHD/benchmark-Faster-LIO-to-HDMapping (2022, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/Faster-LIO.bib), [[movie]](https://youtu.be/bV1jgF_m-Zo)) -- [33] https://github.com/MapsHD/benchmark-VoxelMap-to-HDMapping (2022, arXiv, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/VoxelMap.bib), [[movie]](https://youtu.be/oRiuvJRNl-c)) -- [34] https://github.com/MapsHD/benchmark-DLO-to-HDMapping (2022, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/DLO.bib), [[movie]](https://youtu.be/-UH81mNLw8Q)) -- [35] https://github.com/MapsHD/benchmark-CT-ICP-to-HDMapping (2021, arXiv, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/CT-ICP.bib), [[movie]](https://youtu.be/swEsJHwtE50)) -- [36] https://github.com/MapsHD/benchmark-FAST-LIO-to-HDMapping (2020, arXiv, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/FAST-LIO.bib), [[movie]](https://youtu.be/ENlaQTtOXEM)) -- [37] https://github.com/MapsHD/benchmark-LOAM-Livox-to-HDMapping (2019, arXiv, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/loam_livox.bib), [[movie]](https://youtu.be/MbKHTmUcI2w)) -- [38] https://github.com/MapsHD/benchmark-LeGO-LOAM-to-HDMapping (2018, IROS, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/legoloam2018.bib), [[movie]](https://youtu.be/WpFBXe1zKto)) - -[[qualitative evaluation benchmark movie]](https://youtu.be/C0CcG9vAokY) -[[quantitative evaluation benchmark movie]](https://youtu.be/PsJaXpWFAis) -[[quantitative benchmark]](https://github.com/MapsHD/benchmark-HDMapping-evaluation-of-odometry-and-SLAM) - -Benchmark Orchestration -- https://github.com/MapsHD/benchmark-HDMapping-Orchestration - -Datasets -- https://charleshamesse.github.io/bunker-dvi-dataset/ -- https://github.com/Jakubach/kitti_to_ros (Michal W) -- https://github.com/Jakubach/kitti_to_hdmapping (Michal W) -- M2DGR https://github.com/SJTU-ViSYS/M2DGR -- M3DSS https://neufs-ma.github.io/M3DSS/index.html (benchmark, dataset) -- NCLT https://robots.engin.umich.edu/nclt/ -- Hilti SLAM Challenge https://hilti-challenge.com/dataset-2023 (Michal P) -- Complex Urban https://sites.google.com/view/complex-urban-dataset -- NTU VIRAL https://ntu-aris.github.io/ntu_viral_dataset/ -- HeRCULES -- He-LiPR -- AevaScene -- https://thisparticle.github.io/geode/ - -Algorithms without code -- https://kafeiyin00.github.io/AEOS/ (2026, ISPRS-Elsevier, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/AEOS.bib), no source code) -- VOX-LIO https://www.mdpi.com/2072-4292/17/13/2214 (2025, MDPI Remote Sensing, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/VOX-LIO.bib), no source code) -- SS-LIO: Robust Tightly Coupled Solid-State LiDAR–Inertial Odometry for Indoor Degraded Environments (2025, MDPI electronics, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/SS-LIO.bib), no source code) -- https://www.sciencedirect.com/science/article/abs/pii/S1566253525002052 (2025, Elsevier Information Fusion, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/STATIC-LIO.bib), no source code) -- https://ieeexplore.ieee.org/abstract/document/11206445 (2025, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/SPS-LIO.bib), no source code) -- https://ieeexplore.ieee.org/abstract/document/11045969 (2025, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/Tightly-Coupled-SLAM-With-Imprecise-Architectural-Plans.bib), no source code) -- https://ieeexplore.ieee.org/document/10954274 (2025, IEEE TITS, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/Universal-LiDAR-Odometry-and-Mapping-With-Dual-Channel-Descriptor.bib), no source code) -- https://github.com/kafeiyin00/HCTO (2024, ISPRS-Elsevier, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/HCTO.bib), no source code) -- Fast and Robust LiDAR-Inertial Odometry by Tightly-Coupled Iterated Kalman Smoother and Robocentric Voxels, RC-Vox (2024, IEEE TITS, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/RC-Vox.bib), no source code) -- https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=11419773 (2026, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/Dynamic-ICP.bib)), https://github.com/JMUWRobotics/Dynamic-ICP - -Algorithms with unsolved issues -- https://github.com/MapsHD/benchmark-KISS-SLAM-to-HDMapping (2025, IROS, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/kiss-slam.bib)) (not solved issue https://github.com/kpmrozowski/KISS-SLAM-to-HDMapping/issues/1) -- https://github.com/MapsHD/rko_lio (2025, arXiv, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/RKO-LIO.bib)) (not solved issue: https://github.com/marcinmatecki/rko-lio-to-HDMapping/issues/1) -- https://github.com/MapsHD/benchmark-MAD-ICP-to-HDMapping (2024, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/MAD-ICP.bib), compatibilty issue - only trajectory provided, repository inactive) -- https://github.com/Ji1Xingyu/lio_gvm (2024, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/LIO-GVM.bib)) (not solved issues: https://github.com/Ji1Xingyu/lio_gvm/issues/13, https://github.com/Ji1Xingyu/lio_gvm/issues/12, https://github.com/Ji1Xingyu/lio_gvm/issues/7) -- https://github.com/thisparticle/btsa (2025, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/A-Dynamic-Aware-LIO.bib), dynamic scenes) unsolved issue https://github.com/thisparticle/btsa/issues/4 -- https://github.com/BrenYi/Light-LOAM (2024, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/Light-LOAM.bib)) (issue) https://github.com/BrenYi/Light-LOAM/issues/6 -- https://github.com/clegenti/2fast2lamaa (2025, arXiv, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/2FAST-2LAMAA.bib)) (issue) https://github.com/clegenti/2fast2lamaa/issues/4 -- https://github.com/Livox-SDK/LIO-Livox (2026, Livox proprietary, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/LIO-Livox.bib)) (doesn't support non-repetitive lidar https://github.com/Livox-SDK/LIO-Livox/issues/81) - -Not supported algorithm -- https://ieeexplore.ieee.org/document/10900461, https://github.com/kafeiyin00/UA-MPC (2025, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/UA-MPC.bib), we do not support rotary LiDAR) -- https://github.com/YangSiri/OR-LIM (2022, we do not support rotary LiDAR) -- https://github.com/MapsHD/benchmark-LiDAR-IMU-Init-to-HDMapping (2022) (extrinsic calibration) - -Required PCD format: -- https://github.com/KTH-RPL/dufomap (2024, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/dufomap.bib), dynamic scenes) -- https://github.com/KTH-RPL/DynamicMap_Benchmark (2023, ITSC, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/dufomap.bib), dynamic scenes) - -ToDo Build Success: -- https://github.com/SlamCabbage/Optimized-SC-F-LOAM (2022, CVCI, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/SC-F-LOAM.bib)) - Marcin (Scan Context-based loop closure) -- https://github.com/wh200720041/floam (2021, IROS, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/F-LOAM.bib)) - Piotr 1 -- https://github.com/MapsHD/benchmark-LIO-SAM-to-HDMapping (2020, IROS, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/LIO-SAM.bib), with loop closures) - Piotr 2 -- https://github.com/herrmy86/Voxel-SLAM-intensity/tree/main - -ToDo Build issues: -- https://github.com/xuankuzcr/Global-LVBA (2025, no publication) -- https://github.com/sjtuyinjie/Ground-Fusion2 (2025, IROS, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/Ground-Fusion2.bib)) -- https://github.com/ethz-asl/COIN-LIO (2024, ICRA, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/COIN-LIO.bib)) -- https://github.com/deepuav/AdaTrajLo (2024, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/Traj-LO.bib)) -- https://github.com/StephLin/LIO-SEGMOT (2023, ICRA, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/LIO-SEGMOT.bib)) -- https://github.com/XikunLiu-huskit/GLIO (2023, TIV, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/GLIO.bib)) -- https://github.com/tiev-tongji/LOG-LIO (2023, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/LOG-LIO.bib)) -- https://github.com/chengwei0427/ct-lio (2023, no publication) -- https://github.com/minwoo0611/MA-LIO (2023, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/MA-LIO.bib)) -- https://github.com/chengwei0427/hm-lio (2023, no publication) -- https://github.com/RoboFeng/RI-LIO (2023, RA-L, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/RI-LIO.bib)) -- https://github.com/ChaoqinRobotics/LINS---LiDAR-inertial-SLAM (2020, ICRA, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/LINS.bib)) -- https://github.com/HKUST-Aerial-Robotics/A-LOAM (2019, no publication) -- https://github.com/PRBonn/semantic_suma/ (2019, IEEE/RSJ, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/SuMa.bib)) -- https://github.com/gisbi-kim/SC-LeGO-LOAM (2018, IEEE/RSJ, [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/SC-LeGO-LOAM.bib)) - -ToDo: check if addressed -- https://github.com/dongjae0107/LAPS (2026) -- https://xiaofan4122.github.io/Elevator_LIO_Page/ (2026) -- CMLGF-LIO https://isprs-archives.copernicus.org/articles/XLIX-B1-2026/71/2026/ (2026) -- https://github.com/eugeniu1994/MAP_LIO (2026) -- ieeexplore.ieee.org/document/11264316/ (2026) -- https://arxiv.org/html/2608.14996v1 (2026) -- LF-GICP: Parameter-Free Degeneracy-Aware LiDAR Odometry via a Voxel-Normal Localizability Field (2026) -- https://www.mdpi.com/1424-8220/26/6/1810 (2026) -- RCP-LO: A Relative Coordinate Prediction Framework for Generalizable Deep LiDAR Odometry (2026) -- https://github.com/MIT-SPARK/spark-fast-lio (2025) -- https://arxiv.org/pdf/2503.12660 - KISS-SLAM (2025) -- https://github.com/HxCa1/BEV-LIO-LC (2025) -- https://arxiv.org/pdf/2410.05433 - 2FAST-LAMA (2025) -- https://www.mdpi.com/2072-4292/17/15/2656 (2025) -- https://arxiv.org/pdf/2410.08935 - VOXEL-SLAM (2024) -- https://github.com/hku-mars/fast-livo2 (2024) -- https://research.buaa.edu.cn/en/publications/ve-liom-a-versatile-and-efficient-lidar-inertial-odometry-and-map/ (2024) -- https://www.mdpi.com/2072-4292/15/20/5074 (2023) -- PVE-LIOM https://ieeexplore.ieee.org/document/10237251 (2023) -- https://github.com/APRIL-ZJU/Coco-LIC (2023) -- https://github.com/HViktorTsoi/PV-LIO (2023, addressed) -- https://arxiv.org/pdf/2204.04932 - SC-F-LOAM (2022) -- https://github.com/hku-mars/fast-livo (2022) -- https://www.mdpi.com/1424-8220/22/2/520 - LEGO-LOAM-SC (2022) -- https://github.com/lovelyyoshino/FAST_LIO2_Noted (2022) -- S-FAST_LIO https://github.com/zlwang7/S-FAST_LIO (2022) -- https://github.com/TixiaoShan/LVI-SAM (2021) -- https://github.com/HesaiTechnology-Spatial-Perception/FAST_LIO_Hesai (2021) -- https://arxiv.org/pdf/1907.02233 - LINS-SLAM (2020) -- https://github.com/rsasaki0109/li_slam_ros2 (2020) - - - diff --git a/documentation/Benchmarks/LOOP_CLOSURE/README.md b/documentation/Benchmarks/LOOP_CLOSURE/README.md deleted file mode 100644 index a8dce2dd..00000000 --- a/documentation/Benchmarks/LOOP_CLOSURE/README.md +++ /dev/null @@ -1,39 +0,0 @@ -# Automatic loop closure - -We provide easy tool that will help You annotating ground truth SLAM loop closures. You mark pair of point clouds that forms edge, then use ICP like pair wise registration to generatie ground truth for AI training. -Annotated ground truth edges for LiDAR pose graph slam are available at [ground truth edges](https://zenodo.org/records/18527593). -Movie how to use it is available at [prepare training dataset movie](https://youtu.be/LOGpVg1Nc3k). - -[![GROUND-TRUTH-EDGE-ANNOTATION-TOOL](https://img.youtube.com/vi/tJdNNfBubeM/default.jpg)](https://youtu.be/tJdNNfBubeM) -[![MANUAL-LOOP_CLOSURE-TOOL](https://img.youtube.com/vi/6SNvrZ2ROKg/default.jpg)](https://youtu.be/6SNvrZ2ROKg) - -## AI loop closure benchmark [https://github.com/MapsHD/benchmark-HDMapping-AILoopClosure-Orchestration](https://github.com/MapsHD/benchmark-HDMapping-AILoopClosure-Orchestration) -- [1] https://github.com/MapsHD/benchmark-HDMapping-AILoopClosure-LCR-Net (in progress) -- [2] https://www.open3d.org/docs/latest/python_api/open3d.registration.compute_fpfh_feature.html -- [3] https://github.com/HxCa1/BEV-LIO-LC/blob/main/README.md -- [4] https://huggingface.co/magic-leap-community/superglue_indoor + BEV -- [5] https://link.springer.com/article/10.1007/s41315-025-00516-5 -- [6] https://ieeexplore.ieee.org/abstract/document/10251438 -- [7] https://github.com/yutongwangBIT/SP-Loop -- [8] https://github.com/caodanyang/FUSIONLCD -- [9] https://www.mdpi.com/2504-446X/8/7/322 -- [10] https://github.com/MIT-SPARK/KISS-Matcher - -## LiDAR loop closure benchmark [https://github.com/MapsHD/benchmark-HDMapping-LiDAR-LoopClosure-Orchestration](https://github.com/MapsHD/benchmark-HDMapping-LiDAR-LoopClosure-Orchestration) -- [1] DALI-SLAM -- [2] MM-LINS -- [3] PIN-SLAM -- [4] voxel-slam -- [5] nv-liom -- [6] glim -- [7] slict -- [8] lego-loam - -## Interesting links -- BTC: A Binary and Triangle Combined Descriptor for 3D Place Recognition Unlisted [[YT]](https://www.youtube.com/watch?v=zB4Xqi3-J9U) -- https://github.com/MapsHD/SemanticLoopClosure -- https://github.com/mit-spark/kiss-matcher -- https://github.com/zjuluolun/BEVPlace2 -- https://github.com/csiro-robotics/LoGG3D-Net -- https://github.com/PRBonn/OverlapNet -- https://arxiv.org/pdf/2607.21138 diff --git a/documentation/Benchmarks/PAIRWISE_POINT_CLOUD_MATCHING/README.md b/documentation/Benchmarks/PAIRWISE_POINT_CLOUD_MATCHING/README.md deleted file mode 100644 index 509efa75..00000000 --- a/documentation/Benchmarks/PAIRWISE_POINT_CLOUD_MATCHING/README.md +++ /dev/null @@ -1,3 +0,0 @@ -https://github.com/koide3/small_gicp -https://github.com/koide3/fast_gicp -https://github.com/koide3/gtsam_points \ No newline at end of file diff --git a/documentation/Benchmarks/RADAR_ODOMETRY/README.md b/documentation/Benchmarks/RADAR_ODOMETRY/README.md deleted file mode 100644 index e69de29b..00000000 diff --git a/documentation/Benchmarks/README.md b/documentation/Benchmarks/README.md deleted file mode 100644 index fea72f11..00000000 --- a/documentation/Benchmarks/README.md +++ /dev/null @@ -1,6 +0,0 @@ -ToDo - -- https://arxiv.org/pdf/2507.16000 -- https://arxiv.org/pdf/2510.10660 -- https://github.com/r-lidar/arbor -- https://github.com/csiro-robotics/raycloudtools diff --git a/documentation/Benchmarks/RELOCALIZATION_WITH_LIDAR/README.md b/documentation/Benchmarks/RELOCALIZATION_WITH_LIDAR/README.md deleted file mode 100644 index 87240d05..00000000 --- a/documentation/Benchmarks/RELOCALIZATION_WITH_LIDAR/README.md +++ /dev/null @@ -1,2 +0,0 @@ -- https://github.com/koide3/amcl3d -- https://github.com/zjuluolun/BEVPlace2 diff --git a/documentation/Benchmarks/SIGN_DETECTION/README.md b/documentation/Benchmarks/SIGN_DETECTION/README.md deleted file mode 100644 index e69de29b..00000000 diff --git a/documentation/CompatibleCommunityProjects/README.md b/documentation/CompatibleCommunityProjects/README.md deleted file mode 100644 index 8b2ac18c..00000000 --- a/documentation/CompatibleCommunityProjects/README.md +++ /dev/null @@ -1,4 +0,0 @@ -# Compatible community projects - -- Handheld Setup for Recording with Mid360 Lidar and Camera https://github.com/RomanStadlhuber/livo-handheld -- Lidar odometry for HDMapping project utilizing KISS-ICP https://github.com/michalpelka/kiss-lidarodometry \ No newline at end of file diff --git a/documentation/HARDWARE/README.md b/documentation/HARDWARE/README.md deleted file mode 100644 index f3d4f912..00000000 --- a/documentation/HARDWARE/README.md +++ /dev/null @@ -1,32 +0,0 @@ -# Supported LiDARs - -![lidars](images/IMG_2561.jpeg) -We support LIVOX AVIA, HAP, MID360, Ouster OS0, OS1, OS2, OSDome, SICK multiScan100, HESAI JT16, HESAI JT128, HESAI XT, Robosense AIRY. -HESAI XT requires external IMU. We are going to support more LiDARs ASAP. - -More information can be found here: - -- The introductory paper is available here: https://www.sciencedirect.com/science/article/pii/S235271102300314X -- Sample data is available at https://github.com/MapsHD/OmniWarsawDataset -- VIDEO (how to build mobile mapping hardware) https://www.youtube.com/watch?v=BXBbuSJMFEo -- If you are a ROS user, please visit https://github.com/MapsHD/mandeye_to_bag to convert MANDEYE data to ROSBAG -- ROS2 wrapper for HDMapping LiDAR Inertial Odometry (HDMapping-LIO) https://github.com/MapsHD/HDMapping-LIO -- ROSCON 2024 workshop (sample data sets and more ...): https://michalpelka.github.io/RosCon2024_workshop/ -- You can use it also for multi-view Terrestrial Laser Scanner Registration (Faro, Leica, Z+F, Riegl, etc...) https://www.sciencedirect.com/science/article/abs/pii/S0263224123007637 -- Info for Windows users: please use the latest release https://github.com/MapsHD/HDMapping/releases -- Contact email: januszbedkowski@gmail.com - - -![mandeye](images/softwareX1.png) - -Mobile mapping systems is based on LiVOX MID360 - laser scanner with non repetetive scanning pattern. -Specification is available at https://www.livoxtech.com/mid-360/specs. Important parameters: - -- weight: less than 1kg, -- battery life: up to 5 hours, -- suggested speed during data acquisition: walking speed (4km/h), -- LiDAR type: Livox MID360, -- LiDAR non-repetitive scanning pattern, -- LiDAR range 40m @ 10\% reflectivity, 70 m @ 80\% reflectivity, -- Range Precision (1 $\sigma$): up to 2cm (@ 10m), -- Integrated IMU (Inertial Measurement Unit). \ No newline at end of file diff --git a/documentation/HARDWARE/images/IMG_2561.jpeg b/documentation/HARDWARE/images/IMG_2561.jpeg deleted file mode 100644 index a19578a7..00000000 Binary files a/documentation/HARDWARE/images/IMG_2561.jpeg and /dev/null differ diff --git a/documentation/HARDWARE/images/softwareX1.png b/documentation/HARDWARE/images/softwareX1.png deleted file mode 100644 index 3a88675e..00000000 Binary files a/documentation/HARDWARE/images/softwareX1.png and /dev/null differ diff --git a/documentation/InstallationGuide/README.md b/documentation/InstallationGuide/README.md deleted file mode 100644 index 3dab0785..00000000 --- a/documentation/InstallationGuide/README.md +++ /dev/null @@ -1,165 +0,0 @@ -## Quick Start (Ubuntu / Ubuntu 24.04 @ WSL2) - -### CMake 4.0.0 or Higher - -This project requires **CMake 4.0.0** or higher. If you don't have it installed, you can download it from: - -**Official CMake Downloads:** - -- **Linux/macOS/Windows:** https://cmake.org/download/ -- **GitHub Releases (Linux binaries):** https://github.com/Kitware/CMake/releases/tag/v4.0.0 - -**Installation on Linux:** - -```bash -wget https://github.com/Kitware/CMake/releases/download/v4.0.0/cmake-4.0.0-linux-x86_64.sh -sudo sh cmake-4.0.0-linux-x86_64.sh --skip-license --prefix=/usr/local -cmake --version -``` - -```bash -git clone --recursive https://github.com/MapsHD/HDMapping.git -cd HDMapping -./ubuntu-24.04-apt-requirements.sh - -# Auto-optimized build (detects your CPU automatically) -cmake -B build -S . -DCMAKE_BUILD_TYPE=Release -cmake --build build --config Release -j -``` - -**Laptops with hybrid NVIDIA/Intel graphics:** the raylib-based apps (e.g. `multi_view_tls_registration_step_2`) may default to the integrated GPU even with `prime-select nvidia` set, since PRIME's on-demand/offload mode is a per-launch choice, not a system default. Force the discrete NVIDIA GPU with: - -```bash -__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia ./build/bin/multi_view_tls_registration_step_2 -``` - -If the `nvidia-prime` package is installed, `prime-run` wraps the same env vars: - -```bash -prime-run ./build/bin/multi_view_tls_registration_step_2 -``` - -## Quick Start (macOS) - -**Prerequisites:** - -1. Install **XCode Command Line Tools**: `xcode-select --install` -2. Install **Homebrew** from [brew.sh](https://brew.sh) -3. Install dependencies: - -```bash -brew install cmake opencv -``` - -**Build:** - -```bash -git clone --recursive https://github.com/MapsHD/HDMapping.git -cd HDMapping - -# Configure with Cocoa support (native macOS windowing) -cmake -B build -S . -DCMAKE_BUILD_TYPE=Release -DFREEGLUT_COCOA=ON - -# Build (auto-detects number of cores) -cmake --build build -j$(sysctl -n hw.ncpu) -``` - -# Building commands - -## Requirements - -**Installation on Windows:** - -- Download the installer from https://cmake.org/download/ -- Run the installer and follow the instructions -- Ensure CMake is added to your system PATH - -### clang-format - -**Instalation on Linux:** - -```bash -sudo apt install clang-format -``` - -**Installation on Windows** - -1. Go to offical llvm-project GitHub [releases page](https://github.com/llvm/llvm-project/releases) -2. Download Windows x64 installer (for example version [21.1.8](https://github.com/llvm/llvm-project/releases/download/llvmorg-21.1.8/LLVM-21.1.8-win64.exe)) - browser might flag exe file malware in that case mark it as "Keep it" -3. Run installer exe -4. In installation program mark "Add LLVM to the system PATH for all users" or "Add LLVM to the system PATH for all current user" -5. Restart any terminal or IDE that you want to use clang-format in so it reloads paths from ENV - -**Verification** - -To verify that clang-format is installed run: -Verify installation by running: - -```bash -clang-format --version -``` - -**Formating codebase** - -In order to format code base run: - -```bash -python3 scripts/run_clang_format.py -``` - -_Note that PRs without formatting might be rejected from merging_ - -## Quick Start (Windows) - -```bash -git clone --recursive https://github.com/MapsHD/HDMapping.git -cd HDMapping - -# Auto-optimized build (detects your CPU automatically) -cmake -B build -S . -DCMAKE_BUILD_TYPE=Release -cmake --build build --config Release -``` - -## WSL2 GUI - -On WSL2 to enable file dialogs in GUI applications you need to install one of the packages used by portable-file-dialogs listed [here](https://github.com/samhocevar/portable-file-dialogs/blob/c12ea8c9a727f5320a2b4570aee863bbede2a204/portable-file-dialogs.h#L539C1-L542C57). - -For example on WSL2 Ubuntu-24.04 following package is required to run GUI applications: - -```bash -sudo apt install zenity -``` -# Profiling - -You can use multiple backends to profile the code (UTL, Tracy-Profiler) - -- Using Tracy-Profiler requires to install / build from source Tracy-Profiler from https://github.com/wolfpld/tracy/releases/tag/v0.13.1. -- Build and run the project with `cmake .. -DCMAKE_BUILD_TYPE=ReleaseWithDebInfo -DHDMAPPING_PROFILER=TRACY` -- Open Tracy Profiler and run e.g. `lidar_odometry_step_1`. Tracy-Profiler should recongnize the code and show the results. -- -To use UTL profiler build and run the project with `cmake .. -DCMAKE_BUILD_TYPE=ReleaseWithDebInfo -DHDMAPPING_PROFILER=UTL` - -# Building Debian package. - -The standard build contains all necessary libraries compiled with project. -This approach allows smooth build on Windows platform and guarantee predictable experience. -If you want to build Debian package, you can depends on system-provided libraries: -Before build install 3rd party libraries: - -``` -sudo apt-get install freeglut3-dev libeigen3-dev liblaszip-dev libopencv-dev -``` - -Next build Debian package: - -``` -cmake .. -DBUILD_WITH_BUNDLED_FREEGLUT=0 -DBUILD_WITH_BUNDLED_EIGEN=0 -DBUILD_WITH_BUNDLED_LIBLASZIP=0 -DCMAKE_BUILD_TYPE=Release -make -j16 -make package -``` - -To install package : - -``` -sudo dpkg -i hd_mapping-0.*.*-Linux.deb -``` diff --git a/documentation/KnowledgeBase/README.md b/documentation/KnowledgeBase/README.md deleted file mode 100644 index de9a1f69..00000000 --- a/documentation/KnowledgeBase/README.md +++ /dev/null @@ -1,26 +0,0 @@ -# Knowledge base (accuracy, precision, benchmarks, comparison to other mobile mapping systems, etc.) -- Cosme Hernanz-Gilbert, Carlos Cabo, Álvaro Moreno-Martínez, and Mónica Herrero-Huerta, "Exploring the Potential of the MandEye Handheld LiDAR System for Mediterranean Understorey Characterisation", [[PDF]](https://isprs-archives.copernicus.org/articles/XLIX-B2-2026/413/2026/) -- Wang, Z., Trybała, P., Wieser, A., and Remondino, F.: MultiChange3D: A Multi-Scene, Multi-Sensor Dataset for Benchmarking 3D Geometric Change Detection (2026, ISPRS Ann. Photogramm. Remote Sens. Spatial Inf. Sci., [[PDF]](https://isprs-annals.copernicus.org/articles/XI-2-2026/639/2026/index.html), [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/isprs-annals-XI-2-2026-639-2026.bib)) -- Janusz Będkowski et al., "MapsHD: A benchmark suite for LiDAR odometry frameworks", SoftwareX Volume 35, September 2026, 102822 (2026, SoftwareX, [[PDF]](https://www.sciencedirect.com/science/article/pii/S2352711026003146), [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/SoftwareX2026.bib)) -- Janusz Będkowski et al., "Wearable Mobile Mapping System for Cave Surveying - Part 1 (3-6)", CREG Journal (ISSN 1361-4800), 134, (2026, CREG Journal, [[PDF]](https://bcra.org.uk/pub/docs/downloads.html?f=j134003), [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/Creg2026.bib)) -- Jozef Výbošťok et al., "Low-cost mobile laser scanning for urban tree assessment: accuracy evaluation and application potential", ([[PDF]](https://www.frontiersin.org/journals/remote-sensing/articles/10.3389/frsen.2026.1774149/full)) -- Janusz Będkowski et al., "Comprehensive solution for georeferencing of humanitarian demining tools" ([[PDF]](https://dial.uclouvain.be/pr/boreal/object/boreal%3A313158/datastream/PDF_01/view#page=49)) -- Andro Kokeza et al. "Comparative Performance of Handheld Personal Laser Scanning Instruments and Operator Experience in Forest Inventory of Even-Aged European Beech Stand"(2026, MDPI-Forests, [[PDF]](https://www.mdpi.com/1999-4907/17/2/216) [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/forests-v17-i02_20260213.bib)) -- Janusz Będkowski et al., "The benchmark of LiDAR odometry algorithms utilised for a low-cost mobile mapping system" (2025, GEOBENCH, [[PDF]](https://isprs-archives.copernicus.org/articles/XLVIII-1-W6-2025/25/2025/isprs-archives-XLVIII-1-W6-2025-25-2025.pdf) [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/isprs-archives-XLVIII-1-W6-2025-25-2025.bib)) -- Jozef Výbošťok et al.. "An Open and Novel Low-Cost Terrestrial Laser Scanner Prototype for Forest Monitoring" (2025, MDPI-Sensors, [[PDF]](https://www.mdpi.com/1424-8220/26/1/63), [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/sensors-v26-i01_20260104.bib)) -- Samuele Facenda et al. 3D Robotics and LMM for Vineyard Inspection [[PDF]](https://isprs-archives.copernicus.org/articles/XLVIII-G-2025/431/2025/isprs-archives-XLVIII-G-2025-431-2025.pdf) -- Janusz Będkowski et al., "Acquisition and digitization of large scale heritage scenes with open source project https://github.com/MapsHD/HDMapping" (2025, DIGITAL HERITAGE, [[PDF]](https://diglib.eg.org/items/5ce9eb81-e04f-4e58-a0c8-4e66c4ae6960), [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/dh.bib)) -- Jozef Výbošťok et al., "An Open and Low-Cost Terrestrial Laser Scanner Prototype: Delivering Reliable Accuracy for Forest Practice on a Budget" (2025, SSRN, [[PDF]](https://papers.ssrn.com/sol3/papers.cfm?abstract_id=5386703)) -- Janusz Będkowski et al., "Affordable air-ground mobile mapping system for precise forestry applications" (2025, EuroCOW, [[PDF]](https://isprs-archives.copernicus.org/articles/XLVIII-1-W4-2025/5/2025/isprs-archives-XLVIII-1-W4-2025-5-2025.pdf), [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/isprs-archives-XLVIII-1-W4-2025-5-2025.bib)) -- Janusz Będkowski et al., "Method for spherical camera to 3D LiDAR calibration and synchronization with example on Insta360 X4 and LiVOX MID 360" (2025, EuroCOW, [[PDF]](https://isprs-archives.copernicus.org/articles/XLVIII-1-W4-2025/13/2025/isprs-archives-XLVIII-1-W4-2025-13-2025.pdf), [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/isprs-archives-XLVIII-1-W4-2025-13-2025.bib)) -- Janusz Będkowski, "Novel wearable mobile mapping system for Forensic and Security, mountable on trained dogs and humans" (2025, TechRxiv, [[PDF]](https://www.techrxiv.org/users/915148/articles/1288112-novel-wearable-mobile-mapping-system-for-forensic-and-security-mountable-on-trained-dog-and-human), [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/citation.bib)) -- Aguilar Fernando J., et al., "Preliminary Results of a Low-Cost Portable Terrestrial LiDAR Based on ICP-SLAM Algorithms. Application to Automatic Forest Digital Inventory" (2024, EMCEI, [[PDF]](https://www.ibles.pl/wp-content/uploads/2024/06/Torana-Arya.pdf)) -- Janusz Będkowski, Affordable geo-localisation of humanitarian demining tools (mountable on K9, robot, hand-held device, etc.) in GNSS-denied environment, (2024, HCR-CTRO [[PDF]](https://www.ctro.hr/userfiles/files/Affordable%20geo-localisation%20in%20GNSS%20denied%20environment%2C%20Janusz%20B%C4%99dkowski.pdf)) -- Janusz Będkowski, "Benchmark of multi-view Terrestrial Laser Scanning Point Cloud data registration algorithms." (2023, Elsevier-Measurement, [[PDF]](https://www.sciencedirect.com/science/article/abs/pii/S0263224123007637), [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/S0263224123007637.bib)) -- Biloš Josip, "3D mobilno kartiranje pomoću MandEye sustava prikupljanja i obrade prostornih podataka" (2024, [[PDF]](https://repozitorij.geof.unizg.hr/islandora/object/geof%3A142/datastream/PDF/view)) -- Janusz Będkowski et al., "Novel (re-configurable, wearable, lightweight, ergonomic) low cost 3D mobile mapping system not only for extreme mapping applications." (2024, LowCost 3D, [[PDF]](https://isprs-archives.copernicus.org/articles/XLVIII-2-W8-2024/25/2024/isprs-archives-XLVIII-2-W8-2024-25-2024.pdf), [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/isprs-archives-XLVIII-2-W8-2024-25-2024.bib)) -- Balestra Mattia, et al., "Advancing forest inventory: a comparative study of low-cost MLS lidar device with professional laser scanners." (2024, LowCost 3D, [[PDF]](https://isprs-archives.copernicus.org/articles/XLVIII-2-W8-2024/9/2024/isprs-archives-XLVIII-2-W8-2024-9-2024.pdf), [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/isprs-archives-XLVIII-2-W8-2024-9-2024.bib)) -- Elalailyi, Ahmad, et al., "Pose Graph Data Fusion for Visual-and LiDAR-based Low-Cost Portable Mapping Systems." (2024, LowCost 3D, [[PDF]](https://isprs-archives.copernicus.org/articles/XLVIII-2-W8-2024/147/2024/isprs-archives-XLVIII-2-W8-2024-147-2024.pdf), [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/isprs-archives-XLVIII-2-W8-2024-147-2024.bib)) -- Bartosz Mitka, Klapa Przemysław and Gawronek Pelagia, "Laboratory Tests of Metrological Characteristics of a Non-Repetitive Low-Cost Mobile Handheld Laser Scanner." (2024, MDPI-Sensors, [[PDF]](https://www.mdpi.com/1424-8220/24/18/6010), [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/sensors-v24-i18_20260104.bib)) -- Loris Redovniković, Antun Jakopec, Janusz Będkowski, Jurica Jagetić, "The affordable DIY Mandeye LiDAR system for surveying caves, and how to convert 3D clouds into traditional cave ground plans and extended profiles." (2024, IJS, [[PDF]](https://digitalcommons.usf.edu/cgi/viewcontent.cgi?article=2535&context=ijs), [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/ijs.bib)) -- Janusz Będkowski et al., "A Novel Approach to Global Positioning System Accuracy Assessment, Verified on LiDAR Alignment of One Million Kilometers at a Continent Scale, as a Foundation for Autonomous DRIVING Safety Analysis." (2021, MDPI-Sensors, [[PDF]](https://www.mdpi.com/1424-8220/21/17/5691), [[BIB]](https://github.com/MapsHD/HDMapping/blob/main/bib/sensors-v21-i17_20260104.bib)) \ No newline at end of file diff --git a/documentation/README.md b/documentation/README.md deleted file mode 100644 index e69de29b..00000000 diff --git a/documentation/Tools/README.md b/documentation/Tools/README.md deleted file mode 100644 index 99a2b57d..00000000 --- a/documentation/Tools/README.md +++ /dev/null @@ -1,13 +0,0 @@ -# Camera-LiDAR calibration tools - -Three tools (`apps/camera_lidar_*`) supports camera calibration with LIDAR and perofming applying colors to data from session. - -- **camera_lidar_intrinsics_calib** -- checkerboard-based camera intrinsic calibration (OpenCV rational distortion model). -- **camera_lidar_calibration** -- interactive LiDAR-camera extrinsic calibration: aligns a LAZ/LAS point cloud to a camera image with live GPU-shader reprojection feedback. -- **camera_lidar_trajectory_viewer** -- multi-camera trajectory/point-cloud viewer that assigns per-point "which camera colored this point" RGB, with LAZ export, plus optional COLMAP sparse-model and ROS 2 bag export. - -Watch video [[calib]](https://www.youtube.com/watch?v=2xjZ3sbX8oA) - -# GNSS with RTK - -A portable NTRIP (Networked Transport of RTCM via Internet Protocol) client for M5Stack devices that receives RTK correction data from NTRIP casters and forwards it to u-blox GNSS receivers for high-precision positioning https://github.com/michalpelka/M5NtripClient. diff --git a/documentation/VIDEOs/README.md b/documentation/VIDEOs/README.md deleted file mode 100644 index 4160419a..00000000 --- a/documentation/VIDEOs/README.md +++ /dev/null @@ -1,129 +0,0 @@ -# 0.101 VIDEOs - -Make session from ALS - -[![Make session from ALS](https://img.youtube.com/vi/k6nysHveoKU/default.jpg)](https://youtu.be/U7hYEQfdfDU) - -Make cave map - -[![Make cave map](https://img.youtube.com/vi/k6nysHveoKU/default.jpg)](https://youtu.be/srcf6qu7I08) - -Using RTK GNSS / GPS to georeference project - - -[![Make cave map](https://img.youtube.com/vi/7ikkAKHmu0w/default.jpg)](https://youtu.be/7ikkAKHmu0w) -# 0.94 VIDEOs - -IMU inclination prior - -[![IMU inclination prior](https://img.youtube.com/vi/k6nysHveoKU/default.jpg)](https://youtu.be/k6nysHveoKU) - -# Obsolete VIDEOs - -Where to find, how to download HDMAPPING software and manual - -[![Where to find, how to download HDMAPPING software and manual](https://img.youtube.com/vi/dHCOAeto9-M/default.jpg)](https://youtu.be/dHCOAeto9-M) - -Air ground survey - -[![survey - precise forestry application](https://img.youtube.com/vi/_nvq2un_lFc/default.jpg)](https://youtu.be/_nvq2un_lFc) - -Air ground survey result - -[![result of precise forestry application](https://img.youtube.com/vi/InqpiFrPizg/default.jpg)](https://youtu.be/InqpiFrPizg) - -Data recorded with Mandeye, online data registration with FAST-LIO. - -[![data recorded with Mandeye, online data registration with FAST-LIO](https://img.youtube.com/vi/u8siB0KLFLc/default.jpg)](https://youtu.be/u8siB0KLFLc) - -How to build Mandeye DEV - -[![how to build Mandeye DEV](https://img.youtube.com/vi/BXBbuSJMFEo/default.jpg)](https://youtu.be/BXBbuSJMFEo) - ---- - -Instruction for precise forestry - -1. Fast and fully automatic calculations in a single step - -[![Fast and fully automatic calculations in single step](https://img.youtube.com/vi/08E41CPyyj4/default.jpg)](https://youtu.be/08E41CPyyj4) - -2. hdmapping precise forestry intro - -[![hdmapping precise forestry intro](https://img.youtube.com/vi/W2ZHNOdZsq4/default.jpg)](https://youtu.be/W2ZHNOdZsq4) - -3. hdmapping percise forestry raw data inspection - -[![hdmapping percise forestry raw data inspection](https://img.youtube.com/vi/WRmW2hi1Cug/default.jpg)](https://youtu.be/WRmW2hi1Cug) - -4. hdmapping percise forestry lidar odometry STEP1 - -[![hdmapping percise forestry lidar odometry STEP1](https://img.youtube.com/vi/laPuPJRoj5U/default.jpg)](https://youtu.be/laPuPJRoj5U) - -5. hdmapping precise forestry session inspection - -[![hdmapping precise forestry session inspection](https://img.youtube.com/vi/rmLXZh7SQTs/default.jpg)](https://youtu.be/rmLXZh7SQTs) - -6. hdmapping precise forestry session inspection - -[![hdmapping precise forestry session inspection](https://img.youtube.com/vi/Biz_OA8x1Ek/default.jpg)](https://youtu.be/Biz_OA8x1Ek) - ---- - -Nuclear Power Plant inspection PART 1 - -[![Nuclear Power Plant inspection PART 1](https://img.youtube.com/vi/bpXQYZkH8Sc/default.jpg)](https://youtu.be/bpXQYZkH8Sc) - -Nuclear Power Plant inspection PART 2 - -[![Nuclear Power Plant inspection PART 2](https://img.youtube.com/vi/fJcuGw1RLO0/default.jpg)](https://youtu.be/fJcuGw1RLO0) - ---- - -Cave surveys (climbing, crawling in caves with MANDEYE-MR) - -[![Cave data processing](https://img.youtube.com/vi/4iq69c76eG8/default.jpg)](https://youtu.be/4iq69c76eG8) - ---- - -Multilevel building: example of using new functionality in v0.75 - intersection - -[![Multi level building](https://img.youtube.com/vi/XYIHKyaxQzo/default.jpg)](https://youtu.be/XYIHKyaxQzo) - ---- - -MANDEYE Mission Recorder calibration - -[![MANDEYE Mission Recorder calibration](https://img.youtube.com/vi/V9L0a6aqsJ8/default.jpg)](https://youtu.be/V9L0a6aqsJ8) - ---- - -MANDEYE georeferencing to GPS (NMEA data stream) - -[![MANDEYE georeferencing to GPS (NMEA data stream)](https://img.youtube.com/vi/FOWPGCgOKI4/default.jpg)](https://youtu.be/FOWPGCgOKI4) - -Removing GPS inconsistency after MANDEYE georeferencing to GPS (NMEA data stream) - -[![Removing GPS inconsistency after MANDEYE georeferencing to GPS (NMEA data stream)](https://img.youtube.com/vi/gcUV22D4YrY/default.jpg)](https://youtu.be/gcUV22D4YrY) - -MANDEYE georeferencing to GCPs (ground control points) - -[![MANDEYE georeferencing to GCPs (ground control points)](https://img.youtube.com/vi/iLlU7xzYDe0/default.jpg)](https://youtu.be/iLlU7xzYDe0) - -MANDEYE georeferencing to CPs (control points) - -[![MANDEYE georeferencing to CPs (control points)](https://img.youtube.com/vi/ogeAjzJvLeY/default.jpg)](https://youtu.be/ogeAjzJvLeY) - ---- - -Manual coloring - -[![MANDEYE manual coloring](https://img.youtube.com/vi/EUbAaJp-XmY/default.jpg)](https://youtu.be/EUbAaJp-XmY) - ---- - -# Compatible commercial products - -[![MANDEYE-PRO](https://img.youtube.com/vi/EBUxUBWKIco/default.jpg)](https://youtu.be/EBUxUBWKIco) - ---- \ No newline at end of file