Détection des serres à l'aide de la télédétection et de l'apprentissage automatique : étape un
Par : Stan Hatko, Statistique Canada
Un effort de modernisation est en cours à Statistique Canada pour remplacer les enquêtes sur l'agriculture par des méthodes de collecte de données plus innovatrices. Un élément principal de cette modernisation est l'utilisation de méthodes de classification par télédétection de la cartographie d'utilisation du sol et de la détection des bâtiments à partir d'imagerie satellite.
Statistique Canada mène actuellement le Recensement de l'agriculture aux cinq ans pour recueillir des renseignements sur des sujets tels que la population, les rendements, la technologie et l'utilisation des serres agricoles au Canada. Les scientifiques des données ont joint leurs efforts à ceux des spécialistes du domaine pour moderniser la collecte de ces données. Ce projet permettra à l'organisme de rendre les données accessibles en temps plus opportun et de réduire le fardeau de réponse pour les exploitants agricoles.
Ce projet vise à évaluer les techniques d'apprentissage automatique utilisées pour détecter la superficie totale des serres au Canada à partir d'imagerie satellite.
Imagerie satellite
Dans le cadre de ce projet, les images satellites RapidEye qui ont une résolution de pixels de 5 mètres (c'est-à-dire que chaque pixel est un carré de 5 m sur 5 m) avec cinq bandes spectrales ont été utilisées.
Cette imagerie a été choisie en raison de sa disponibilité relative et de son coût. Une imagerie à plus faible résolution n'est pas toujours adéquate pour détecter les serres, et une imagerie à plus haute résolution aurait coûté beaucoup trop cher, compte tenu de la superficie totale requise pour couvrir le secteur agricole canadien.
Données de forme étiquetées
Pour certains sites, les spécialistes du domaine disposent de données étiquetées se présentant comme des Shapefile indiquant les zones qui correspondent à des serres. Ces données ont été élaborées manuellement en examinant des images satellites et aériennes à très haute résolution (au moyen de Google Earth Pro et de logiciels semblables) et qui ont mis en évidence les zones correspondant à des serres.
Ces données étiquetées ont joué deux rôles :
- Données d'entraînement (à partir de certains sites) en vue d'élaborer un classificateur d'apprentissage automatique pour déterminer la superficie couverte de serres.
- Données d'essai (à partir d'autres sites) pour évaluer le rendement du classificateur.
Les données étiquetées de Leamington (Ontario), Niagara (Ontario) et Fraser Valley (Colombie-Britannique) ont été produites. Certains sites ont été choisis comme sites d'entraînement (comme Leamington Ouest), tandis que d'autres ont été choisis comme sites d'essai (comme Leamington Est).
Voici un exemple d'imagerie RapidEye d'une région avec le fichier d'étiquetage des serres.
Les données étiquetées ont été réparties en sites et sous-sites pour entraîner et valider le modèle d'apprentissage automatique. Les sites d'entraînement étaient :
- Leamington Ouest
- Niagara Nord : N1, N1a, N3
- Fraser Sud : S1, S2, S3, S4, S5
Les sites de validation qui ont été utilisés pour tester le modèle étaient :
- Leamington Est
- Niagara Sud : S1, S2
- Fraser Nord : N2, N3, N5
Méthode d'apprentissage automatique
Pour chaque point, les scientifiques des données devaient déterminer si celui-ci correspondait ou non à une serre, ainsi qu'une probabilité prédite que chaque point corresponde à une serre.
Pour la probabilité prédite d'un point, une fenêtre de taille déterminée a été prise autour du point. Nous avons alimenté le classificateur des données de cette fenêtre, et le classificateur a tenté de prédire si le point central est une serre ou non. La fenêtre autour du point fournit davantage de contexte qui aide le classificateur à déterminer si le point central est une serre ou non.
Ce processus a été répété pour chaque point dans l'image (sauf près des frontières), de sorte que nous avons obtenu une carte montrant la superficie exacte qui est couverte de serres.
Pour l'entraînement, un échantillon de plusieurs de ces points (y compris la fenêtre autour de chaque point) a été pris comme données d'entrée (avec les données étiquetées) pour élaborer le modèle. La taille de l'ensemble d'entraînement a aussi été accrue en appliquant différentes transformations, par exemple en faisant pivoter l'image d'entrée à différents angles pour différents points.
Travaux initiaux et transition vers une plateforme infonuagique
Au départ, les travaux ont été effectués sur un système interne de Statistique Canada avec microprocesseur à 8 cœurs et 16 Go de mémoire vive. Différents algorithmes ont été mis à l'essai pour le classificateur, y compris des machines à vecteurs de support, des forêts aléatoires et un perceptron multicouche avec analyse en composantes principales (ACP).
Les meilleurs résultats ont été obtenus avec l'ACP et le perceptron multicouche, qui ont donné lieu à un score F1 de 0,89 à 0,90 pour Leamington Est. Diverses limites de système ont été atteintes pendant ces travaux, notamment l'absence d'une unité de traitement graphique (UTG) dédiée. L'UTG est nécessaire pour entraîner efficacement des modèles plus complexes faisant intervenir des réseaux neuronaux convolutifs.
La possibilité d'utiliser la plateforme infonuagique publique a été étudiée, puisque ce projet ne fait intervenir aucune donnée de nature délicate. Le projet a été transféré à la plateforme infonuagique Microsoft Azure, sur un système équipé de 112 Go de mémoire vive, de grands volumes de stockage et d'une UTG très puissante (NVIDIA V100). Le logiciel Microsoft Azure Storage Explorer a été utilisé pour transférer les données vers le compte de stockage et à partir de ce dernier.
Réseaux neuronaux convolutifs
Les réseaux neuronaux convolutifs intègrent les concepts de la localisation (le voisinage autour d'un point dans l'image étant important) et de l'invariance de translation (les mêmes éléments sont utiles partout) au réseau neuronal. Les architectures reposant sur cette méthode sont considérées comme étant à la fine pointe de la technologie en reconnaissance d'images depuis plusieurs années.
Une couche fonctionne comme suit dans un réseau neuronal convolutif de base :
- Une petite fenêtre (par exemple, 3 x 3) est prise autour de chaque point dans l'image ou de la couche précédente.
- Les données présentes dans cette fenêtre sont multipliées par une matrice, à laquelle on applique l'activation (un biais peut également être ajouté).
- Ce processus est répété pour chaque point dans l'image (ou de la couche précédente) pour obtenir la nouvelle couche. La même matrice est utilisée chaque fois.
Cela correspond à la multiplication par une grande matrice creuse, certains poids étant liés aux mêmes valeurs, suivie de l'activation.
De nombreuses architectures différentes de réseau neuronal convolutif sont possibles. Ce projet a mis à l'essai les options suivantes :
- Réseau neuronal convolutif simple : Applique des couches convolutives de façon séquentielle (la sortie d'une couche est l'entrée de la couche suivante), suivies de couches entièrement connectées.
- Réseau neuronal résiduel : Applique une couche convolutive ayant une sortie de même taille et l'ajoute à la couche originale (de sorte que l'entrée de la couche suivante est la somme de la couche originale et de cette couche). Le tout peut être répété pour de nombreuses couches. A été utilisé pour entraîner des réseaux très profonds.
- Réseau neuronal convolutif profond : Applique une couche convolutive et ajoute les sorties à la couche originale comme des nouveaux canaux. Chaque couche ajoute de nouveaux canaux, qui peuvent représenter des éléments utiles.
- Architecture branchée sur mesure : Supprime la partie centrale de la fenêtre et applique un réseau convolutif. Prend l'ensemble de l'image et applique un autre réseau (avec plus de réduction de dimensionnalité en fonction des couches regroupées). Fusionne les deux aux extrémités en des couches entièrement connectées. Cela permet à l'utilisateur de s'attarder à la partie se trouvant près du point central, tout en obtenant un peu de son contexte.
Les scientifiques des données ont utilisé l'architecture branchée sur mesure pour ce projet, comme illustré à la figure 5.
Aux fins d'optimisation, l'optimiseur ADAM a été utilisé avec un taux d'apprentissage de 10-5. Un mini-lot de 5 000 a été utilisé, et l'entraînement a été fait pour 50 époques.
Résultats
Après que le modèle ait été entraîné, il a été mis à l'essai sur chacun des sites de validation à Leamington Est, Niagara Sud et Fraser Nord. Le tableau ci-dessous résume les résultats.
Région | Leamington Est | Fraser N2 | Fraser N3 | Fraser N5 | Niagara S1 | Niagara S2 |
---|---|---|---|---|---|---|
Nombre inconnu | 338443 | 292149 | 292149 | 246299 | 388479 | 388479 |
Nombre de vrais négatifs (VN) | 14320042 | 12347479 | 12350813 | 8608499 | 24597241 | 24598805 |
Nombre de faux positifs (FP) | 9984 | 1069 | 1875 | 2337 | 2143 | 2411 |
Nombre de faux négatifs (FN) | 6880 | 957 | 1069 | 5474 | 3248 | 1049 |
Nombre de vrais positifs (VP) | 138315 | 8346 | 4094 | 5041 | 8889 | 9256 |
Exactitude | 0,998835 | 0,999836 | 0,999762 | 0,999094 | 0,999781 | 0,999859 |
Précision | 0,932677 | 0,886458 | 0,685877 | 0,683247 | 0,805747 | 0,793349 |
Rappel | 0,952615 | 0,89713 | 0,79295 | 0,47941 | 0,732389 | 0,898205 |
F1 | 0,942541 | 0,891762 | 0,735537 | 0,563461 | 0,767318 | 0,842527 |
Courbe ROC | 0,999508 | 0,999728 | 0,998477 | 0,962959 | 0,977933 | 0,999949 |
Pour Leamington, le résultat obtenu était très bon : les serres ont bien été détectées et le nombre de faux positifs était faible. Le nombre de points mal classés (FP et FN) était beaucoup plus petit que pour les deux classes correctes (VN et VP). Cette zone a le meilleur score global F1, à un peu plus de 0,94.
Pour Niagara, les résultats étaient bons en général : la majeure partie de la superficie de serres a été prédite correctement. Il y a eu un faux positif pour une serre sous et à la gauche des serres détectées dans la partie Niagara S1 (Figure 7 ). Cela correspond à une zone riveraine-côtière. Au départ, ce résultat faux positif était beaucoup plus élevé, mais le fait d'augmenter la taille de l'échantillon pour une zone urbaine côtière (comportant un littoral relativement droit) a permis de réduire significativement la taille et a aussi facilité le travail pour d'autres zones. Si plus d'images côtières étaient ajoutées à l'ensemble d'entraînement (avec différents lits de cours d'eau, etc.), cette erreur pourrait être réduite davantage.
Pour Fraser, les résultats ont varié en fonction de la zone. Pour Fraser N2 (Figure 9) les résultats étaient bons. Les résultats n'étaient pas aussi bons pour Fraser N3 (Figure 10), car une grappe de petites serres à la droite des serres détectées ont été manquées (avec quelques faux positifs). Pour Fraser N5 (Figure 11), un nombre significatif de serres ont été manquées. Diverses expérimentations menées jusqu'à maintenant n'ont pas amélioré les résultats pour Fraser. Pour améliorer ces résultats, l'équipe devra tenter de découvrir de quel type de serres il s'agit, si d'autres zones comportant ces types de serres peuvent être ajoutées à l'ensemble d'entraînement, et même si ce type de serre peut être détecté à partir des images satellites de 5 m.
Conclusion
Dans l'ensemble, les réseaux neuronaux convolutifs ont été utilisés avec succès pour détecter les serres à partir des images satellites dans de nombreuses zones. Cela était particulièrement vrai dans les régions de Leamington, du Niagara et du Fraser. D'autres régions affichent encore de faibles niveaux de prédictions pour les serres. De plus, on remarque encore des problèmes avec les petites serres dans les trois régions d'intérêt, qui n'étaient pas assez vastes pour être détectées dans l'imagerie satellite RapidEye de 5 m. Ces problèmes pourraient être réglés par des acquisitions d'images aériennes de plus haute résolution.
La prochaine étape de ce projet examinera la détection des serres à partir d'images aériennes à plus haute résolution. Différentes méthodes sont utilisées pour travailler avec l'imagerie aérienne haute résolution, par exemple, l'utilisation d'architectures de segmentation UNet pour détecter les zones qui correspondent à des serres, que nous avons hâte d'examiner dans le cadre d'un prochain article.
- Date de modification :