Thierry Géraud

Segmentation of curvilinear objects using a watershed-based curve adjacency graph

By Thierry Géraud

2003-03-10

In Proceedings of the 1st iberian conference on pattern recognition and image analysis (IbPRIA)

Abstract

This paper presents a general framework to segment curvilinear objects in 2D images. A pre-processing step relies on mathematical morphology to obtain a connected line which encloses curvilinear objects. Then, a graph is constructed from this line and a Markovian Random Field is defined to perform objects segmentation. Applications of our framework are numerous: they go from simple surve segmentation to complex road network extraction in satellite images.

Continue reading

Fast road network extraction in satellite images using mathematical morphology and MRF

By Thierry Géraud

2003-01-31

In Proceedings of the EURASIP workshop on nonlinear signal and image processing (NSIP)

Abstract

This paper presents a fast method to extract road network in satellite images. A pre-processing stage relies on mathematical morphology to obtain a connected line which encloses road network. Then, a graph is constructed from this line and a Markovian Random Field is defined to perform road extraction.

Continue reading

Generic implementation of morphological image operators

By Jérôme Darbon, Thierry Géraud, Alexandre Duret-Lutz

2002-04-01

In Mathematical morphology, proceedings of the 6th international symposium (ISMM)

Abstract

Several libraries dedicated to mathematical morphology exist. But they lack genericity, that is to say, the ability for operators to accept input of different natures —2D binary images, graphs enclosing floating values, etc. We describe solutions which are integrated in Olena, a library providing morphological operators. We demonstrate with some examples that translating mathematical formulas and algorithms into source code is made easy and safe with Olena. Moreover, experimental results show that no extra costs at run-time are induced.

Continue reading

Color image segmentation based on automatic morphological clustering

By Thierry Géraud, Pierre-Yves Strub, Jérôme Darbon

2001-10-01

In Proceedings of the IEEE international conference on image processing (ICIP)

Abstract

We present an original method to segment color images using a classification in the 3-D color space. In the case of ordinary images, clusters that appear in 3-D histograms usually do not fit a well-known statistical model. For that reason, we propose a classifier that relies on mathematical morphology, and more precisely on the watershed algorithm. We show on various images that the expected color clusters are correctly identified by our method. Last, to segment color images into coherent regions, we perform a Markovian labeling that takes advantage of the morphological classification results.

Continue reading

Segmentation d’images en couleur par classification morphologique non supervisée

By Thierry Géraud, Pierre-Yves Strub, Jérôme Darbon

2001-05-01

In Proceedings of the international conference on image and signal processing (ICISP)

Abstract

In this paper, we present an original method to segment color images using a classification of the image histogram in the 3D color space. As color modes in natural images usually do not fit a well-known statistical model, we propose a classifier that rely on mathematical morphology and, more particularly, on the watershed algorithm. We show on various images that the expected color modes are correctly identified and, in order to obtain coherent region, we extend the method to make the segmentation contextual.

Continue reading

Applying generic programming to image processing

By Thierry Géraud, Yoann Fabre, Alexandre Duret-Lutz

2001-02-01

In Proceedings of the IASTED international conference on applied informatics (AI)—symposium on advances in computer applications

Abstract

This paper presents the evolution of algorithms implementation in image processing libraries and discusses the limits of these implementations in terms of reusability. In particular, we show that in C++, an algorithm can have a general implementation; said differently, an implementation can be generic, i.e., independent of both the input aggregate type and the type of the data contained in the input aggregate. A total reusability of algorithms can therefore be obtained; moreover, a generic implementation is more natural and does not introduce a meaningful additional cost in execution time as compared to an implementation dedicated to a particular input type.

Continue reading

Generic design patterns in C++

By Alexandre Duret-Lutz, Thierry Géraud, Akim Demaille

2001-01-01

In Proceedings of the 6th USENIX conference on object-oriented technologies and systems (COOTS)

Abstract

Generic programming is a paradigm whose wide adoption by the C++ community is quite recent. In this approach most classes and procedures are parameterized, leading to the construction of general and efficient software components. In this paper, we show how some design patterns from Gamma et al. can be adapted to this paradigm. Although these patterns rely highly on dynamic binding. We show that, by making intensive use of parametric polymorphism in the context of generic programming, the method calls in these patterns can be resolved at compile-time. The speed-up achieved using these patterns is significant.

Continue reading

Obtaining genericity for image processing and pattern recognition algorithms

By Thierry Géraud, Yoann Fabre, Alexandre Duret-Lutz, Dimitri Papadopoulos-Orfanos, Jean-François Mangin

2000-09-01

In Proceedings of the 15th international conference on pattern recognition (ICPR)

Abstract

Algorithm libraries dedicated to image processing and pattern recognition are not reusable; to run an algorithm on particular data, one usually has either to rewrite the algorithm or to manually “copy, paste, and modify”. This is due to the lack of genericity of the programming paradigm used to implement the libraries. In this paper, we present a recent paradigm that allows algorithms to be written once and for all and to accept input of various types. Moreover, this total reusability can be obtained with a very comprehensive writing and without significant cost at execution, compared to a dedicated algorithm. This new paradigm is called “generic programming” and is fully supported by the C++ language. We show how this paradigm can be applied to image processing and pattern recognition routines. The perspective of our work is the creation of a generic library.

Continue reading

A framework to dynamically manage distributed virtual environments

By Yoann Fabre, Guillaume Pitel, Laurent Soubrevilla, Emmanuel Marchand, Thierry Géraud, Akim Demaille

2000-07-01

In Proceedings of the 2nd international conference on virtual worlds (VW)

Abstract

In this paper, we present the project urbi, a framework to dynamically manage distributed virtual environments (DVEs). This framework relies on a dedicated scripting language, goal, which is typed, object-oriented and dynamically bound. goal is interpreted by the application hosted by each machine and is designed to handle efficiently both network communications and interactivity. Finally, we have made an unusual design decision: our project is based on a functional programming language, ocaml.

Continue reading

Generic programming redesign of patterns

By Thierry Géraud, Alexandre Duret-Lutz

2000-07-01

In Proceedings of the 5th european conference on pattern languages of programs (EuroPLoP)

Abstract

This pattern faces the problem of improving the performances of design patterns when they are involved in intensive algorithms. Generic programming is a paradigm in which most classes and procedures are parameterized, thus leading to the construction of general and efficient software components. We demonstrate that some design patterns from Gamma et al. can be translated into this paradigm while handling operation polymorphism by parametric polymorphism. We thus preserve their modularity and reusability properties but we avoid the performance penalty due to their dynamic behavior, which is a critical issue in numerical computing.

Continue reading