Developer

GeoTagging Images on Mission Planner

3689491142?profile=original

Introdution

Geo-tagged aerial pictures are very useful for mosaic mapping as well as the creation of accurate 3D models from a terrain.

Michael Oborne added a great tool for injecting GPS data on the EXIF tags by using APM's telemetry log from a flight.
This tutorial was created to show you how does it work.
This is a work from Sandro Benigno and Guto Santaella who kindly provided the sample files and screenshots used for making this tutorial.

 

Step by Step

 

1: Open the Mission Planner and press "Ctrl+F". It will open a hidden screen, like shown here:

3689491066?profile=original

2: Click the button "Geo ref images".
It will give you access to the Geo Tagging resource as shown below:

3689491209?profile=original

3: Click the button "Browse Log" and select the telemetry log (.tlog) of the flight related to the shooting session.
Note: You can use both sources: the "Logs" folder from Mission Planner install or you can download it from the APM's dataflash through the USB port.
4: Click the button "Browse Directory" and select the folder where your aerial pictures was downloaded from your camera.

3689491155?profile=original

5: Just to illustrate, the screen below shows the mission used for creating this tutorial:

3689491079?profile=original

6: The next step is clicking on "Estimate Offset". It will try to extract the offset from the "Log Start Time" and the "Shooting Time" from the first picture taken.
The result shows "offset should be about...". You need to take the guessing and insert it manually on the field "Seconds offset".

3689491166?profile=original

7: Click the button "Do it" and wait until the processing is finished. The number shown in "Done... matches" must be the number of pictures taken. Otherwise it means that the sync isn't good enough.
8: After the previous step you can verify the positioning of each picture on Google Earth by clicking "Location Kml".

3689491094?profile=original

9: Looking at the example above you'll see the estimated position of a picture. You can click any images at the list on left to check it. If the position is not accurate you can step back and retry it from the step "6" by increasing or decrasing the "Seconds offset" a little bit, just like a fine tuning.
10: After finishing the tuning, all you need to do is click "Geo Tag Images". This process will add geographic data to your picture, i.e. Latitude, Longitude and Altitude.
The processing creates new files with a suffix "_geotag". The original set of pictures remains untouched.

3689491177?profile=original

11: You can check your pictures by visualizing the file properties details. You should see the inserted GPS tags on the EXIF data.

3689491269?profile=original
Thanks to Michael Oborne by one more awesome tool! ;)

E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • Thanks for explaining that to me Sandro, I hadn't thought about the time clock on the camera.

    Looking forward to using it, great work, thanks to all of you involved.

  • T3

    Great job to All! thanks you!

    -hi Sandro, if we have synchronized, our camera clock with our laptop clock, can the code, just assign the point coords at the clik time, without offsets? or if we are really sure for our sync, we just type zero(0) offsets? 

    -And a trickier request to all, combining the Mplanner camera tool and georeferencing tool, can we auto draw polygons with center the geotaged center, rotation by yaw(mag) and scaling by height (Hfov, Vfov) with our images overlayed?? 

    again, many thanks for the guide!!

  • Developer

    Hi Martin! The beauty of this process is that it's independent of logging the triggering time.

    Let me try to explain how does it work...
    We have the two following assumptions:

    1 - Your digicam already records a shooting time on the files (EXIF data).
    2 - APM records the GPS data including time (Telemetry LOG).

    So you'll have a start/end point extracted from both ("shooting session" and "flight session").

    Then the trick is just finding the offset between those two sessions.
    When you find the offset for the first shoot taken all the other ones will match nicely the rest of the flight time. That's it! ;)

  • I haven't used this yet Sandro, but have some questions, can you explain which event it records the co-ordinates for in the telemetry log files and then tags to the images. Is it the camera trigger command, arrival at a waypoint, or some other function.

    If I am using the "do set servo" command to activate a servo to trigger the camera, can I tag the co-ordinates of this event to the images.

  • Awesome work! I'd love to add a link to this post from our FAQ. If you have some example imagery we'd be happy to process it, we are lacking a good Ardupilot mapping example. :) Great job.

  • nice job for both of you!!! thanks

  • Distributor

    Thanks Marcelo! (Valeu Marcelo, depois posta uns resultados...)


  • Unbelievable!!

    And I've spent some money to buy a Canon with Geotag built in... lol :-).


    Congrats and thank you, guys!

  • Distributor

    Thanks Peter, I used this process using the log on the computer (ground station) but works with the airplane log as well. It was really a the better (free)tool for geo-reference pictures that we could have. for sure it will put the Ardupilot on high levels as a equipment for precision results. And thanks buddy Sandro!

    For the future more cool things is coming...

  • nice tutorial, i spent lots of days searching for this info in the past!

This reply was deleted.