• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 5
  • 2
  • Tagged with
  • 8
  • 8
  • 4
  • 3
  • 3
  • 3
  • 3
  • 3
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
1

Une approche unifiante pour programmer sûrement avec de la syntaxe du premier ordre contenant des lieurs

Pouillard, Nicolas 13 January 2012 (has links) (PDF)
Cette thèse décrit une nouvelle approche pour la méta-programmation sûre. Un méta-programme est un programme qui manipule des programmes ou assimilés. Les compilateurs et systèmes de preuves sont de bons exemples de méta-programmes qui bénéficieraient de cette approche. Dans ce but, ce travail se concentre sur la représentation des noms et des lieurs dans les structures de données. Les erreurs de programmation étant courantes avec les techniques usuelles, nous proposons une interface abstraite pour les noms et les lieurs qui élimine ces erreurs. Cette interface est implémentée sous forme d'une bibliothèque en Agda. Elle permet de définir et manipuler des représentations de termes dans le style nominal. Grâce à l'abstraction, d'autres styles sont aussi disponibles : le style de De Bruijn, les combinaisons de ces styles, et d'autres encore. Nous indiçons les noms et les termes par des mondes. Les mondes sont en même temps précis et abstraits. Via les relations logiques et la paramétricité, nous pouvons démontrer dans quel sens notre bibliothèque est sûre, et obtenir des "théorèmes gratuits" à propos des fonctions monde-polymorphiques. Ainsi une fonction monde-polymorphique de transformation de termes doit commuter avec n'importe quel renommage des variables libres. La preuve est entièrement conduite en Agda. Notre technique se montre utile sur plusieurs exemples, dont la normalisation par évaluation qui est connue pour être un défi. Nous montrons que notre approche indicée par des mondes permet d'exprimer un large panel de type de données grâce a des langages de définition embarqués.
2

Adding hygiene to gambit scheme

