Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Tue 28 June 2022 15:03

msre
Juste Inscrit !
Date d'inscription: 23 Jun 2022
Messages: 4

Automatisation du Georeferencement d'une image ?

Bonjour.

Je dispose de fichiers du cadastre en format .dxf qui sont géoréférencés en Lambert 93 ainsi que de captures d'écran d'images aériennes qui sont donc dépourvues de toute donnée de localisation.

Je dispose des coordonnées longitude latitude des angles du terrain considéré pour chaque capture d'écran, terrain qui se trouve également sur le dxf du cadastre.

J'aimerais pouvoir automatiser les actions suivantes, via Python ou des macros Autocad : ouverture du dxf dans Autocad, ouverture de la capture d'écran dans Autocad sur le même dessin, et géoréférencement de la capture pour qu'elle se superpose plus ou moins parfaitement au cadastre.

Et j'aimerai ainsi pouvoir répéter cette opération à chaque nouveau projet qui aura une nouvelle image aérienne et un nouveau fichier cadastral.

Créer une macro pour ouvrir un fichier est relativement simple, de plus les noms de mes fichiers sont normalisés et l'image aérienne aura toujours le même nom, mais je bloque concernant le géoréférencement.

J'ai essayé via Qgis en créant un fichier de géoréférencement worldfile .jgw mais sur Autocad quand j'ouvre ensuite l'image, elle contient des coordonnées aberrantes.

Pensez-vous qu'il existe une méthode pour automatiser le géoréférencement, c'est-à-dire sans faire un recalage d'Helmert en cliquant sur les points à la main, ce qui est évidemment impossible à automatiser, les points étant choisis "à l'oeil" ?

J'attends avec impatience vos suggestions.

Cordialement.

Hors ligne

 

#2 Tue 28 June 2022 17:38

Patrice
JeSuisCharlie
Date d'inscription: 16 Sep 2005
Messages: 4794

Re: Automatisation du Georeferencement d'une image ?

Hello
Q1) Tu as un ACAD LT ou un ACAD ou un ACAD MAP ?
Q2) Quelle version : 2023, 2022, 2021, etc ?
Q3) Pour chaque image TIF ou JPG , as tu bien le TFW ou JGW correspondant ??
Merci de tes Infos, GeoBye, Pat


(Autodesk Expert Elite Team)

Hors ligne

 

#3 Tue 28 June 2022 19:39

msre
Juste Inscrit !
Date d'inscription: 23 Jun 2022
Messages: 4

Re: Automatisation du Georeferencement d'une image ?

Bonsoir,

oui désolé de ne pas avoir précisé.

J'ai Autocad MAP 3D 2023. Je n'ai pas le tfw ou jgw correspondant pour chaque image, c'est juste pour une image de test que j'ai essayé d'utiliser les outils de Qgis pour créer un jgw, qui m'a ensuite donné des coordonnées aberrantes quand j'ai importé l'image sur Autocad. C'étaient des coordonnées en 20 000 en x par exemple, je sais même pas ce que c'est, c'est ni du Lambert 93, ni du CC9 Zones, ni du Lambert 2 étendu...

Alors que normalement, pour la zone considérée en exemple, on devrait être dans les 595 000 m en x pour le Lambert 93 et dans les 545 000 m en Lambert 2 étendu.

Merci pour votre prise de contact rapide.

Dernière modification par msre (Tue 28 June 2022 19:44)

Hors ligne

 

#4 Wed 29 June 2022 17:02

msre
Juste Inscrit !
Date d'inscription: 23 Jun 2022
Messages: 4

Re: Automatisation du Georeferencement d'une image ?

La seule solution que je vois pour l'instant est un algorithme de reconnaissance de formes qui regarderait la forme du terrain (car j'ai les coordonnées de chaque angle du terrain) en utilisant les coordonnées pour voir les distances entre chaque point et qui regarderait sur le cadastre la forme similaire.
Mais ça semble une montagne infranchissable à programmer...
Il y a aussi le problème des terrains qui ont des formes très simples et qui ne sont donc pas uniques sur le cadastre...

Hors ligne

 

#5 Thu 30 June 2022 09:30

olivier.eckmann
Participant assidu
Date d'inscription: 14 Dec 2007
Messages: 357

Re: Automatisation du Georeferencement d'une image ?

Bonjour,

Si j'ai bien compris, tu as des coordonnées (lat/long) des sommets supposés de parcelle, mais tu ne sais pas à quel pixel ça correspond sur la photo.
Est-ce qu'il y aurait une règle constante dans la prise de photo?
- toujours plein nord?
- toujours zoomé sur l'emprise exacte?
- toujours même facteur de zoom par rapport à l'emprise exacte du terrain?
- comment (depuis quelle source et quelle méthode) ont été réalisé les capture d'écran?

