Planet Painter (repository)
Summary |
---|
🌍 A desktop program developed in collaboration with the think tank The Why Factory of the Dutch Architecture firm MVRDV NEXT aimed at visualizing and quantifying the impact of different kinds of interventions such as replacing cars with trees on the climate. By using satellite imagery, these kinds of scenarios can be generated even for underserved communities for which traditionally not enough data were collected to explore such scenarios. |
Features
With the “Planet Painter”, the user can:
- download satellite images from multiple sources like Google Maps or Mapbox
- automatically detect through neural networks different objects on these satellite images including:
- trees
- cars
- buildings
- visually generate different kinds of scenarios such as:
- replacing all cars with trees
- adding greenery to the roof of buildings
- quantify the impact of these scenarios on the climate by determining based on the biome of the area that has been downloaded the amount of CO2 which would be saved and the amount of trees that would be planted
Tools
Purpose | Name |
---|---|
Programming language | Python |
Dependency manager | Pipenv |
Build tool | setuptools (setup.py ) |
GUI library | tkinter |
Testing framework | unittest |
Tree detection framework | DeepForest |
Building detection framework | xdxd_spacenet4 |
Car detection framework | Self-trained TensorFlow Model |
Installation Process
It is assumed that the user has installed an IDE like PyCharm and that the operating system is a 64-bit version of Windows.
Make sure that you have installed the 64-bit version of Python 3.7. You can run py -0p
in the terminal to see all installed Python versions.
In case you have not installed pipenv
yet, do so with this command:
pip install pipenv
Open the repository in the terminal and create a virtual environment:
pipenv --python 3.7
Some of the dependencies of this project are very hard to install from their source or using typical tools such as pip. Therefore binary wheels are included for 64-bit Windows that are compatible with Python 3.7, which come from Christoph Gohlke’s repository of unofficial Windows binaries. By running the following command, these dependencies will be installed:
pip install libs/GDAL-3.0.4-cp37-cp37m-win_amd64.whl libs/rasterio-1.1.4-cp37-cp37m-win_amd64.whl libs/Shapely-1.7.0-cp37-cp37m-win_amd64.whl libs/Rtree-0.9.4-cp37-cp37m-win_amd64.whl libs/Fiona-1.8.13-cp37-cp37m-win_amd64.whl
Then, the remaining dependencies that are specified in the pipfile are installed by running the following command:
pipenv sync --dev
Lastly, install PyTorch
and pytorch
with this command:
pip install torch torchvision
In order to be able to download images from Google Maps an API key is required. A key can be acquired here and it has to be stored in the user file.
Now, the program can be run with the following command:
python setup.py run
Contributors
This app was developed using the SCRUM methodology together with:
Additionally, we collaborated with Leo Stuckhardt from The Why Factory.
License
This repository is for demonstration only. If you want to use the “Planet Painter” for any purpose including but not limited to for educational or commercial reasons, contact The Why Factor directly.