Olena

Fiche dév Ens Sup - Recherche
  • Création ou MAJ importante : 13/07/10
  • Correction mineure : 03/03/11
Mots-clés

Olena : traitement d'images

Ce logiciel a été développé (ou est en cours de développement) dans la communauté de l'Enseignement Supérieur et de la Recherche. Son état peut être variable (cf champs ci-dessous) donc sans garantie de bon fonctionnement.
  • Site web
  • Système : UNIX-like
  • Version actuelle : 1.0 - 14/07/2009
  • Licence(s) : GPL - Les fichiers d'en-tête (headers) du projet contiennent la clause additionnelle suivante :
    As a special exception, you may use this file as part of a free software project without restriction. Specifically, if other files instantiate templates or use macros or inline functions from this file, or you compile this file and link it with other files to produce an executable, this file does not by itself cause the resulting executable to be covered by the GNU General Public License. This exception does not however invalidate any other reasons why the executable file might be covered by the GNU General Public License.
  • Etat : diffusé, stable, en développement
  • Support : maintenu, développement en cours
  • Concepteur(s) : Contributeurs actifs : Thierry Géraud, Roland Levillain, Guillaume Lazzara. Voir aussi la liste complète des contributeurs.
  • Contact concepteur(s) : olena@lrde.epita.fr
  • Laboratoire(s), service(s)... : LIGM, LRDE

 

Fonctionnalités générales du logiciel

Olena est une plate-forme logicielle libre dédiée au traitement d'images générique et performant. Son composant principal est une bibliothèque C++ générique, Milena, fournissant de nombreuses structures de données pour le traitement d'images ainsi que des algorithmes, en particulier dans le domaine de la morphologie mathématique.

Images et structures

Milena peut être utilisée sur :

  • des images s'appuyant sur des grilles régulières (1D, 2D, 3D, ...) ;
  • des images s'appuyant sur des graphes (non orientés) ;
  • des images s'appuyant sur des complexes (http://fr.wikipedia.org/wiki/Complexe_simplicial) ;
  • tout sous-ensemble des types d'images précédents ;
  • tout type d'image ci-dessus modifié par une transformation géométrique/topologique.

Des concepts comme l'adjacence et (resp.) les éléments structurants de la morphologie mathématique sont représentés par des objets voisinages et fenêtres (resp.).  Milena fournit des voisinages et des fenêtres classiques (par ex., 4- et 8- connexité sur grille 2D régulière, sommets adjacents dans un graphe, etc.), mais les utilisateurs peuvent définir leurs propres objets, et les utiliser de façon transparente avec des algorithmes nouveaux ou déjà existants.

Valeurs

Milena prend en compte de nombreux types de valeurs et peut donc être employée avec pratiquement tout type d'entrées et sorties utilisées en pratique, ainsi que des types d'images innovants et originaux.

Les types de valeurs actuellement fournis sont :

  • les valeurs booléennes (binaires) ;
  • les entiers sur n bits (avec n fixé) ;
  • les nombres à virgule flottante sur n bits (avec n fixé) ;
  • les niveau de gris sur n bits (avec n fixé) ;
  • les valeurs couleurs dans les systèmes RGB, HSI et HSL ;
  • des types étiquettes (sans arithmétique) ;
  • des n-uplets et des vecteurs de taille fixe contenant des valeurs parmi les types énumérés ci-avant.

Ces types de valeurs peuvent être utilisés sans contrainte avec n'importe quel type d'images et n'importe quel algorithme, sous réserve que cette combinaison soit valide.  Un utilisateur peut fournir des définitions absentes afin de prendre en compte des cas non prévus.  Par exemple, il est possible de définir le supremum d'un ensemble de valeurs RGB afin de calculer la dilatation morphologique d'une image couleur RGB.

Swilena & Python

Olena fournit un ensemble de ponts vers le langage Python via le module Swilena.  Cette fonctionnalité donne accès à un sous-ensemble des fonctionnalités de Milena depuis un script Python ou directement depuis l'interprète Python (via le Swilena Python Shell).  Ce noyau est amené à grossir dans les prochaine versions du projet.

Contexte d’utilisation du logiciel

Le projet Olena a plusieurs vocations :

  • servir de cadre aux recherches en développement logiciel pour le traitement d'images, et les applications scientifiques en général ;
  • offrir une plate-forme de recherche et d'expérimentations en traitement d'images et en algorithmique ;
  • permettre de réaliser des prototypes ou des applications de traitement d'images, et/ou servir de socle à de tels projets. Par exemple, Olena est utilisée au sein du projet Scribo pour effectuer des tâches de dématérialisation de documents numérisés.
Publications liées au logiciel

Une liste de publications relatives au projet Olena est disponible à l'adresse suivante :

Commentaires

Fiche à faire ?

N'est-ce pas un logiciel qui pourrait avoir une fiche de logiciel validé s'il est utilisé en production sur plus de 3 sites ?