Doucet, Antoine 07 1900 (has links)
Le langage de programmation Scheme est reconnu pour son puissant système de macro-transformations. La représentation du code source d'un programme, sous forme de données manipulables par le langage, permet aux programmeurs de modifier directement l'arbre de syntaxe abstraite sous-jacent. Les macro-transformations utilisent une syntaxe similaire aux procédures régulières mais, elles définissent plutôt des procédures à exécuter lors de la phase de compilation. Ces procédures retournent une représentation sous forme d'arbre de syntaxe abstraite qui devra être substitué à l'emplacement de l'appel du transformateur. Les procédures exécutées durant la phase de compilation profitent de la même puissance que celles exécutées durant de la phase d'évaluation. Avec ce genre de système de macro-transformations, un programmeur peut créer des règles de syntaxe spécialisées sans aucun coût additionnel en performance: ces extensions syntactiques permettent l'abstraction de code sans les coûts d'exécution habituels reliés à la création d'une fermeture sur le tas. Cette représentation pour le code source de Scheme provient directement du langage de programmation Lisp. Le code source est représenté sous forme de listes manipulables de symboles, ou bien de listes contenants d'autres listes: une structure appelée S-expression. Cependant, avec cette approche simpliste, des conflits de noms peuvent apparaître. En effet, l'association référée par un certain identifiant est déterminée exclusivement par le contexte lexical de celui-ci. En déplaçant un identifiant dans l'arbre de syntaxe abstraite, il est possible que cet identifiant se retrouve dans un contexte lexical contenant une certaine association pour un identifiant du même nom. Dans de tels cas, l'identifiant déplacé pourrait ne plus référer à l'association attendue, puisque cette seconde association pourrait avoir prévalence sur la première. L'assurance de transparence référentielle est alors perdue. En conséquence, le choix de nom pour les identifiants vient maintenant influencer directement le comportement du programme, générant des erreurs difficiles à comprendre. Les conflits de noms peuvent être corrigés manuellement dans le code en utilisant, par exemple, des noms d'identifiants uniques. La préservation automatique de la transparence référentielle se nomme hygiène, une notion qui a été beaucoup étudiée dans le contexte des langages de la famille Lisp. La dernière version du Scheme revised report, utilisée comme spécification pour le langage, étend ce dernier avec un support pour les macro-transformations hygiéniques. Jusqu'à maintenant, l'implémentation Gambit de Scheme ne fournissait pas de tel système à sa base. Comme contribution, nous avons ré-implémenter le système de macro de Gambit pour supporter les macro-transformations hygiéniques au plus bas niveau de l'implémentation. L'algorithme choisi se base sur l'algorithme set of scopes implémenté dans le langage Racket et créé par Matthew Flatt. Le langage Racket s'est grandement inspiré du langage Scheme mais, diverge sur plusieurs fonctionnalités importantes. L'une de ces différences est le puissant système de macro-transformation sur lequel Racket base la majorité de ses primitives. Dans ce contexte, l'algorithme a donc été testé de façon robuste. Dans cette thèse, nous donnerons un aperçu du langage Scheme et de sa syntaxe. Nous énoncerons le problème d'hygiène et décrirons différentes stratégies utilisées pour le résoudre. Nous justifierons par la suite notre choix d'algorithme et fourniront une définition formelle. Finalement, nous présenterons une analyse de la validité et de la performance du compilateur en comparant la version originale de Gambit avec notre version supportant l'hygiène. / The Scheme programming language is known for its powerful macro system. With Scheme source code represented as actual Scheme data, macro transformations allow the programmer, using that data, to act directly on the underlying abstract syntax tree. Macro transformations use a similar syntax to regular procedures but, they define procedures meant to be executed at compile time. Those procedures return an abstract syntax tree representation to be substituted at the transformer's call location. Procedures executed at compile-time use the same language power as run-time procedures. With the macro system, the programmer can create specialized syntax rules without additional performance costs. This also allows for code abstractions without the expected run-time cost of closure creations. Scheme's representation of source code using values inherits that virtue from the Lisp programming language. Source code is represented as a list of symbols, or lists of other lists: a structure coined S-expressions. However, with this simplistic approach, accidental name clashes can occur. The binding to which an identifier refers to is determined by the lexical context of that identifier. By moving an identifier around in the abstract syntax tree, it can be caught within the lexical context of another binding definition with the same name. This can cause unexpected behavior for programmers as the choice of names can create substantial changes in the program. Accidental name clashes can be manually fixed in the code, using name obfuscation, for instance. However, the programmer becomes responsible for the program's safety. The automatic preservation of referential transparency is called hygiene and was thoroughly studied in the context of lambda calculus and Lisp-like languages. The latest Scheme revised report, used as a specification for the language, extend the language with hygienic macro transformations. Up to this point, the Gambit Scheme implementation wasn't providing a built-in hygienic macro system. As a contribution, we re-implemented Gambit's macro system to support hygienic transformations at its core. The algorithm we chose is based on the set of scopes algorithm, implemented in the Racket language by Matthew Flatt. The Racket language is heavily based on Scheme but, diverges on some core features. One key aspect of the Racket language is its extensive hygienic syntactic macro system, on which most core features are built on: the algorithm was robustly tested in that context. In this thesis, we will give an overview of the Scheme language and its syntax. We will state the hygiene problem and describe different strategies used to enforce hygiene automatically. Our algorithmic choice is then justified and formalized. Finally, we present the original Gambit macro system and explain the changes required. We also provide a validity and performance analysis, comparing the original Gambit implementation to our new system.
3

Optimisation multi-niveau d'une application de traitement d'images sur machines parallèles

