-
Notifications
You must be signed in to change notification settings - Fork 5
2. Running OpenDroneMap
To run OpenDroneMap on your images move to a directory of images and run the following command:
../OpenDroneMap/run.py
if your images are with capital letters in their extension first run this command to rename the images:
rename 'y/A-Z/a-z/' *
if you run into 'file already exists' errors, use the -f
tag.
then the run script
Sit back, grab a coffee and wait
By default, OpenDroneMap tries to use the photo's GPS exif data to georeference. If your photos doesn't have gps information or you want better accuracy you have to specify a ground control point file.
The gcp_list.txt
file must be created, and the --odm_georeferencing-useGcp
argument passed.
The format of the GCP file is simple. The header line is a description of the coordinate system: either a UTM specification written as "WGS84 UTM xx<N\S>" or a coordinate system definition in any format the GDAL library can understand. Link. We recommend using EPSG:n codes. Subsequent lines are the X, Y & Z coordinate in your coordinate system, your associated pixel and line number in the image, and the image name itself:
coordinate system description
x1 y1 z1 pixelx1 pixely1 imagename1
x2 y2 z2 pixelx2 pixely2 imagename2
x3 y3 z3 pixelx3 pixely3 imagename3
e.g. for the Langley dataset:
WGS84 UTM 10N
544256.7 5320919.9 5 3044 2622 IMG_0525.jpg
544157.7 5320899.2 5 4193 1552 IMG_0585.jpg
544033.4 5320876.0 5 1606 2763 IMG_0690.jpg
Please note, these locations are not the locations of the camera at the time of the image. If you have this instead, use scripts like these https://github.com/mapillary/mapillary_tools/tree/master/python for inserting that information into your image headers (exif).
Once this file is in place, running is just as easy. Run the script:
../OpenDroneMap/run.py --odm_georeferencing-useGcp
Sit back, grab a coffee and wait.