Unité 4 / 12

Flux de travail de données spatiales avec QGIS et Python

Gains :

  • Capacité à utiliser l'IA dans la génération de code et de flux de travail pour le traitement des données spatiales avec QGIS et Python (bibliothèques telles que GeoPandas)
  • Capacité à tester le code spatial produit par l'IA sur de petits échantillons de données et à le vérifier par rapport aux erreurs de système de coordonnées et de géométrie
  • Capacité à comprendre la confidentialité des données et la nécessité de vérifier le script généré par l'IA avant de l'exécuter sur des données réelles du projet.

Les tâches spatiales répétitives dans une unité de planification (découpage des couches, dessin des tampons, calcul des zones, combinaison des tableaux) prennent des heures et produisent des erreurs lorsqu'elles sont effectuées manuellement. Il existe deux outils puissants, gratuits et open source qui automatisent ces tâches : QGIS (un logiciel SIG de bureau) et Python (un langage de programmation avec des bibliothèques pour les données spatiales telles que GeoPandas, Shapely, Rasterio). L'IA est incroyablement rapide pour générer du code et du flux de travail pour ces outils : elle rédige un script de travail à partir d'une requête d'une phrase. Mais l'IA écrit du code avec des hypothèses que vous ne pouvez pas voir : un mauvais système de coordonnées, une mauvaise unité, une opération qui supprime silencieusement des éléments. C'est pourquoi chaque code spatial produit par l'IA doit être lu et testé sur un petit échantillon avant d'être exécuté sur des données réelles de projet. Cette unité enseigne l'automatisation spatiale sécurisée avec l'IA, même si vous ne savez pas coder.

Pourquoi QGIS et Python

QGIS vous permet d'analyser en cliquant ; Il est facile à apprendre et comprend une console Python. Python, quant à lui, vous permet d'écrire une seule fois des tâches répétitives et de les exécuter dans des centaines de fichiers. GeoPandas est la bibliothèque la plus pratique pour les planificateurs, combinant des données tabulaires (pandas) avec la géographie : lit les couches, filtre, dessine des tampons, calcule des zones avec une seule ligne de code. L'IA écrit très bien le code GeoPandas ; Mais un code qui semble bon n’est pas toujours le bon code.

Attention : un script écrit par une IA peut s'exécuter sans erreur et néanmoins produire des résultats complètement erronés. « Travaillé » et « correct » sont deux choses différentes. La validation ne signifie pas que le code échoue, mais que le résultat correspond à une référence connue.

Un autre concept important est la reproductibilité : une analyse que vous effectuez dans une institution publique doit pouvoir être répétée avec les mêmes étapes par quelqu'un d'autre des mois plus tard. Les actions effectuées en cliquant manuellement ne sont pas mémorisées et ne peuvent pas être auditées ; alors qu'un script Python est à la fois un enregistrement du travail et reproduit le même résultat. Stocker le code que vous produisez avec l’IA ainsi que ses commentaires renforce à la fois la responsabilité et la mémoire de l’entreprise. Visez donc un « code lisible, commenté et stocké », et non un « code fonctionnel ». Une bonne habitude consiste à ajouter un court bloc de description au début de chaque script, indiquant sur quelles données il s'exécute, à quelle date et dans quel but.

Règles d'or pour générer du code avec l'IA

  1. Donnez le contexte. Format de fichier, CRS, noms de colonnes, ce que vous voulez faire.
  2. Demandez petit. Un shortcode qui effectue une seule tâche est plus sûr qu’un script géant.
  3. Demandez des éclaircissements. Imprimez à l'IA ce que fait chaque ligne de code ; N'exécutez pas de code que vous ne comprenez pas.
  4. Testez-le sur l'échantillon. Essayez-le d’abord sur un échantillon de données de 10 à 20 enregistrements.
  5. Comparez avec la référence. Comparez une zone/distance à une valeur connue.
  6. Sauvegarde. N'écrasez jamais les données de base ; travailler en copie.