Saidani, Tarik 06 November 2012 (has links) (PDF)
Cette thèse vise à définir une méthodologie de mise en œuvre d'applications performantes sur les processeurs embarqués du futur. Ces architectures nécessitent notamment d'exploiter au mieux les différents niveaux de parallélisme (grain fin, gros grain) et de gérer les communications et les accès à la mémoire. Pour étudier cette méthodologie, nous avons utilisé un processeur cible représentatif de ces architectures émergentes, le processeur CELL. Le détecteurde points d'intérêt de Harris est un exemple de traitement régulier nécessitant des unités de calcul intensif. En étudiant plusieurs schémas de mise en oeuvre sur le processeur CELL, nous avons ainsi pu mettre en évidence des méthodes d'optimisation des calculs en adaptant les programmes aux unités spécifiques de traitement SIMD du processeur CELL. L'utilisation efficace de la mémoire nécessite par ailleurs, à la fois une bonne exploitation des transferts et un arrangement optimal des données en mémoire. Nous avons développé un outil d'abstraction permettant de simplifier et d'automatiser les transferts et la synchronisation, CELL MPI. Cette expertise nous a permis de développer une méthodologie permettant de simplifier la mise en oeuvre parallèle optimisée de ces algorithmes. Nous avons ainsi conçu un outil de programmation parallèle à base de squelettes algorithmiques : SKELL BE. Ce modèle de programmation propose une solution originale de génération d'applications à base de métaprogrammation. Il permet, de manière automatisée, d'obtenir de très bonnes performances et de permettre une utilisation efficace de l'architecture, comme le montre la comparaison pour un ensemble de programmes test avec plusieurs autres outils dédiés à ce processeur.
4

Un cluster pour la vision temps réel : architecture, outils et application

Falcou, Joël 01 December 2006 (has links) (PDF)
Cette thèse propose une solution logicielle au problème du développement et de l'exécution en temps réel d'applications de vision sur des machines de type cluster. Pour cela, avons développé deux bibliothèques utilisant des techniques d'évaluation partielle et de méta-programmation template qui permettent de programmer ces machines en s'attachant à rendre accessible les modèles de programmation parallèles à des développeurs issus de la communauté Vision pour qui ces problématiques ne sont pas triviales, tout en conservant des performances élevées. Ces deux bibliothèques : EVE, qui prend en charge la gestion du parallélisme SIMD, et QUAF, qui propose un modèle de programmation à base de squelettes algorithmiques pour la programmation sur machines MIMD, ont été validées par deux applications de vision de complexité réaliste, une reconstruction 3D et un suivi de piéton par filtrage particulaire, développées et exécutées sur un cluster dédié à la vision artificielle
5

Optimisation multi-niveau d’une application de traitement d’images sur machines parallèles / Multi-level optimisation of an image processing application on parallel machines

Saidani, Tarik 06 November 2012 (has links)
Cette thèse vise à définir une méthodologie de mise en œuvre d’applications performantes sur les processeurs embarqués du futur. Ces architectures nécessitent notamment d’exploiter au mieux les différents niveaux de parallélisme (grain fin, gros grain) et de gérer les communications et les accès à la mémoire. Pour étudier cette méthodologie, nous avons utilisé un processeur cible représentatif de ces architectures émergentes, le processeur CELL. Le détecteurde points d’intérêt de Harris est un exemple de traitement régulier nécessitant des unités de calcul intensif. En étudiant plusieurs schémas de mise en oeuvre sur le processeur CELL, nous avons ainsi pu mettre en évidence des méthodes d’optimisation des calculs en adaptant les programmes aux unités spécifiques de traitement SIMD du processeur CELL. L’utilisation efficace de la mémoire nécessite par ailleurs, à la fois une bonne exploitation des transferts et un arrangement optimal des données en mémoire. Nous avons développé un outil d’abstraction permettant de simplifier et d’automatiser les transferts et la synchronisation, CELL MPI. Cette expertise nous a permis de développer une méthodologie permettant de simplifier la mise en oeuvre parallèle optimisée de ces algorithmes. Nous avons ainsi conçu un outil de programmation parallèle à base de squelettes algorithmiques : SKELL BE. Ce modèle de programmation propose une solution originale de génération d’applications à base de métaprogrammation. Il permet, de manière automatisée, d’obtenir de très bonnes performances et de permettre une utilisation efficace de l’architecture, comme le montre la comparaison pour un ensemble de programmes test avec plusieurs autres outils dédiés à ce processeur. / This thesis aims to define a design methodology for high performance applications on future embedded processors. These architectures require an efficient usage of their different level of parallelism (fine-grain, coarse-grain), and a good handling of the inter-processor communications and memory accesses. In order to study this methodology, we have used a target processor which represents this type of emerging architectures, the Cell BE processor.We have also chosen a low level image processing application, the Harris points of interest detector, which is representative of a typical low level image processing application that is highly parallel. We have studied several parallelisation schemes of this application and we could establish different optimisation techniques by adapting the software to the specific SIMD units of the Cell processor. We have also developped a library named CELL MPI that allows efficient communication and synchronisation over the processing elements, using a simplified and implicit programming interface. This work allowed us to develop a methodology that simplifies the design of a parallel algorithm on the Cell processor.We have designed a parallel programming tool named SKELL BE which is based on algorithmic skeletons. This programming model providesan original solution of a meta-programming based code generator. Using SKELL BE, we can obtain very high performances applications that uses the Cell architecture efficiently when compared to other tools that exist on the market.
6

