Logo Lanfrica

maithyy/electricity-and-settlement-detection-with-ai

Domain:

geospatialdigital infrastructure

Record type:

project
Creator:
mai
Host:
Utilized SegmentationCNN, FCNResnet Transfer, UNet, and a Random Forest Classifier to accurately detect settlements and electricity in Sub Saharan Africa. # kMM Classifier: Settlement & Electricity Detection _**Detection of Settlements via Random Forest Classifier & Electricity via Max Projection VIIRS Algorithm**_ ### Team Members - **K**atelyn Wang (@katelyn-wang) - **M**ichael Pien (@ThatMegamind) - **M**aithy Le (@maithyy) ## Links [`Tech Memo`] [`Presentation Slides`] [`Presentation Recording`] [`Project Poster`] ## ## Our Task 1. Use binary segmentation to identify **settlements** and **non-settlements** with a random forest classifier 2. Classify settlements as having **electricity** or **no electricity** using VIIRS nighttime data ## Overview of Project Architecture The architecture of our project can be split into 3 distinct phases: 1. **Preprocessing** 2. **Settlement Detection** 3. **Electricity Detection** In our **preprocessing** step, we run a series of functions which extract, cleanup, and prepare the original satellite images to be fed into our machine learning models. In the **settlement detection** phase, we can run one of four models: Random Forest Classifier (primary model), Segmentation CNN, Transfer Resnet101, or U-Net. These models produce a classification of pixels as either settlement or non-settlement. Finally, in the **electricity detection** phase, we run an algorithm that takes the predictions created by the machine learning model and uses the max VIIRS projection data to determine whether each predicted settlement has electricity or not, producing a final output that identifies settlements with no electricity. ## Pipeline ## Segmentation Sample/Result ## Installation + Getting Started To begin, start by cloning this repository by running ``` git clone github.com ``` Then, navigate to the project folder and run the following command to install the necessary libraries and packages ``` pip install -r requirements.txt ``` This will successfuly set up the repository for use. Next, download the neces …