maemo.org Bugzilla – Bug 6584
GPS geotagged pictures truncate precision of GPS reading (0 decimal places)
Last modified: 2011-09-14 22:33:55 UTC
You need to log in before you can comment on or make changes to this bug.
SOFTWARE VERSION: (Settings > General > About product) Does not contain version string. Release firmware. EXACT STEPS LEADING TO PROBLEM: 1. Take several photos with geotags on a couple of meters apart. 2. Look at the coordinates. 3. They are identical EXPECTED OUTCOME: Geotag coordinates should vary as position varies - of course with errors. ACTUAL OUTCOME: The images are all positioned on corners of a grid ~30.8m (north-south) - or some figure a bit less than this east-west (latitude dependant) REPRODUCIBILITY: always EXTRA SOFTWARE INSTALLED: none OTHER COMMENTS: This is seemingly due to the GPS position only being recorded to the nearest 'second', before being converted to decimal. One way of representing position is degrees, minutes, seconds. Degrees are whole degrees, minutes are 1/60th of a degree, seconds are 1/60th of a minute. http://en.wikipedia.org/wiki/Arcsecond#Cartography The bugs likely origin is simply that no decimal points after the 'second' are taken into account. This bug makes geotagging images closer together than 30m unworkable in many cases.
Thanks for reporting this. (In reply to comment #0) > SOFTWARE VERSION: > (Settings > General > About product) > Does not contain version string. Release firmware. Uh? That should not happen. Where did you buy this? I could imagine that this could become a WONTFIX, hence for the sake of having arguments for discussing with developers I'm asking for the actual usecases of this request: What are the reasons you need such exact data?
Could this just be a display issue on the device? Are the GPS coordinates being stored accurately in the EXIF fields of the photos, or are they being truncated there also?
In all photos I've taken with the N900 the coordinates in the EXIF tags are stored as deg.00 min.00 sec.00 triplets.
Andre: As to where did I buy the device - nokia.co.uk - delivered on the 30th of november. There is no obvious way to get to the settings menu in the normal place I would expect it in the camera app - either try to open the control from the bottom right as in the browser fullscreened, or try hitting the various controls on the right. The only control that leads to an app is the view photos button - which does not have a general option in its settings menu. Version: 1.0.40.3+0m5 I find in /var/lib/dpkg/status - I assume this is the version. As to usecases, I have several. I wish to take photos around my garden, and automatically arrange them onto a map, requiring minor tweaking for the correct position. GPS works OK for this - the average error is considerably under 3m. An average error of 18m or so is almost useless for this purpose. As another use-case, I want to add content to openstreetmaps, taking pictures of signs, and other features. A photo of a sign that's out by as much as 30m can put the photo on the wrong street, leading to putting the wrong name on the street. My final use was that I was considering a simple application to guide you to the location of a geotagged picture. Again, being 30m out can be confusing in some situations. Of course the GPS will not always be accurate enough for this to make a difference. However arbitarily truncating the precision of the coordinates is not ideal. Neil: No. exiftool - from extras-devel - as well as programs on my laptop all read the tags the same way, as does the 'details' in the photo viewer app. :/home/user/MyDocs/DCIM# exif *jpg|grep '^\(Latit\|Longi\)' Latitude |56.00, 13.00, 0.00 Longitude |3.00, 6.00, 45.00 Latitude |56.00, 13.00, 0.00 Longitude |3.00, 6.00, 45.00 Latitude |56.00, 13.00, 0.00 Longitude |3.00, 6.00, 44.00 Latitude |56.00, 13.00, 0.00 Longitude |3.00, 6.00, 44.00 Latitude |56.00, 13.00, 0.00 Longitude |3.00, 6.00, 43.00 Latitude |56.00, 13.00, 1.00 Longitude |3.00, 6.00, 43.00 Latitude |56.00, 13.00, 1.00 As I moved around the garden taking pictures - my 30*40m garden has pictures from only six spots. GPS fix was from the GPS without network assistance.
Created an attachment (id=1702) [details] GPS EXIF coords from a Sony camera - held to 5 decimal places
Created an attachment (id=1703) [details] GPS EXIF coords from N900 - held to 0 decimal places This looks like a valid bug as the N900 should store the GPS coords to the full precision as long as this is available (it could be a bug in the GPS sub system I suppose).
It does not seem to be the GPS subsystem - at least not the lowest levels - osm2go for example with live tracking turned on - shows the 'dot' following the user to a couple of meters or so accuracy, with no seeming granularity. I've had comments from a couple of users that some other nokia models suffer from this - but have not managed to find any details.
Created an attachment (id=1704) [details] N85 Exif Geotags I can confirm the N85 also appears to store in similar accuracy to the N900, so this may well be intentional by Nokia. Hope we can convince them to reconsider this.
Adding myself to CC. AFAIK, the fail point could be the location subsystem, GStreamer, when writing the coordinates to the picture/video or from Camera itself.
(In reply to comment #6) > Created an attachment (id=1703) [details] [details] > GPS EXIF coords from N900 - held to 0 decimal places > > This looks like a valid bug as the N900 should store the GPS coords to the full > precision as long as this is available (it could be a bug in the GPS sub system > I suppose). I checked the exif data on some of my photos (below) and it's just storing whole numbers of seconds. This gives a precision of 25-30m depending on latitude. A GPS like the N900 with no differential correction might return, say, 90% of positions within 10m in ideal conditions, so more precision seems warranted. GPSLatitude Ref = S GPSLatitude = 43/1, 31/1, 6/1 GPSLongitude Ref = E GPSLongitude = 172/1, 36/1, 23/1
WONTFIX for Maemo5 according to Nokia.
*** Bug 11934 has been marked as a duplicate of this bug. ***
Created an attachment (id=3292) [details] photos are arranged in a grid and sometimes beside the track
Created an attachment (id=3293) [details] original photo with GPS position with truncated arc seconds
Created an attachment (id=3294) [details] showcase with edited arcseconds (here with 2 decimals)
(In reply to comment #12) > *** Bug 11934 has been marked as a duplicate of this bug. *** Ups - now I know that I should 1st look for _ALL_ tickets. Didn't know that. I'm really interested in a solution. In Comment #1 was the question for a usecase: As already mentioned in "my" bugreport 11934 I do some mapping for OSM. I record the track in a GPX file. This works fine with several applications. For points of interest (bench, shelter, information board, historic boundary stones) or just for informations (street name, quality of a trail) I take GPS tagged photos. Later at home I load the track and the photos and edit the map. For some cases it is acceptable to have an error of 30 meters (eg. trail quality), but for some cases (like a boundary stone) it is not enough. On the other side I know, that the N900 is no a high precise GPS device. Pictures tell more, so josm.jpg as an example of a mapping hike some days ago. There you can see the grid distribution of the photos and some geotagged photos out of the track. To explain how easy it is to change the GPS infos I attach 20101207_010.jpg (original N900 photo) and the manual edited 20101207_010-2.jpg. A GPS Latitude and Longitude is stored as 3 Rationals (Degree, Minute, Second). One Rational consists of 2 Longs (4 Byte). The 1st long is the numerator, the 2nd is the denominator. In the picture the Lat is N 20° 26' 30". The value (3 Rationals) can be found in that JPG at position 1286h..129Dh. The Value in Hex for the arcsecond is 1E 00 00 00 01 00 00 00 at position 1296h. 1Eh = 30 01 = 1 This means 30/1= 30.0 To substitute the value to 30.12: 30.12=3012/100 -> in Hex BC4 / 64 So I substituted the line above with C4 0B 00 00 64 00 00 00 Additionally I manipulated the longitude from W 86° 59' 45" to W 86° 59' 45.67" in 20101207_010-2.jpg BTW the altitude is stored at position 1B6h (12.5m) (not truncated value, but not important to me) Web references about Exif: http://www.exif.org/specifications.html (1st PDF) http://park2.wakwak.com/~tsuruzoh/Computer/Digicams/exif-e.html Please try to convince the guys to change the issue in a fix. I hope that not the last word is spoken.
This has been fixed for the Community SSU Updates in package gstreamer0.10-plugins-bad 0.10.14-git266-0maemo10+0cssu6 which is part of the internal build version 20.2010.36-2maemo16 (Note: 20.2010.36-2 is the latest official Nokia version. The number after it indicates the Community SSU release version.) A future public Community SSU update released just now includes the fix. Please verify that this new version fixes the bug by marking this bug report as VERIFIED if you have some time. For more information about Community SSU please see http://wiki.maemo.org/Community_SSU
Created an attachment (id=3418) [details] Confirmation I've got already in July a beta patch from Nicolai, but checked now again with the latest CSSU Update. In the example pic the position is stored as N 48.00, 58.00, 40.23 E 08.00, 57.00, 07.01 (N48°58'40.23"/E08°57'07.01") which means an hundredfold improvement. You are my heros!