Archive for the 'GPS' Category

Published by breki on 12 Feb 2012

GroundTruth News

Alexander Ovsov has kindly translated my GroundTruth posts into Romanian. Quoting Alexander:

Our global volunteer project is called “Translation for Education”, located in all-around-the-world, with no headquarters. Its purpose is translating articles dealing with interesting science subjects such as biology, chemistry, geology, medicine, and information technologies in order to assist students and university staff who are not very good at foreign languages and help them become familiarized with relevant scientific news from abroad. Translation from English to small aborigine European (Indo-European) languages, not the big ones.

Thanks, Alexander, and keep up the good work!

Although I haven’t done any GroundTruth work for a long time, a couple of days ago I’ve started migrating (and upgrading) the source code from my local Subversion repository to Mercurial on Bitbucket. The code is in turmoil, but I hope I’ll be able to take some time from other work to clean it up and fix some bugs that have been found by users in the last year. I will also try to incorporate some new stuff that I’ve developed for Maperitive.

Published by breki on 18 Jan 2010

GroundTruth: bugfix

I’ve just released a new version of GroundTruth (dowload it from here) which contains fixes for bugs kindly reported by users in the last couple of months. I’m sorry you had to wait so long for this, but I’m dedicating most of my spare time working on the new Kosmos stuff. Anyway, here’s a list of changes for this release:

  • BUGFIX: lat/lon were switched for generated OSM files…. ooops
  • BUGFIX: the app. will now not fall apart if the user specifies an area which is not covered by (SRTM) DEM data
  • the application now uses "neutral" (U.S.) culture for displaying console messages (no more decimal commas)
  • Flee library is no longer used.

Published by breki on 18 Oct 2009

GroundTruth 1.6

GroundTruth coastline renderingGroundTruth coastline rendering

The new version of GroundTruth has just been released (download link). As I mentioned yesterday, the main work was on filling sea polygons based on the natural=coastline OSM tag. One additional feature is the ability to set the background color of the map (even if there are no coasts in your area). All of this is configured using the Options section of the rendering rules:


Sometimes it is not possible for the GT’s coastline processing algorithm to close up all of the coastlines and the resulting map can get ‘flooded’. In such a case I suggest you should use the new ‘–nosea’ option, which turns off sea polygon filling. Unfortunately a lot of the OSM planet extracts are lousy and they don’t include enough of the coastline to be able to connect it to the extract boundary, so I guess ‘-nosea’ option will have to be used quite frequently.

Some Background Information

This version of GroundTruth contains a lot of new (and improved) code which I was working on for the past several months. The work is primarily targeted towards a new generation of Kosmos tools, but since GT shares common geometry and OSM libraries with Kosmos, it can benefit from these libraries too.

Published by breki on 17 Oct 2009

GroundTruth: Coastline Rendering Improved

Before going to bed I’m posting first screenshots of newly implemented coastline rendering in the next version of GroundTruth (due to be released tomorrow, if all goes well). The previous versions just rendered coastlines as lines, now the sea actually gets colored.

The maps shows parts of Isle of Wight, the screenshots were taken from Garmin Oregon 300.

GroundTruth coastline renderingGroundTruth coastline renderingGroundTruth coastline renderingGroundTruth coastline renderingGroundTruth coastline rendering

Published by breki on 29 Jul 2009

GroundTruth: SRTM Hotfix

NASA has moved the SRTM tiles again (they are now stored under v2.1 directory, but I don’t know if there’s any difference in the content compared to the v2 version). So GroundTruth’s and Kosmos’ contours functionality stopped working.

Unfortunately I’m in the middle of a major refactoring of the whole of my OSM code in preparation for Kosmos v3 and support for other sources of DEM, so it’s kind of difficult to produce running versions of my software: the builds are broken, I’ve temporarily stopped my build server etc.

But I’ve decided to take a few hours and prepare a new build for GroundTruth at least (Kosmos will have to wait, too much changes in the code). Since I didn’t have much time to test it, it is “officially” marked as an experimental build, and I’ve put it under directory (just use the ZIP with the latest date). I hope it works.

BTW: if NASA decides to move the tiles again, there’s a new setting in the configuration file (GroundTruth.exe.config):

<add key="SrtmServerUrl" value=""/>

You’ll be able to change the URL yourself this time :)

Published by breki on 31 Mar 2009

GroundTruth Contours: Final Testing

