Point cloud has many points at extreme depths


I’ve been having an issue with several datasets that generate points at extreme depths below the surface. I’ve tried many different options at varying levels, but I can’t seem to shake these points. As a consequence, the DEM is often completely red rather than the full spectrum, which makes it kinda pointless.

What do you suggest? If I turn on use-opensfm-dense it does help with removing the extreme point, however it’s at the cost of a very pitted DEM.

Or perhaps another way to put this: how can I chop off the 1% extremes, top and bottom?

After a while I started to record each option that I’d tested so far. Here are the individual options I’ve tried with various values without success:

resize-to - 1
dsm: truedepthmap-resolution
opensfm-depthmap-method: BRUTE_FORCE
texturing-data-term: area
texturing-outlier-removal-type: gauss_damping
opensfm-depthmap-min-patch-sd: 5
opensfm-depthmap-min-patch-sd: 0.5

Perhaps another solution would be to smooth out the opensfm-dense results. I’ve been trying options for that also but I just can’t seem to pull it off without melting the results. Has anyone else experienced this and found a happy medium?

I would use the pointcloud but do some outlier filtering in PDAL.

Thanks for the reply. Are there any flags that I can pass ODM to adjust the PDAL parameters? I haven’t spotted any in the documentation.

Keep an eye on https://github.com/OpenDroneMap/ODM/pull/956. Nice additions in regard to this problem.


Is there a way that I can try that branch today?

1 Like


git clone https://github.com/pierotofy/OpenDroneMap
cd OpenDroneMap/
git checkout simplifydtm
docker build -t opendronemap/odm:simplifydtm .
docker run -ti -v [......] opendronemap/odm:simplifydtm
1 Like

This new update works very well. Seriously guys, this is brilliant work.

1 Like