Passer au contenu
megapromotingDiscutons
Produits FlowMind

Intelligence géospatiale Mise en œuvre spécialisée

Les données sur un lieu, vues ensemble.

FlowMind organise des cartes, des sources publiques et des produits Copernicus dans un espace d’analyse. Nous passons d’une image de fond à des couches avec source, date, capteur et limites d’interprétation.

OBSERVAȚIEDATESTRAT PE HARTĂ
Cum funcționează FlowMind

FlowMind

De l’information au travail accompli.

01

Nous choisissons la zone

Nous définissons le territoire, la période et la question : végétation, eau, terrain ou contexte urbain.

02

Nous traitons les données

Nous utilisons des produits optiques, radar, thermiques et atmosphériques adaptés à la question.

03

Nous comparons et interprétons

Nous affichons les couches sur la carte et conservons le contexte nécessaire à une décision informée.

Là où il devient utile.

Végétation et eau

Sentinel-2 et des indices comme NDVI et NDWI pour explorer les changements.

Observations radar

Sentinel-1 complète l'information optique, y compris lorsqu'il y a une couverture nuageuse.

Contexte régional

Données thermiques Sentinel-3 et atmosphériques Sentinel-5P, aux résolutions spécifiques à ces produits.

Les données ne constituent pas un flux vidéo continu. L'interprétation dépend de la résolution, de la saison, des nuages et du moment de l'observation. Les analyses InSAR de déplacement nécessitent un flux séparé, en développement.

FlowMind en détail

Ce que vous pouvez faire avec ce projet.

FlowMind est une couche d'agrégation pour un territoire : il rassemble dans une seule carte opérationnelle ce qui peut être lu sur une ville à partir de sources publiques — images satellitaires Copernicus, géométrie OpenStreetMap, caméras routières publiques, incidents, météo — et indique près de chaque couche d'où elle provient et quand elle a été lue pour la dernière fois.

La règle sur laquelle il est construit s'appelle dans le code ZERO FALSE DATA : lorsqu'une source ne répond pas, la plateforme écrit OFFLINE et le motif, sans remplir le vide avec une valeur plausible. Il existe un gardien automatique, `noFakeLive`, qui refuse de marquer LIVE une couche sans preuve d'une lecture réussie. Lors de la vérification d'aujourd'hui, il signale zéro violation.

Nous n’avons pas de satellites. Nous travaillons via Copernicus Data Space Ecosystem, avec des identifiants OAuth2 client_credentials sur identity.dataspace.copernicus.eu, et nous demandons des produits traités via l’API Sentinel Hub. Ce que cela signifie en pratique : la résolution, la fréquence de revisite et les nuages relèvent de la mission, pas de nous, et ils apparaissent dans le texte.

01

Six couches Copernicus, chacune avec son capteur

Sentinel-2 MSI à 10 m en trois variantes (true color à partir de B04/B03/B02, NDVI à partir de B08/B04, NDWI à partir de B03/B08), Sentinel-1 C-SAR rapport VV/VH à 10 m, Sentinel-3 SLSTR bande thermique S8 à ~1 km et Sentinel-5P TROPOMI NO₂ à ~3,5 × 5,5 km. Les collections demandées dans Sentinel Hub sont `sentinel-2-l2a`, `sentinel-1-grd`, `sentinel-3-slstr` et `sentinel-5p-l2`.

02

Masque de nuages, pas suppression de nuages

Les requêtes Sentinel-2 filtrent les scènes avec plus de 40% de couverture nuageuse, et dans l’evalscript les pixels marqués par la bande SCL comme nuage, ombre de nuage, cirrus ou neige (classes 3, 8, 9, 10, 11) sont renvoyés transparents. Un pixel vide signifie « nous n’avons pas observé ici », pas « ici il n’y a rien ».

03

Radar quand l’optique ne peut pas

Sentinel-1 traverse les nuages et fonctionne la nuit, à 10 m, avec une revisite d’environ 6–12 jours. C’est un screening sur une seule scène, pas de l’interférométrie : le rapport VV/VH montre des différences de surface et d’humidité, pas des déplacements millimétriques.

