course header LV-UAV-Guide | Metashape Ortho+ - optimized processing of RGB images

Metashape Workflow via Ortho+

The Metashape Ortho+ menu provides essential scripts that simplify and optimize the manual metashape workflow Ludwig et al., 2020. The optimized workflow generates reproducible and automatically optimized products from the aerial images. Installation is seamless via Metashape’s scripting interface.
After the installation and the necessary restart of Metashape there is Ortho+ menu item in the Metashape menu bar.

Instalation of the toolbox

Linux/Mac: Download this repo and unzip it to ~/.local/share/Agisoft/Metashape Pro/scripts/

cd ~/.local/share/Agisoft/Metashape Pro/scripts
git clone https://github.com/gisma/MetashapeTools.git .

Windows: Copy the content of this repo to User/AppData/Local/AgiSoft/Metashape Pro/scripts

First things first - Load images

All functions are based on image data so first do always the following:

  1. Add the images you want to process to the chunk.
  2. Give the chunk a meaningful name.
  3. Save the project using a meaningful name

Note: You will be always ask if you want to perfrm the task for a singel chunk or all chunks. Choose wisely.

BestPractice

The BestPractice menu provides robust and well tested workflows that are primarily intended for processing large image data sets from (low cost) drone surveys. The problem that arises here is the huge amount of images with numerous starts and landings and a fixed continuous camera system (e.g. GoPro Hero 7, time lapse 2 sec). This way, 10k images are quickly collected, 80% of which are over sampled or of poor image quality and so on. The workflows identify low image quality and reduce the number of images by an inverse camera position calculation based on the preliminary surface model. This dramatically reduces the number of images, due to elimination of unusable taxiway and takeoff/landing image sequences. In addition the remaining cameras are activated and optimized. In this way, the quality and reproducibility can be significantly improved. At the same time, processing time is reduced by one to two orders of magnitude.

Orthoimage Workflow integrating Ground Control Points (GCPs)

It is obligatory that you run consecutively all three steps.

Step-1 Orthoimage-pre-GCP

After the script is finished you may need to manually remove the few remaining start and landing area pictures. Otherwise you will find at the launching place some artefacts. To do so just right-click on the position in the model and choose filter by point. Mark and remove all pictures with the launching pad and repeated launching and landing images.

The procedure is well documented. Dor instant watch this YouTube or follow this tutorial. Import your Ground Control Points (GCP) and align them manually in at least 4 images. Use about 30 % of the GCP as independent checkpoints by unticking the check box in the reference pane. Save your project.

Step-3 Optimize Sparsecloud

Performs an iterative optimisation of the sparse cloud to retrieve the best reprojection error. The tie pointcloud will be much more reliable for all later tasks

Step-4 Orthoimage-post-GCP

Finally you have a result that automatically tries to optimize the number of necessary cameras, minimize re projection errors in the tie point cloud (sparse cloud), re-arrange the cameras and thus produce an reproducible orthoimage on the (statistically) best possible spatial resolution.

Orthoimage-no-GCP

If you do NOT have Ground Control Points or not intending to squeeze the absolute position of the final product, you can run corresponding to the upper workflow, an one click production of optimized orthoimages. This maybe very useful if you have several repeated flights over an area and if you want to get an overview. Just put the image data of each flight in a seperate chunk and start the script Toolchain noGCP with the option to process all chunks.

This will do the following steps:.

Reduce Overlap

Performs a low-quality initial alignment to generate a sparse point cloud and a smoothed mesh (smoothing factor: 10). Based on this, it calculates an inverse optimization of the necessary camera positions using a reduction factor of 8.

Densecloud

Generates a dense point cloud based on the existing sparse cloud and alignment.

Orthoimage

Use Orthoimage if you do not intend to optimize camera positions or the sparse point cloud beforehand. This script executes the following steps:


Utilities

Export Marker Error

Exports the marker error statistics as a .csv file.

Export Tiepoint Error

Exports key statistics from the sparse point cloud (e.g., Reconstruction Uncertainty, Reprojection Error, Projection Accuracy, Image Count) to a .csv file.

Orthomosaic Reproducibility

  1. Import your Ground Control Points (GCPs) and align them.
  2. Run the script Reproducibility.

This script generates a set of orthomosaics (default: 5), which can then be evaluated statistically in R or other analysis tools to assess spatial variability and product consistency.


Further Readings

The above-described workflow functions to a certain extent as a “black box.” However, it is fully documented, and you are encouraged to inspect the scripts directly and review the corresponding publication by Ludwig et al. 2020.

The optimizations and workflows presented in this course are tailored primarily to low- and mid-altitude forest environments in mountainous regions. Accordingly, the presets may require adjustment for other application contexts.

That said, it is highly recommended to engage actively with the capabilities of Metashape. The resources below offer insights into diverse workflows and application scenarios. They also explain interactive tool use beyond what is scripted in Ortho+.