Détection visuelle des navires (Ship Detection)
Détection automatique des navires par caméra IA (YOLO), fusionnée avec l'AIS pour repérer les bateaux non identifiés et prévenir les abordages.
Où la trouver
Carte › barre d'outils des calques (OverlayPanel) › bouton Detection (rouge) — ouvre automatiquement l'onglet Detection dans la barre latérale.
Le flux caméra peut aussi être affiché en incrustation flottante sur la carte via le bouton Camera PiP (ambre) de la même barre d'outils.
Hiérarchie
Detection (onglet barre latérale)
├── Barre d'état (statut serveur + compteur de cibles + alerte dark)
│ ├── Start Detection / Stop Detection
│ └── Astuce mode web (commande serveur)
├── Mode Debug (icône insecte) — vidéos de test sans caméra
│ ├── Cargo — Ocean liner en mer
│ ├── Voilier — En navigation
│ └── Start Debug / Stop Debug
├── Configuration caméra (icône engrenage)
│ ├── Camera IP / Username / Password / Port ONVIF
│ ├── Confidence (seuil)
│ ├── Auto-track PTZ / Nav lights
│ └── Connect Camera
├── Aperçu vidéo annoté
│ ├── Compteur de cibles (en haut à droite)
│ └── Mini-radar (en haut à gauche)
├── Barre d'outils (radar / capture / son / stats / filtre par type)
├── Liste des cibles détectées (BRG / DIST / SOG / COG / CPA / AIS)
└── Bandeau d'alerte navire fantôme (dark vessel)
Camera PiP (incrustation carte, séparée)
├── Source : Detection / Panoramic / PTZ
├── Taille : S / M / L
├── Configurer la caméra
└── Recharger / Fermer
Barre d'état et démarrage
Statut et boutons Start / Stop
À quoi ça sert : piloter la détection et savoir en un coup d'œil si le système tourne, attend le serveur, ou est à l'arrêt.
Comment l'utiliser : 1. Appuyer sur Start Detection pour lancer la détection. 2. L'état affiché passe par Connecting to server... (le temps que le serveur de détection réponde), puis Starting..., puis Running (vert) une fois actif. 3. Pour tout arrêter, appuyer sur Stop Detection : le flux vidéo, la cible sélectionnée et le mode debug sont réinitialisés.
Options & réglages :
| Élément | Rôle |
|---|---|
| Pastille verte / rouge (en haut) | Indique si la caméra est connectée (verte) ou non (rouge) |
| Start Detection | Démarre le serveur de détection et le pipeline IA |
| Stop Detection | Arrête la détection et vide l'aperçu |
| Compteur targets | Nombre de navires actuellement détectés |
| Indicateur dark (rouge) | Nombre de cibles détectées sans correspondance AIS |
Astuces & limites :
- Un serveur de détection est obligatoire. En version application (Electron), il démarre automatiquement. En mode web, un encadré orange rappelle de le lancer manuellement avec la commande affichée : python3 scripts/shipDetectionServer.py.
- Tant que l'état indique Connecting to server..., aucune image ni détection n'apparaît : patientez ou vérifiez le serveur.
Mode Debug (sans caméra)
Tester sur des vidéos d'exemple
À quoi ça sert : vérifier la détection sans caméra physique, en faisant tourner l'IA sur des vidéos maritimes fournies. Activé par l'icône insecte (en haut à droite du panneau).
Comment l'utiliser : 1. Cliquer sur l'icône insecte pour ouvrir le panneau Debug Mode (encadré violet). 2. Choisir une vidéo de test avec les boutons radio. 3. Appuyer sur Start Debug : le serveur traite la vidéo image par image et affiche les détections. 4. Pendant le traitement, un voyant violet clignotant affiche Processing video frames.... 5. Appuyer sur Stop Debug pour arrêter.
Options & réglages :
| Vidéo de test | Contenu |
|---|---|
| Cargo — Ocean liner en mer | Cargo / paquebot au large |
| Voilier — En navigation | Voilier sous voiles |
Astuces & limites : - Chaque vidéo simule une position bateau différente, ce qui permet de voir relèvements et distances réalistes. - Le suivi PTZ automatique est désactivé en mode debug (pas de caméra réelle à orienter).
Configuration caméra
Connexion de la caméra IP
À quoi ça sert : renseigner les identifiants de votre caméra réseau et régler la sensibilité de détection. Ouvert par l'icône engrenage.
Comment l'utiliser :
1. Cliquer sur l'icône engrenage pour ouvrir Camera Configuration.
2. Saisir l'adresse Camera IP (ex. 192.168.1.100), le Username et le Password.
3. Ajuster le Port ONVIF si nécessaire (80 par défaut).
4. Régler le seuil Confidence entre 0,1 et 0,9.
5. Activer ou non Auto-track PTZ et Nav lights.
6. Appuyer sur Connect Camera pour valider.
Options & réglages :
| Champ / option | Rôle |
|---|---|
| Camera IP | Adresse réseau de la caméra |
| Username / Password | Identifiants ONVIF de la caméra |
| Port ONVIF | Port de communication (80 par défaut) |
| Confidence | Seuil de confiance minimum pour retenir une détection (0,1 à 0,9 ; 0,4 par défaut). Plus haut = moins de fausses détections mais davantage de navires manqués |
| Auto-track PTZ | Oriente automatiquement la caméra motorisée vers les cibles |
| Nav lights | Active la détection des feux de navigation (utile de nuit) |
| Connect Camera | Enregistre la configuration et lance la connexion |
Astuces & limites : - Le système est conçu pour les caméras PTZ Hikvision TandemVu (ex. DS-2SE7C432MWG) ou bi-spectre thermique+visible (DS-2TD1228). Activez d'abord ONVIF dans les réglages de la caméra. - Un seuil de confiance trop bas multiplie les fausses alertes par mer formée (crêtes d'écume confondues avec des navires).
Aperçu vidéo et mini-radar
Flux annoté et radar polaire
À quoi ça sert : voir le flux caméra avec les navires entourés en temps réel, et leur position relative autour de votre bateau.
Comment l'utiliser : 1. Une fois la détection lancée, l'image annotée s'affiche dans le panneau. 2. Le compteur en haut à droite indique le nombre de cibles. 3. Le mini-radar (en haut à gauche) place chaque navire selon son relèvement et sa distance (portée 5 milles). 4. Cliquer sur une cible (dans le radar ou la liste) la met en surbrillance sur la vidéo.
Options & réglages : - L'image se rafraîchit en continu tant que le serveur est joignable. - Le mini-radar n'apparaît que lorsque la détection tourne et qu'au moins une cible filtrée est présente.
Astuces & limites : - Le mini-radar peut être masqué via le bouton radar de la barre d'outils ci-dessous.
Barre d'outils
Radar, capture, son, statistiques, filtre
À quoi ça sert : régler l'affichage et les alertes pendant la veille. Visible uniquement quand la détection tourne.
Options & réglages :
| Bouton | Rôle |
|---|---|
| Mini radar (icône radar) | Affiche ou masque le mini-radar sur la vidéo |
| Capture screenshot (icône image) | Enregistre une capture de l'image annotée ; le nom du fichier s'affiche brièvement en confirmation |
| Sound alerts (icône volume) | Active une alerte sonore à l'apparition d'un navire fantôme ou en cas de risque d'abordage (CPA serré) |
| Statistics (icône histogramme) | Affiche le panneau de statistiques |
| Filtre par type (icône entonnoir) | N'apparaît que si plusieurs types de navires sont détectés ; permet d'afficher/masquer chaque type par couleur |
Statistiques affichées :
| Indicateur | Signification |
|---|---|
| Total | Nombre total de détections cumulées |
| Dark | Nombre de navires fantômes (sans AIS) |
| Det/min | Moyenne de détections par minute |
Astuces & limites : - L'alerte sonore peut être bloquée par le navigateur tant qu'aucune interaction n'a eu lieu (politique de lecture automatique). - Le filtre par type est cumulatif : sans sélection, tous les types sont affichés.
Liste des cibles détectées
Détail de chaque navire
À quoi ça sert : lire les éléments cinématiques de chaque cible (relèvement, distance, vitesse, route, CPA) et savoir si elle est confirmée par l'AIS.
Comment l'utiliser : 1. Parcourir la liste sous l'aperçu vidéo. 2. Cliquer sur une cible pour la sélectionner : elle est mise en surbrillance sur la vidéo et la caméra PTZ pointe vers son relèvement (si auto-track actif). 3. Re-cliquer pour désélectionner.
Données affichées par cible :
| Donnée | Signification |
|---|---|
| Nom / type | Nom AIS si disponible, sinon type de navire (cargo, voilier, pêche, ferry, militaire…) |
| Badge de confiance (%) | Vert ≥ 70 %, jaune ≥ 40 %, gris en dessous |
| BRG | Relèvement (degrés + rose des vents) |
| DIST | Distance estimée (mètres, ou milles au-delà de 1 NM) |
| SOG | Vitesse fond estimée (nœuds) |
| COG | Route fond (degrés) |
| Pastille de type | Catégorie de navire colorée |
| # | Identifiant de piste (suivi) |
| CPA | Point d'approche le plus proche ; affiché en rouge si < 500 m |
| MMSI | Identifiant AIS si la cible est appariée |
| Coordonnées | Latitude / longitude estimées |
| Nf | Nombre d'images sur lesquelles la cible a été vue |
Astuces & limites : - Une cible sans correspondance AIS est marquée ⚠ DARK VESSEL (fond rouge) : navire qui n'émet pas d'AIS, à surveiller en priorité. - Quand aucune cible n'est présente, le panneau affiche No vessels detected.
Bandeau d'alerte navire fantôme
Alerte dark vessel
À quoi ça sert : signaler en bas du panneau le nombre de navires détectés visuellement mais non identifiés par l'AIS.
Astuces & limites : - Le bandeau rouge n'apparaît que pendant la détection et tant qu'au moins un navire fantôme est présent. Couplé à l'alerte sonore, il sécurise la veille de nuit.
Camera PiP — incrustation caméra sur la carte
Fenêtre flottante du flux caméra
À quoi ça sert : garder le flux caméra visible sur la carte en plein écran, indépendamment de l'onglet Detection. Activée via le bouton Camera PiP de la barre d'outils des calques.
Comment l'utiliser : 1. Activer Camera PiP ; une fenêtre apparaît en haut à droite de la carte. 2. La déplacer en glissant la barre de titre (poignée). 3. Utiliser les boutons d'en-tête pour changer de source, de taille, recharger ou configurer.
Options & réglages :
| Bouton | Rôle |
|---|---|
| AI / P / Z | Bascule la source : Detection (flux annoté IA), Panoramic, PTZ |
| S / M / L | Change la taille de la fenêtre (240×180, 400×300, 640×480) |
| Configurer la caméra (engrenage) | Ouvre la saisie des identifiants caméra |
| Recharger (flèches) | Relance le flux vidéo |
| Fermer (croix) | Ferme l'incrustation |
Astuces & limites : - La fenêtre utilise le même serveur de détection (port 8044). Si le serveur est injoignable, un message Camera server offline invite à le démarrer. - Si le serveur tourne mais qu'aucune caméra n'est connectée, le message No camera connected propose un bouton Configurer ; la configuration peut se faire ici sans passer par l'onglet Detection. - Position, taille et source sont mémorisées entre les sessions.