Correcting of Mismatched EXIF Data in Aerial Imagery

Last week we did the maiden flight of the C-Astral Bramor which proved to be a very capable plane. With the images offloaded and PPK logs saved, we began to look into processing the first dataset from our aircraft.

The first step of processing the data from the Bramor is to correct the PPK data. The Bramor uses a standard hot shoe configuration to trigger a GPS event in the log to show up at the same time the images are taken. During post-process, these GPS event logs are corrected off the CORS network and the corresponding solution is written to the EXIF data of each image. In theory, this will result in a set of images that contain standard GPS coordinates that have been corrected and are ready to be put through a photogrammetry software suite.

The Problem

During post processing of our images, we had some interesting issues when trying to create a point cloud. Our first sign was visible when we put the images through Pix4D and compared the orthomosaic to the satellite basemap. The processed orthomosaic was offset from the satellite imagery by nearly 10 meters which caused some confusion.

Some ideas were being tossed around about projection issues or potential software bugs with Pix4D but when I put the images through OpenDroneMap the issue became plenty obvious. The GPS coordinates in the EXIF data were offset by a few images which made ODM very confused. The interactive map below is the output from the mismatched dataset.

as you can probably tell, the map became very distorted with some features being duplicated or offset by large amounts. The point cloud was also very well distorted which can be seen by using the 3D view button in the viewer.

The Solution

With the datasets being wildly inaccurate, we started experimenting with different ellipsoids and datums but had no luck. After I began looking at the PPK processing the C-Astral software uses, I noticed we had a mismatch in the number of photos compared to the number of GPS coordinates. I had the idea to duplicate the first image until the number of photos matched the number of GPS coordinates. Sure enough, this fixed the dataset.

The reasons for the image mismatch could likely be attributed to a mistake made during the preflight checks. The camera was triggered on the ground a number of times before being reformatted which would cause the results we saw here. In future flights, we will deviate from the checklist and skip the camera test shots. If we do get bad data in the future, we will still know how to handle it.

Leave a Reply