User:Ff5722/Using Sentinel-2 imagery

From OpenStreetMap Wiki
Jump to: navigation, search

Sentinel-2 satellite data is licenced suitably to be used as background for tracing or any other purpose for OSM (licence). The best resolution available is 10 m, this is enough to trace major roads, rivers, lakes, railways etc. Pretty much the entire world is covered, and imagery is very recent (several captures per month, as recent as last week), however it can be covered in clouds, so in some cases, it is needed to use imagery of a few months old.

Rendering images

Using QGIS (easiest)

  1. Install QGIS from https://qgis.org/en/site/forusers/download.html
  2. Download data from scihub.copernicus.eu. You need to register a (free) account to download data. Login with your account, select an area on the map (try to keep the selected area small, it's best to download one tile at once) and search. The results with the green tag S2A MSI are the ones you will want. It's recommended to filter the results to show only Sentinel-2 captures, and sort by cloud cover ascending (this sorting method seems to have been removed, you can set the cloud cover limits in the filter 'Cloud Cover % (e.g.[0 TO 9.4])' or simply judge cloud cover by the thumbnail results). Download the zip package (usually around 1 GB).
  3. Add the files ending on B02_10m.jp2, B03_10m.jp2 and B04_10m.jp2 to the Qgis canvas
  4. In the menu bar, go to Raster > Miscellaneous > Build virtual raster
  5. In the build virtual raster window, click the three dots next to Choose input layers
  6. Select the 3 layers you just added
  7. Select run in background, it should only take a fraction of a second to complete
  8. Adjust the bands in the virtual layer to your liking
  9. Save as GeoTIFF or render to tiles

Tutorial video

Using ESA SNAP software

  1. Download SNAP and the Sentinel-2 toolbox
  2. Download data from scihub.copernicus.eu. You need to register a (free) account to download data. Login with your account, select an area on the map (try to keep the selected area small, it's best to download one tile at once) and search. The results with the green tag S2A MSI are the ones you will want. It's recommended to filter the results to show only Sentinel-2 captures, and sort by cloud cover. Download the zip package (usually around 700 MB).
  3. Process data in SNAP (tutorial). It's recommended to place the downloaded granule on an SSD if available, to speed up the process (lots of R/W operations). Unzip the compressed folder, and open the XML file in the top level (e.g. MTD_MSIL1C.xml). Once it's visible in the left pane, right-click to open RGB view, the three colour bands will be pre-selected. Simply click OK and wait for the RGB image to be generated.Use the colour manipulation tool in the bottom left pane to ensure good contrast of roads etc.
  4. Export processed image from SNAP. Right-click on the image, click export. Choose 'export full scene' and 'full resolution' and for filetype geoTIFF. It will take several minutes to finish on most computers.

Using satellite image as background

To trace from the image, it has to be added as a background layer in your favourite OSM editor. The easiest way is through Mapbox Studio, but if you regularly need to process imagery, setting up a local tileserver will save you time in the long run.

Mapbox Studio

If you have only a few tiles to use, this is the most convenient method. You can also overlay your different tilesets and choose a background layer for empty areas. The downside is that it requires uploading a 500 MB tile to Mapbox, which may take a while depending on your internet connection. The free plan has a limited bandwidth and storage size as well (maximum of about 10 Sentinel-2 tilesets).

  1. Sign up for Mapbox Studio here [1]
  2. Log in and go to tilesets > New tileset > Upload > upload your geoTIFF
  3. Then go to Styles > new style > pick any ('satellite', 'empty', or 'black' work best).
  4. Go to your new style, then go to > edit > new layer > under 'source' select tileset > select your uploaded tileset. I recommend to give it a descriptive name
  5. Go back to your style, on the right click Share & use, go to the 'use' tab, and select 'third party'. For JOSM, copy the WMTS URL. For iD, use the CARTO URL, but you need to change one thing, which is remove the '@2x' from your URL. For example:
https://api.mapbox.com/styles/v1/user/cj4cd014f0ev52ss623npg1zw/tiles/256/{z}/{x}/{y}@2x?access_token=pk.eyJ1IjoiaGluZGJhZXIiL
becomes:
https://api.mapbox.com/styles/v1/user/cj4cd014f0ev52ss623npg1zw/tiles/256/{z}/{x}/{y}?access_token=pk.eyJ1IjoiaGluZGJhZXIiL


Thanks to 7thgrade for guiding me through the processing method

Local tileserver

Main article: User:Ff5722/Using local tilesets as background layer

Nextgis

You can set up a WMS server at nextgis.com for free.

JOSM ImportImagePlugin

Another option is using the ImportImagePlugin, which can use the location data of GeoTIFF files. However I found that it is very slow and the alignment or projection is not good.

Getting processed imagery

Should you want to trace a specific region, but you can't be bothered to process the imagery yourself, then send me a message and I will process it for you when I have time and send you the link to use as background layer.

Notes