Dr. rer. nat. Harald Schernthanner

Introduction to WebODM and OpenDroneMap (ODM): A few notes

These notes are part of a short introduction to WebODM. The motivation behind this introducion is to show, that an alternative to Agissoft Metashape or Pix4D exists.

What is OpenDroneMap and what are it’s capabilites?


There are not that much studys out there

  • Conference paper:

Vacca G. Overview of Open Source Software for Close Range Photogrammetry. ISPRS-International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences. 2019 Aug;4214:239-45. [Available online at:]

  • Performance comparison of different photogrammetric software packages. Test object: Basilica of the Beata Vergine Assunta.
  • Found points on 111 images shot by Canon EOS M3 with a sensor CMOS 22.3×14.9 mm and a 24.2 Megapixel resolution Software Matched points Agisoft Metashape 114.453.295 points WebODM 3.545.806 points
  • Further paper: Burdziakowski, P. (2017). Evaluation of open drone map toolkit for geodetic grade aerial drone mapping–case study.


Ways to install ODM:

  • Docker (Windows, MacOS, Linux)
  • Natively using Ubuntu 16.04 or later (or with a Virtual Machine)
  • Windows WebODM installer is sold

Prerequisites to install WebODM on Ubuntu 18.04

  • Docker and GIT

Install Docker on Ubuntu 18.04

#Install Docker
sudo apt-get update 
sudo apt-get upgrade
sudo apt install
#Start and Enable Docker
sudo systemctl start docker
sudo systemctl enable docker

#In some cases docker has to be updated after installation to avoid backport errors
sudo pip install --upgrade docker

Enable non root users to use docker

sudo groupadd docker
sudo gpasswd -a student docker
#activate the changes
sudo newgrp docker

Install WebODM

git clone --config core.autocrlf=input --depth 1
cd WebODM
./ start

Installations for the introduction

Virtual machine

Further a virtual machine in the Ova2.0 (Open virtualisation) was generated; WebODM was installed insed OSGEOLive an Lubuntu based Live Linux distribution packed with GIS software. It can by using VirtualBox. Be aware, that you need enough diskspace (~40 GB).
Docker inside a virtual machine, does this make sense?


The virtual machine can be downloaded at:
It´s an ova container, for VirtualBox. If you use it on you own machine, you have to be aware of the specs (the VM uses 16GB of RAM and 4 cores; this and the mounted folders have to be adapted to your needs).

Server based installation

For your convencience WebODM was installed on a virtualisation server and can be used by you on request. The URL of the server is: The admin acount to enter the interface is:
admin, the password:xxxxxx A user account can be accesd via: user / xxxxxx

  • Server capacities:
    • Processor: 24 Xeon E7 v2/Xeon E5 v2/Core i7 Bridge
    • RAM: 128 GB
  • Issues with the server installation:

Uploading to VM Server sometimes is „incomplete“:

Launch WebODM

1. Start container: ./ start
2. Launch in browser: http://localhost:8000/dashboard/
3.Stop WebODM: ./ stop

Sample Data

Examples to play around with WebODM

In the intro this dataset is used:

Geopark Kielce-Centrum Geoedukacji:

Explore the sample data: QGIS Photo Plugin:

The QGIS Photo Plugin is a plugin to import geotagged photos to QGIS. It’s a helpul plugin to explore drone imagery: The plugin creates a layer which will contain the name of the picture, its directory, the date and time taken, altitude, longitude, latitude, azimuth, north, camera maker.

  • Photo plugin
    • Exif tools is a prerequisite and can be installed via
sudo apt-get install libimage-exiftool-perl perl-doc

Generate products:

Orthophotos, Point Clouds, digital elevation models (DSM and DTM) and other products can be derived after uploading imagery. It‘ s a very easy to use drop down menu.
The process simply can be started with: Start processing: Review -> start process

Go further I: Access the docker container and it’s commandline

  • Get id of running docker container
sudo docker ps -aqf "name=containername"
  • Access bash of the docker machine
docker exec -ti 5d402bd522f3 bash

But I did not manage to run ODM commands within the container

Go further II: Install ODM docker
  • Example run to process imagery:
Run: docker run -ti --rm -v /my/project:/datasets/code opendronemap/odm --project-path /datasets

Include Gcps

Gcps can be used as text file as followed:

  • coordinate system descriptionx1 y1 z1 pixelx1 pixely1 imagename1x2 y2 z2 pixelx2 pixely2 imagename2x3 y3 z3 pixelx3 pixely3 imagename3
  • WGS84 UTM 10N544256.7 5320919.9 5 3044 2622 IMG_0525.jpg544157.7 5320899.2 5 4193 1552 IMG_0585.jpg544033.4 5320876.0 5 1606 2763 IMG_0690

Further reading

Schreibe einen Kommentar