Change Detection
Apprends comment la détection de changements identifie des différences significatives dans les images et les vidéos pour l'analyse satellitaire, l' évaluation des catasrophes et l'inspection industrielle avec Ultralytics YOLO.
La détection de changement est une technique de vision par ordinateur permettant d'identifier des différences significatives entre des observations d'une même scène capturées à des moments différents. Au lieu de demander uniquement ce qui apparaît dans une image, elle cherche à savoir ce qui est apparu, a disparu, s'est déplacé, a grandi, a rétréci ou a changé d'état. Un système peut comparer deux photographies, des images vidéo consécutives ou une série temporelle plus longue. Son résultat peut être une carte de changement binaire, des régions étiquetées, des objets modifiés ou des mesures telles que la surface d'une terre nouvellement inondée.
Comment fonctionne la détection de changement#
Un flux de travail typique commence par deux images ou plus de la même zone. La détection de changement bitemporelle compare deux dates, tandis que la détection de changement multitemporelle analyse une séquence pour distinguer des événements isolés de tendances progressives.
Avant la comparaison, les images doivent être rendues compatibles :
- Alignement : L'Image registration place les points de correspondance de la scène aux mêmes coordonnées de pixel. Même un léger déplacement de la caméra peut autrement créer de faux contours autour de chaque objet.
- Normalisation : La luminosité, la couleur, les conditions atmosphériques et les réponses des capteurs sont ajustées. Pour l'analyse satellite, les surface reflectance products améliorent les comparaisons en réduisant les effets atmosphériques.
- Représentation : Le système compare les pixels bruts, les caractéristiques visuelles extraites, les objets détectés ou les masques de segmentation. Une méthode de base peut utiliser les OpenCV absolute image differences, tandis que les modèles entraînés peuvent reconnaître des changements sémantiques malgré des différences modérées d'éclairage ou de point de vue.
- Décision : Un seuil sépare le changement significatif du bruit. Des mesures de similarité telles que celles de l'scikit-image image metrics API peuvent quantifier à quel point deux observations diffèrent.
- Post-traitement : De petites détections isolées peuvent être supprimées, des pixels voisins fusionnés en régions, et des étiquettes attribuées aux changements telles que « nouveau bâtiment » ou « composant manquant ».
Le changement minimal détectable est la plus petite altération qu'un système peut séparer de manière fiable du bruit du capteur, de l'erreur d'enregistrement et de la variation normale. Il dépend de la résolution de l'image, de la taille de l'objet, du contraste, de la qualité du prétraitement et du seuil sélectionné.
Concepts associés et distinctions clés#
La détection de changement chevauche plusieurs tâches de vision, mais chacune répond à une question différente :
- L'Anomaly detection identifie les observations qui diffèrent d'une définition apprise de la normale, en utilisant parfois une seule image. La détection de changement nécessite une comparaison temporelle ou de référence et n'implique pas nécessairement que le changement soit anormal.
- L'Object detection localise et classe les objets de manière indépendante dans chaque image. La comparaison des détections à travers les dates peut révéler des objets ajoutés ou supprimés.
- L'Image segmentation attribue des étiquettes au niveau du pixel. La détection de changement peut comparer des masques de segmentation pour mesurer précisément des formes ou des zones modifiées.
- L'Object tracking maintient les identités des objets à travers les images vidéo et met l'accent sur le mouvement et les trajectoires. La détection de changement se concentre généralement sur les modifications du contenu ou de l'état de la scène, qui peuvent se produire sur des minutes, des mois ou des années.
- Le dérive des données décrit les changements dans la distribution statistique des entrées de production. Elle concerne la fiabilité du modèle, tandis que la détection de changement visuel concerne les différences au sein des scènes observées.
Applications concrètes#
Observation de la Terre et évaluation des catastrophes : Les analystes comparent des images satellites pour cartographier la déforestation, l'expansion urbaine, le mouvement des côtes, les dégâts causés par les feux de forêt ou les inondations. L'Satellite image analysis peut combiner des données multispectrales avec la segmentation pour classifier chaque région modifiée. La collection USGS Earthshots collection démontre comment l'imagerie Landsat avant et après révèle la transformation environnementale, tandis que la NASA fournit un log-difference change detection workflow pratique. Des programmes à long terme tels que NOAA Coastal Land Cover and Change convertissent ces comparaisons en informations pour la planification des inondations et la gestion côtière.
Inspection industrielle : Une caméra fixe peut comparer un assemblage avant et après une étape de production. La détection peut révéler un boulon manquant ou un composant mal placé, tandis que la segmentation peut mesurer une fissure ou une surface endommagée. Dans le domaine de la manufacturing visual inspection automatisée, un changement non détecté peut permettre à un produit défectueux de continuer en aval, tandis que de fausses alarmes peuvent provoquer des arrêts de ligne inutiles et des examens manuels.
Détection de changement avec Ultralytics YOLO#
Ultralytics YOLO peut fournir l'étape de perception sémantique d'un pipeline de détection de changement. Par exemple, un modèle de segmentation personnalisé YOLO26 peut traiter des images enregistrées avant et après via le YOLO predict mode :
from ultralytics import YOLO
# Load a segmentation model trained for relevant objects or regions
model = YOLO("yolo26n-seg.pt")
# Run inference on an aligned image pair
sources = ["before.jpg", "after.jpg"]
results = model(sources)
# Save semantic predictions for comparison
output_names = ["before_predictions.jpg", "after_predictions.jpg"]
for result, output_name in zip(results, output_names, strict=True):
result.save(filename=output_name)Ce flux de travail produit des masques d'objets et des étiquettes pour chaque observation. Une application en aval peut faire correspondre les classes correspondantes et comparer leur présence, leur position ou la surface de leur masque. Pour des catégories spécialisées, les équipes peuvent annoter des images appariées, entraîner des modèles personnalisés et gérer le déploiement à l'aide de l'Ultralytics Platform.
Défis pratiques et bonnes pratiques#
Une détection de changement fiable nécessite plus qu'une simple soustraction d'images. Les mouvements de caméra, les ombres, la végétation saisonnière, les reflets, les nuages et l'occlusion peuvent ressembler à de réels changements. Les équipes doivent maintenir des points de vue et des paramètres de capteur cohérents, enregistrer les images avant la comparaison, s'entraîner avec des variations « sans changement » représentatives et sélectionner des seuils à l'aide de données de validation.
L'évaluation doit mesurer à la fois les faux positifs, tels que des ombres étiquetées comme des changements structurels, et les faux négatifs, tels que de petits défauts manqués. L'équilibre approprié dépend des conséquences : la cartographie des catastrophes peut prioriser le rappel, tandis qu'une ligne d'inspection à grand volume peut nécessiter une précision plus stricte pour éviter des alarmes excessives. L'examen humain reste précieux pour les résultats ambigus ou à fort impact.