Pas à pas : un script spatial sécurisé avec l'IA

  1. Clarifiez la tâche. "Sélectionnez les zones vertes dans la couche parcelle, calculez leurs superficies, écrivez la superficie supérieure à 5 000 m² dans un fichier séparé."
  2. Identifiez les données. Format (GeoPackage/Shapefile), CRS, nom de colonne pertinent.
  3. Imprimer le code + la description sur AI. Commentez ligne par ligne.
  4. Faites effectuer le contrôle du CRS et de l'unité. Superficie en m² ou couche en CRS métrique ?
  5. Exécutez sur des exemples de données. Vérifiez le résultat visuellement.
  6. Vérifiez avec une référence. Comparez la superficie d'une parcelle à la valeur de son titre de propriété.
  7. Exécutez-le sur les données principales, écrivez la sortie dans le nouveau fichier.

Invite faible/Invite forte

Invite faible : « Calculer la superficie des parcelles ».

L'IA écrit sans connaître le système de coordonnées, le format et la colonne ; Le champ peut apparaître dans la mauvaise unité ou dans le mauvais CRS.

Invite forte : "Avec GeoPandas, lisez une couche GeoPackage ('parcels.gpkg', un système national métrique tel que CRS : EPSG:5254) et écrivez la superficie de chaque parcelle en m² dans une nouvelle colonne 'area_m2'. Commentez chaque ligne du code. Ajoutez une ligne avant le calcul de la superficie qui vérifie que la couche est dans un CRS métrique ; avertissez si ce n'est pas le cas. Écrivez la sortie dans un nouveau fichier, ne modifiez pas l'original. "

La deuxième invite produit un code vérifiable et sécurisé car elle contient CRS, unité, sortie sécurisée et description.

Quatre modèles copiables

Tâche : écrivez un court code Python qui effectue la tâche suivante avec GeoPandas. Commentez chaque ligne en turc. Action : [...]Fichier d'entrée : [...] (format, CRS : [...], colonne pertinente : [...])Règle : Ne modifiez pas le fichier d'origine, écrivez la sortie dans un NOUVEAU fichier. Vérifiez que CRS est une métrique avant l'opération ; Sinon, prévenez.

Tâche : Expliquez le code Python/GeoPandas suivant ligne par ligne et marquez les RISQUES : quelle ligne peut supprimer/écraser des données, quelle opération suppose un CRS ou un volume, quelle étape serait lente sur le Big Data. Changer le code ; il suffit d'expliquer et d'avertir.Code : [...]

Tâche : Écrivez un petit plan de TEST avant d'exécuter ce code sur des données réelles. Avec quels échantillons de données, avec quel résultat attendu, avec quelle valeur de référence faut-il la valider ? Donnez une liste de contrôle. Code/action : [...]

Tâche : Décrivez l'action QGIS suivante (étapes de clic) en tant que chemin de menu QGIS et code Python/GeoPandas équivalent. Préciser les écarts et les points d'intérêt (CRS, unité).Processus : [...]

Un tableau : les opérations spatiales fréquentes et leurs pièges

opération

Qu'est-ce que

Piège dans le code de l'IA

vérification

Compte de terrain

Trouve la zone du polygone

Le champ n'a aucun sens dans le CRS géographique

Comparaison avec la zone connue

Tampon

région frontalière

Erreur d'unité (degré/mètre)

Métrique CRS + mesure

agrégation spatiale

Associer les couches

Clé incorrecte/enregistrement en double

Contrôle du nombre d'enregistrements

Clip

coupes avec zone

Perte de données hors limites

Comparer entrée/sortie

reprojection

CRS remplace

Mauvaise cible CRS

Confirmation du code EPSG

trois mini-cases

Cas 1 — Écrasement silencieux. Un planificateur exécute un script écrit par l'IA directement sur la couche de base. Le code applique incorrectement un filtre, supprime la moitié du calque et l'enregistre dans le même fichier. Puisqu’il n’y a pas de sauvegarde, les données qui durent plusieurs jours sont perdues. Leçon : sortie toujours dans un nouveau fichier, données de base toujours redondantes.