04

Inventaire d’infrastructure et caméras sondées

538 points d’infrastructure routière cartographiés depuis OpenStreetMap (245 feux de signalisation, 174 feux piétons, 61 radars, 58 caméras) et un prober qui teste effectivement chaque flux de caméra et écrit la raison lorsqu’un flux tombe en panne.

05

Scène 3D sans clés payantes

La carte 3D drape l’orthophoto gouvernementale de geodata.gov.md (WMS, Agence de Géodésie, Cartographie et Cadastre) sur un modèle de terrain issu des tuiles terrarium AWS Open Data, rendu avec MapLibre GL. Zéro clé API, zéro coût à l’affichage.

06

Positions orbitales calculées localement

Les trajectoires des satellites sont propagées à partir des éléments TLE CelesTrak avec `satellite.js` en processus, avec l’âge des données orbitales marqué fresh / stale / expired. C’est une carte du ciel, pas un produit d’image.

Données et fonctionnement

Ce qui entre dans le système. Ce qu'il faut vérifier.

Ce que nous demandons au fournisseur et ce que nous faisons nous-mêmes
À Copernicus, nous demandons un raster déjà traité pour une zone et un intervalle : nous envoyons un evalscript à `https://sh.dataspace.copernicus.eu/api/v1/process` et nous recevons une image. Les indices NDVI, NDWI et le rapport VV/VH sont calculés dans cet evalscript, sur le serveur du fournisseur. Localement restent : le cache, les gardiens de validation, l’inventaire des sources et l’interprétation.
Quota réel de traitement
Le compte standard Copernicus Data Space dispose de 30.000 unités de traitement et de 30.000 requêtes par mois. Il n’existe pas de compteur de ce quota dans l’application — c’est la limite la plus importante à connaître avant une installation à fort trafic. Ce qui existe en revanche : cache de tuiles de 30 minutes avec 200 entrées, `Cache-Control` de 24 heures sur la réponse et un limiteur propre de 1.200 requêtes/minute par tuile, 120/minute sur les API JSON et 30/minute sur les écritures.
Les limites que nous imposons aux requêtes
Une requête de tile accepte entre 64 et 2048 px par côté, une boîte de maximum 5° sur chaque axe et un intervalle d’au plus 31 jours ; au-delà de 15 secondes, la requête vers Copernicus est abandonnée. La fenêtre par défaut des couches correspond aux 7 derniers jours, se terminant hier — et non au jour courant, car les produits ne sont pas prêts instantanément.
Revisite et ce que cela signifie
Le registre des produits dans le code indique : Sentinel-2 ~5 jours par constellation (produit utile en ~2 jours lorsqu’il existe une scène sans nuages), Sentinel-1 ~6–12 jours, Sentinel-3 thermique quotidien à multi-quotidien, Sentinel-5P NO₂ quotidien. Un hiver nuageux peut laisser des semaines sans scène optique exploitable ; c’est là qu’intervient le radar.
Ce qui n’est pas un produit satellite
L’arrière-plan de la carte n’est qu’une orientation visuelle, et le suivi des orbites n’est pas un produit d’image — les deux sont marqués explicitement `basemapIsSatelliteProduct: false` et `orbitTrackingIsMapProduct: false` dans la réponse API des produits.
Persistență
Les données opérationnelles (incidents, rapports, statut des caméras) sont stockées dans des fichiers JSON sur disque, et non dans une base de données. C’est un choix assumé pour l’échelle actuelle, avec sauvegarde quotidienne via cron ; pour un client ayant des exigences de rétention, cela change avant l’installation.

De l'exploration à l'implémentation

Comment nous préparons un projet avec FlowMind.

01

1. Nous définissons la question et la zone

Quel est le territoire, que veut suivre l’équipe (végétation, eau, sol, air, infrastructure) et à quelle échelle la décision est prise. La résolution adaptée à un district ne décrit pas une parcelle.

02

2. Nous inventorient les sources réelles du lieu

