Hi everyone, this is my first post on here and i would like to thank everyone for all the hard work and long hours helping others.

So i am running mission planner 1.2.94 and using a steadidrone quad with 12" props, extended landing gear, gopro, no gimbal. canon a2300 attached facing down. Using the latest 3.1.1 arducopter. Flies great, auto missions are good etc. 

My issue is is that when i geotag the pictures from the canon, the altitude, longitude and latitude are mixed up. I am at a loss as to where to begin to fix this. Has anybody had an issue like this before? While flying using telemetry, it shows good data, when i view the kmz in post, it looks perfect. but when i geotag, it gets all messed up.

attached is a sample picture to see the gps details, and the log file and the log.gpx for the flight.

i synchronized my camera and laptop so the offset should be zero, but when i run the offset estimator, it gives me like -345456. im stumped.... any suggestions?

Views: 1746


Reply to This

Replies to This Discussion

here is also a copy of the original image to compare.


In the folder where you have the images there should be a file with location.tel there you can preview data being input into the geotag. You can check there if your log offsets are correct or not when you do the geotaging.

thanks jamie, i see mission planner was updated today, i tried geotagging again and it worked just fine. not sure what the issue was.

Anyone have additional information on this issue? We've seen two flights in the last day where the Geo-Tags are off significantly. I am creating a script locally to re-geo-tag from flight logs and will post it if needed. Thanks

This isn't the best approach because I don't have a ton of time to spend writing a complete parser, but if you follow the guidelines at this post:


To extract .tlog data to CSV, you can use the following (with modifications) php code to generate a gpx. Once you have the gpx you can use exiftool to re-geotag the images accurately. Hard coded stuff in bold, which will need to change for your logs/etc.

* Change date_default_timezone_set to your flight timezone, you will also
* need to add a -geosync offset for exiftool on the command line if the
* time (hour) field doesn't match.

* Input/Output files
$incomingfile = "./flight2.csv";
$outputfile = "./flight2.gpx";

$mygpx = '';
$mygpx .= '<?xml version="1.0"?>';
$mygpx .= "\n";
$mygpx .= '<gpx creator="http://dronemapper.com" version="1.0" xmlns="http://www.topografix.com/GPX/1/0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/0 http://www.topografix.com/GPX/1/0/gpx.xsd">';
$mygpx .= "\n";
$mygpx .= '<trk>';
$mygpx .= "\n";
$mygpx .= "\t".'<number>1</number>';
$mygpx .= "\n";
$mygpx .= "\t".'<name>DroneMapper UAV</name>';
$mygpx .= "\n";
$mygpx .= "\t\t<trkseg>\n";

$row = '';

if (($handle = fopen($incomingfile, "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);

$data[2] = $data[2] * 0.0000001;
$data[3] = $data[3] * 0.0000001;
$data[4] = $data[4] * 0.001;

print "\tGPS Timestamp: " . $data[0] . " " . $data[1] . "\n";
print "\tGPS Lat: " . $data[2] . "\n";
print "\tGPS Lon: " . $data[3] . "\n";
print "\tGPS Altitude: " . $data[4] . "\n";

$mygpx .= "\t\t\t<trkpt lat=\"".$data[2]."\" lon=\"".$data[3]."\">\n";
$mygpx .= "\t\t\t\t";
$mygpx .= '<ele>'.$data[4].'</ele>'."\n";
$mygpx .= "\t\t\t\t";

$data[1] = preg_replace("/ /", "", $data[1]);
$mygpx .= '<time>2014-02-07T0'.$data[1].'Z</time>'."\n";

$mygpx .= "\t\t\t";
$mygpx .= '</trkpt>'."\n";

$mygpx .= "\n\t\t";
$mygpx .= '</trkseg>';
$mygpx .= "\n\t";
$mygpx .= '</trk>';
$mygpx .= "\n";
$mygpx .= '</gpx>';

/* Write GPX */
file_put_contents($outputfile, $mygpx);

% exiftool -geotag flight2.gpx '-geotime<${DateTimeOriginal}+02:00' *.JPG

also mav2gpx python code looks promising but I haven't visited this in a while. 

Why did you have to write a script? could't you just adjust the geotag offset in Mission planner? or did you find a problem with that?

Also if your tlogs are not accurate or you lost comms at some point you will have data missing and in that case its better to use the data flash logs to geotag. You can do that in mission planner as well.

I'm having a problem with geotag tool for some time now, look at my last location.tel file from a test flight, almost 200 pictures.

Look at the lat and long, almost the same for most of the file, with the plane flying of course. The log in APM shows the right lat and long. Whats happing? Why this isn't fixed? I'm seeing more and more people with the same or similar problem... 


With out having the pictures and the original log file I can't tell for sure, but I think you calculated offset is incorrect. The locations on the pictures seem to show that the vehicle does not get off the ground until these pictures:

DSC05706.JPG 2014:03:08 18:08:27 -47,9713952 -15,8345392 1093,86
DSC05707.JPG 2014:03:08 18:08:30 -47,9712736 -15,8347776 1100,17

So assuming that the first picture DSC05572.JPG is taken at take off, then you have an error of  5min 47s, you should either add or subtract (I think subtract) this from the estimated offset. Currently its at 3919,325, try geotagging again with this number set to 3572,325 or 4266,325. 

Reply to Discussion


© 2019   Created by Chris Anderson.   Powered by

Badges  |  Report an Issue  |  Terms of Service