Comments (5)
Support for reading google takeout timelines was added in 1.9.0: https://www.gpsbabel.org/htmldoc-1.9.0/fmt_googletakeout.html.
gpx has an option to change the precision of elevation values, but requires a source code change to alter the precision of other values such as latitude and longitude: https://www.gpsbabel.org/htmldoc-1.9.0/fmt_gpx.html
from gpsbabel.
Sorry, probably I was not clear enough. I'm talking not about "Semantic Location History" files which contains timeline objects only (actually - as we can see in TimeLine of Google web), but about raw waypoints, which contained in "Takeout\Location History (Timeline)\Records.json" file.
Example:
{
"locations": [{
"latitudeE7": 324564025,
"longitudeE7": 350534863,
"accuracy": 78,
"altitude": 140,
"verticalAccuracy": 16,
"source": "WIFI",
"deviceTag": 1664314150,
"platformType": "ANDROID",
"osLevel": 33,
"serverTimestamp": "2023-11-24T00:08:40.526Z",
"deviceTimestamp": "2023-11-24T00:08:40.071Z",
"batteryCharging": true,
"formFactor": "PHONE",
"timestamp": "2023-11-24T00:00:12.137Z"
}, {
"latitudeE7": 324564025,
"longitudeE7": 350534863,
"accuracy": 100,
"altitude": 140,
"verticalAccuracy": 23,
"source": "WIFI",
"deviceTag": 1664314150,
"platformType": "ANDROID",
"osLevel": 33,
"serverTimestamp": "2023-11-24T00:08:40.526Z",
"deviceTimestamp": "2023-11-24T00:08:40.071Z",
"batteryCharging": true,
"formFactor": "PHONE",
"timestamp": "2023-11-24T00:00:32.137Z"
}, {
....
from gpsbabel.
We would entertain a pull request to support this.
A useful reference is https://locationhistoryformat.com/reference/
from gpsbabel.
I implemented using the "Semantic Location History" folder first because it provides both waypoints and tracks, with trips being broken up intelligently, whereas "Records.json" appears to only provide one gigantic track, your all-time Google location tracking data. Just a track, no place names etc. We could include the Records.json data but there are a few challenges:
- My
Records.json
going from 2012 until last August is 1.2 gigabytes of JSON, and it's one huge "locations" array. We'd want to stream that efficiently so that we don't always have to load the whole thing at once - We would probably want to correlate coordinates with the tracks in the "Semantic Location History" folder based on time. That way, we can keep waypoints etc and the data that
Records.json
provides is interleaved to produce a more detailed track
from gpsbabel.
@postmaxin
Yes, sometime we need detailed tracks. For example, for geotaggign of photos taken by cameras.
Timestamp filtering is required. "Accuracy" filter is nice-to-have too 😁
For awhile I just parse it to unicsv files (file-per-date) by simple python script and then combine and convert by GPSBabel.
from gpsbabel.
Related Issues (20)
- Is there somewhere to download old exe files? HOT 2
- Exporting as GPX always fills "<cmt>" and "<desc>" even if not existent in the source file HOT 8
- Merging two files, but preferring data from one of those files, and interpolating the other HOT 2
- GPSBabel doesn't seem to filter points by date/time bounds HOT 3
- Your site www.gpsbabel.org has been down for several days. Could you fix this? HOT 1
- [feature request] Older Versions Download HOT 1
- Retire Qt5 HOT 1
- Style constant CR incorrectly mapped for style files HOT 1
- When input cvs fields contain `; `, gpsbabel throws the "unicsv" Invalid latitude error HOT 16
- v900 format inappropriately uses assertions.
- Google Map KLM convertion to GPX - GPX size HOT 6
- sending routes to a garmin serial device can cause warnings on device HOT 2
- sending routes to a garmin serial device can lose the route name
- writing routes to GPS12 mistranslates symbols
- garmin writes can use uninitialized data
- Trails that were apparently recorded discontinuously on a lowrance unit don't set the trkseg flag. HOT 2
- Bend filter passes and receives position in improper units to/from linedist
- latitude wrapping is incorrect HOT 1
- Holux RCV-3000 - all export does not work - GPX export for OSM don't work (with debug logs) HOT 30
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gpsbabel.