0% ont trouvé ce document utile (0 vote)
49 vues5 pages

TP Modélisation

Transféré par

Hajar Amaajane
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
49 vues5 pages

TP Modélisation

Transféré par

Hajar Amaajane
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

TP : Création automatique de modèles 3D pour les

objets urbains

L'objectif de ce TP est de s'initier à la création automatique de modèles urbains 3D


pour des objets tels que les bâtiments et les routes, en utilisant des nuages de points
LiDAR et des données vectorielles.
La méthode automatique à utiliser dans ce TP est 3dfier ; un outil open-source de
création de modèles 3D. 3dfier vise à réduire l'écart pour la création simple de modèles
3D. Il prend des ensembles de données SIG en 2D, tels que des données
topographiques, et les transforme en modèles tridimensionnels. L'élévation est
obtenue à partir d'un nuage de points (actuellement compatible avec LAS/LAZ), et la
sémantique de chaque polygone est exploitée pour réaliser la modélisation en trois
dimensions. Après la modélisation, les différences d'élévation entre les polygones sont
corrigées en les assemblant selon des règles spécifiques. Cela permet la création d'un
modèle numérique de surface (MNS) intégré avec des objets 3D. Une structure basée
sur des règles est utilisée pour extruder l'eau en tant que polygones horizontaux, créer
des blocs LOD1 pour les bâtiments, lisser les surfaces des routes et construire des
ponts (surface polygonale 3D).

