Add logo, add intro to chapter one, add note about hardware requirements
|
|
@ -11,7 +11,8 @@ ENV JUPYTER_ENABLE_LAB=yes
|
|||
RUN conda install -c conda-forge geopandas==0.8.1 && \
|
||||
pip install \
|
||||
descartes==1.1.0 sentinelsat==0.14 rasterio==1.2.0 folium==0.11.0 \
|
||||
jupyterlab-spellchecker \
|
||||
jupyter-book 0.10.0 && \
|
||||
jupyterlab-spellchecker nbdime \
|
||||
jupyter-book==0.10.0 && \
|
||||
fix-permissions $CONDA_DIR && \
|
||||
fix-permissions /home/$NB_USER
|
||||
fix-permissions /home/$NB_USER && \
|
||||
nbdime extensions --enable
|
||||
|
|
|
|||
10
README.md
|
|
@ -1,4 +1,4 @@
|
|||
# Remote sensing for journalism
|
||||
# Remote Sensing for Journalism
|
||||
|
||||
This repository contains a series of notebooks describing interaction with the Copernicus Open Acces Hub in order to obtain and manipulate earth observation data.
|
||||
The aim is to document common tasks that might make the data from the Copernicus Sentinel missions attractive for usage in data journalism reporting.
|
||||
|
|
@ -11,7 +11,7 @@ Copernicus Open Access Hub is the platform which is openly distributing the Terr
|
|||
A (free) Scihub account is needed in order to follow this documentation interactively.
|
||||
The registration form can be found at https://scihub.copernicus.eu/dhus/.
|
||||
|
||||
## Obtaining and running the code
|
||||
## Obtaining and Running the Code
|
||||
|
||||
The source code lives at https://github.com/heyarne/remote-sensing-for-journalism.
|
||||
|
||||
|
|
@ -39,6 +39,12 @@ This starts up a `JupyterLab` environment which allows you to interactively exec
|
|||
The Docker image is based on the [jupyter/scipy-notebook](https://github.com/jupyter/docker-stacks/tree/master/scipy-notebook).
|
||||
Follow the link for more information on installed packages or other configuration details.
|
||||
|
||||
## Hardware Requirements
|
||||
|
||||
Note that working with this kind of data is resource intensive.
|
||||
These notebooks download or create roughly 50GB of data, most of which is occupied by compressed GeoTIFF files.
|
||||
They have been executed and tested on a virtual server with 4 CPU cores at 2.6 GHz each and 32 GB of RAM.
|
||||
|
||||
## Building the Jupyter Book
|
||||
|
||||
The `jupyter-book` dependency is included in the `Dockerfile`.
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@
|
|||
title: Remote Sensing for Journalism # The title of the book. Will be placed in the left navbar.
|
||||
author: Arne Schlüter # The author of the book
|
||||
copyright: "CC-BY-SA 4.0 2021" # Copyright year to be placed in the footer
|
||||
logo: great-forty-foot-telescope-wikipedia.png # A path to the book logo
|
||||
execute:
|
||||
execute_notebooks: "off"
|
||||
|
||||
# logo : logo.png # A path to the book logo
|
||||
|
|
|
|||
4
_static/custom.css
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
div.navbar-brand-box a.navbar-brand img {
|
||||
max-height: unset !important;
|
||||
max-width: 80%
|
||||
}
|
||||
9
_toc.yml
|
|
@ -3,7 +3,8 @@
|
|||
- file: README
|
||||
- part: "Data retrieval and processing"
|
||||
chapters:
|
||||
- file: "remote-sensing-research/01a Download from Scihub.ipynb"
|
||||
- file: "remote-sensing-research/01b Plot downloaded products.ipynb"
|
||||
- file: "remote-sensing-research/01c Coverage analysis.ipynb"
|
||||
- file: "remote-sensing-research/01 True-color pipeline.ipynb"
|
||||
- file: "sources/01 Data retrieval and processing.md"
|
||||
- file: "sources/01a Download from Scihub.ipynb"
|
||||
- file: "sources/01b Plot downloaded products.ipynb"
|
||||
- file: "sources/01c Coverage analysis.ipynb"
|
||||
- file: "sources/01 True-color pipeline.ipynb"
|
||||
|
|
|
|||
BIN
great-forty-foot-telescope-wikipedia.png
Normal file
|
After Width: | Height: | Size: 755 KiB |
7
sources/01 Data retrieval and processing.md
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
# Data Retrieval and Processing
|
||||
|
||||
The first chapter contains notebooks that document the data retrieval process from the Copernicus Open Access Hub.
|
||||
|
||||
It explains how to use [`sentinelsat`](https://github.com/sentinelsat/sentinelsat) library to interact with the API: How to specify what kind of data we are interested in with the aide of open map data from [OpenStreetMap](https://www.openstreetmap.org/) and how to download it. It then goes on to show how to use [`rasterio`](https://rasterio.readthedocs.io/) and [`matplotlib`](https://matplotlib.org/stable/index.html) to work with the data.
|
||||
|
||||
The Sentinel-2 satellite captures light in visible and invisible parts of the spectrum. This can be used to derive different kinds of useful information about ground-level phenomena. This chapter will detail how to use it to create true-color images for different moments in time.
|
||||
|
|
@ -1,21 +1,5 @@
|
|||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 32,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import rasterio"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": []
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"metadata": {},
|
||||
|
|
@ -64,7 +64,7 @@
|
|||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"PosixPath('input/raster/true_color_image/S2B_MSIL2A_20200602T100559_N0214_R022_T33UUU_20200602T135324.zip')"
|
||||
"PosixPath('input/true_color_image/S2B_MSIL2A_20200602T100559_N0214_R022_T33UUU_20200602T135324.zip')"
|
||||
]
|
||||
},
|
||||
"execution_count": 2,
|
||||
|
|
@ -577,6 +577,13 @@
|
|||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.8.6"
|
||||
},
|
||||
"widgets": {
|
||||
"application/vnd.jupyter.widget-state+json": {
|
||||
"state": {},
|
||||
"version_major": 2,
|
||||
"version_minor": 0
|
||||
}
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
|
Before Width: | Height: | Size: 74 KiB After Width: | Height: | Size: 74 KiB |
|
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 70 KiB |
|
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 73 KiB |
|
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 78 KiB |
|
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 73 KiB |
|
Before Width: | Height: | Size: 65 KiB After Width: | Height: | Size: 65 KiB |
|
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
|
Before Width: | Height: | Size: 67 KiB After Width: | Height: | Size: 67 KiB |
|
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 78 KiB |
|
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 73 KiB |
|
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 73 KiB |
|
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
|
Before Width: | Height: | Size: 80 KiB After Width: | Height: | Size: 80 KiB |
|
Before Width: | Height: | Size: 71 KiB After Width: | Height: | Size: 71 KiB |
|
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
|
Before Width: | Height: | Size: 78 KiB After Width: | Height: | Size: 78 KiB |
|
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 84 KiB |
|
Before Width: | Height: | Size: 88 KiB After Width: | Height: | Size: 88 KiB |
|
Before Width: | Height: | Size: 80 KiB After Width: | Height: | Size: 80 KiB |
|
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 84 KiB |
|
Before Width: | Height: | Size: 80 KiB After Width: | Height: | Size: 80 KiB |