La meilleure solution consisterait à obtenir directement des images géoréférencées:
- image bingmap directement intégrée à AutoCAD (qualité de bonne à très moyenne selon le lieu en France)
- plug-in Plex-Earth pour récupérer les images GE (payant, mais largement rentabilisé) : on dessine l'emprise sur AutoCAD et le logiciel récupère automatiquement l'image ou la mosaïque d'images nécessaires
- BD Ortho de l'IGN dispo en opendata et géoréférencée en L93 (téléchargeable par département)
- BD Ortho de l'IGN en flux WMS ou WMTS

Olivier

Hors ligne

 

#6 Thu 30 June 2022 09:51

Patrice
JeSuisCharlie
Date d'inscription: 16 Sep 2005
Messages: 4794

Re: Automatisation du Georeferencement d'une image ?

Hello
+1 avec Olivier !
Tu devrais acheter le Plugin Plexearth
https://plexearth.com/pricing - 449 Euros / an
C un outil indispensable ... Ainsi tu auras acces a "tout" !
La Sante, GeoBye, Pat


(Autodesk Expert Elite Team)

Hors ligne

 

#7 Thu 30 June 2022 13:46

msre
Juste Inscrit !
Date d'inscription: 23 Jun 2022
Messages: 4

Re: Automatisation du Georeferencement d'une image ?

Bonjour.
Les images sont toujours orientées plein nord et elles ont toutes le même niveau de zoom sur lequel on voit la parcelle et un peu plus.
Et la parcelle considérée est toujours au centre de l'image.

Les images proviennent d'un site de scraping qui été créé pour nos besoins et il nous permet d'avoir des captures d'écran des orthophotos du Géoportail de l'IGN. C'est le flux WMS que l'on prend.
Mais du coup, on perd les données de localisation en faisant la capture.
L'intérêt du site de scraping est qu'on peut, en le configurant, avoir accès à des photos à différentes échelles de zoom, à différents types d'images (photo aérienne, plan type carte routière mais toujours centré sur notre parcelle, carte géologique, cadastre..) et on télécharge tout d'un coup pour la parcelle en question.

Et donc le problème, c'est qu'une fois ce "paquet" de documents téléchargé, j'aimerais pouvoir ouvrir automatiquement sur Autocad le cadastre et faire correspondre la photo aérienne en superposition, sans avoir à manuellement cliquer sur des points, car il y a beaucoup de parcelles à traiter.

Faut donc que je fasse une macro qui puisse ouvrir un fichier dxf dont le nom change pour chaque parcelle, et qui ouvre une orthophoto au nom identique à chaque fois en revanche, puis que cette macro puisse positionner la photo sur le cadastre avec une assez bonne précision.
Au pire, si la partie géoréférencement est impossible à totalement automatisé, je pense que je ferais une macro avec un point d'arrêt pour qu'on puisse cliquer sur des points et entrer les coordonnées ou mieux les copier depuis un fichier texte. Mais je ne sais pas s'il est possible de faire une macro avec une sorte de point d'arrêt et de demande à l'utilisateur comme les input en Python.

Dernière modification par msre (Thu 30 June 2022 14:24)

Hors ligne

 

#8 Thu 30 June 2022 22:22

olivier.eckmann
Participant assidu
Date d'inscription: 14 Dec 2007
Messages: 357

Re: Automatisation du Georeferencement d'une image ?

Bonjour,

Avec ce code, on peut convertir les 2 coins BG et HD en lat long vers du L93, puis insérer la photo sur ces 2 points

Code:

(defun c:GRI (/ sPhotoName PtBG_LL PtHD_LL ptBG_L93 ptHD_L93)
  ; initialise le système d'origine
  (ade_projsetsrc "LL-RGF93")
  ; initialise le système d'arrivée
  (ade_projsetdest "Lambert93")

  ; nom du fichier image
  (setq sPhotoName "C:/TEMP/PHOTO.PNG")
  
  ; coordonnée du point bas gauche et haut droit en LatLong
  (setq PtBG_LL (list 2.293300 48.857300)) ; la tour eiffel :)
  (setq PtHD_LL (list 2.295617 48.859120))
  ; coordonnées transformée en L93
  (if (and (setq ptBG_L93 (ade_projptforward ptBG_LL))
       (setq ptHD_L93 (ade_projptforward ptHD_LL))
      )
    ; la transformation a réussi
    (progn
      (command "-image" "_a" sPhotoName "_none" ptBG_L93 "_u" "s" (- (car ptHD_L93) (car ptBG_L93)) "0")
    )
  )
);

Olivier

Hors ligne

 

Pied de page des forums

Powered by FluxBB