Étapes à Suivre :
Tout d'abord, téléchargez 3dfier en utilisant ce lien
(https://github.com/tudelft3d/3dfier/releases), puis extrayez le fichier (.zip). Ensuite,
accédez au dossier "données_TP" et placez-y les deux fichiers testarea_config.yml et
testarea_configroad.yml, ainsi que les dossiers "ahn3","bgt", et "PICC " dans le
répertoire de 3dfier que vous avez téléchargé. N'oubliez pas de créer un dossier
"output" dans lequel vous trouverez les résultats de sortie.
Pour exécuter la méthode, ouvrez l'invite de commande et accédez au répertoire de
votre dossier 3dfier en utilisant la commande "cd" suivie du chemin de votre dossier.
Par exemple, tapez « cd C:\Users\Admin\OneDrive\Bureau\TP IAV 2024\3dfier-
windows-x64-v1.3.4 ». Ensuite, assurez-vous que la méthode fonctionne correctement
en entrant la commande "3dfier".
Enfin, saisissez la commande suivante en ajustant les chemins selon vos données :

3dfier testarea_config.yml --OBJ output/testarea.obj --CityJSON output/testarea.js


on

Effectuez l'exercice deux fois : une première fois en exécutant le fichier de


configuration "testarea_config.yml" pour générer une maquette urbaine 3D en utilisant
les deux fichiers de nuages de points (ahn3_cropped_1.laz et ahn3_cropped_2.laz)
ainsi que les données vectorielles contenues dans le dossier "bgt", puis une seconde
fois en utilisant le fichier de configuration "testarea_configroad.yml" pour la
reconstruction des routes en utilisant le nuage de points (Outreumeuse.las) et la
couche vectorielle des routes (bgt/data/ litopoly.shp). Notez que la méthode 3dfier
accepte des données vectorielles au format (.shp) ainsi qu'au format (.sqlite).
Consultez attentivement les fichiers de configuration (.yml) pour identifier les noms et
les types de données à utiliser à chaque étape. Assurez-vous de lire attentivement ces
fichiers pour bien comprendre les paramètres d'extrusion.

Les paramètres principaux :

Uniqueid : C'est le nom de l'attribut dans le fichier d'entrée qui contient une valeur
unique par élément. Si rien n'est indiqué ici, l'attribut fid est utilisé par défaut.

Lifting : Il s'agit d'un nom de classe. Au total, il y a 7 possibilités différentes à choisir


;
• Building
• Terrain
• Forest
• Water
• Road
• Separation
• Bridge/Overpass

Height_field : Il s'agit du nom de l'attribut d'un nombre entier. Cet attribut entier décrit
les différents niveaux de hauteur relative des polygones qui se chevauchent en 3D. Il
décrit la relation verticale entre les objets. Tous les objets avec height_field = 0
décrivent le niveau du sol. Tous les objets situés au-dessus sont comptés dans le sens
positif (un pont aurait le niveau 1) et les objets situés au-dessous du niveau du sol sont
comptés dans le sens négatif (un tunnel aurait le niveau -1).

Omit_LAS_classes : De nombreux nuages de points contiennent des classes qui ne


sont pas utilisées pour la création de modèles 3D. Il s'agit de classes telles que les
points non classés ou les points de végétation. Ces classes peuvent être
complètement omises au cours du processus de lecture. Lorsqu'elles sont définies
dans cette section, tous les points ayant ces classifications sont ignorés.
Hauteur : percentile-xx

Pour définir la hauteur d'un objet calculée à partir des points qui lui sont proches, nous
utilisons des percentiles avec le paramètre "height: percentile-xx". Le chiffre entre 0 et
100 après "percentile-" (par exemple, percentile-10) indique le pourcentage à partir
duquel la hauteur est calculée.

Imaginons une liste de 10 valeurs de hauteur et configurons un percentile de 90. Nous


ordonnons les 10 valeurs de hauteur de la plus basse à la plus élevée, puis nous
choisissons la 9e valeur dans la liste. La 9e valeur parce que : 10 valeurs * 90e
percentile / 100 = 9.

Exemple :

Valeurs de hauteur : 1-1-5-7-6-9-6-3-4-2

Configuration : percentile-50

Valeurs de hauteur ordonnées : 1-1-2-3-4-5-6-6-7-9

Hauteur calculée : 4

Thinning : Facteur de réduction des points, il s'agit du nombre de points ignorés lors
de la lecture. Une valeur de 10 signifie que les points 10, 20, 30 et 40 sont utilisés.
Lors de l'utilisation de nuages de points comportant un grand nombre de points, cette
fonction permet d'obtenir des résultats plus rapidement.

Pour des informations détaillées sur les différents paramètres, référez-vous au site
suivant : https://tudelft3d.github.io/3dfier/lifting_options.html#triangulate-false

Pour visualiser les modèles générés au format JSON, rendez-vous sur la plateforme
de visualisation suivante : https://ninja.cityjson.org/
Lorsque vous exécutez le fichier de configuration "testarea_config.yml", vous devriez
obtenir les résultats mentionnés dans la figure 1 ci-dessous.
Lorsque vous exécutez le fichier de configuration " testarea_configroad.yml ", vous
devriez obtenir les résultats mentionnés dans la figure 2 ci-dessous
Exercice à rendre :

Question 1 : Analysez les résultats obtenus en termes de sémantique, de géométrie


et d'informations attributaires, et parlez des limites et des avantages qu’offre cette
méthode automatique de reconstruction. Approfondissez vos analyses en validant vos
résultats via cette plateforme en ligne : http://geovalidation.bk.tudelft.nl/val3dity/.

Question 2 : En vous basant sur les deux fichiers de configuration précédents, essayez
cette fois-ci de créer un fichier de configuration pour la reconstruction des bâtiments
avec la méthode 3dfier. Pour ce faire, utilisez les données vectorielles contenues dans
le dossier "PICC" et le nuage de points "Outremeuse.las" contenu dans le dossier
"ahn3".

Question 3 (optionnelle) : Utilisez la commande "merge" de "cjio" pour fusionner le


modèle des routes et celui des bâtiments que vous devez créer dans cet exercice.
Pour installer "cjio" et apprendre comment utiliser la commande, veuillez consulter le
lien suivant : https://github.com/cityjson/cjio

Vous aimerez peut-être aussi