Nous vérifions quelles caméras, géoportails, flux de transport et registres publics existent effectivement et répondent. Chaque source entre dans la plateforme avec sa licence, son attribution et son état ; celles qui ne répondent pas restent visibles comme OFFLINE avec le motif, elles ne disparaissent pas de la liste.

03

3. Nous connectons Copernicus sur le compte du client

Un client OAuth2 est créé dans Sentinel Hub Dashboard à partir de CDSE et `CDSE_CLIENT_ID`, `CDSE_CLIENT_SECRET` et `CDSE_INSTANCE_ID` sont placés dans l’environnement de l’application. Le quota de 30.000 PU/mois reste celui du client, ce qui signifie qu’il le voit et le contrôle.

04

4. Nous installons et vérifions avec les gardiens activés

L’installation se fait sur un serveur du client (Next.js sous systemd, nginx en frontal). La vérification d’acceptation est `/api/worldview/source-health` : si `noFakeLive` signale une quelconque violation, l’installation n’est pas prête.

05

5. Ce qui est clôturé avant un accès public

L’installation actuelle de référence fonctionne en HTTP sans TLS et sans authentification en lecture. Pour un déploiement exposé au public, TLS et l’authentification sont des travaux séparés, planifiés explicitement — ils ne sont pas supposés inclus.

Des questions qui méritent d’être clarifiées.

Quels satellites utilisez-vous, concrètement ?

Sentinel-1, Sentinel-2, Sentinel-3 et Sentinel-5P, via Copernicus Data Space Ecosystem. Dans le code, les collections s’appellent exactement `sentinel-1-grd`, `sentinel-2-l2a`, `sentinel-3-slstr` et `sentinel-5p-l2`. Nous n’avons pas de satellites propres et nous n’achetons pas d’images commerciales à haute résolution — si vous avez besoin de 30 cm, c’est une autre discussion et un autre fournisseur.

Est-ce que je reçois une image en direct depuis le satellite ?

Non, et personne ne peut vous donner cela avec Sentinel. Sentinel-2 repasse au-dessus du même endroit environ tous les 5 jours, Sentinel-1 tous les 6–12 jours, et le produit a besoin de temps de traitement. C’est pourquoi la fenêtre par défaut des couches est les 7 derniers jours, terminés hier. Ce que vous recevez est la meilleure scène disponible dans l’intervalle demandé, avec sa date déclarée.

Que se passe-t-il quand il y a des nuages ?

L’optique se perd. Nous filtrons les scènes avec plus de 40% de nuages et nous masquons les pixels que la bande SCL marque comme nuage, ombre, cirrus ou neige — ils apparaissent transparents, pas inventés. Quand l’optique ne peut pas, il reste Sentinel-1 : le radar traverse les nuages et fonctionne la nuit, au prix d’une lecture différente — il voit la rugosité et l’humidité, pas la couleur.

Mesurez-vous le déplacement des versants ou des bâtiments ?

Non. Cela nécessite InSAR : des paires de scènes, des orbites précises, un DEM et la désambiguïsation de phase. Dans le code, ce produit est listé avec le statut `requires_pair_processing` — c’est-à-dire déclaré comme non implémenté, pas caché. Ce que nous faisons à la place : du screening. Il existe un module de triage pour les glissements de terrain qui se présente lui-même comme `flowmind-landslide-screening-v0`, heuristique, avec l’avertissement écrit dans la réponse API qu’il ne s’agit pas d’une détection confirmée.

Combien de caméras routières pouvez-vous apporter en Moldavie ?

Peu, et il vaut mieux que vous l’entendiez de notre part. Une enquête OSINT propre de juillet 2026 a trouvé un plafond d’environ 34 caméras routières publiques en direct dans tout le pays — 12 ANDSA plus 22 à la frontière. Lors de la vérification d’aujourd’hui, sur 116 flux sondés, 13 répondaient, toutes des images JPEG renouvelées, zéro flux vidéo. Les autres sont déclarés avec le motif : abonnement expiré, token renouvelé, dossier disparu, port inaccessible. Si quelqu’un vous promet 150 caméras en Moldavie, demandez-lui la liste.

Contrôle-t-il les feux de signalisation ?

