Solution to the mission planner image tagging issues

For months our company has had issues getting any usable tagging data from the pixhawk and mission planner. We’ve tried everything from Drotag which was a hit and miss with tagging. Now I have to give Drotag credit because on a couple of missions it did tag the images, but without a decimal in the latitude and longitude which made the data unusable. we also resorted to using many 3rd party programs in order to tag the images. We thought it was hardware so we went from a regular pixhawk to a pixhawk 2.1 as well as replacing the gps. When that didn’t solve the issue we determined it was software. We then went looking into the csv of a tlog and found 40 rows of image commands out of 245,000 rows from a 5 minute flight. From there we extracted the raw lat and long data and made our own EO file. In the EO we were able to add the decimals as well as convert the altitude units. Below I’ve written a procedure of how to tag images using mission planner, along with “BR’sEXIFextractor” software.

Exporting image EXIF data

  1. Download and install a program called “BR’s EXIFextracter”
  2. Open and under choose files select the folder with the untagged photos that were taken during the mission
  3. Choose your output folder to place the Excel file in
  4. In select data select
    Date & time
    Width x height
    Focal Length
    GPS latitude
    GPS longitude
    GPS altitude
    GPS direction
  5. Once done selecting press on the “Extract button”
  6. Open the Excel file and sort column “A” from a to z in the Sort and Filter tab in the home tools window
    Exporting data from Tlog
  7. Open mission planner
  8. On the flight data window select the “Telemetry Logs” tab underneath the artificial horizon
  9. Select “Tlog > Kml” or Graph button
  10. When the window pops up select the “Convert to CSV” button
  11. Select the Tlog from the mission you want to tag the photos on.
  12. Open up the CSV. It will be in the same place as the Tlog you opened to make the csv
  13. In Excel Press on the Q Column header so that the whole column is selected.
  14. Go and press on the Sort & Filter tab in the home tools window.
  15. In the drop-down press “Filter
  16. A drop-down box on the Q column header should pop up. Click on it then press select all to deselect everything and scroll then select the “alt_msl” variable
  17. Make sure that the amount of cell rows matches the number of photographs you’re tagging
  18. To double check if the times are in order select the “A” column header so everything is selected in it.
  19. Select Sort & Filter again and press “Sort A to Z”
  20. Select all values in columns N, P, and R by holding control and dragging your mouse over them.
  21. Once all of the values from those three columns are selected, copy them to the right of your exif data exported from your images in the other Excel file opened.

Adding a decimal and converting the altitude values
22. In cell “H1” type =REPLACE(E1,5,0,”1”)
23. In cell “I1” type =REPLACE(D1,3,0,”.”)
24. In cell “J1” type =(G1*3.28084) This step is to convert meters to feet. Ignore it if you want
25. One at a time drag the right bottom corner of the cells of H1, I1, and J1 down to the last row with data in it.
26. All of the rows should have values now
27. select all of the data from columns H1, I1, and J1 and copy it.
28. Select cell “E1” and paste as VALUES ONLY
29. Save the file where you can find it to add in as an input for the geolocations of the images

Leave a reply if you have any questions. Hopefully this will save a lot of people money and time. It beats buying a 6k ppk system just to tag your photos correctly.

umm, wow. What instructions were you following to geotag the images using Mission Planner? It has always worked fine for seemingly everyone else, myself included. I put the dataflash log and the images through it and it spits out tagged imaged like magic.

These are the instructions from the ArduPilot wiki, which I’ve used on numerous occasions just fine. And what others use as well.
http://ardupilot.org/copter/docs/common-geotagging-images-with-mission-planner.html

I followed the steps in that link countless times without success. We’ve tried CAM, and time offset, but we still were getting either mismatched photos or photos that weren’t where they were supposed to be. Using multiple types of mission planner we still got unusable data. We also had that issue where there was a lack of a decimal point in the latitude and longitude that was giving us issues.

What are you using for a camera, how are is it being triggered, and is this using a survey mission?

We have a Sony a6000 triggered by Infrared. We are using Auto WP survey grid v1 with digicam triggering for planning the mission in mission planner.

I’m not a big fan of IR triggering. I just posted this guide from Micro Aerial in another post and it might help you as well. I’m using it quite successfully and I haven’t had any issues using Mission Planner to inject the geo tags.

