Présentation générale de la plateforme, grands principes

...english version of this page

Cette section présente la philosophie et les concepts importants de Computree.

Philosophie

Le but de Computree est de permettre le traitement de nuages de points 3D, pour en extraire des informations utiles, comme par exemple :

La plateforme se place dans une logique de Recherche et Développement. L’idée est donc de permettre à l’utilisateur de créer de façon intéractive une séquence algorithmique permettant, à partir de données chargées, d’aboutir aux résultats souhaités. Cette séquence - plutôt un arbre hiérarchique en fait, car il est possible de ramifier cette séquence en chaînes algorithmiques parallèles - est décomposée en étapes algorithmiques unitaires, réalisant des traitements spécifiques.

Les étapes sont regroupées dans des plugins, ce qui permet d’enrichir facilement la plateforme avec de nouveaux traitements.

Après l’exécution de la séquence algorithmique, les résultats intermédiaires de chaque étape unitaire sont disponibles, exportables et visualisables, ce qui permet une analyse poussée de la qualité des traitements effectués.

La plateforme a été développée avec la philosophie suivante :

L’objectif est ainsi de permettre à différentes équipes de collaborer autour du traitement de scène 3D forestières.

Mais si la plateforme permet une logique collaborative de R&D, elle est également prévue pour permettre un passage facile des méthodes développées dans un environnement de production (en gestion forestière par exemple). En effet, le système rend aisée la création d’interfaces adaptées à des besoins spécifiques, en utilisant le cœur et les plugins de façon transparente.

Architecture générale

La plateforme Computree est composée des éléments suivants :

Structures de traitement et de gestion des données

Pour traiter les données, Computree utilise un arbre d’étapes, exportable en tant que script (extension .xsct2). La racine de l’arbre est une étape de chargement ou de création de données. Ensuite chaque étape est attachée à une étape mère. L’arbre des étapes peut être intégralement constitué avant d’exécuter les calculs.

Les étapes sont implémentées dans les plugins (indépendants). Chaque étape prend en entrée des résultats issus de l’étape précédente, et produit d’autres résultats en sortie.

Les résultats contiennent les données en elles-mêmes. Pour permettre l’enchaînement d’étapes développées indépendamment, les résultats stockent les données dans des éléments génériques définies dans le cœur.

Ces éléments génériques sont de deux natures :

Sur ce schéma est représentée une structure de résultat permettant d’illuster la structuration par les groupes, et le stockage des données dans des items contenus dans ces groupes. A noter que pour chaque niveau de groupe, l’étape peut produire un nombre indéterminé de réalisations de cette structure. Ainsi si l’algorithme a détécté n arbres, la structure sera créée n fois, contenant à chaque fois des points et des cylindres différents, ainsi qu’un nombre de branches variable d’un arbre à l’autre.

Pour que l’ arbre d’étapes puisse être constitué intégralement avant execution, il est nécessaire que les étapes puissent communiquer entre-elles, afin de déterminer leur compatibilité.

Pour ce faire, chaque résultat est doté d’un modèle de résultat OUT décrivant sa structure :

Ces modèles sont nommés OUT, car il décrivent la structure de résultat produite par l’étape en sortie.

Les étapes quant à elle sont dotées de modèles de résultats IN. Ce sont des cahiers des charges permettant à l’étape de tester des modèles de résultats OUT issus des étapes précédents, et de déterminer si elle peut les utiliser en entrée.

Ces modèles sont nommés IN, car il décrivent la structure de résultat souhaitée en entrée par une étape.

Sur ce schéma, les étapes 1 et 3 proviennent d’un plugin, alors que l’étape 2 provient d’un autre. Les flèches rouges représentent l’enchaînement des étapes. Les flèches bleues, la production de résultats par les étapes. Les flèches noires, les tests de compatibilité réalisés par les étapes sur les modèles de résultats OUT candidats, à l’aide de leurs modèles de résultats IN.

Contenu des plugins

Les plugins peuvent étendre les fonctionnalités de Computree en fournissant des éléments d'une ou plusieurs catégories :

Le plugin Base, fourni en standard avec Computree, contient des étapes utilitaires, des readers et exporters pour les formats classiques de nuages de points et de grilles 2D / 3D, ainsi que des actions. Se reporter au projet [[plugin-base:Fr_wiki|Plugin Base]] pour plus de détails.

Retour au sommaire Page suivante (Types d’items)