Inspiration

Many divers lack real-time, offline tools to identify marine life and avoid toxic/aggressive species. Existing solutions are not usable in remote dive areas. We wanted to build a safe AI assistant that protects divers while supporting marine education and research.

What it does

OceanEyes AI is an end-to-end underwater assistant that analyzes dive videos, detects marine species using YOLOv8, and visually highlights dangerous creatures with red boxes. It generates safety reports from a knowledge base, including species details, risk warnings, and encounter statistics. Users can view annotated videos, copy or download structured dive reports.

How we built it

We built the frontend with React + TypeScript for a smooth, modern UI. The backend uses Flask for API services and video processing. We trained and deployed YOLOv8 for real-time underwater object detection, used MoviePy to standardize video encoding for browser compatibility, and stored marine biology data in a structured JSON knowledge base for offline report generation.

Challenges we ran into

Ensuring video compatibility across browsers was difficult; we solved it with MoviePy re-encoding to H.264. Matching YOLO class IDs to our knowledge base required careful mapping. We also faced latency in frame-by-frame video processing and cross-origin communication between frontend and backend.

Accomplishments that we're proud of

We built a fully offline, end-to-end pipeline from upload to report. Our model reliably detects and classifies toxic vs. non-toxic marine life. The UI is clean, interactive, and production-ready. Most importantly, the system can also work fully offline, making it safe and usable in remote diving environments.

What we learned

We gained experience in full-stack development, video processing pipelines, and deep learning model deployment. We learned how to design structured knowledge bases, handle cross-origin communication, and optimize AI inference for real-world underwater scenarios.

What's next for OceanEyes

We plan to expand our marine species knowledge base, build a mobile version for in-dive use, support image uploads, and add multilingual report generation. We also aim to integrate voice alerts for live danger warnings during dives.

Built With

Share this project:

Updates