From fb1586ea32e22d44e4aeac4a986f03a364636041 Mon Sep 17 00:00:00 2001 From: Piero Toffanin Date: Thu, 15 Oct 2026 01:57:25 -0400 Subject: [PATCH] Fix: Trust RTK only when fixed --- opendm/photo.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/opendm/photo.py b/opendm/photo.py index d87317ba..bfaab2fe 100644 --- a/opendm/photo.py +++ b/opendm/photo.py @@ -398,12 +398,14 @@ def parse_exif_values(self, _path_file): # Phantom 4 RTK if '@drone-dji:RtkStdLon' in xtags: - y = float(self.get_xmp_tag(xtags, '@drone-dji:RtkStdLon')) - x = float(self.get_xmp_tag(xtags, '@drone-dji:RtkStdLat')) - self.gps_xy_stddev = max(x, y) - - if '@drone-dji:RtkStdHgt' in xtags: - self.gps_z_stddev = float(self.get_xmp_tag(xtags, '@drone-dji:RtkStdHgt')) + rtk_flag = self.get_xmp_tag(xtags, '@drone-dji:RtkFlag') + if rtk_flag is None or int(float(rtk_flag)) == 50: # 50 = RTK fixed + y = float(self.get_xmp_tag(xtags, '@drone-dji:RtkStdLon')) + x = float(self.get_xmp_tag(xtags, '@drone-dji:RtkStdLat')) + self.gps_xy_stddev = max(x, y) + + if '@drone-dji:RtkStdHgt' in xtags: + self.gps_z_stddev = float(self.get_xmp_tag(xtags, '@drone-dji:RtkStdHgt')) else: self.set_attr_from_xmp_tag('gps_xy_stddev', xtags, [ '@Camera:GPSXYAccuracy',