Recently I processed some high-accuracy GPS datasets, but I couldn’t get good accuracy results. I’d like to share this dataset and see if I can get some help.
Here is the workflow. A PPK device is attached to the drone, at the beginning of the flight, the drone will stop at two marked locations on the ground, take several photos there (check the image below), then execute the regular flight path. After that, the PPK data will be used to generate the geo.txt which contains x,y,z, and vertical, horizontal accuracy. The images, along with the geo.txt, will be used in ODM to process the data. After the processing is completed, I will check the elevations of the marked positions in the 3D model and compare them with the elevations from the PPK photos taken at the marked positions.
Unfortunately, I tried many different settings but still couldn’t get one result that has really good accuracy. For example, using all the default arguments, I get an error of around 2m. Then I tried to explicitly set gps-accuracy to 10, 1, and 0.1, and surprisingly, gps-accuracy=10 actually gives me the best accuracy, which is around 0.6m. (I do want to try the new triangulation approach, but something prevents me from doing that, I will explain it at the end.) I also processed it in pix4d with default processing options, and I obtained the error around 0.15m.
I will share the datasets and reports I have from odm and pix4d later. My expectation is to get something close to the pix4d result, Error less than 1ft(0.3048m) is acceptable. Hope I can get some suggestions.
About the triangulation approach, the drone image does have yaw, roll, pitch tag, but I can’t combine them with geo.txt(in geo.txt, omega, phi, kappa are all 0). And if I try to use ExifTool to modify the GPS x,y,z tag in image EXIF data directly, The xmp tag for yaw, roll, pitch will be changed slightly. For example, previous xmp tag for yaw is
@drone-dji:GimbalYawDegree, after updating, it will become
@ is missing), then ODM failed to extract it. If someone can tell me a proper way to modify EXIF data without changing other data tags, I can try the triangulation approach as well to check the accuracy.
Any suggestion will be appreciated.