Every Feature You Need on the Water

Real-time AI detection, collision warnings, a full web dashboard, and integrations that fit your setup. All running locally on your hardware.

6
Object Classes
30-60
FPS Processing
95%+
Detection Accuracy
0
Cloud Dependencies

Real-Time Object Detection

A custom maritime AI model trained to detect and classify 6 object types in real time

Nemo dashboard showing real-time object detection with bounding boxes
🚤
Vessels
Motorboats, sailboats, kayaks, commercial vessels
🧑
Persons
People on docks, other vessels, or near water
🏊
Swimmers
People swimming in the water
🏍️
Jet Skis
Personal watercraft and wave runners
🔴
Buoys
Navigation markers, channel buoys, mooring buoys
🪵
Debris
Floating debris, logs, hazardous objects

Collision Warning System

Continuous trajectory analysis with multi-level alerts so you can react before it's too late

Monitor
Yellow bounding box
Object detected and being tracked. Be aware of your surroundings.
Caution
Orange highlight
Object on a converging path. Monitor closely, prepare to maneuver.
Warning
Red box + banner + audio
Collision risk imminent. Take immediate evasive action.
📏

Distance Tracking

Monitors proximity of detected objects relative to your vessel in real time.

📐

Bearing Analysis

Tracks whether an object's relative position is changing — a constant bearing means collision course.

⚖️

Priority Weighting

Swimmers and debris are weighted higher than large vessels. The system knows what matters most.

Web Dashboard

A full control interface accessible from any browser on your local network

Nemo web dashboard showing live camera feed with detection overlays, sensitivity settings sidebar, and collision warning banner
📹

Live Camera Feed

Real-time video with detection overlays, fullscreen mode, and RAW/processed toggle

FPS Counter

Live frames-per-second readout so you always know system performance

🔢

Object Counter

Number of objects currently being tracked, updated in real time

🟢

Status Indicator

Shows Online/Offline state and current execution mode (TensorRT/CPU)

Image Processing & Tuning

Configurable settings to optimize detection for any lighting or weather condition

RAW vs Processed View

Toggle between the raw camera output and the AI-enhanced processed view. The processed view applies gamma correction, CLAHE contrast enhancement, and brightness adjustments — optimized for the best possible detection accuracy.

Use RAW mode for troubleshooting camera issues or comparing detection performance under different conditions.

Per-Class Detection Sensitivity

Independent sensitivity sliders for each of the 6 object classes. Dial in exactly how aggressive the detection should be for each type.

Busy marina? Raise boat sensitivity to reduce alert fatigue. Open water? Lower swimmer sensitivity to catch distant contacts. The system adapts to your environment.

🌗

CLAHE Enhancement

Adaptive histogram equalization improves local contrast, making objects visible in challenging lighting — fog, glare, dusk.

🔆

Gamma Correction

Automatic brightness adjustment for low-light conditions. Lightweight Mode uses fast gamma for minimal FPS impact.

🔍

Two-Stage Inference

Optional coarse-then-fine detection pass for catching small, distant objects on the horizon. Uses extra GPU headroom when available.

Audio Alerts

Audible warnings so you can keep your eyes on the water, not the screen

🔔

Object Detected

Single tone when a new object enters the detection zone. Optional — enable per your preference.

🚨

Collision Warning

Repeating alarm that triggers immediately when a collision risk is identified. Impossible to miss.

🏊

Swimmer Alert

Distinct tone specifically for person-in-water detections. Highest priority alert in the system.

🎛️

Configurable Audio Settings

Master volume control, per-alert enable/disable, adjustable repeat intervals, and quiet hours scheduling. Run the system headless below deck with just audio alerts — no screen required.

Universal Video Input & Output

Feed Nemo any video source. Stream the detection output to any device or application.

📷

USB Cameras

Plug and play. Any USB webcam works — cheap or expensive. The AI adapts to whatever you have.

🌐

IP Cameras & RTSP Streams

Connect network cameras, RTSP streams, or any streaming video feed. Position sources anywhere — wired or wireless.

🔌

Local & CSI Sources

Local video files, CSI cameras on Jetson, or onboard vessel camera systems. If it outputs video, Nemo can process it.

Stream Detection Output Anywhere

Nemo outputs the processed detection feed as a stream you can consume from any device or application. Open the web dashboard in a browser, or copy the stream URL and play it in VLC (Open Network Stream), OBS, or any media player that supports network streams.