SLAM temporel à contraintes multiples / Multiple constraints and temporal SLAM

Ramadasan, Datta 15 December 2015 (has links)
Ce mémoire décrit mes travaux de thèse de doctorat menés au sein de l’équipe ComSee (Computers that See) rattachée à l’axe ISPR (Image, Systèmes de Perception et Robotique) de l’Institut Pascal. Celle-ci a été financée par la Région Auvergne et le Fonds Européen de Développement Régional. Les travaux présentés s’inscrivent dans le cadre d’applications de localisation pour la robotique mobile et la Réalité Augmentée. Le framework réalisé au cours de cette thèse est une approche générique pour l’implémentation d’applications de SLAM : Simultaneous Localization And Mapping (algorithme de localisation par rapport à un modèle simultanément reconstruit). L’approche intègre une multitude de contraintes dans les processus de localisation et de reconstruction. Ces contraintes proviennent de données capteurs mais également d’a priori liés au contexte applicatif. Chaque contrainte est utilisée au sein d’un même algorithme d’optimisation afin d’améliorer l’estimation du mouvement ainsi que la précision du modèle reconstruit. Trois problèmes ont été abordés au cours de ce travail. Le premier concerne l’utilisation de contraintes sur le modèle reconstruit pour l’estimation précise d’objets 3D partiellement connus et présents dans l’environnement. La seconde problématique traite de la fusion de données multi-capteurs, donc hétérogènes et asynchrones, en utilisant un unique algorithme d’optimisation. La dernière problématique concerne la génération automatique et efficace d’algorithmes d’optimisation à contraintes multiples. L’objectif est de proposer une solution temps réel 1 aux problèmes de SLAM à contraintes multiples. Une approche générique est utilisée pour concevoir le framework afin de gérer une multitude de configurations liées aux différentes contraintes des problèmes de SLAM. Un intérêt tout particulier a été porté à la faible consommation de ressources (mémoire et CPU) tout en conservant une grande portabilité. De plus, la méta-programmation est utilisée pour générer automatiquement et spécifiquement les parties les plus complexes du code en fonction du problème à résoudre. La bibliothèque d’optimisation LMA qui a été développée au cours de cette thèse est mise à disposition de la communauté en open-source. Des expérimentations sont présentées à la fois sur des données de synthèse et des données réelles. Un comparatif exhaustif met en évidence les performances de la bibliothèque LMA face aux alternatives les plus utilisées de l’état de l’art. De plus, le framework de SLAM est utilisé sur des problèmes impliquant une difficulté et une quantité de contraintes croissantes. Les applications de robotique mobile et de Réalité Augmentée mettent en évidence des performances temps réel et un niveau de précision qui croît avec le nombre de contraintes utilisées. / This report describes my thesis work conducted within the ComSee (Computers That See) team related to the ISPR axis (ImageS, Perception Systems and Robotics) of Institut Pascal. It was financed by the Auvergne Région and the European Fund of Regional Development. The thesis was motivated by localization issues related to Augmented Reality and autonomous navigation. The framework developed during this thesis is a generic approach to implement SLAM algorithms : Simultaneous Localization And Mapping. The proposed approach use multiple constraints in the localization and mapping processes. Those constraints come from sensors data and also from knowledge given by the application context. Each constraint is used into one optimization algorithm in order to improve the estimation of the motion and the accuracy of the map. Three problems have been tackled. The first deals with constraints on the map to accurately estimate the pose of 3D objects partially known in the environment. The second problem is about merging multiple heterogeneous and asynchronous data coming from different sensors using an optimization algorithm. The last problem is to write an efficient and real-time implementation of the SLAM problem using multiple constraints. A generic approach is used to design the framework and to generate different configurations, according to the constraints, of each SLAM problem. A particular interest has been put in the low computational requirement (in term of memory and CPU) while offering a high portability. Moreover, meta-programming techniques have been used to automatically and specifically generate the more complex parts of the code according to the given problem. The optimization library LMA, developed during this thesis, is made available of the community in open-source. Several experiments were done on synthesis and real data. An exhaustive benchmark shows the performances of the LMA library compared to the most used alternatives of the state of the art. Moreover, the SLAM framework is used on different problems with an increasing difficulty and amount of constraints. Augmented Reality and autonomous navigation applications show the good performances and accuracies in multiple constraints context.
7

