The Disaster Responder and Climate Impact Predictor (DRCIP) is an advanced application designed to predict the impacts of climate change and respond to natural disasters using satellite imagery and machine learning. The application leverages NASA Earth data, historical disaster data, and advanced neural networks to provide valuable insights and real-time data to help mitigate the effects of natural disasters and climate change.
- Climate Change Impact Prediction: Uses historical and real-time data to predict the impacts of climate change on specific regions.
- Natural Disaster Detection and Response: Analyzes satellite images to detect and classify natural disasters such as floods and wildfires.
- Interactive Visualizations: Provides an intuitive web interface with interactive maps to visualize disaster impacts and climate predictions.
- API for External Requests: Exposes functionalities via a REST API to allow external users and systems to make requests.
- NASA Earth Data (MODIS, Landsat)
- AWS S3 or Google Cloud Storage for storing large datasets
- PostgreSQL with PostGIS for geospatial data storage and querying
- Python for data processing and machine learning
- TensorFlow/Keras or PyTorch for developing and training neural networks
- scikit-learn for additional machine learning models and data preprocessing
- OpenCV for image processing and computer vision tasks
- GDAL for handling geospatial data
- Hugging Face Transformers for NLP tasks
- Docker for containerizing the application
- Kubernetes for orchestrating and managing containerized applications
- Flask or FastAPI for building the REST API
- React or Angular for building the user interface
- Mapbox or Leaflet for interactive map integration
- CI/CD Tools like GitHub Actions or Jenkins
- Cloud Platforms like AWS, Google Cloud, or Azure
- Cloud Functions or AWS Lambda for serverless functions
- Prometheus and Grafana for monitoring and visualizing metrics
- ELK Stack (Elasticsearch, Logstash, Kibana) for logging
- JWT (JSON Web Tokens) for securing API endpoints
- OAuth 2.0 for user authentication and authorization
-
Data Collection and Preprocessing
- Gather and preprocess satellite imagery and climate data.
-
Model Development
- Train neural networks to predict climate change impacts.
- Develop computer vision models to detect and classify natural disasters.
-
API Development
- Build REST API to expose prediction and analysis functionalities.
-
Frontend Development
- Create an interactive web interface with map visualizations.
-
Deployment
- Containerize the application using Docker.
- Deploy on a cloud platform using Kubernetes.
-
Monitoring and Maintenance
- Set up monitoring and logging.
- Regularly update models with new data.
- Python 3.8+
- Docker
- Node.js (for frontend development)
- PostgreSQL with PostGIS
- Clone the repository:
git clone https://github.com/WillianVMR/disaster-responder-satellite-images.git cd DRCIP
- Backend Setup:
- Create a virtual enviroment:
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
- Install the required Python packages:
pip install -r requirements.txt
- Create a virtual enviroment:
- Frontend setup:
- Navigate to the frontend directory and install dependencies:
cd frontend npm install
- Navigate to the frontend directory and install dependencies:
- Database setup:
- Set up PostgreSQL with PostGIS and configure the connection settings in the `.env file.
- Run the Application:
- Start the backend server:
python app.py
- Start the frontend development server:
npm start
- Start the backend server:
- Access the web application at
http://localhost:3000
. - Use the REST API endpoints to interact with the backend services.
We welcome contributions! Please read our CONTRIBUTING.md for guidelines on how to contribute to this project.
This project is licensed under the MIT License. See the LICENSE file for details.
For any questions or inquiries, please contact [wmourawillianribeiro@gmail.com].