- 1 Introduction
- 2 Installation
- 3 Using the plugin
- 4 OpenStreetCam layer
- 5 OpenStreetCam preference settings
The OpenStreetCam plugin is a JOSM plugin that displays up to date street view images collected by the OpenStreetCam platform. Street view images are also available via the OpenStreetCam web and mobile applications. Having an extra source of free and open imagery ease the process of remote mapping and allows the users to reflect the reality also in the map. Street view images are helpful for editing map features that are not visible on satellite imagery like traffic signs, house numbers, bus stops, points of interests.
Install the OpenStreetCam plugin the familiar way, through the JOSM plugin Preferences menu item.
Using the plugin
After installing the plugin and restarting JOSM, the layer and dialog window associated with the OpenStreetCam plugin needs to be enabled manually. The layer can be enabled from Imagery->OpenStreetCam menu item, while the panel from the left side OpenStreetCam ( ) menu item.
The plugin saves the open/closed state of the layer and panel. So if you delete the layer/panel then the next JOSM session the OpenStreetCam layer/panel will not be loaded by default. A previously deleted OpenStreetCam layer and panel needs to be activated manually.
The OpenStreetCam layer loads data automatically: in the case of the Imagery layers data is loaded as the map is moved, zoomed in or out. In the case of OSM data layers the data is loaded only for the downloaded area.
OpenStreetCam layer data is represented differently depending on the zoom level: in the case of small zoom levels OSM segments(ways) are displayed, while in the case of bigger zoom levels individual image locations. Starting with zoom level 10, the layer indicates areas that have street view coverage giving the user a hint where he/she can find an extra source of mapping support:
Ways are colored with purple and have different transparency based on the data coverage: segments that have many images are opaque, while segments that have only a few images are more transparent.
Starting with zoom level 18 the map view changes and individual photo locations are displayed:
Each photo location is illustrated by a blue icon with a white arrow that indicates the heading. Images that have no heading information are represented by a blue circle.
Manual data switch
By default the type of data that is displayed is changed automatically based on zoom level. This behaviour can be customized from JOSM -> Preferences -> OpenStreetCam plugin -> MapView settings section (see more at OpenStreetCam preference settings section).
When the manual data switch option is enabled a new button is visible in the OpenStreetCam panel. If the "data switch" button is clicked the map view changes from segment view to image location view and vice versa. The "data switch" button is enabled starting from zoom 16 and is represented with different icons based on the displayed data type. For segment map view a photo icon is displayed while for image location view a segment icon.
An image location can be selected by single mouse click action as long as the layer is visible. Images can be selected as long as the OpenStreetCam layer is visible. We allow image selection even if the OpenStreetCam layer is not the active layer.
A selected image is highlighted on the map (bigger icon) and its content is displayed in the right side OpenStreetCam panel (more information regarding the panel at OpenStreetCam panel section).
The tracks corresponding to a selected image is displayed if the "Load track on image selection" option is enabled from Preference settings. An OpenStreetCam track is illustrated with a blue directed line. Images belonging to the selected track are illustrated with opaque icons; while other images along the track are illustrated with transparent icons.
The displayed data can be filtered based on the creation time and logged in JOSM user. Filters can be accessed from OpenStreetCam layer -> Filter data menu item.
The date filter is available only for the photo location view, while the only mine filter is available for both views. In order to view only your uploaded images, you need to authenticate in JOSM using OAuth login. By default no filter is set, custom filters can be removed by clicking the Clear button.
The OpenStreetCam panel displays the currently selected image, along with basic information such as: date of upload and username of the user who uploaded the image. In the majority of the cases the username represents the user's OSM username, but in some cases it might be also a Facebook or Google username ( since the OpenStreetCam platform allows the user to sign in also using a Facebook/Google account).
An OpenStreetCam image can be zoomed in and out using the mouse wheel. In an already zoomed in image details can be observed by moving the image left, right, up and down.
The panel also has a number of action buttons on the bottom. These are for next/previous/nearby image loading, centering the map to the selected image location and opening the image web page. These features are described in the next sections.
Next and previous image functionality
The next and previous image actions are available only if the track corresponding to the selected image is also displayed.
Next image can be loaded either by clicking on the "Next button ()" from the OpenStreetCam panel or by pressing Alt+Right arrow keys. Similarly the previous image can be loaded either by clicking on the "Previous button ( )" from the OpenStreetCam panel or by pressing Alt+Left arrow keys.
If the next or previous image is not visible in the current view, then the map is moved automatically and images near the track are downloaded.
This functionality loads images that are located near to the selected image. This functionality improves the mapping process especially if the selected photo does not contain all the information or if the selected photo has bad quality or has not the right angle.
If the "Load track on image selection" preference settings option is selected , than also the track corresponding to the nearby photo is loaded.
The map can be re-centered to the selected image location by clicking on the "Location button ( )" from the OpenStreetCam panel. This feature is useful when the map was moved and the selected image location is not visible on the map.
Image web page
OpenStreetCam preference settings
The OpenStreetCam plugin can be customized from the plugin's preference settings. The preference settings can be accessed from JOSM->Preferences->OpenStreetCam plugin or from the OpenStreetCam panel by clicking on the preference icon.
The type of data displayed on the MapView can be customized by modifying the following settings:
- minimum zoom level for displaying individual image locations - by default image locations are displayed starting with zoom level 18.
- data type change method ("switch manually between segment and image view") - if this option is selected then the displayed data type is not changed automatically at zoom level 18 from segment view to image location view and vice versa.
Regarding image loading the user can customize the following settings:
- load high quality images - if this option is selected then the high quality images are loaded instead of a large thumbnail. By default this option is disabled
- load corresponding track - if this option is selected then also the track corresponding to the selected image is loaded and displayed on the map. By default this option is enabled.
- load image on mouse hover event - if this option is enabled then the small thumbnail is loaded on mouse hover events. A better resolution image is loaded if the user clicks on the image location icon or if the OpenStreetCam panel is maximized. This option is not compatible with the other options and it is enabled only if the previous two image customization options are unselected.
Individual images are loaded in the background and are cached. We had adopted caching in order to be able to display faster the image corresponding to a selected location.
When an image is selected the nevious, next and nearby images are loaded in the background and saved into the cache. If the user unselects the image then the irrelevant images are removed from the cache.
The following settings can be modified:
- maximum number of objects to keep in memory
- maximum objects to keep in disk
- previous and next images to cache
- nearby images to cache.
The OpenStreetCam plugin is under development. We are working on fixing bugs and also adding new functionality from time to time.
The source code of the currently released plugin can be found on GitHub .
Feedback and bug reporting
We take a look at all incoming ideas, so be sure your input is heard and very much appreciated!