Outils d'élaboration de stratégie de recyclage basée sur la gestion des connaissances : application au domaine du génie des procédés / Tools of elaboration of strategy of waste recycling based on knowledge management : application on process engineering

Chazara, Philippe 06 November 2015 (has links)
Dans ce travail, une étude est réalisée sur le développement d'une méthodologie permettant la génération et l'évaluation de nouvelles trajectoires de valorisation pour des déchets. Ainsi, pour répondre à cette problématique, trois sous problèmes ont été identifiés. Le premier concerne un cadre de modélisation permettant la représentation structurée et homogène de chaque trajectoire, ainsi que les indicateurs choisis pour l'évaluation de ces dernières, permettant une sélection ultérieure. Le deuxième se concentre sur le développement d'une méthodologie puis la réalisation d'un outil permettant la génération de nouvelles trajectoires en s'appuyant sur d'autres connues. Enfin, le dernier sous problème concerne le développement d'un second outil développé pour modéliser et estimer les trajectoires générées. La partie de création d'un cadre de modélisation cherche à concevoir des structures globales qui permettent la catégorisation des opérations unitaires sous plusieurs niveaux. Trois niveaux de décomposition ont été identifiés. La Configuration générique de plus haut niveau, qui décrit la trajectoire sous de grandes étapes de modélisation. Le second niveau, Traitement générique propose des ensembles de structures génériques de traitement qui apparaissent régulièrement dans les trajectoires de valorisation. Enfin, le plus bas niveau se focalise sur la modélisation des opérations unitaires. Un second cadre a été créé, plus conceptuel et comportant deux éléments : les blocs et les systèmes. Ces cadres sont ensuite accompagnés par un ensemble d'indicateurs choisis à cet effet. Dans une volonté d'approche de développement durable, un indicateur est sélectionné pour chacune de des composantes : économique, environnemental et social. Dans notre étude, l'impact social se limite à l'estimation du nombre d'emplois créés. Afin de calculer cet indicateur, une nouvelle approche se basant sur les résultats économiques d'une entreprise a été proposée et validée.L'outil de génération de nouvelles trajectoires s'appuie sur l'utilisation de la connaissance en utilisant un système de raisonnement à partir de cas (RàPC). Pour être adapté à notre problématique, la mise en œuvre de ce dernier a impliqué la levée de plusieurs points délicats. Tout d'abord, la structuration des données et plus largement la génération de cas sources sont réalisées par un système basé sur des réseaux sémantiques et l'utilisation de mécanismes d'inférences. Le développement d'une nouvelle méthode de mesure de similarité est réalisé en introduisant la notion de définition commune qui permet de lier les états, qui sont des descriptions de situations, à des états représentant des définitions générales d'un ensemble d'états. Ces définitions communes permettent la création d'ensembles d'états sous différents niveaux d'abstraction et de conceptualisation. Enfin, un processus de décompositions des trajectoires est réalisé afin de résoudre un problème grâce à la résolution de ses sous-problèmes associés. Cette décomposition facilite l'adaptation des trajectoires et l'estimation des résultats des transformations. Basé sur cette méthode, un outil a été développé en programmation logique, sous Prolog. La modélisation et l'évaluation des voies de valorisation se fait grâce à la création d'outil spécifique. Cet outil utilise la méta-programmation permettant la réalisation dynamique de modèle de structure. Le comportement de ces structures est régi par la définition de contraintes sur les différents flux circulants dans l'ensemble de la trajectoire. Lors de la modélisation de la trajectoire, ces contraintes sont converties par un parser permettant la réalisation d'un modèle de programmation par contraintes cohérent. Ce dernier peut ensuite être résolu grâce à des solveurs via une interface développée et intégrée au système. De même, plusieurs greffons ont été réalisés pour analyser et évaluer les trajectoires à l'aide des critères retenus. / In this work, a study is realised about the creation of a new methodology allowing the generation and the assessment of new waste recovery processes. Three elements are proposed for that. The first one is the creation of a modelling framework permitting a structured and homogeneous representation of each recovery process and the criteria used to asses them. The second one is a system and a tool generating new recovery processes from others known. Finally, the last element is another tool to model, to estimate and to asses the generated processes. The creation of a modelling framework tries to create some categories of elements allowing the structuring of unit operations under different levels of description. Three levels have been identified. In the higher level, the Generic operation which describes global structure of operations. The second one is Generic treatment which is an intermediate level between the two others. It proposes here too categories of operations but more detailed than the higher level. The last one is the Unit operation. A second framework has been created. It is more conceptual and it has two components : blocs and systems. These frameworks are used with a set of selected indicators. In a desire of integrating our work in a sustainable development approach, an indicator has been chosen for each of its components: economical, environmental and social. In our study, the social impact is limited to the number of created jobs. To estimate this indicator, we proposed a new method based on economical values of a company. The tool for the generation of new waste recovery processes used the methodology of case-based reasoning CBR which is based on the knowledge management. Some difficult points are treated here to adapt the CBR to our problem. The structuring of knowledge and generally the source case generation is realised by a system based on connections between data and the use of inference mechanisms. The development of a new method for the similarity measure is designed with the introduction of common definition concept which allows linking states, simply put description of objects, to other states under different levels of conceptualizations and abstractions. This point permits creating many levels of description. Finally, recovery process is decomposed from a main problem to some sub-problems. This decomposition is a part of the adaptation mechanism of the selected source case. The realisation of this system is under logic programming with Prolog. This last one permits the use of rules allowing inferences and the backtracking system allowing the exploration to the different possible solution. The modelling and assessment of recovery processes are done by a tool programmed in Python. It uses the meta-programming to dynamically create model of operations or systems. Constraint rules define the behaviour of these models allowing controlling the flux circulating in each one. In the evaluation step, a parser is used to convert theses rules into a homogeneous system of constraint programming. This system can be solved by the use of solvers with an interface developed for that and added to the tool. Therefore, it is possible for the user to add solvers but also to add plug-ins. This plug-ins can make the assessment of the activity allowing to have different kinds of evaluation for the same criteria. Three plug-ins are developed, one for each selected criterion. These two methods are tested to permit the evaluation of the proposed model and to check the behaviour of them and their limits . For these tests, a case-base on waste has been created Finally, for the modelling and assessment tool, a study case about the recovery process of used tyres in new raw material is done.
8

