Hikar (see gitlab repository) is an augmented reality app for Android (4.2+) which overlays OpenStreetMap footpaths, hiking trails and roads and virtual signposts on the device's camera feed. Its aim is to help navigation for walkers/hikers (hence the name) and other outdoor users throughout Europe. For example, imagine you are entering a large field and it's not clear where the exit is. Hikar will overlay the course of the footpath on your phone's camera feed helping you to navigate across the field. Or, you're at a junction of paths and it's not clear which is the correct way. Hikar will show you a virtual signpost indicating the route to nearby points of interest, such as villages, peaks or pubs. Or, you're having to make your way across a pathless moor. Again, Hikar can help you find the way.
The colour scheme used is based on OpenStreetMap tagging and is as follows:
- green = footpath
- brown = bridleway
- orange = track
- light blue = cycleway
- red = byway
- white = road, or any other type of route
What's new in version 0.3?
Hikar 0.3 offers a few enhancements over 0.2, namely:
- Larger, easier to read signposts
- Noticeboards - see below
- Map-based interface for selecting data pre-download location. You can also search for a location to download data using Nominatim.
- Calculate route to a nearby POI. You can now calculate and display the exact route to a nearby point of interest.
- Selected POIs on signposts are accompanied by icons; notably railway stations, pubs, and cafes.
- Different zoom levels to download varying amounts of data, some optimised for countryside use, others for urban use.
Using Hikar
Where can I use Hikar?
Currently Hikar works in the whole of Europe, and Turkey; the Geofabrik Europe planet extract is used so anywhere in this extract will be covered. Other parts of the world are currently not available though may be in the future.
Downloading data
When Hikar starts, you will see the camera feed appear. Data will then be downloaded from the Hikar server and then saved on the device, so that the second time you are in the area, Hikar will work fully offline.
If the download fails (e.g. no network connection), you will get an error and the app will try again when your GPS position changes. You can also pre-download data for a certain area before you go out (to avoid relying on poor network connectivity in the countryside); to do this select the "Map / pre-download data at a given location" menu option. A map-based interface will appear; you can select a location by pressing the map or by searching for a location in the search bar (OSM Nominatim is used as the search provider). An area of (in the default zoom level) around 9x9km containing this latitude and longitude will be downloaded.
Data download zoom levels - optimisation for rural and urban areas
New in 0.3 you can change the data download zoom level via the Settings. The default level, which downloads around 9km x 9km data, is ideal for countryside and small town use, however it is slow to generate signposts in cities. Consequently, there is also an "urban" mode, which downloads only around 4.5km x 4.5km of data but is faster to generate signposts, a "large urban area" for big cities (around 2.25km x 2.25km) and a "sparsely populated countryside mode" for countryside areas with few large settlements (downloads around 18km x 18km data; usable in the New Forest, for instance).
Zooming in and out
On devices running Android Lollipop (5.0) and later, Hikar will automatically work out the horizontal field of view of your camera. However if the field of view is inaccurate you may change it by pinching the screen in and out. The new field of view will appear on the display.
You can also pinch the screen to zoom in if you are unable to read a signpost. The status bar will show you the adjustment relative to the normal field of view, so you know which value to reset it too once you've finished zooming in.
Routing to a nearby POI
Hikar 0.3 allows you to find the route to a nearby point of interest, such as a particular pub or village. Select the "Route to given POI" menu option, and then pick or search for your chosen POI. The route will then be shown as a yellow overlay on the AR view of the OSM map data - so just "follow the yellow brick road" to your destination!
Virtual noticeboards
New in 0.3 are virtual noticeboards, showing issues or places of interest as augmented reality noticeboards. These might include, on the one hand, hazards such as muddy or blocked paths, steep hills, natural hazards or aggressive cows - and on the other hand, features of historical or natural interest such as ancient monuments, nice views, or unusual plant species.
Viewing existing noticeboards
If a noticeboard has already been added by a user (see below) you will be able to view details of the issue at the path junctions at either ends of the path containing the noticeboard. So, for example, you might see "Aggressive cows 200m ahead" or "Nice view 500m ahead". A further noticeboard is shown at the exact location of the issue (or place of interest). Up to two noticeboards showing issues or places of interest on a given path are shown.
Adding new noticeboards
The noticeboards are intended to be crowd-sources. So any user can add brand-new noticeboards, either in-the-field with the add noticeboard menu option, or via the hikar.org website. Note that you'll need to sign up for an account at hikar.org before doing this, and specify your username and password in the preferences. A word of caution; your password is currently stored unencrypted on the device, though it is transferred over to the server with TLS encryption (HTTPS).
Current status
Hikar should currently work throughout Europe, with signposts being displayed in the local language (or, if you specify in the Settings, English if it's available) in all areas which use Roman, Greek or Cyrillic characters. However there are a few issues:
- Unlikely to work very well in very large cities (London, Paris etc) due to the sheer volume of data; the app is primarily aimed at, and optimised for, use in the countryside or smaller towns and cities. Based on a test in London, the basic AR functionality of overlaying the paths and roads on the camera feed is likely to work but it will take several minutes to generate signposts.
- Uses a lot of battery power - perhaps inevitable for an AR app. Therefore, ensure your battery is fully charged before setting out; dimming the screen and turning off mobile data are also supposed to help. (If doing the latter, you'll need to ensure you download data for the area you are walking before you set out!)
- GPS inaccuracy (both the GPS receiver on the device, and slight inaccuracies in the OSM data) leading to the OSM way being slightly offset from its true position, so do not expect the computer generated path to perfectly match its course on the ground. "Pixel-perfect" AR is, however, the long-term plan; see below.
- Occasional compass inaccuracies. Moving your device in a figure-of-eight pattern will help.
- Computer vision algorithms are currently not implemented, so consequently "pixel-perfect" AR is currently not supported. So signposts, for example, may change position slightly due to GPS and sensor inaccuracies, and paths may "float" above the ground slightly. The plan moving forward is to research and apply computer vision techniques to attempt to achieve pixel-perfect AR to allow, for example, a signpost to always appear at the same apparent position on the ground irrespective of changes in sensor or GPS readings. This was originally the plan for 0.3, but then I decided that there were enough enhancements already implemented to bump the version up from 0.2.x to 0.3.0.
- For currently unknown reasons it appears not to work on Amazon Fire HD devices.
Bug reporting
The app has been extensively tested, however it is always possible that a bug may occur, particularly as there are a large number of Android devices out there (and obviously not all have been tested!), or there is something unusual about the path data in a particular location. With most bugs, the app will stop with a message about the bug and will display the current latitude and longitude (which can help the developer investigate its cause). If a bug occurs please note down all information shown and report an issue at https://gitlab.com/nickw1/Hikar/issues or email the developer, Nick Whitelegg on hikar.app@gmail.com.
Obtaining the source code
Source code is available here.
Disclaimer
Please do not rely on Hikar for safe navigation in hazardous areas, e.g. mountains and cliffs. Small inaccuracies in the GPS receiver or surveyed data could result in a path sending you over a sheer rock face if you are using no other means of orientation. As always, use common sense and experience when hiking in the hills!