[Digikam-devel] GPS coordinate accuracy
Arnd Baecker
arnd.baecker at web.de
Mon Nov 27 12:43:22 GMT 2006
Hi,
thanks for looking into this!
On Sun, 26 Nov 2006, Andreas Huggel wrote:
[...]
> I've tweaked the exiv2 logic a bit for the upcoming 0.12 release. Since
> the exiv2 output is shown in digikam if I'm not mistaken, here is what
> it is now:
>
> Consider
> 3.14159292 degrees, which can also be written as
> 3deg 8.4955752' or
> 3deg 8' 29.734512"
>
> Depending on how the value is encoded in the Exif data (*), exiv2 will
> show 7 decimal places for degrees, 5 for minutes and 3 for seconds,
> i.e.,
> 3.1415929deg (**)
> 3deg 8.49558'
> 3deg 8' 29.735"
>
> Converting this to distance, the corresponding accuracies of such values
> are (at least):
> 10^-7deg ~ 1.1cm
> 10^-5' ~ 1.9cm
> 10^-3" ~ 3.8cm
>
> i.e., all much lower than the best GPS accuracy you can ever get, so
> there shouldn't be a concern that the numbers shown do not correspond
> to a location determined by GPS accurately enough.
These numbers do indeed sound accurately enough.
However, it seems this is not yet achieved
(current exiv2 svn and digikam svn):
Take any image and use the "Edit geographical coordinates"
to provide a position on the highest zoom level (satellite view,
i.e cars are roughly of the size of the mouse pointer ;-),
which is I think level 19 in google map terms).
Accept these coordinates by "OK".
Then invoke "Edit geographical coordinates" again
and compare the resulting longitude/latitude coordinates.
For example I get:
51.02370459056218, 13.710897266864777
vs.
51.0236666667 , 13.7108333333
So it seems that more digits are lost than expected?
Well, let's have a look where these digits get lost:
Output of `exiv2 -p t`:
Exif.GPSInfo.GPSVersionID Byte 4 2 0 0 0
Exif.GPSInfo.GPSLatitudeRef Ascii 2 North
Exif.GPSInfo.GPSLatitude SRational 3 51deg 1.42000'
Exif.GPSInfo.GPSLongitudeRef Ascii 2 East
Exif.GPSInfo.GPSLongitude SRational 3 13deg 42.65000'
Exif.GPSInfo.GPSAltitudeRef Byte 1 Above sea level
Exif.GPSInfo.GPSAltitude SRational 1 0 m
Exif.GPSInfo.GPSMapDatum Ascii 7 WGS-84
I.e.
51.023666666666666666, 13.71083333333333332
Alright, so to me it seems that the
"Edit geographical coordinates" tool does not write
the necessary number of digits.
As a test:
With `exiv2 -p v` one gets:
0x0002 GPSInfo GPSLatitude SRational 3 51/1 142/100 0/1
0x0004 GPSInfo GPSLongitude SRational 3 13/1 4265/100 0/1
Manual modification:
exiv2 -M "set Exif.GPSInfo.GPSLatitude 51/1 14222/10000 0/1 " IMG_5356test_manip.JPG
works fine both in digikam display and the "Edit geographical
coordinates" tool.
Only on save not enough digits are used ...
Best Arnd
More information about the Digikam-devel
mailing list