Pour commencer, ci-dessous le répertoire principale du projet git Triskele :
Nom du dossier/du fichier | Résumé de ses fonctions |
---|---|
![]() | Contient des modules utilisé pour le cmake, utilisé pour la compilation du projet sur la plateforme choisis |
![]() | |
![]() | Contient des documents textes dans lesquels sont définies toutes les commandes qu'un utilisateur peut appeler sur la ligne de commande pour assembler une image. À l'aide de docker build, les utilisateurs peuvent créer une build automatisée qui exécute successivement plusieurs instructions de ligne de commande |
![]() | Contient différentes documentations sur triskele notamment le fichier InstallTriskeleWindows.pdf qui décris les différentes étapes pour l'installation de triskele sous OS windows |
![]() | Contient tous les modules utilisé par l’application, en contenant les fichiers d'en-tête des classes sous forme de code source écrit en C++. Ses fichiers HPP sont utilisés pour stocker des composants de code qui sont réutilisés dans le projet Dans ce dossier |
![]() | Contient l'ensemble de fichiers sources (format .h ou .cpp) de l’application triskele |
![]() | Contient différents fichiers d’en-tête C++ pour effectuer des test unitaires |
![]() | Contient un module de catch permettant de récupérer les erreurs, utilisé pour les tests unitaires, comme par exemple des tests sur la classe Border ou la classe Thread |
gitignore | Le fichier gitignore spécifie les fichiers intentionnellement non suivis que Git doit ignorer, comme par exemple des fichiers qui ne servent qu’à la compilation de programme ou des fichiers temporaires créés par votre éditeur de texte.Les fichiers déjà suivis par Git ne sont pas affectés. |
CMakeLists.txt | Le fichier CMakeLists.txt contient un ensemble de directives et d'instructions décrivant les fichiers source et les cibles du projet (exécutable, bibliothèque ou les deux). |
CMakeListsOTB.txt | Un fichier CMakeLists.txt modifié pour l'utilisation de triskele dans son intégration à OTB |
Notre attention ce portera sur les dossier includes et src
Triskele est structuré par des classes ayant pour groupes de fonctions spécifiques :
Type | Description |
---|---|
CPP | Fichiers sources classiques contenant l’implémentation concrète du code. Ils sont compilés en fichiers objet (.o) pour former l’exécutable final. |
HPP | Fichiers d’en-tête contenant les déclarations de classes, fonctions et types. Ils servent d’interface entre les différentes parties du projet sans exposer les détails d’implémentation. |
TPP | Fichiers regroupant les définitions des fonctions inline (souvent pour les templates), permettant ainsi de maintenir des en-têtes clairs et bien organisés. |
MCPP | Fichiers rappelant le contenu des HPP, utilisés lorsque l’on a besoin de préciser certains types dans l’implémentation. |
TCPP | Fichiers destinés à l’explicitation détaillée des différents types possibles, offrant ainsi une documentation interne sur la structure des types. |
Ce dossier contient tous les modules utilisé par l’application, en contenant les fichiers d'en-tête des classes sous forme de code source écrit en C++. Ses fichiers HPP sont utilisés pour stocker des composants de code qui sont réutilisés dans le projet Dans ce dossier, on retrouve :
Nom de la classe C++ | Résumé de ses fonctions | Groupes |
---|---|---|
AttributeProfile | Propriétés des images : taille, largeur, sombre.Contient un tableaux de propriétés géométrique | géométrique |
Border | Permet de limiter les pixels à prendre en compte | géométrique |
HDF5 | Permet d’enregistrer l’arbre sur le disque, permet d’enregistrer sa structure | construction d'arbre |
misc | Fourre-tout | pratique |
ObelixDebug | Créer une trace durant l’exécution pour suivre le code | géométrique |
Obelix 2D/3D | Utiliser pour manager les images 2D et 3D, créer des tempaltes pour manipuler les pixels lors de l’éxécution | géométrique |
ObelixNDvie | Calcul NDvie, permettant de distinguer la végétation dans l’image, en utilisant l’absorption du pigment chlorophyllien dans le canal rouge et la haute réflectivité des matières végétales dans le canal proche infrarouge | géométrique |
ObelixPantex | Permet de distinguer les infrastructures humaines, comme une ville, s’appuie sur la rectangularité des objets | géométrique |
ObelixSobel | Utilise le gradient entre un pixel et ses voisins pour identifier le contour des objets | géométrique |
ObelixThread | Permet de lancer des tâches/calculs en parallèle | géométrique |
TextWin | Permet de gérer une fenêtre glissante afin de calculer des éléments statistiques. | géométrique |
WeightAttributes | Permet d’attributs un poids à l’image, utilisé plus tard pour différents calculs | géométrique |
ZLengthAttributes | Permet de voir le temps de vie d’un objet, en utilisant la croissance d’un arbre par exemple | géométrique |
Dossier ArrayTree : | construction d'arbre | |
ArrayTreeBuilder | construction d'arbre | |
GraphWalker | construction d'arbre | |
Leader | construction d'arbre | |
Weight | construction d'arbre | |
triskeleSort | construction d'arbre |
En construction