Développé par | ADCIS |
---|---|
Première version | |
Dernière version | 4.6.1 () |
Écrit en | C#, C++ |
Système d'exploitation | Microsoft Windows |
Environnement | Microsoft Windows |
Langues | anglais, français |
Type | logiciel de traitement et analyse d'image |
Licence | propriété d'ADCIS |
Documentation | www.adcis.net/en/Download/Help-Files.html |
Site web | www.adcis.net/fr/accueil/ |
Aphelion Imaging Software Suite est une suite logicielle qui comprend trois produits de base pour l'analyse d'image et le traitement d'images (Aphelion Lab, Aphelion Dev, et Aphelion SDK) et un ensemble d'extensions.
Aphelion est à la fois un logiciel de prototypage et un ensemble de bibliothèques logicielles de visualisation qui permet le développement d'applications en traitement et analyse d'images.
Aphelion a été conçu par les sociétés « ADCIS S.A. » (France) et « Amerinex Applied Imaging, Inc. »[1] (États-Unis) en 1995[2]. Aphelion est toujours en développement et de nouvelles extensions et versions du logiciel sont régulièrement mises à disposition sur les sites web des deux sociétés.
Les fonctions ou opérateurs de traitement et d'analyse d'images proposées dans Aphelion sont issues du logiciel KBVision de la société « Amerinex Artificial Intelligence, Inc. », devenue « Amerinex Applied Imaging, Inc. », en 1999, de la bibliothèque XLim[3] développée au Centre de morphologie mathématique de l'école Mines ParisTech (anciennement « École des Mines de Paris ») et de développements internes effectués par les deux sociétés. Toutes les fonctions proposées dans le logiciel ont été réécrites dans un premier temps pour l'environnement Windows 95 (32 bits) en tirant parti de la programmation orientée objet[4],[5]. En 1996, Aphelion fut l'un des tout premiers logiciels commerciaux de traitement et d'analyse d'image avec interface graphique et proposant une boîte à outils, à être commercialisé pour Windows[6],[7].
Le nom « Aphelion » a été choisi pour rappeler que ce n'est pas un logiciel pour Unix, le système d'exploitation utilisé pour les applications scientifiques et techniques en 1995 évoluant sur stations de travail. Une des sociétés les plus importantes dans le monde Unix en 1995 est alors Sun Microsystems avec son système d'exploitation Solaris et les stations SPARCstation au moment de la naissance des processeurs d'architecture CISC 64 bits. Aphelion est le terme anglais pour désigner l'aphélie qui est le point de la trajectoire d'un objet céleste le plus éloigné du soleil (sun (en)).
La version 1.0 d'Aphelion a été finalisée en . Plusieurs versions ont été mises au point avant la première présentation au public en décembre 1996 dans le cadre du salon Photonics East à Boston aux États-Unis, puis en au salon Solutions Vision à Paris, France. À ce même salon, Stemmer Imaging a présenté sa boîte à outils de programmation en analyse d'image CVB[8]. En 1998, ADCIS a étoffé sa liste d'utilisateurs et distribue une version 2.3 compatible avec Windows 98[9]. La version 3.0 du logiciel, commercialisée en 2000, est une version totalement réécrite, basée sur la technologie ActiveX[10]. Aphelion est alors distribué en version « Developer », pour le prototypage rapide d'applications grâce à son interface graphique et à son enregistreur de scripts d'exécution, et une version « Core », ensemble de bibliothèques sous forme de composants ActiveX pour les développeurs, les intégrateurs et les fabricants d'équipement d'origine (FEO)[11].
À partir de 2001, la société ADCIS prend en charge l'intégralité du développement d'Aphelion, les développeurs de la société Amerinex Applied Imaging, Inc. (AAI) aux États-Unis se concentrant sur le développement d'applications dans le domaine de la sécurité et de l'utilisation des ondes millimétriques pour détecter des armes non visibles aux rayons X, plus particulièrement dans les aéroports. Cette branche d’Amerinex Applied Imaging, Inc. devient « Millivision ». La technologie de Millivision équipe maintenant certains portiques dans les aéroports américains[12].
À partir de 2004, ADCIS spécifie la future version 4 d’Aphelion. L’ensemble des fonctions sont réécrites pour être compatibles 64 bits et en utilisant la technologie .Net[13]. L’interface graphique utilisateur est également totalement revue pour s’adapter à deux types d'utilisation : une utilisation semi-automatique où l'utilisateur est guidé dans les opérations à appliquer et une utilisation « Expert » rappelant celle de la version antérieure. La première version d'Aphelion 4.0 est présentée la même année au sallon IPOT à Birmingham au Royaume-Uni. Un nouveau produit, destiné aux utilisateurs non spécialistes en traitement d'image et plus simple d'utilisation, qui deviendra Aphelion Lab, fait son apparition lors du salon Vision Show à Paris en [14],[15]. Ce logiciel est le premier produit commercialisé de la version 4. Aphelion devient une suite logicielle composée de 3 produits (Aphelion Dev, qui remplace Aphelion Developer, Aphelion Lab, et Aphelion SDK, qui remplace Aphelion Core) et de nombreuses extensions.
Actuellement, ADCIS continue de faire évoluer la suite logicielle Aphelion de vision par ordinateur en ajoutant le support des très grandes images 2D pour la microscopie scanner[16] (lame numérisée en une unique grande image de type JPEG 2000 par exemple), l'ajout de nouvelles extensions très spécifiques, et l'utilisation d'Aphelion ou de programmes utilisant Aphelion SDK sur tablette et téléphone portable[17].
Aphelion (prononcé en français : [afeljɔ̃] Écouter) est une suite logicielle[18] de traitement et d'analyse d'images 2D et 3D développée par l'éditeur ADCIS, société de hautes technologies basée dans le Calvados[19]. Cette suite logicielle permet de développer des applications en imagerie et plus spécifiquement en traitement et analyse d'image ou de résoudre des problématiques de traitement d'image par l'interface graphique puis de réappliquer le traitement sur un lot d'images. Les bibliothèques logicielles de cette suite logicielle sont écrites en langage C++ pour les fonctions de traitement d'images et en C# pour l'interface graphique. Les programmeurs peuvent utiliser les fonctions C++ en C# par le biais de wrappers prévus pour cet usage[20].
Le principe de l'analyse d'image est de traiter une image numérique de manière automatique et d'en extraire des mesures pertinentes pour la qualifier. L'image peut provenir d'un appareil photographique numérique, une caméra vidéo numérique, un microscope électronique, un scanner médical ou toute autre source d'acquisition. La suite de valeurs numériques provenant de la source d'acquisition peut être interprétée en 1D (courbe), 2D (image de pixels en niveau de gris ou couleur définie le plus souvent directement par un triplet ou quadruplet de valeurs dépendant de l'espace de couleur utilisé, ou indirectement par un index renvoyant sur une définition de ce type), ou 3D (image de voxels en niveaux de gris ou en couleur indexée, image multispectrale (en), image hyperspectrale). L'affichage d'une image 3D se fait par rendu volumique direct ou en extrayant des surfaces affichées par synthèse d'image. Une dimension supplémentaire et temporelle est parfois utilisée (vidéo).
La suite logicielle Aphelion comprend trois produits de base et un ensemble d'extensions pour des applications spécifiques :
La version « Dev » du logiciel Aphelion peut être étendue grâce à l'ajout d'extensions optionnelles, en fonction du domaine d'applications[25]. Ce logiciel est disponible en évaluation gratuite 30 jours[26] puis sous licence propriétaire et perpétuelle. Des contrats de maintenance sont disponibles pour bénéficier des mises à jour. Le support technique est assuré par les développeurs du logiciel[27].
Le but est souvent de mesurer ou trier des objets dans les images. Pour ceci, la chaîne de traitement communément utilisée avec Aphelion consiste à :
Aphelion est utilisé et étudié par certains universitaires et étudiants. Le logiciel peut être utilisé dans les domaines où s'applique le traitement d'image et la vision par ordinateur[29],[30]. Ces domaines sont assez variés :
Aphelion SDK a déjà été utilisé pour faire de la surveillance en utilisant plusieurs caméras de vidéosurveillance dans le métro et pour faire du comptage dans des lieux de passage[31]. Il peut également servir à analyser le trafic sur les routes ou à analyser des trajectoires[4]. En robotique et vision par ordinateur, le logiciel peut servir à détecter des objets et aider au guidage de véhicules ou à la reconnaissance automatique de cible[5]. Aphelion peut être utilisé pour faire de la lecture de plaques[32]. ADCIS a déjà utilisé Aphelion SDK pour reconstruire en 3D la projection de formes 2D pour estimer une masse ou un volume[33].
Le logiciel peut permettre de détecter des routes, des bâtiments, ou classer des champs sur des photographies aériennes ou encore détecter des zones d'intérêt sur des images du soleil[4]. Les variations d'intensité des pixels peuvent être amplifiées par le matériel d'acquisition et sont souvent plus définies que ce que permet de percevoir l’œil humain. Le nombre de nuances d'intensité ou de couleurs utilisables dépend de la profondeur des couleurs utilisée. Des images hors de la bande de longueur d'onde visible par l'homme et de type hyperspectrales peuvent être utilisées (ultraviolet, infrarouge). Ces images ou images de spectres permettent de mettre en valeur certains contrastes plus ou moins marqués selon la bande de longueur d'onde filtrée et utilisée.
En contrôle qualité, ADCIS a réalisé un assistant de mesure et contrôle de forme de circuits imprimés en électronique[9]. Le logiciel a déjà été utilisé pour faire de l'analyse et de l'interprétation de documents ainsi que de l'inspection de défaut en imprimerie[4]. Dans le domaine des cosmétiques, le logiciel a été utilisé pour l'étude de l'usure de vernis et le contrôle qualité de crème nettoyante (en)[34]. Le logiciel peut servir à comparer des images dans le temps avant / après pour mesurer objectivement l'efficacité d'une crème antirides ou l'évolution de grains argentiques lors de développements photographiques.
ADCIS a déjà participé à de l'aide à la fabrication dans le domaine de l'optique pour découper des verres de lunettes[35] et usiner des lentilles de contact pour des yeux atypiques (blessés, non standards) en spécifiant des courbures sur le modèle 3D de la lentille à usiner. ADCIS a travaillé en partenariat avec EyePrint Prosthetics sur ce projet[36].
En métallurgie, les composants ActiveX[37] d'Aphelion ont été utilisés pour faire de la métallographie avec des microscopes électroniques (SEM) et des spectromètres à énergie dispersive (EDS) pour développer une application de quantification et d'étude d'inclusions dans les aciers[38],[39]. La dispersion du carbone dans une des étapes de la production de la fonte a également été étudiée par traitement d'image[40]. Pour les processus de traitement superficiel par refroidissement et diffusion d'éléments métalliques (chrome-aluminisation), un lien a été établi entre la forme des éléments métalliques (étudiée par analyse d'image sur des images de microscope à balayage) et les contraintes générées par ces particules (observées par diffractométrie de rayons X)[41]. ADCIS a implémenté des outils basés sur des normes ASTM pour la mesure des joints de grain à l'aide du logiciel[42],[43]. Des travaux ont été réalisés pour Aphelion afin d'ajouter un plugin d'outils d'alignement et reconstruction 3D à partir d'images de nanotomographie (en) obtenues en utilisant un MET[44].
Pour l'étude de polymères composites renforcés avec de la fibre de verre, l'impact sur la structure de la taille des micro fils-utilisés de façon perpendiculaire pour lier chaque fibre (lorsque le matériau en production est à l'état de fibres souples) a été étudié par analyse d'image[45]. La taille de ces fils modifie les propriétés de répartition de la résine (ou matrice) utilisée ensuite pour lier l'ensemble du matériau. L'étude de la distribution des éléments métalliques de matériaux composites et d'alliages comme l'Al-SiC est parfois faite avec des méthodes de granulométrie appliquées à l'analyse d'image[46]. L'étude de la porosité de matériaux de chimie macromoléculaire tels que le xérogel, peut être faite en 3D par analyse d'images de microtomographie aux rayons X[47].
En génie chimique, le logiciel a été utilisé pour étudier des mélanges d'eaux provenant de deux sources différentes dans un réacteur agité (en)[48]. Une corrélation entre l'intensité de la lumière induite par un plan laser (PLIF (en)) observée en niveaux de gris d'une part, et les concentrations passant dans ce plan d'autre part, avait été mise en évidence au préalable et a été utilisée pour quantifier l'évolution des concentrations par analyse d'image.
Dans le domaine du traitement des eaux usées et de l'épuration des eaux, Aphelion a été utilisé avec des images de microtomographie aux rayons X de boues d'épuration[49]. Les images en coupe 2D ont été binarisées pour discriminer la matière humide de l'air et ces images ont pu être réassemblées en 3D pour mesurer l'évolution du volume des fissures lors de processus de séchage. Le séchage est nécessaire au traitement de ces boues pour ensuite procéder à l'incinération, à l'ensevelissement ou à l'épandage. Des différences d'évolution des fissures selon l'origine des boues ont été mises en évidence dans cette étude. La binarisation des coupes a été faite par égalisation d'histogramme puis seuillage par la méthode d'Otsu. La microtomographie par rayons X et Aphelion ont également été utilisés dans le cadre d'études statistiques des propriétés physiques de mousses (nombre de faces moyen des bulles, taille des bulles...)[50].
Aphelion et le traitement d'images sont parfois utilisés pour mesurer des objets segmentés sur des images provenant de caméras positionnées sur des microscopes optiques. Le logiciel pilote aussi les platines motorisées montées sur le microscope pour bouger l'échantillon ou la lame selon les axes X, Y et Z pour la mise au point. Ces mesures peuvent être des mesures de forme (périmètre, surface, volume en 3D, valeur d'élongation quantifiant l'aspect allongé...), ou de texture (homogénéité, couleur moyenne, intensité[51]...) pour faire des mesures et calculs tels que des rapports de surface[52]. Les microscopes qui fonctionnent en réflexion peuvent être également utilisés. Un logiciel programmé avec les composants ActiveX d'Aphelion Developer[37] a été couplé à un microscope en lumière réfléchie pour mesurer les creux créés par des cellules résorbées par un réactif dans de la dentine[53].
En cytologie, ADCIS a réalisé des outils de mesure de composition du sang par mesure des globules rouges sur les images[9] et des outils basés sur des travaux de recherche pour la classification automatique de cellules cancéreuses par réseaux de neurones dans le but d'aider et avertir le médecin pour le diagnostic du cancer[54],[55]. Les images étaient acquises avec une caméra au-dessus d'un microscope optique équipé d'une platine motorisée dont les déplacements étaient automatisés et la segmentation des cellules (cytoplasmes et noyaux) étaient affinée par la méthode de la LPE. Aphelion a également été utilisé pour étudier la vascularisation de tumeurs en basse résolution à l'aide de scanners photo (moins onéreux que les scanners de microscopie) couplés à un passeur de lames[56]. Le logiciel peut être utilisé pour détecter les cellules immunomarquées[4]. L'analyse d'image appliquée à des images de microscope optique en histologie peut permettre de caractériser en 2D et 3D l'angiogenèse[57] afin de mesurer l'inhibition ou la stimulation provoquée par un facteur étudié.
ADCIS a développé un assistant de classification de chromosomes en cytogénétique qui détecte les télomères et apparie les chromosomes automatiquement[9]. La ploïdie et la quantification d'ADN qui peut être mesurée par mesure de densité optique a également fait l'objet de travaux de développement[58]. Aphelion peut être utilisé pour l'analyse de gel d'électrophorèse[9].
En dermatologie, des scientifiques ont quantifié la cicatrisation de cellules cutanées en culture avec un logiciel basé sur Aphelion SDK développé par ADCIS[59].
En ophtalmologie, le logiciel a été utilisé dans des projets de recherche pour détecter automatiquement les lésions au niveau de la rétine sur des images de fond d'œil, afin de déterminer la présence éventuelle d'une DMLA ou d'une rétinopathie diabétique[60],[61]. ADCIS a déjà utilisé Aphelion SDK pour faire des logiciels permettant de mesurer en 3D des détachements de l'épithélium pigmentaire rétinien, d'étudier le liquide lacrymal sur la paupière, d'analyser des structures de la cornée en utilisant la microscopie confocale[62] ou de quantifier les effets de conjonctivites allergiques[63].
En pharmacologie, ADCIS a utilisé Aphelion SDK pour faire un logiciel de sélection de molécules inhibant la mitose en épifluorescence[64].
En radiologie, une application basée sur le SDK a été développée par ADCIS et avec Van't Hof pour utiliser des images d'os et en étudier la porosité (ostéoporose) de façon automatique[65]. ADCIS a déjà utilisé une méthode de tomodensitométrie (ART (en)) pour faire de la reconstruction 3D depuis plusieurs points de vue (CBCT) mesurant une absorption du fond.
Certains chercheurs ont utilisé le logiciel en biologie pour analyser automatiquement la maturité de bœufs en segmentant des images de vertèbres avec des changements d'espace de couleur (CIE L*a*b* et Teinte Saturation Valeur) adaptés pour détecter automatiquement les contours du cartilage et de l'os[66]. L'analyse d'image peut être utilisée pour faire du comptage. Ceci a déjà été fait dans des boîtes de Petri en microbiologie[4].
En botanique, le logiciel a permis l'étude de propriétés macroscopiques d'images de feuilles[67]. Dans cette étude, le logiciel a servi à extraire les feuilles d'un fond sur des images de caméra de façon automatisée pour travailler sur une quantité d'information significative puis pour calculer des mesures exploitées ensuite par un autre logiciel pour réaliser une étude statistique. Ceci avait pour but d'établir d'éventuelles corrélations entre les paramètres physiologiques d'arbres fruitiers et les observations sur les feuilles.
En agroalimentaire, Aphelion peut être utilisé pour mesurer la taille moyenne de graines, ou faire des rapports de surface pour établir un pourcentage de pulpe dans des tomates par exemple[68].
En géologie, des scientifiques ont utilisé Aphelion et l'analyse d'image pour faire une étude statistique pour essayer de définir une relation entre la forme et la taille de débris rocheux de moraines et la pente maximale qu'elles peuvent supporter sans éboulement[69],[70]. Ces paramètres morphologiques sont plus simples et moins coûteux à étudier que ceux mesurés habituellement.
Le logiciel a été utilisé avec des macrophotographies de roche métamorphique pour étudier la distribution de cristaux de grenats dans les Alpes[71].
En géothermie, le site de Soultz-sous-Forêts en Alsace a fait l'objet de plusieurs études utilisant le traitement d'image et Aphelion. Le logiciel a été utilisé pour étudier la distribution de grains de quartz dans un forage (granulométrie)[72]. Des réseaux de fissures de ce site ont également été étudiés en utilisant des méthodes Thermiques, Hydrauliques, et Mécaniques[73].
Le traitement l'image est une discipline scientifique à part entière où des chercheurs font des recherches pour trouver des solutions améliorant la détection d'objets dans des contextes précis ou des recherches pour dériver ou inventer des opérateurs (renforcement de contraste adaptatif (en), recherche d'espace couleur adaptés au contexte...) ou encore des méthodes démocratisées plus récemment telles que l'apprentissage profond. C'est un domaine lié à la classification (apprentissage automatique) qui est un champ d'application de l'intelligence artificielle et également une discipline scientifique de recherche.
Le logiciel est parfois utilisé pour développer des opérateurs de traitement d'image et pour tester l'influence d'un changement d'opérateur ou de paramètre avec les macro-commandes sur un grand ensemble d'images ou au sein d'un enchaînement d'opérateurs. Les opérateurs utilisés dans Aphelion sont issus et évoluent en fonction des avancées de la discipline. Par exemple, dans les travaux de Hanbury et Serra[74], les espaces couleur où la teinte est représentée comme un angle (Teinte Saturation Valeur, Teinte Saturation Luminosité, ou encore Teinte Saturation Lumière) ont été étudiés pour proposer un nouvel espace couleur cylindrique nommé IHSL dérivé de HSL (Teinte Saturation Luminosité). Gauthier, de la société ADCIS, a présenté l'intérêt de la représentation vectorielle des objets et du chaînage de points en analyse d'image[75].
L'optimisation de code, la distribution des calculs sur plusieurs ordinateurs et cartes graphiques et la parallélisation des calculs font l'objet d'études et de publications grâce aux progrès réalisés dans le domaine du matériel informatique tels que les GPU ou les nouveaux jeux d'instructions processeur. Les performances atteignables sont donc repoussées rendant réalisable en temp réel sur de la vidéo ce qui ne l'était pas quelques années plus tôt. La taille des données traitables augmente avec les progrès faits sur le matériel. Les performances d'Aphelion sont parfois comparées[76].
Les logiciels de la suite Aphelion peuvent être installés sur des ordinateurs sous Windows (Vista, 7, 8, 8.1[16] ou 10) 32 ou 64 bits[77].
Les utilisateurs disposent d'une aide en ligne[78] et d'un ensemble de tutoriels vidéo[79].
Voici la plupart des extensions disponibles[22],[80] pour ce logiciel :
L'utilisateur d'Aphelion peut ajouter dans l'interface graphique des macro-commandes[22] qu'il aurait enregistré afin de traiter des lots d'images, ou des plugins ou bibliothèques qu'il aurait développés hors de l'interface utilisateur[81].