Illegal mining (galamsey) is a major environmental issue in Ghana, causing deforestation, water pollution, and land degradation. This project uses Convolutional Neural Networks (CNNs) and satellite imagery to automatically detect illegal mining areas.
# Detection and Monitoring of Illegal Mining Activities Using Machine Learning and Remote Sensing Data
## 📌 Project Overview
Illegal mining (galamsey) is a major environmental issue in Ghana, causing deforestation, water pollution, and land degradation.
This project uses Convolutional Neural Networks (CNNs) and satellite imagery to automatically detect illegal mining areas.
---
## 🎯 Objectives
* Detect illegal mining areas from satellite images
* Differentiate between mining and non-mining regions
* Demonstrate the use of Artificial Intelligence in environmental monitoring
---
## 🧠 Methodology
### 1. Data Collection
We used a publicly available dataset from Kaggle containing satellite images of:
* Illegal Mining areas (Garimpo)
* Natural land (Rios_Floresta)
### 2. Data Preprocessing
* Images resized to **150x150 pixels**
* Pixel values normalized (0–255 → 0–1)
* Dataset split into:
* 80% Training
* 20% Validation
### 3. Model Used
A **Convolutional Neural Network (CNN)** was implemented to classify images.
#### Model Architecture:
* Input Layer
* Conv2D (32 filters) + MaxPooling
* Global Average Pooling (reduces overfitting)
* Dense Layer (64 neurons)
* Dropout (0.5)
* Output Layer (Sigmoid)
---
## 🛠️ Technologies Used
* Python
* TensorFlow / Keras
* NumPy
* Matplotlib
* Jupyter Notebook
---
## 📂 Project Structure
```
illegal-mining-project/
│
├── dataset/
│ ├── illegal/
│ └── legal/
│
├── illegal_mining.ipynb
├── test.jpg
└── README.md
```
## Results
* Training Accuracy: ~99%
* Validation Accuracy: ~95–97%
* Model successfully distinguishes illegal mining areas
## Limitations
- Limited dataset size
- Slight overfitting observed
- Performance depends on image quality
- No real-time detection yet
---
## 🚀 How to Run the Project
### Step 1: Install Dependencies
```bash
pip install tensorflow numpy matplotlib notebook
```
### Step 2: Start Jupyter Notebook
```bash
python -m notebook
```
### Step 3: Open Notebook
* Open `illegal_min …