def extract_lon_lat()

in mapillary_tools/exif_read.py [0:0]


    def extract_lon_lat(self) -> Tuple[Optional[float], Optional[float]]:
        lat_tag = self.tags.get("GPS GPSLatitude")
        lon_tag = self.tags.get("GPS GPSLongitude")
        if lat_tag and lon_tag:
            lat_ref_tag = self.tags.get("GPS GPSLatitudeRef")
            lat = gps_to_decimal(
                lat_tag.values, lat_ref_tag.values if lat_ref_tag else "N"
            )
            lon_ref_tag = self.tags.get("GPS GPSLongitudeRef")
            lon = gps_to_decimal(
                lon_tag.values, lon_ref_tag.values if lon_ref_tag else "E"
            )
            if lon is not None and lat is not None:
                return lon, lat

        # repeat above
        lat_tag = self.tags.get("EXIF GPS GPSLatitude")
        lon_tag = self.tags.get("EXIF GPS GPSLongitude")
        if lat_tag and lon_tag:
            lat_ref_tag = self.tags.get("EXIF GPS GPSLatitudeRef")
            lat = gps_to_decimal(
                lat_tag.values, lat_ref_tag.values if lat_ref_tag else "N"
            )
            lon_ref_tag = self.tags.get("EXIF GPS GPSLongitudeRef")
            lon = gps_to_decimal(
                lon_tag.values, lon_ref_tag.values if lon_ref_tag else "E"
            )
            if lon is not None and lat is not None:
                return lon, lat

        return None, None