Access from your phone, tablet, laptop, chart plotter, or a TV mounted at the helm — just navigate to http://127.0.0.1:5001

Nemo detection stream output with Camera Routing panel and live object detection

Integrations

Connect Nemo to your existing systems for automation and extended control

🏠

Home Assistant

Receive collision alerts as notifications. Trigger automations — flash deck lights, sound the horn, or control any connected device when a warning fires.

🤖

AI Platforms

Compatible with AnythingLLM, LangFlow, and other open AI platforms for extended voice control and natural language interaction.

📡

WiFi Hotspot

With the optional pre-flashed SD card (+$150), the Jetson creates its own WiFi hotspot on boot. Connect any device directly — no existing network, no Linux command line, no configuration needed.

🔒

Fully Offline

Everything runs locally on your hardware. No cloud, no internet, no data leaving your vessel. Complete privacy and control.

REST API

Full programmatic control over every aspect of the system

Nemo exposes a local REST API on port 5001. Control detection, read status, adjust configuration, switch cameras, and stream video — all from simple HTTP requests. Build your own dashboards, integrate with automation platforms, or script your entire workflow.

Base URL: http://127.0.0.1:5001
POST /start

Start the detection loop. Optionally pass a video source (camera index or RTSP URL) to switch input before starting.

POST /stop

Stop the detection loop.

GET /status

Returns current system state — detection count, FPS, active collision risks, execution provider, and per-object details.

GET /config

Read the full configuration object including confidence thresholds, preprocessing flags, and risk parameters.

POST /config

Update one or more configuration values at runtime. Only include the keys you want to change.

GET /video_feed

MJPEG stream of the live detection feed with bounding boxes and risk overlays. Embed in an <img> tag or consume in VLC/OBS.

GET /cameras

List all configured camera sources and the currently active camera index.

POST /switch_camera

Switch to a different camera. If detection is running, it restarts automatically with the new source.

POST /test_alarm

Trigger the audio alarm manually. Verify speaker and alarm audio are working correctly.

POST /debug

Enable or disable debug mode. Adds diagnostic overlays to the video feed for troubleshooting.

Quick Examples

Start detection on camera 0
curl -X POST http://127.0.0.1:5001/start \
  -H "Content-Type: application/json" \
  -d '{"video_source": 0}'
Start detection from RTSP stream
curl -X POST http://127.0.0.1:5001/start \
  -H "Content-Type: application/json" \
  -d '{"video_source": "rtsp://192.168.1.50:554/stream"}'
Check system status
curl http://127.0.0.1:5001/status
Response
{
  "running": true,
  "device": "CUDAExecutionProvider",
  "detections": 3,
  "risks": 1,
  "fps": "26.4",
  "total_reflections_filtered": 12
}
Enable lightweight mode + set horizon
curl -X POST http://127.0.0.1:5001/config \
  -H "Content-Type: application/json" \
  -d '{"lightweight_mode": true, "horizon_position": 0.3}'
Switch to camera 1
curl -X POST http://127.0.0.1:5001/switch_camera \
  -H "Content-Type: application/json" \
  -d '{"camera_index": 1}'
Embed live feed in HTML
<img src="http://127.0.0.1:5001/video_feed" />
Test the alarm
curl -X POST http://127.0.0.1:5001/test_alarm

Technical Specifications

What's under the hood

Specification Detail
AI Model Custom maritime RT-DETR, TensorRT-optimized
Object Classes Vessel, Person, Swimmer, Jet Ski, Buoy, Debris
Processing Speed 30-60 FPS (hardware dependent)
Detection Accuracy 95%+ in typical maritime conditions
Supported Hardware NVIDIA Jetson Orin Nano/NX, laptops with NVIDIA GPU
Video Input USB cameras, IP cameras (RTSP), streaming feeds, local sources, CSI, onboard systems
Video Output Web dashboard stream — viewable in browser, VLC, OBS, or any network stream player
Multi-Camera Yes — independent detection per camera, consolidated alerts
Dashboard Web-based, accessible from any browser on local network
Internet Required No — fully offline operation
Distribution Standalone package — no Python, no Docker, no dependencies
Updates 1 year included with license

Ready to See It for Yourself?

Check if your hardware is compatible for free, or go straight to purchasing a license.