I did some testing of relief contours generation before the official release of GroundTruth v1.3. I generated 10m interval contours for area of Slovenia and its neighboring regions, and here are some numbers:

  • Area: minlat:45, minlng:13, maxlat:47, maxlng:17
  • IBF file size: 28 MB (IBF file contains contours information in a binary form). My estimate is that the equivalent Srtm2Osm-generated OSM XML file would be at least 350 MB large.
  • Time taken to generate Garmin IMG files from IBF file: 15 minutes on my machine
  • Total size of generated IMG files: 53 MB
  • Total IMG files count: 125 files

As you can see from the first screenshot below, the contour files are split into a 15′ grid. You can therefore choose which of the tiles you want to upload to your GPS unit.

I had some problems with cgpsmapper reporting “Too Big RGN Table Structure” error for grid cells with a lot of contours. To overcome this, I reduced the cgpsmapper’s TreSize setting from 4000 to 2500 and then it worked without problems.

I’ll also try to experiment with the SimplifyLevel setting (currently no simplification is used) in order to reduce IMG file sizes and (possibly) rendering speed on GPS units.

All in all, I’m very pleased with results. I hope to be able to release the new version real soon!

GroundTruth ContoursGroundTruth Relief Contours

GroundTruth Relief Contours

Published by breki on 21 Mar 2009

GroundTruth: Relief Contours

Just a little teaser before going to bed. The screenshots show relief contours generated by GroundTruth using SRTM3 data. The map area is progressively zoomed in: first you can see the 100m contours, then also 20m ones and finally 10m contours are visible.

GroundTruth relief contours

GroundTruth relief contours

GroundTruth relief contours

Expect it in the next release of GroundTruth.

Published by breki on 20 Mar 2009

GroundTruth 1.2

dog gps
Creative Commons License photo credit: pt

I’ve decided to take some time and fix GroundTruth bugs which were kindly reported by users in the past month. Nothing revolutionary, but there are also some minor improvements. Here’s a complete list:

  • added the “-nocgp” option to just generate the polish files, without using cgpsmapper. This will be useful for those who would like to tweak the polish file before actually generating an untweakable? IMG file.
  • “-osmfile” option is now used instead of “-osmfiles”. If you need to specify more than one OSM file, use “-osmfile” multiple times (together with “-mapname” option for each of these OSM files). This is actually an interface change and also a bug fix: looks like MapSource doesn’t like having two maps with the same name. Look at few lines below…
  • GT now generates registry file for deleting the map from MapSource (in addition to the existing “add” one). So you can destroy those ugly looking GroundTruth maps and they won’t appear in MapSource again… ever…
  • BUGFIX: GT now requires that each OSM file has its own map name.
  • BUGFIX: the type IDs are now always written as hexadecimal values. There was some problem with using decimal values (thanks for reporting, Frederico)
  • BUGFIX: problems with OSM objects which are used by more than one relation. Now there shouldn’t be problems :)
  • BUGFIX: “DummyPath.img” is now always looked for in the GroundTruth’s directory, not the current one. BTW DummyMap.img is used to “reset” the GPS unit before sending the actual map using SendMap.

The download location (as always):

That’s it for now. I’ll try to add isohypses/contours support soon.

If you find GroundTruth and other software I’m developing useful, please consider sending me a small donation via Paypal. I’ll put it to good use (hmmm should I buy a Ferrari or a Porsche?).  And thanks again to those that contributed in these times of recession…

Published by breki on 05 Feb 2009

GroundTruth: Stress Testing

Planina Konjš?ica

I have just generated Garmin maps for Slovenia using GroundTruth. Here are some performance results (my machine is Intel E6400, 4 GB RAM):

  • Source OSM data: 330 MB OSM file (non-compressed)
  • Time to generate: 8 minutes
  • Maximum RAM usage: 1.1 GB

This is for the hiking map which currently contains more rules than the driving map (driving map generation took “only” 3 minutes). The actual performance bottleneck is cgpsmapper, most of the time and memory consumption is caused by it. If you’re planning to generate even larger maps, I suggest splitting OSM files (using tools like osmosis) before giving them to GroundTruth. You can generate multiple IMG files by supplying several OSM files in a comma-separated list.

Published by breki on 29 Jan 2009

GroundTruth Update: Fixing Some Bugs

Im thirst................
Creative Commons License photo credit: Matthew Fang

Ah the beauty of new software. Especially if you like killing bugs:

  • The latest version seems to be working on Linux. See OSM wiki page for more information.
  • The Characters conversion table on OSM Wiki had the wrong section name (my mistake), so it was being ignored by GroundTruth.
  • Labels for line types are now automatically converted to uppercase – there were problems with showing lowercase letters on some Garmin units.

I’m also slowly adding content to the GroundTruth Manual.

Next »