Docker, GCP, and "Global View Selection failed"


I’m unable to run a model with GCPs using ODM (V0.8.2) in Docker on Ubuntu 18.04. During dense reconstruction, I get the following “Global View Selection failed” error:

    [INFO]    Running dense reconstruction. This might take a while. Please be patient, the process is not dead or hung.
    [INFO]                                  Process is running
    [INFO]    running /code/SuperBuild/src/elibs/mve/apps/dmrecon/dmrecon -s3 --progress=silent --local-neighbors=2 "/datasets/code/mve"
    MVE Depth Map Reconstruction (built on Aug  6 2019, 03:11:43)
    Initializing scene with 56 views...
    Initialized 56 views (max ID is 55), took 320ms.
    Reading Photosynther file (56 cameras, 67151 features)...
    Reconstructing all views...
    Global View Selection failed
    Global View Selection failed
    Global View Selection failed

Following the documentation and suggestions from the Docker and GCP files thread, I have tried the following two approaches with and without the --gcp option:

    docker run -ti --rm -v /home/user/test:/datasets/code opendronemap/odm --project-path /datasets


    docker run -ti --rm \
           -v "/home/User/test/images:/code/images" \
           -v "/home/User/test/gcp_list.txt:/code/gcp_list.txt" \
           -v "/home/User/test/odm_orthophoto:/code/odm_orthophoto" \
           -v "/home/User/test/odm_texturing:/code/odm_texturing" \

Both approaches throw the same “Global View Selection failed” error. If I exclude the GCP file, the model runs to completion, so I’m sure ODM is working properly. And, the model with GCP runs to completion on a native install of ODM (V0.3.1) on Ubuntu 16.04, so I know the GCP file is good.

Here are the data: GCP file and images

Any thoughts? I’m determined to create a workflow on Ubuntu 18.04.



Mm, does processing continue if you pass --use-opensfm-dense as an option to the command (at the end)?

Adding the --use-opensfm-dense option allowed the model to complete. However, I get strange results. The mesh is blocky and incorrectly positioned. I.e.,

I seem to recall a similar problem in V0.3.1, which I previously resolved with the --resize-to option following thread #541. Unfortunately that causes the process to terminate before completion and produces the following error in the current procedure:

    Running local seam leveling:
    *** Error in `/code/SuperBuild/install/bin/texrecon': free(): invalid next size (normal): 0x00007f2c40101240 ***

So here is what I tried, with and without --resize-to :

    docker run -ti --rm -v /home/User/test:/datasets/code opendronemap/odm --project-path /datasets --rerun-all --resize-to 4000 --use-opensfm-dense

The latest version (0.9.1) of ODM resolves this issue.