Cas 2 — Tampon avec une mauvaise unité. Une équipe demande une zone tampon d’accès de 500 pieds aux écoles. Le code AI fonctionne sur Geo CRS ; Le tampon de 500 « degrés » couvre la totalité de la carte. Puisque l’équipe teste sur un petit échantillon, elle détecte l’erreur avant qu’elle ne soit transmise aux données principales ; Ajoute et corrige la projection sur le CRS métrique. L’habitude de tester évite le désastre.

Cas 3 — Apprentissage explicatif. Un planificateur qui ne connaît pas le code produit un code de jointure en demandant à l'IA d'interpréter chaque ligne. Il voit « cette ligne supprime des enregistrements sans correspondance » dans la description et se rend compte que cela entraînera une perte de certaines parcelles ; Il demande à l'IA une version qui conserve également les non-correspondances. Comprendre le code est une condition préalable pour l’utiliser en toute sécurité.

Erreurs courantes

  • Exécuté directement sur les données de base. Travaillez toujours sur la copie, en écrivant la sortie dans le nouveau fichier.
  • Confondre « travaillé » avec « correct ». Un code sans erreur peut produire des résultats incorrects ; Vérifiez avec référence.
  • En supposant CRS et volume. Vérifiez toujours le CRS métrique pour les opérations de zone et de distance.
  • Exécuter du code que vous ne comprenez pas. C'est risqué de le faire tourner sans demander d'explications et sans savoir à quoi servent les lignes.
  • Sautez le petit test. Passer au Big Data sans essayer de données échantillonnées est la source d’erreur la plus courante.
  • Donner des données confidentielles aux appareils cloud sans réfléchir. Ne partagez pas les données réelles du colis/personne lors de la génération du code ; Utilisez des échantillons de données/anonymes.

En résumé

QGIS et Python (en particulier GeoPandas) automatisent les tâches spatiales répétitives de planification ; L'IA génère rapidement du code pour ces outils. Mais l'IA écrit du code avec des hypothèses que vous ne pouvez pas voir : mauvais CRS, mauvais volume, opérations qui suppriment silencieusement les données. Une utilisation sécurisée repose sur six règles : donner du contexte, demander une petite précision, obtenir des éclaircissements, tester par exemple, vérifier par référence, sauvegarder. « Travaillé » n'est pas la même chose que « correct ». Même si vous ne connaissez pas le code, vous pouvez réaliser une automatisation spatiale sécurisée avec l'IA en comprenant chaque ligne et sans partager de données confidentielles.

Tâche de candidature

Choisissez une tâche spatiale répétitive (par exemple calculer des surfaces dans une couche et séparer le haut d'un seuil). (1) Imprimer le code + la description de la ligne sur AI avec le premier modèle. (2) Vérifiez les risques du même code que le deuxième modèle et trouvez au moins une ligne « peut effacer les données/suppose CRS ». (3) Générez un plan de test avec le troisième modèle : quels échantillons de données, quelle valeur de référence. (4) Notez trois étapes de sécurité que vous suivrez avant d'exécuter le code sur des données réelles.

liste de contrôle

  • [ ] J'ai donné à AI le format, le CRS et le contexte de la colonne.
  • [ ] J'ai expliqué chaque ligne du code ; Je n'ai pas exécuté de code que je ne comprenais pas.
  • [ ] Je voulais un code court et à fonction unique.
  • [ ] Je l'ai testé sur de petits échantillons de données et j'ai vérifié visuellement le résultat.
  • [ ] J'ai vérifié le résultat avec une valeur de référence connue.
  • [ ] J'ai sauvegardé les données de base ; J'ai écrit la sortie dans le nouveau fichier.
  • [ ] Je n'ai pas fourni les données confidentielles réelles à l'appliance cloud ; J'ai utilisé des données anonymes/échantillons.