Non, et il ne peut pas non plus le faire dans sa forme actuelle. Les 245 feux de signalisation sont cartographiés comme points dans les données, depuis OpenStreetMap — la plateforme les voit sur la carte, elle ne les commande pas. Le contrôle actif impliquerait une intégration avec les contrôleurs physiques et une responsabilité de sécurité, ce qui est un projet séparé, avec d’autres partenaires.

Existe-t-il des modèles d’apprentissage automatique en production ?

Non. Il n’existe aucun modèle entraîné dans le dépôt et aucun code d’apprentissage automatique n’est appelé par l’application ; les répertoires `ml/gnn` et `ml/forecasting` sont vides. L’architecture avec RL et GNN dans ARCHITECTURE.md est l’objectif, marqué comme tel dans ce même fichier.

Combien me coûte le trafic par satellite ?

Le compte standard Copernicus inclut 30.000 unités de traitement et 30.000 requêtes par mois, gratuitement. Chaque tile demandée en consomme. La plateforme réduit la consommation grâce au cache (30 minutes en mémoire, 24 heures dans la réponse) et par des limites sur la taille et l’intervalle de la requête, mais elle n’a pas de compteur de quota — si l’installation a un trafic public important, la comptabilisation et un plan payant sont des choses à décider à l’avance, pas après.

Exemple illustratif

Vérification d’un soupçon de déforestation sur 40 hectares

Un scénario d’utilisation, sans données client ni résultats commerciaux attribués.

Situation initiale

Une mairie reçoit une signalement indiquant qu’une forêt a été coupée dans une zone difficile d’accès et veut savoir si le déplacement d’une équipe en vaut la peine.

Comment ça fonctionne

La couche Sentinel-2 NDVI est demandée sur la zone encadrée, pour une fenêtre avant le signalement et une fenêtre récente — 31 jours maximum chacune, avec un filtre de 40% de nuages. Les pixels marqués comme nuage ou ombre par la bande SCL restent transparents. Si les deux fenêtres sont nuageuses, on bascule vers Sentinel-1 VV/VH, qui traverse les nuages. Le chevauchement avec la géométrie OSM montre si la zone à faible valeur est bien une forêt et sur quelle parcelle elle tombe.

Rezultatul

Une paire d’images datées, à 10 m, avec le contour de la zone où l’indice de végétation a diminué entre les deux fenêtres, et avec la surface approximative de cette zone. Un pixel de 10 m signifie qu’une coupe de moins d’environ 0,1 ha ne se distingue pas du bruit — on voit une parcelle, pas un arbre.

Ce este necesar:Un cont Copernicus Data Space cu client OAuth2 (gratuit) și o fereastră de timp în care există măcar o scenă cu nori sub prag. Rezultatul e un motiv de verificare în teren, nu o constatare legală.

Possibilités de collaboration

FlowMind, dans le contexte de votre organisation.

Observation du territoire

Analyse des images et des indicateurs satellitaires pour la planification, l’environnement ou l’agriculture, avec la mention de la résolution, de la date et des limites de chaque source.

Entreprises privées

Nous définissons un pilote autour d’un processus réel : utilisateurs, données, intégrations, coûts et critères d’acceptation. L’extension suit après l’évaluation du résultat.

Institutions et entreprises publiques

Nous établissons les exigences d’accessibilité, d’hébergement, de protection des données et d’interopérabilité. Toute connexion avec des services AGE ou STISC nécessite la validation de l’éligibilité, de l’accès et des approbations.

Ce sont des scénarios d’adaptation, non des déclarations sur des contrats ou partenariats existants. Les fonctions proposées sont confirmées dans le périmètre de travail du projet.

Discuter d'un pilote

Nous regardons aussi au-delà de la carte.

Voyez comment nous utilisons les observations Copernicus et comment nous explorons les orbites des satellites.

Explorează datele și cosmosul

Faisant partie d’un écosystème.

Qu'est-ce que vous voudriez voir mieux fonctionner ?

Racontez-nous votre processus. Ensemble, nous décidons ce qui vaut la peine d'être construit, ce que nous pouvons connecter et comment nous vérifions le résultat.

Discutons