AquaVision: Oil Spill Tracker
Inspiration
The impact of oil spills on marine ecosystems is a cause for concern. The effects on wildlife, especially fish, can disrupt food chains. Inspired by incidents like the BP Deepwater Horizon spill, I aimed to build a tool for quick detection and intervention, mitigating damage. AquaVision leverages AI and real-time image classification to track oil spills and help preserve marine life.
What It Does
AquaVision detects oil spills in aerial images, distinguishing between oil-covered and clean water. This classification helps environmental agencies and responders quickly identify affected areas, prioritize clean-up efforts, and protect ecosystems from oil’s toxic effects. The model is deployed on a user-friendly web application for quick accessibility and adaptability, enhancing emergency response capabilities.
How We Built It
Dataset: We used the Oil Spill Dataset on Kaggle, a collection of labeled images showing oil spills in aquatic settings. The data was preprocessed and augmented to enhance model generalization.
Model Architecture: Our model was built using a convolutional neural network (CNN) with TensorFlow. Over 10 epochs, we optimized for accuracy and generalization on unseen data. The architecture included convolutional layers followed by max-pooling and dropout layers to avoid overfitting.
Training & Evaluation: We achieved impressive improvements in accuracy and loss:
- Epoch 1: 59.43% accuracy, 0.6879 loss
- Epoch 5: 91.97% accuracy, 0.1867 loss
- Epoch 10: 98.73% accuracy, 0.0423 loss Final validation accuracy reached 95.17%, with test accuracy of 98% and near-perfect f1-scores.
Deployment: The model was deployed using Flask, serving the classification model through a web interface. Users can upload images for instant detection, making the tool accessible from any device. The code and deployment details are available on GitHub.
Challenges We Ran Into
- Data Imbalance: The dataset had more images of clean water than oil spills. We tackled this by augmenting oil spill images to create a balanced dataset.
- Model Optimization: Achieving high accuracy required hyperparameter tuning and handling overfitting. Early experiments showed fluctuating performance, which we addressed with regularization and dropout layers.
- Deployment Complexities: Integrating the model into a Flask app required careful handling of model loading and resource allocation for efficiency on various devices.
Accomplishments We’re Proud Of
- High Accuracy: AquaVision achieved 98% accuracy on the test set, confirming its ability to reliably detect oil spills.
- Deployment: Successfully creating a functional web app that allows users to upload images for real-time detection.
- Ecosystem Awareness: AquaVision raises awareness about the effects of oil spills on fish, ecosystems, and coastal communities.
What We Learned
- Deep Learning for Environmental Impact: Developing AquaVision provided insights into using AI for environmental issues and the importance of precision in detecting incidents affecting wildlife.
- Efficient Deployment: Working with Flask and model deployment offered insights into turning machine learning models into practical applications.
What's Next for AquaVision: Oil Spill Tracker
- Expanding Dataset: Adding diverse images of oil spills and clean waters will improve AquaVision’s robustness.
- Mobile App Integration: Developing a mobile version of AquaVision could enable instant reporting of spills from remote locations.
- Collaboration with Environmental Agencies: Partnering with organizations could enhance AquaVision’s reach and effectiveness in spill response.
AquaVision exemplifies how technology can support and protect the environment, ensuring a safer and cleaner future for our oceans.
Log in or sign up for Devpost to join the conversation.