SentrySpill

Spot the Spill. Stop the Spill.


Inspiration

In a time plagued by international conflict, we are often focused on politics and the front lines. However, in the midst of this, we tend to overlook the resulting ramifications on our environment. Specifically, oil spills are unfortunate repercussions that destroy ecosystems and endanger plants and animals across the vast oceans.

Not only that, but humans are directly impacted by the harmful nature of oil spills as well. These disasters can lead to dangerous situations for residents near water bodies and contribute to the pollution of drinking water.

Especially considering the imminent risk that stands before us, now more than ever we must understand the true fragility of our environment. SentrySpill helps us see what we too often look away from.


What it does

While we may not always set our eyes on the environmental hazards of oil spills, computer vision can do just that.

SentrySpill is designed to detect oil spills from images that it is given the opportunity to analyze, which allows for the threat to be caught quickly and for precautionary measures to be taken by nearby residents and conservationists that can minimize the potential damage to both ocean life and humans by taking action in time. SAR (Synthetic Aperture Radar) satellite imagery comes through from affected areas, SentrySpill can quickly and accurately identify the presence of an oil spill that may be putting both local communities and natural ecosystems at risk.

The SentrySpill interface allows users to simply upload, paste, or capture an image and receive the deep learning model’s analysis of the situation.

This output includes:

  • Mapped visualization
  • Bounding boxes
  • Confidence scores

The trained model demonstrates the power of machine learning. By analyzing imagery, it can determine when the oil spill threat is present, or when there is no imminent danger at all, such as when the image simply contains land or unaffected water.


How we built it

SentrySpill was built using Python, YOLO, Roboflow, and OpenCV.

By bringing these tools together, computer vision could be combined with code to transform labeled data from Roboflow into meaningful predictions.

Using annotated oil spill images, a model was trained and tested on new images to observe how the predictions performed. Through an iterative process and repeated training, the accuracy of SentrySpill was gradually improved by leveraging the technologies that make modern machine learning possible.


Challenges we ran into

The creation of SentrySpill initially began using Scikit-Learn and Ensemble methods. However, the accuracy achieved through that approach was relatively low, and the results could not be visualized in the way that was needed.

Because of this, the approach was shifted to YOLO, a model architecture better suited for image detection tasks. This change produced more meaningful and tangible outputs.

Another challenge involved presenting the deep learning model in a way that was intuitive and easy to interact with. To solve this, the project was deployed through a Gradio interface, making the process as simple as uploading an image and receiving the mapped output with bounding boxes and confidence scores.

One downside was the amount of time required for training the model. However, the time investment ultimately paid off once the model began producing reliable results.


Accomplishments that we're proud of

One accomplishment was integrating the Gradio deployment so that the YOLO deep learning model could be accessed through a live interface.

Originally, this was not planned as part of the project. However, once the training process began producing promising results, the next step was to create a system where the model could actually be interacted with. Bringing the model to life through a working interface was a major milestone.

Another accomplishment was learning how to effectively use Roboflow as a dataset resource. Its large collection of annotated and labeled images helped make the training process much more efficient.

In previous projects, datasets were often taken from sources such as Kaggle. Learning to use Roboflow during the development of this project and adapting to it on the spot helped move the project forward significantly.


What we learned

One of the biggest lessons from building SentrySpill was the importance of being open to changing approaches.

The original plan involved using Scikit-Learn along with a RandomForestClassifier. However, the low accuracy quickly made it clear that the approach would not produce the results needed.

Instead of continuing to refine that model, a completely different direction was taken. After attending a Computer Vision Pipeline Workshop, the idea of using the YOLO deep learning model was explored. This shift ultimately led to much better results.

What was especially exciting was being able to visually map out the detection of oil spills. Seeing the deep learning model highlight potential spill areas and produce confidence scores made the process much easier to interpret and understand.


What's next for SentrySpill

SentrySpill can be taken even further through the integration of Agentic AI, another area that could significantly enhance the system. An AI agent could continuously monitor SAR satellite imagery in real time, scanning incoming images and detecting oil spills automatically.

If a spill is detected, the system could notify coastal communities, environmental organizations, and conservationists so they can take precautionary measures quickly.

Another future goal is to train the model on larger datasets and allow it to run for longer training cycles. This would improve the overall accuracy and make the system more reliable in real-world applications.

Finally, it would be valuable to collaborate with organizations that monitor oceans and environmental conditions. Integrating SentrySpill into their systems could provide them with a powerful tool for identifying oil spills quickly and protecting both marine ecosystems and human communities.

Built With

Share this project:

Updates