Algorithmes multidimensionnels et multispectraux en Morphologie Mathématique : approche par méta-programmation.

Enficiaud, Raffi 26 February 2007 (has links) (PDF)
Au cours de ces travaux de thèse, nous nous sommes intéressés d'un point de vue global aux algorithmes en Traitement d'Image et plus particulièrement en Morphologie Mathématique, selon certaines techniques nouvelles de programmation. L'évolution matérielle des moyens informatiques suit les prédictions de la loi de Moore. Cependant, une évolution parallèle, d'ordre logicielle, met à la disposition de la recherche scientifique des moyens de programmation nouveaux, dont la méta-programmation. Les avantages sont considérables, tant en terme scientifique par les possibilités offertes, qu'en termes simplement pratiques (portabilité, capitalisation des développements, réduction des erreurs, etc.). La présentation des travaux est structurée autour de la conception d'une bibliothèque de traitement - morphologique - d'image. Les différents aspects sont illustrés en partie par des exemples pris dans les domaines de la vidéosurveillance et de la sécurité automobile, et issus de projets industriels. Nous présentons dans un premier temps le cadre informatique utilisé pour l'écriture algorithmique. Afin de rendre efficace l'utilisation des nouvelles techniques de programmation, une étude préalable des notions mathématiques en Morphologie Mathématique - images, graphes, relations d'ordre, voisinages, éléments structurant, ... -, ainsi que des outils informatiques associés, est réalisée. La séparation correcte des rôles permet en outre l'écriture des structures indépendamment de la nature des données qu'ils contiennent, l'automatisation de nombreuses opérations par le compilateur, et une écriture algorithmique fidèle à une formulation mathématique. La conjonction de ces développements ouvre un grand champ d'exploration comme celui émanant des images nD et hyperspectrales, dont nous nous proposons d'explorer certains aspects. Le support des images nD associé à la programmation générique a sollicité le développement d'un algorithme de transformée exacte en distance. Les hypothèses sur la fonction distance sont faibles (homogénéité dans l'espace et convexité de la boule unité associée) afin d'utiliser les mêmes développements pour une large classe de fonction. Suite à une étude théorique, nous proposons un algorithme de calcul basé sur des propagations. Le même algorithme est utilisé pour l'ensemble des illustrations (fonctions de distance - L2, L5, orienté, non isométrique, ... - sur des images 4D). Les transformées morphologiques en distance sont d'approche totalement différente et d'usage courant en morphologie mathématique. Elles connaissent actuellement de nouveaux développements grâce à l'extension numérique proposée par Beucher: les « quasi-distances ». Nous proposons un algorithme de calcul rapide de ces distances. La couleur et plus généralement les images multispectrales (données vectorielles) sont d'une manipulation délicate en morphologie mathématique. Nous présentons trois approches complémentaires: l'utilisation de métriques couleurs, des statistiques locales et enfin les relations d'ordre lexicographique. Notre cadre informatique et algorithmique est parfaitement adapté à ces trois types de traitement. Le cadre métrique permet d'étendre la définition du gradient morphologique aux espaces couleurs, et plusieurs métriques dans Lab et HLS sont envisagées. Cette formulation est cependant coûteuse en termes de calcul et devient impraticable lorsque le voisinage utilisé pour le gradient s'agrandit. L'usage de statistiques locales permet de contourner ce problème. Nous nous sommes particulièrement intéressés à des statistiques circulaires dans HLS, ce qui nous a amené à la définition d'un gradient chromatique dans cet espace. Enfin, l'utilisation de relation d'ordre lexicographique étend le cadre algébrique classique à la couleur, sans modification fondamentale des algorithmes. Dans cette optique, nous verrons quels sont les moyens à notre disposition pour étendre la plupart des opérateurs (extrema, reconstruction, granulométries, ...) en maintenant un coût de développement bas. Deux études illustrent ces développements : la caractérisation chromatique de la peau, robuste aux changements d'illumination (contexte automobile), et la détection des zones de mouvement (vidéosurveillance). Le dernier sujet d'intérêt concerne la segmentation, et plus particulièrement l'algorithme de ligne de partage des eaux. L'implémentation de référence à l'aide de files d'attente hiérarchiques conduit à certains biais que nous corrigeons. L'algorithme proposé étant générique, nous l'appliquons sur des images de dimension 4, sur des reliefs en précision flottante ou couleur. Nous modifions ensuite la construction des bassins versants de manière à contourner certaines difficultés rencontrées lors de la segmentation avec un nombre faible de marqueurs. La première modification injecte dans le processus de propagation une information extérieure exprimée sous forme de fonction de coût. Cette fonction concerne aussi bien le contour que l'intérieur de la région en cours de construction. La seconde modification utilise une contrainte locale et rend le fluide visqueux. Des analogies sont établies entre ces nouvelles propagations et les équations d'évolution de courbe à l'aide de dérivées partielles.

Page generated in 0.5122 seconds