Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/florianporada/satellite-data-tools
Random tools to retrieve and process satellite data
https://github.com/florianporada/satellite-data-tools
Last synced: 1 day ago
JSON representation
Random tools to retrieve and process satellite data
- Host: GitHub
- URL: https://github.com/florianporada/satellite-data-tools
- Owner: florianporada
- Created: 2022-01-30T15:14:10.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2022-01-31T14:19:45.000Z (almost 3 years ago)
- Last Synced: 2024-11-30T07:31:49.336Z (2 months ago)
- Language: Python
- Size: 5.33 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Satellite Data Tools
## Setup
### Install conda
[Follow the official install guide.](https://docs.conda.io/projects/conda/en/latest/user-guide/install/index.html)
### Create conda env
```bash
conda env create --name myenv --file envname.yml
```### Environment variables
- Rename `.env.sample` to `.env`
- Add your password and username to the `.env` file## Usage
## Specify search region
Create a `geojson` file with a bounding box that defines the search region.
[geojson.io](http://geojson.io/) is an easy way to create `geojson` files.![geojson.io example](./docs/geojsonio.png)
### Query and download data
#### CLI
List available sentinel 2 product data from Berlin with max 30 percent cloud coverage or less from one month until now.
```bash
sentinelsat -u -p --location Berlin --sentinel 2 --cloud 30 --start NOW-1MONTH
```List available product data via `geojson`
```bash
sentinelsat -u -p -g
```List available sentinel 2 product data via `geojson` with less than 30 percent cloud coverage from now to 14 days ago
```bash
sentinelsat -u -p -g --sentinel 2 --cloud 30 --start NOW-14DAYS --producttype S2MSI2A
```Download available sentinel 2 product data via `geojson` from the last 24 hours (**NOTE**: that's a lot of gigabytes)
```bash
sentinelsat -u -p -g --sentinel 2 -d --path ./downloads
```Download specific data package via UUID
```bash
sentinelsat -u -p --uuid -d --path ./downloads
```#### Python API
- Execute the `query_data` with the desired configuration.
- Execute the `download_product` function with the specified product uuid.
- Unzip the downloaded file into the `./downloads` folder### Process and display data
- In the `create_rgb_image` function pint the `imagePath` to the downloaded product.
- Specify the filenames for the different bands.
- Execute `create_rgb_image` function to create an image in the `./processed` folder.
- Use `QGIS` to display the generated `.tiff` file.
![QGIS Image display](./docs/qgis_image_display.png)#### Resources for RGB composition and more
https://github.com/arjun-majumdar/Satellite_Image_Analysis/blob/main/Sentinel-2_Satellite_Image_Analysis_with_Python.ipynb
https://gisgeography.com/top-6-free-lidar-data-sources/