Setting Up OpenDroneMap (WebODM) for Your UAV Projects
If you’re diving into the world of photogrammetry and drone mapping, understanding how to leverage open-source tools effectively can greatly enhance your capabilities. OpenDroneMap (ODM) presents a comprehensive photogrammetry processing engine under the MIT license, compatible with your hardware. WebODM serves as a user-friendly interface for ODM, allowing you to process aerial imagery with maximum efficiency and minimal technical barriers.
If you decide to go the open-source route, our OpenDroneMap (WebODM) Complete Setup and Workflow Guide 2026 pairs well with a broader look at how it stacks up against Pix4D, DroneDeploy, and Metashape.
This guide will walk you through setting up OpenDroneMap (WebODM) and provide a detailed workflow to get your first project off the ground. We’ll discuss the installation process—including Docker, native Linux, and Windows setups—and run through a complete processing workflow. Additionally, we’ll explore key processing options and provide guidance on achieving the best accuracy in your outputs, supported by benchmarks.
Understanding OpenDroneMap and WebODM
OpenDroneMap is an open-source photogrammetry processing engine designed to work seamlessly with aerial imagery captured from drones. It allows users to create detailed 3D models and maps from images, making it valuable across various applications, including agriculture, mining, construction, and urban planning.
WebODM, on the other hand, is the web-based user interface that presents a more visually intuitive way to interact with ODM. While ODM functions as a command-line interface (CLI) engine with robust capabilities for users comfortable with terminal commands, WebODM simplifies this experience, catering to users who prefer graphical interactions.
Both tools are available on their GitHub page, github.com/OpenDroneMap/WebODM, where you’ll find a vibrant community of contributors and users. With over 17,000 stars, the project continues to receive frequent updates and improvements.
Installation of WebODM
Before you can dive into processing your aerial imagery, you’ll need to configure WebODM on your local machine. Below, we outline various installation methods catered to different platforms. The recommended approach is to utilize Docker, as it simplifies installation and is cross-platform compatible.
System Requirements
- RAM: Minimum of 16 GB for medium datasets
- GPU: Recommended but not required; accelerates processing
- Storage: SSD is highly recommended for scratch space
1. Installation via Docker (Recommended)
To install WebODM using Docker, follow these steps:
- First, ensure you have Docker installed on your machine. Follow the [Docker installation guide](https://docs.docker.com/get-docker/) corresponding to your operating system.
- Clone the WebODM repository:
- Navigate to the WebODM directory:
- Start the server with the following command:
- Access WebODM in your web browser by navigating to http://localhost:8000.
git clone https://github.com/OpenDroneMap/WebODM.gitcd WebODMdocker-compose up2. Native Linux Installation
If you prefer to run WebODM natively on Linux (e.g., Debian/Ubuntu), you can use the following commands:
sudo apt-get update
sudo apt-get install python3-pip python3-dev git
git clone https://github.com/OpenDroneMap/WebODM.git
cd WebODM
pip3 install -r requirements.txt
python3 manage.py runserver 0.0.0.0:8000
3. Installation on Windows
For Windows users, installing Docker Desktop is a prerequisite. Once Docker Desktop is set up, follow the Docker installation method outlined above. If you prefer not to use Docker, manually installing WebODM on Windows requires additional configuration and dependencies.
Workflow in WebODM
Once you have WebODM installed and running, you can begin processing your aerial imagery. Below is the step-by-step workflow to create and process a new project.
1. Create a New Project
Launch WebODM in your web browser, and select the “Create New Project” option. Provide a name and description for your project, setting a clear workspace for subsequent uploads and processing.
2. Upload Images
WebODM allows you to upload images easily through a drag-and-drop interface. Supported formats include:
- JPG
- TIFF
- RAW
3. Import ground control points (GCPs)s (GCP)
If your project requires high accuracy, it’s crucial to import ground control points (GCPs)s (GCP). Prepare your GCP file in CSV format with the following structure:
label,x,y,altitude
GCP1,longitude,latitude,altitude
GCP2,longitude,latitude,altitude
...
Ensure that you have a minimum of 5 GCPs for achieving survey-grade accuracy. Upload the GCP file to WebODM, and manually mark GCPs on images within the interface.
4. Select Processing Options
WebODM provides multiple processing presets. Choose from:
- Fast: Recommended for quick outputs, less detail.
- Default: Balanced processing time and quality.
- High-Quality: Best detail and accuracy, more time-consuming.
5. Start Processing
After setting your options, click on the “Process” button to initiate the modeling work. Depending on your hardware and dataset size, this may take some time.
6. Review Outputs
Upon completion, WebODM will present several output files:
- Orthomosaic: Available in GeoTIFF format.
- Digital Surface Model (DSM)
- Point Cloud: Available in LAS format.
- 3D Model: Available in OBJ format.
7. Exporting and Sharing Outputs
You can easily export outputs through the WebODM interface, allowing you to share your processed data with stakeholders or for further analysis.
Key Processing Options
WebODM offers additional processing options that can significantly alter the output quality and processing performance. Below is a reference table outlining key parameters and their functions:
| Option | Description | Default Value |
|---|---|---|
min-num-features | Minimum number of features for matching; affects accuracy and processing time | 10000 |
mesh-size | Controls the polygon count of the 3D model | 16 |
dsm | Enable creation of Digital Surface Model | false |
dtm | Enable creation of Digital Terrain Model (bare earth) | false |
crop | Clip output to the flight boundary | false |
split | Tiling strategy for managing large datasets | false |
split-overlap | Determine overlap region for tiles in large datasets | 0 |
Understanding ground control points (GCPs)s (GCP)
Ground Control Points (GCPs) are critical for ensuring the accuracy of your mapping project. The GCPs are necessary for establishing a frame of reference for the generated models. The following outlines how to prepare and utilize GCPs effectively:
GCP Format Example
Here is an example of a GCP text file structure:
GCP1,34.123456,-117.123456,150.0,251,IMG_0001.JPG
GCP2,34.123460,-117.123460,150.1,450,IMG_0002.JPG
GCP3,34.123400,-117.123400,149.9,350,IMG_0003.JPG
GCP4,34.123470,-117.123470,150.2,549,IMG_0004.JPG
GCP5,34.123500,-117.123500,150.0,650,IMG_0005.JPG
A minimum of five GCPs are recommended to achieve horizontal accuracy within 1-3 cm and vertical accuracy within 3-5 cm RMSE when using RTK-surveyed points.
Accuracy Benchmarks
Achieving high accuracy in your aerial mappings is important, particularly in fields where precision is critical. The benchmarks for accuracy can depend significantly on whether GCPs are used and their quality:
- Without GCPs: Expect an absolute accuracy of 1-5m when using consumer GPS drones.
- With 5+ RTK-surveyed GCPs: Achieve remarkable horizontal accuracy of 1-3 cm and vertical accuracy of 3-5 cm RMSE.
Conclusion
This guide provided a comprehensive overview of setting up and using OpenDroneMap (WebODM) to process aerial imagery effectively. From installation procedures to workflow steps and essential processing options, following these guidelines will enable you to harness the full potential of this open-source photogrammetry tool.
The capability to process and create highly accurate models and maps from drone imagery not only enhances operational efficiency but also fosters innovative applications in various fields such as agriculture, urban planning, and environmental conservation. Embrace the power of open-source technology in your UAV projects and explore the possibilities that come with it.
Frequently Asked Questions
- What is the difference between WebODM and ODM?
- WebODM is the web interface that simplifies the interaction with the ODM CLI engine, providing a more user-friendly experience for processing drone data.
- Can I install WebODM without Docker?
- Yes, you can install WebODM natively on Linux, but the Docker method is recommended for its simplicity and cross-platform compatibility.
- How do I improve processing accuracy?
- Using Ground Control Points (GCPs) is essential for improving accuracy. Ensure you have at least five well-distributed GCPs for reliable results.
- What types of images can I upload to WebODM?
- You can upload images in JPG, TIFF, and RAW formats for processing.
- What hardware requirements should I meet for WebODM?
- WebODM requires a minimum of 16 GB of RAM, while a GPU is recommended to accelerate processing. An SSD for storage is also advisable.
Sources
1. OpenDroneMap Documentation
2. GitHub Repository: OpenDroneMap WebODM
Sources & References
- OpenDroneMap Documentation
- GitHub: OpenDroneMap/WebODM
- OpenDroneMap Community Forum
- WebODM Lightning Managed Cloud
- OpenDroneMap: Understanding GCPs
MTS UAV is an independent drone research blog covering open-source UAV platforms, hardware engineering, drone mapping, and field research. Content written by practitioners, for practitioners.