You want to make a hotshoe with a voltage dropping resistor and follow these intstructions:

http://ardupilot.org/copter/docs/common-camera-shutter-with-servo.html#enhanced-camera-trigger-logging

Get yourself a different trigger. Pretty much anything that isn’t IR lol! There’s lots out there. Can’t remember then name of the one I’m using, but they all pretty much work the same except some are PWM and other are relay. With this setup we’ve processed years of images with never a failure. It’s the polling on the xsyc of your A6000 that’s doing all the magic. Only records an image in the let when the camera actually fires!

i think you need to provide an example data set. as you problem seems to be one isolated to your setup.

I use an A6000 triggered by CamRemote with a hotshoe sending feedback to pin 55. The mission planner GEOTAGGED process works ever time. Never had a problem. Although today I had to tag images with a tlog, which is a bit painful. I had to do it this way only because I had bad logging. Its a nice redundancy built into mission planner.

Mission Planner Rocks!

Thank you for everyone who replied! I should be getting a Tuffwing camera feedback hot shoe within a few days in order to get the same amount of pictures as cam messages. I’ll post in the thread if it works or not.

I’m with Rangler on the difficulty of tagging with Mission Planner. We were also told it just works, but this isn’t the case. I rarely have gotten it to work with an A5100 and various triggering methods. There doesn’t seem to be any accounting for missing pictures. It’s difficult to line up the right time difference to place all th pictures in the right place. Frustrating that EXIF information isn’t more precise in timing too.

I haven’t been able to find a hotshoe adapter that works for an A6000 I have. Bought a couple but they’ve been the wrong ones. I will look into the Tuffwing solution. Looking forward to hearing how it works for you.

How is your # of photos different from the # of cam messages in the log? It definitely won’t work right if the quantities are different. But the question should then be… why are they different??

I’m not entirely sure why the camera isn’t triggering fast enough to keep up with the trigger events. We found it tough to go faster than 1.5 seconds per image reliably, even though the cameras should be able to do many images per second for extended periods.

We run into issues where there are less cam messages than pictures which is a prerequisite problem to fix before we worry about the name of the images. I know that the image name isn’t an issue because it tags them by time. I’ve also have had one experience where the images all tagged, just incorrectly not because of the picture number but something else. I think having the feedback from the tuffwing will solve the issue. We actually called up the business owner and and asked him about the product and he knew what our problem was before we told him. He said it’d fix the problem which is great news, but I’ll take it with a grain of salt. I’ll let y’all know if the hot shoe works.

The number of CAM messages may differ from actual photo count if you take pictures on the ground prior to arming the drone. We always test our trigger twice before each flight, once with mission planner and once with the RC. If you have log_disarmed set to 1 you’ll have a disparity between the two counts, which can easily be resolved by deleting the pictures taken on the ground prior to geotagging.

Exactly. This is why I can’t figure out what’s going on here. Deleting pictures not part of the survey is a rather obviously and necessary step. If that’s the cause of the problems here, I would declare that user error.

If not, I still haven’t seen anyone say what is causing the delta.

This conversation is still going lol? Stop the bleeding now! Read:

https://discuss.ardupilot.org/t/mismatch-between-number-of-cam-messages-and-number-of-images/10553/9

For those who don’t have a hotshoe, buy one that does. And of course you can buy the Tuffwing version and save yourself some time : )

Hotshoes are great, but even with a hot shoe, if Rangler6475 isn’t deleting pictures taken prior to logging commmencing, he’ll always have a mismatch

I always import from Lightroom for two reasons. One is to correct the orientation of the photo (wish Sony would allow us to lock the portrait mode out!) and the other is to only export images taken in the air. That way there’s never a miss match.

The hotshoe fixed all my problems! Wiring through the gimbal was a little tricky, but it works. So the setup on the drone uses an infrared trigger for the Sony a 6000 then the Tuffwig hot shoe slides into the camera and plugs into the pixhawk as a feedback every time the camera is triggered by the ir. Y’all probably know that, but for those who find this thread it may be helpful. Also mission planner tagging works fine now finally! Next step is a ppk system to get surveyor grade ortho, point clouds and stereo compilation. Thank you guys for the knowledge and experience.