Tuesday, February 11, 2025

LIDAR Scanning, Gaussian splatting, Photogrammetry and the Unreal engine!

LIDAR Basics

LIDAR Scanning - as shown in my review about the 3DMakerPro Eagle Pro - is measuring millions of dots with LASER and creating 3D landscapes with 2cm accuracy. Additional use of cameras can help colorize these scans to make them look even better. Find out if this is something for you!

"Gaussian splatting" takes it to another level and create even more impressive landscapes!

Learned all of this while researching for my review - covered a lot of topics - so the limits of a youtube description box were reached swiftley ;)

LINKS:

3DMakerPro Facebook Group

JimuMeta (3DMaker): https://scene.jimumeta.com
https://gauss.jimumeta.com      Demo scene Lake
(online platform starts March 2025)

3DMakerPro "RAY-Studio" Software: (usage guid and tips below!)
early alpha tool, not very polished

Download my "monument" pointcloud sample data for your own tests!
Cloud Compare  (open source! - best pointcloud tool I found during research)  

my FINDINGS:

  • micro SD slot:  Scans are automatically stored there - so you don't have to export using the (slow) USB Stick export method
  • Size of internal memory: 32gb
  • SD slot should be accesible even if grip-base part ist attached
  • Button on grip:   used to take Panoramic pics - not used in scan mode
  • Calculations in Software (RayStudio 1.01) are slow - they don't use all of your CPU and almost none of your GPU power. My i9-9900K CPU was around 14% - and there was no core at 100% usage (aka singlecore usage).


SCANNING TIPS:

  • stay below 20kph
  • below 4.5 minutes (to keep the filesize low)
  • check exposure for good textures
  • move steady and slow and make multiple runs (with different angles)
  • "look behind stuff" to fill unknown areas
  • Combine multiple scans into one scenery?
    yes, but only manually aligning is available (I used Cloud Compare)


TECH SPECS:

SMA connector on top (antenna, GPS?)
Lidar Dome in front
Accuracy  2cm for 10 meters, 3cm for 20 meters, 5cm for 40 meters
Scan radius 40-70 meters (>10% reflectivity or >80% reflectivity)
Scan range  10-140 meters
Scan angle Horizontal 360°, Vertical 59°
Point cloud frequency  200,000 points/second
Laser light source  905 nm
Eye safety level  Class 1 (IEC60825-1:2014) Eye Safety
Color texture  48MP 4-camera system, 360° x 300° support 16K panoramic
photo output
4x 48MP cams (180°, F2.0) but pics seem to be 12mp (4000x3000 super wideagle) (Front, 120° left and right, top)
HDR mode Support (3-5 exposure values)
USB C interface  x 2
  Data: here you PLUGIN your USBc NTFS stick - not a cable to your PC!
  Power: for charging or power during use
Built-in battery  12000 mah, supports 1 hour of work, supports external
Network support  Wi-Fi 5
Screen size  3.5”
Output format  3D Color Point Cloud PLY
3D Gaussian Splatting PLY
3D Colored Polygonal Model OBJ
3D Panoramic Tour Data (OBJ)
Volume  115mm x 181mm x 107mm
Weight 1.5 kg
Configuration 8 Cores 2.4GHz 32GB
MicroSD Card slot on bottom (card must be NTFS!)
Battery indicator

Competions products:

Leica BLK2GO 30k€?
FJD Trion P1 LiDAR 3D Scanner  ~ 10k€

 RayStudio SOFTWARE GUIDE

1. Create Project (select folder where your scans are, then create INI file with Project name)  ! It has to be the folder that already contains BAG files! Keep short foldernames, avoid spaces!

2. click SOLVE (this shows fields for LIDAR and IMAGE files .BAG - select those two from your scan, dont mix them!) - hit APPLY, this generates "recalculate_result.amap

Tip: to see better progress - check their console window!

3. FILTERING (add the "recalculate_result.amap" from Step 2) and APPLY (dont change settings unless you know better) this generates "filter_result.amap"

4. SAMPLING needs "filter_result.amap" from Step 3 APPLY, generates "tmp\sampling_result.amap" watch out, it's in a subfolder!

5. BUILD NORMALS: "tmp\sampling_result.amap"

6. COLORING:    uses ~ 30% of my CPU   
     "tmp\sampling_result.amap"
    and one of the pic folders i.e.:  image\camera_front

7. CONSTRUCTING Net:  select tmp\normals_result.ply  and convert this to a poisson mesh

Photogrammetry

This is used to analyze images (mostly pics taken using a normal DJI drone)
and calculate "structure from motion" information to create (stunning) 3D landscapes.

It's not as accurate as LIDAR scans - but way easier and faster to capture large areas!

Agisoft Metashape Pro v2.2.0 

This is the best software I found - results look very good, and the software can also help you process your LIDAR Pointclouds (eg. create good looking meshes). But the software is not cheap!

Import video is slow or crashes... so: extract stills from video:  ffmpeg -i "input.mp4" -vf fps=1 "%05d.png"  with FFMPEG yourself!
Or even better:   DJI Air3 + Waypoints, timed photos (5sec) - photos have GPS and orientation infos

Gaussian Splatting

I saw a few videos, find it extremly interesting but never got the process to work for me on my local PC (and I'm still not sure if my RTX 4070TiS with 16GB vram is enough - or if you need more than 20gb vram? Only for nerds!

Tutorial here: https://www.youtube.com/watch?v=UXtuigy_wYc
https://github.com/jonstephens85/gaussian-splatting-Windows
https://innoarea.com/en/noticias/gaussian-splatting/

https://www.youtube.com/watch?v=sQcrZHvrEnU

Or try this free online tool: https://poly.cam/tools/gaussian-splatting 

EDITING Gaussian Splats:   
https://www.youtube.com/watch?v=OeSOWkjIfFY
https://playcanvas.com/supersplat/editor/
Gaussian splat converter (for cloud compare)

UNREAL ENGINE

It's a developer environment - so expect a bit of work, but it's powerfull! You can use a template scene and load your LIDAR scans into them - then walk around in VR! or just Screen with mouse/keyboard - it's a game engine!
Might also be the "easiest" way to get decent looking textures applied to your scanned mesh!

Get unreal engine here (signed in with Google account)
a bit more effort to install if you're new to it, but very powerfull engine!
https://youtu.be/Z3Uxb0rTJjU
5hr Unreal Engine beginners tutorial

More tools / viewers:

https://support.scanner2go.de/hc/de/articles/11443705694353-%C3%9Cbersicht-kostenlose-Punktwolken-Viewer

  • Meshlab: ok
  • LassTools (Win, GUI, not bad):  https://rapidlasso.de/downloads/
  • Leica Trueview?  also VR version but propriatory
    https://leica-geosystems.com/de-at/products/laser-scanners/software/leica-truview-digital-reality-viewer/leica-truview-desktop
  • QuickTerrain Browser:  good viewer (.LAS Files) but no edits!  https://appliedimagery.com/download/qtreader-64-bit/
  • Cloud Compare  (open source! - best pointcloud tool I found during research)  
    https://www.cloudcompare.org/forum/viewtopic.php?t=5312
    • can import many formats, including the COLOR shaded .PCD files from RAY-Studio!align multiple scans (3point align is pretty good!)
    • create "ambient occlusion" shadows for way better look!
    • this creates an scalar field with additional color information which should also work in other apps
    • or just use the EDL filter in realtime!
    • could convert pointcloud to mesh - but not the best results

1 comment:

Rafael Jimenez Arce said...

Hola, como se puede utilizar la antena RTK ?
La nube de puntos existe alguna forma de exportarla a Las?