Workflow
Discuss here the workflow, data and software requirements
Raw imagery processing
Data
The photos taken by DJI Inspire over our test area from Centennial campus can be found here:
- nadir only (380MB): https://drive.google.com/file/d/1ivEj6ZsPJQ4VSYKL0eBSAthkyuDxBSki/view?usp=sharing
- oblique + nadir (1.5GB): https://drive.google.com/file/d/1jtcZI6nhp3uXsybs7ZRKuP4c-10xCDLq/view?usp=sharing
Software
There are two open source UAV imagery processing options based on OpenDroneMap (ODM).
OpenDroneMap
In this workflow we use dockerized version of OpenDroneMap.
- Install Docker, here an example of installation on Ubuntu:
sudo apt-get install -y docker.io
sudo groupadd docker
sudo usermod -aG docker $USER
- then logout and login
docker pull opendronemap/opendronemap
- Create your directory structure:
mkdir odm && cd odm && mkdir images orthophoto georeferencing texturing dem
- Download the images and unzip them into
images
folder. - Download GCP file and put it in the
images
folder. - Run OpenDroneMap:
docker run -it --rm -v /home/akratoc/odm5/images:/code/images -v $(pwd)/orthophoto:/code/odm_orthophoto -v $(pwd)/georeferencing:/code/odm_georeferencing -v $(pwd)/texturing:/code/odm_texturing -v $(pwd)/dem:/code/odm_dem opendronemap/opendronemap --matcher-neighbors 20 --min-num-features 10000 --mesh-octree-depth 10 --dsm --dem-resolution 0.5 --opensfm-depthmap-resolution 1280 --gcp /code/images/gcp_list.txt
- notes regarding parameters:
- --matcher-neighbors; can be reduced to speed up matching phase
- --mesh-octree-depth can be increased to12 if there is enough memory, otherwise it will crash
- --dem-resolution: resolution of the digital surface model
- After finishing, results are organized this way:
- georeferenced orthophoto:
orthophoto/odm_orthophoto.tif
andorthophoto/odm_orthophoto.png
- mesh (3D model):
texturing/*
- obj contains only geometry, other files are needed for texture
- LAS file (georeferenced point cloud):
georeferencing/odm_georeferenced_model.las
- DSM (georeferenced, raster-based digital surface model):
dem/dsm.tif
- georeferenced orthophoto:
Notes:
- End-user oriented webinterface for OpenDroneMap
- Server side distributed as processing nodes managed by Docker
See more details at our website: Open Source UAS processing
Alternatively we can use Agisoft Photoscan which will require a license.
Postprocessing and analysis
Orthophotos and DEMs from UAS will be further processed, analyzed and fused with additional data (e.g. lidar-based DEMs) using open source GRASS GIS. Here is an example of application for stormwater runoff. Once we have the workflow figured out we can test this on a more urban environment such as NCSU campus - we should be able to get pretty detailed flow over roads and sidewalks.
Current issues:
- dense point cloud is not dense enough, waiting for #662
- vertical registration is off by 100 m, needs more investigation whether GCP file is correctly applied
nadir only (left), nadir + oblique (right)
DSM generated by PDAL, vertically misaligned, nadir only (left), nadir + oblique (right)
nadir only (top), nadir + oblique (bottom)