Logo Lanfrica

rs-anderson/Clustering-Ward-Level-Poverty-Using-Satellite-Imagery

Domain:

socioeconomicgeospatial

Record type:

project
Creator:
rs-
Host:
Combing satellite imagery and machine learning methods to cluster ward-level povery in Gauteng, South Africa. # Clustering Ward-Level Poverty Using Satellite Imagery This is the repo for the paper ***Clustering Ward-Level Poverty Using Satellite Imagery*** by Ryan Anderson and Andomei Smit. The aim of this research is to cluster the Gauteng wards based on their level of poverty and, as a result, create a poverty-map. Furthermore, the clustering is purely based on publicly-available data - assessing the potential for poverty mapping without the use of census data. Since high-resolution satellite imagery is publicly available, the wards will be clustered using the information that can be extracted from this imagery. The general methodology followed in the paper is as follows: * **Step 1:** Obtain a set of satellite images for each of the Gauteng wards * **Step 2:** Extract a feature set for the wards from the satellite imagery using a pre-trained CNN * **Step 3:** Reduce the dimensions of the features and then cluster using K-means and HDBSCAN See the paper at paper/Honours_Project_2020.pdf for more information. ## Setup In order to install the necessary packages, it is recommended to use the file *environment.yml*. To do this, install Anaconda , then run the following command in the repo: ``` conda env create -f environment.yml ``` Then activate the environment *honoursprojectenv* by running the following: ``` conda activate honoursprojectenv ``` Then make sure you are running a kernel associated with this environment by first running: ``` conda install -c anaconda ipykernel ``` Then run: ``` python -m ipykernel install --user --name=honoursprojectenv ``` If you get any import errors, click on the "Kernel" tab at the top of the notebook and change the kernel to the *honoursprojectenv* kernel. Unfortunately, for the R scripts, you will have to install the necessary packages yourself. ## Scripts The scripts can be separated into three sections: (1) feature extraction; (2) clustering; and (3) visualisation and validation. They are presented below in the order in whic …