mapillary / OpenSfM

Open source Structure-from-Motion pipeline
https://www.opensfm.org/
BSD 2-Clause "Simplified" License
3.28k stars 843 forks source link

Asphalt and roads/pathways in general never present at points cloud #274

Open cleberzavadniak opened 6 years ago

cleberzavadniak commented 6 years ago

I noted this problem when using OpenDroneMap. See https://github.com/OpenDroneMap/OpenDroneMap/issues/750 .

I have some examples of points clouds generated with drones imagery from the company I work in:

captura de tela_2018-01-26_12-33-04

35237325-80308d74-ff91-11e7-9621-447e47a10fa7

We want to offer our services to road building companies, and the absence of the asphault is going to be a major problem...

Is there any trick I can try to tweak OpenSfM parameters to deal better with roads?

Thanks in advance.

dakotabenjamin commented 6 years ago

Here's other examples in roofs and roads: image

image

paulinus commented 6 years ago

It is difficult to reconstruct image areas that have no texture. The algorithm computes correlations between image patches and the correlations values become unstable when there is no texture.

Because of that, we usually ignore the textureless patches. There is a threshold to control when a patch is considered textureless.

You can experiment with lowering the threshold to get more coverage in the textureless areas by adding to config.yaml

depthmap_min_patch_sd: 5.0            # Patches with lower standard deviation are ignored

5.0 is the default value. Setting it to 0.0 will process all patches.

arielbenitah commented 6 years ago

@cleberzavadniak I get some nice results using OpenMVS right after running OpenSFM for textureless low textures areas. You may try it as well. Actually, OpenMVS was designed to render textureless areas.