Beware the Ides of March :: OSMTracker v0.7
Posted by alexkemp on 19 March 2019 in English. Last updated on 4 April 2019.- Info
- OSMTracker v0.7
- Fixing the Photos
- OSMTracker v0.6.11 loses 42% of Photos
tl;dr:
•Do not use v0.7 of OSMTracker, since it will not track
•It is not enough to switchLocationON within your smartphone before tracking, you also need to switchLocationON for the camera, else no GPS metadata.
I’ve made use of OSMTracker v0.6.11 since starting surveying for OSM on 21 March, 2016. It does not do a lot (GPS track, take GPS-located photos + voice notes), but it does them simply, easily & well and — more to the point — in my opinion that is pretty much all that you need whilst surveying.
There is just one thing that I would like to see added to OSMTracker, and that is for the GPS direction (probably GPSImgDirection) to be added to photo’s exif. That would allow Mapillary to know which direction the camera was pointing in when the photo was taken, which would assist it’s processing of the photos after being uploaded.
I found a new version of OSMTracker was available and decided to install it. Boy, was that a mistake.
Early on 16 March was my first survey for 22 months & it went fine. There were one or two odd looks at the chest-harness holding the VanTop Moment 4 camera, but I was mostly unconscious of it & therefore so was everyone else. The idea was to do a half-session then go home which is exactly what I did.
Things went fine on the survey. It was when I got home that the problems emerged.
There were problems uploading the photos to Mapillary from within JOSM, so I switched to a Mapillary webpage & uploaded from there. After uplift Mapillary asked me to locate all pictures using a map since there was zero GPS in the photos’ exif (not entirely true, but nothing that it could use). That is when I began to investigate the problems & eventually make a bug report to osmtracker-android.
Brief Explanation
Before using OSMTracker it is necessary to switch GPS on within your mobile, and in addition enable GPS for the camera. It should detect if GPS is off & both inform you of that fact & give you the opportunity to switch GPS on when loaded up, but doing it manually before loading OSMTracker avoids all bugs.
The program will drop GPS breadcrumbs once every second by default whilst active. It also takes a photo and/or voice-notes when requested, each of which contains GPS metadata. (There are also a small number of other features which I never use). These items are all auto-stored within a database during use.
When requested, OSMTracker gives an option to export a GPX file. That action exports the photo- + voice- + GPX-files into a named-directory.
A GPX file is a plain-text XML file. The top part of the file contains wpt sections giving GPS-locations + file-links for the Voice recording + Photo files. The bottom part of the file contains a trk section containing trkseg sections for the GPS breadcrumbs. Except that with v0.7 OSMTracker the trk section is empty.
This is what the top & bottom of the buggy GPX look like:–
<?xml version="1.0" encoding="UTF-8" ?>
<gpx xmlns="http://www.topografix.com/GPX/1/1" version="1.1" creator="OSMTracker for Android™ - https://github.com/labexp/osmtracker-android" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd ">
<wpt lat="52.96083105" lon="-1.13161024">
<ele>106.0</ele>
<time>2019-03-16T08:12:18Z</time>
<name><![CDATA[Voice recording]]></name>
<cmt><![CDATA[compass: 220.21875
compass accuracy: 3]]></cmt>
<link href="2019-03-16_08-12-18.3gpp">
<text>2019-03-16_08-12-18.3gpp</text>
</link>
<sat>0</sat>
</wpt>
…
<wpt lat="52.9588609" lon="-1.13084253">
<ele>114.0</ele>
<time>2019-03-16T09:28:04Z</time>
<name><![CDATA[Photo]]></name>
<cmt><![CDATA[compass: 141.21875
compass accuracy: 3]]></cmt>
<link href="2019-03-16_09-28-04.jpg">
<text>2019-03-16_09-28-04.jpg</text>
</link>
<sat>0</sat>
</wpt>
<trk>
<name><![CDATA[Tracked with OSMTracker for Android™]]></name>
<trkseg>
</trkseg>
</trk>
</gpx>
And that is not all…
The day had at least one other grain of salt to rub into the wound.
On 7 May 2016 I acquired some Sony headcans & placed a dead kitten upon the microphone, as to kill the rumble from the wind. It has been my trusty companion whilst surveying ever since. Ah, no longer, as now the Dead Kitten actually is dead.
The OSMTracker voice recording files all actually existed, but they were empty of sound. All that they had recorded was the sound of silence. My cans were mute. Desolate. Alone Again, Or.
The OSMTracker voice problem has now been confirmed by trying to use it with Sound Recorder, the Android app, and that also records only silence. I’ve ordered some Mpow Bluetooth Headphones, and we shall see if they are unusable outside or not (April update: the microphone was unusable outdoors). They are supposed to be arriving Thursday (they arrived today, Wednesday).
April 4 Update:
I repeated the GPS issue yesterday whilst using OSMTracker v0.6.11 and now have extra intelligence.
My practice is to keep Location OFF by default in order to extend the smartphone battery life. OSMTracker will warn you on startup when Location is OFF + give an opportunity to switch it ON. In addition, v6 will then add GPS to the GPX file (v7 does not). In addition, either it or my smartphone will auto-add GPS to voice-notes. However, that auto-addition does NOT occur for JPEGs (photographs), possibly because the default for photos for Location is OFF. It is thus necessary to take two actions with GPS and not one:–
- Switch
Locationon within your smartphone BEFORE starting up OSMTracker - Go into the Camera settings and again switch
Locationon.
Note that if you then turn the main Location switch to OFF the camera will revert to it’s default of OFF, so in my experience it is always necessary to make both actions to get GPS within JPEG metadata. YMMV
Discussion