universitÉ de sherbrooke faculté de génie département de … · 2012-02-20 · universitÉ de...
TRANSCRIPT
UNIVERSITÉ DE SHERBROOKE
Faculté de génie
Département de génie électrique et de génie informatique
RECONNAISSANCE ET COMPTAGE DE SILHOUETTES DE POISSONS
Mémoire de maîtrise
Spécialité : génie électrique
Sébastien CADIEUX
Sherbrooke (Québec), Canada Décembre 2002
i
Résumé
Ce mémoire de maîtrise présente un système intelligent qui automatise le
comptage de poissons par espèce. Le système est fait pour être installé dans une passe à
poissons. Il permet de faire un suivi scientifique en comptant et en faisant l’identification
des poissons qui franchissent la passe à poissons. Les images de poissons proviennent
d'un capteur de silhouettes fonctionnant à l'aide de diodes infrarouges. Ce capteur est relié
à un système informatique responsable d’identifier les silhouettes perçues à l’aide du
logiciel d’analyse. L’analyse effectuée consiste à classifier les silhouettes par espèce et à
compter les poissons. Le système de reconnaissance innove en permettant aux utilisateurs
du logiciel d'analyse de choisir les espèces d'intérêt selon la faune spécifique de chaque
rivière. La performance varie selon le nombre d’espèces présentes dans la rivière. Le
système a été testé sur la rivière des Prairies et le taux de reconnaissance varie de 85%
pour deux espèces à 67% pour cinq espèces.
Au cours de cette étude nous avons évalué l’utilisation d’un grand nombre de
paramètres pour la reconnaissance. Afin de réduire le nombre de paramètres dans le
système final, nous avons utilisé plusieurs algorithmes de sélection des paramètres
optimaux, dont un algorithme génétique. Pour ce qui est de l’identification de l’espèce,
les décisions combinées d'un estimateur de vraisemblance, d'un classificateur par
quantification vectorielle adaptative et d'un réseau de neurones artificiels de la topologie
« une-classe-un-réseau » permettent de classifier de façon robuste les silhouettes. Le taux
de reconnaissance de l’étage d’identification de l’espèce varie de 89% pour deux espèces
à 70% pour cinq espèces. Ainsi, le système d’identification de l’espèce est modulaire et il
permet d’ajouter ou d’enlever des espèces à reconnaître facilement.
ii
Remerciements
Cette étude n’aurait pas été possible sans la participation financière d’Hydro-
Québec. La société d’État a fourni la bourse d’étude, le support technique et le support
matériel qui ont rendu possible ce projet de maîtrise.
Je tiens à remercier en premier lieu le professeur François Michaud, directeur et
chercheur au groupe de recherche LABORIUS à l’Université de Sherbrooke. Je lui suis
très reconnaissant de m’avoir proposé ce projet et de m’avoir accepté dans son groupe. Je
le remercie aussi d’avoir su me guider dans mes recherches par sa rigueur et sa
motivation et ce, malgré mon enthousiasme et mes horaires quelquefois chaotiques.
Je veux aussi remercier M. François Lalonde de l’Institut de Recherche en
Électricité du Québec (IREQ) qui est à l’origine du projet de détecteur de poissons et du
projet de logiciel d’analyse des silhouettes de poissons. Son imagination et son
enthousiasme m’ont grandement motivé et inspiré. Il y a aussi M. Richard Verdon,
biologiste chez Hydro-Québec et instigateur de ce système de comptage des poissons qui
m’a grandement conseillé sur les questions biologiques. Je veux dire merci à M. Jean-
Marc Bourgeois, également de l’IREQ, qui a repris les tâches de M. Lalonde après la
retraite précipitée de ce dernier et qui a également su canaliser mes efforts à la
finalisation de cette étude. Je voudrais aussi étendre mes remerciements au Service de
mesures et d’instrumentations de l’IREQ pour m’avoir accueilli dans leurs laboratoires.
Je remercie aussi mes parents ainsi que toute ma famille qui ont, durant toutes ces
années, toujours encouragés mon goût de l’aventure et sans qui tout cela n’aurait sans
aucun doute pas été possible. Il y a aussi ces amis qui rendent la vie beaucoup moins
ennuyeuse : Jean-François, Jean-Phillippe, Fred, Martin et « Rui-san ».
iii
Table des matières
1. INTRODUCTION .................................................................................................................................1
2. SYSTÈMES EXISTANTS DE RECONNAISSANCE DE POISSONS ............................................6 2.1 Comptage et reconnaissance des espèces dans les passes à poissons de Castignolles.....................6 2.2 Reconnaissance des espèces de poissons pour l’industrie de la pêche de Strachan.........................9 2.3 Reconnaissance des espèces de poissons pour l’industrie de la pêche de Loonis..........................10
3. DESCRIPTION DU SYSTÈME DE RECONNAISSANCE DE POISSONS PROPOSÉ .............12 3.1 Capteur de silhouettes....................................................................................................................14 3.2 Logiciel d’analyse..........................................................................................................................18
4. RECONNAISSANCE DES POISSONS ............................................................................................21 4.1 Théorie sur la reconnaissance de formes .......................................................................................22
4.1.1 Extraction des paramètres......................................................................................................22 4.1.2 Classification .........................................................................................................................23 4.1.3 Initialisation des classificateurs .............................................................................................24
4.2 Extraction des paramètres..............................................................................................................24 4.2.1 Moments invariants de Hu.....................................................................................................25 4.2.2 Descripteurs de Fourier..........................................................................................................27 4.2.3 Descripteurs géométriques.....................................................................................................29 4.2.4 Série de hauteurs....................................................................................................................32
4.3 Classification des espèces..............................................................................................................33 4.3.1 Estimateur de vraisemblance Bayesien..................................................................................35 4.3.2 Réseau de neurones artificiels multi-couches à rétro-propagation de l’erreur .......................38 4.3.3 Quantification vectorielle adaptative .....................................................................................43
4.4 Modularité et extensibilité pour l’identification des espèces.........................................................47 4.4.1 Estimation de vraisemblance Bayesien modulaire.................................................................48 4.4.2 Quantification vectorielle adaptative modulaire ....................................................................48 4.4.3 Réseau de neurones multi-couches modulaire .......................................................................48 4.4.4 Coefficients représentant une espèce .....................................................................................50
4.5 Fusion des décisions par une approche multi-classificateurs.........................................................51 4.6 Rejet des débris..............................................................................................................................54
5. SÉLECTION DES PARAMÈTRES OPTIMAUX ...........................................................................59 5.1 Recherche exhaustive ....................................................................................................................59 5.2 Recherche progressive séquentielle ...............................................................................................60 5.3 Analyse discriminante pas à pas ....................................................................................................61 5.4 Algorithme génétique ....................................................................................................................62
6. RÉSULTATS D’EXPÉRIMENTATION ..........................................................................................66 6.1 Essais au barrage de Rivière-des-Prairies ......................................................................................66 6.2 Ensemble d’entraînement et de tests..............................................................................................70 6.3 Topologie des classificateurs.........................................................................................................76 6.4 Performances par groupements de paramètres ..............................................................................77 6.5 Sélection du jeu de paramètres optimaux ......................................................................................81
6.5.1 Recherche progressive séquentielle .......................................................................................82 6.5.2 Analyse discriminante pas à pas ............................................................................................83 6.5.3 Algorithme génétique ............................................................................................................85 6.5.4 Choix du meilleur jeu de paramètres .....................................................................................87
6.6 Performance des classificateurs avec un jeu de paramètres optimisé ............................................87
iv
6.7 Silhouettes de rejet.........................................................................................................................91 6.7.1 Création de l’ensemble de rejet .............................................................................................92 6.7.2 Performances avec rejet .........................................................................................................94
6.8 Modularité et ajout d’espèces ........................................................................................................97 6.8.1 Cas a.i : Désactivation d’une espèce avec l’espèce désactivées non présentée au système de classification ..........................................................................................................................................99 6.8.2 Cas a.ii : Désactivation d’une espèce avec présentation de l’espèce désactivées au système de classification ...................................................................................................................................101 6.8.3 Cas b.i : Ajout d’une nouvelle espèce entraînée négativement avec les espèces existantes 102 6.8.4 Cas b.ii : Ajout d’une nouvelle espèce pas entraînée négativement avec les espèces existantes 105
7. DISCUSSION.....................................................................................................................................109
8. CONCLUSION ..................................................................................................................................112
v
Liste des figures
FIGURE 1.1 PASSE À POISSONS DE VICHY EN FRANCE ......................................................................................2 FIGURE 1.2 PASSE À POISSONS DU BARRAGE DE LA RIVIÈRE MALBAIE.............................................................2 FIGURE 2.1 AMÉNAGEMENT DE LA PASSE À POISSONS DE CASTIGNOLLES........................................................7 FIGURE 2.2 FONCTIONNEMENT DU SYSTÈME DE CASTIGNOLLES......................................................................7 FIGURE 2.3 SYSTÈME DE RECONNAISSANCE DE PRISES À BORD D’UN NAVIRE ..................................................9 FIGURE 3.1 AMÉNAGEMENT D’UNE PASSE À POISSONS (VUE DE CÔTÉ)...........................................................13 FIGURE 3.2 AMÉNAGEMENT DE LA PASSE (VUE DU DESSUS) ..........................................................................13 FIGURE 3.3 PHOTO DU CAPTEUR DE SILHOUETTES..........................................................................................14 FIGURE 3.4 FONCTIONNEMENT DU CAPTEUR DE SILHOUETTES.......................................................................15 FIGURE 3.5 POISSON TRAVERSANT LE CAPTEUR DE SILHOUETTES (VUE DE FACE) ..........................................15 FIGURE 3.6 SILHOUETTE D’UN SAUMON ATLANTIQUE....................................................................................17 FIGURE 3.7 SILHOUETTE D’UN GRAND BROCHET............................................................................................17 FIGURE 3.8 STRUCTURE DU LOGICIEL D’ANALYSE .........................................................................................20 FIGURE 4.1 QUATRE ÉTAPES DE L’ALGORITHME DE RECONNAISSANCE..........................................................21 FIGURE 4.2 RECONNAISSANCE DE FORMES.....................................................................................................22 FIGURE 4.3 QUATRE MÉTHODES DE « PARAMÉTRISATION » DES SILHOUETTES ..............................................25 FIGURE 4.4 EXEMPLE DE LA DISTANCE CENTROÏDALE D’UN CARRÉ ...............................................................28 FIGURE 4.5 LONGUEUR D’UNE SILHOUETTE DE GRAND BROCHET ..................................................................29 FIGURE 4.6 HAUTEUR D’UNE SILHOUETTE DE GRAND BROCHET.....................................................................30 FIGURE 4.7 SURFACE D’UNE SILHOUETTE D’ACHIGAN ...................................................................................30 FIGURE 4.8 CALCUL DU PÉRIMÈTRE ...............................................................................................................31 FIGURE 4.9 ENVELOPPE RECTANGULAIRE D’UNE SILHOUETTE .......................................................................32 FIGURE 4.10 SÉRIE DE HAUTEURS D’UNE SILHOUETTE D’UN GRAND BROCHET ..............................................33 FIGURE 4.11 TROIS CLASSIFICATEURS DU PROJET ..........................................................................................34 FIGURE 4.12 FONCTIONNEMENT DE L’ESTIMATION PAR MAXIMUM DE VRAISEMBLANCE BAYESIEN ..............37 FIGURE 4.13 STRUCTURE D’UN MLP .............................................................................................................40 FIGURE 4.14 MODÈLE D’UN NEURONE ARTIFICIEL .........................................................................................41 FIGURE 4.15 FONCTION D’ACTIVATION TANH .................................................................................................41 FIGURE 4.16 FONCTIONNEMENT DE LA MÉTHODE DES K-PLUS-PROCHES-VOISINS..........................................44 FIGURE 4.17 FONCTIONNEMENT DE LA MÉTHODE LVQ .................................................................................45 FIGURE 4.18 FONCTIONNEMENT DE LA QUANTIFICATION VECTORIELLE ADAPTATIVE ...................................46 FIGURE 4.19 STRUCTURE D’UN MLP CLASSIQUE EN RECONNAISSANCE DE FORMES ......................................49 FIGURE 4.20 STRUCTURE D’UN MLP OCON .................................................................................................50 FIGURE 4.21 COEFFICIENTS DES CLASSIFICATEURS POUR UNE ESPÈCE ...........................................................51 FIGURE 4.22 APPROCHE MULTI-CLASSIFICATEURS.........................................................................................52 FIGURE 4.23 STRUCTURE DE FUSION DES DÉCISIONS DES CLASSIFICATEURS ..................................................53 FIGURE 4.24 BLOC DE REJET ..........................................................................................................................55 FIGURE 4.25 PRINCIPE DU REJET ....................................................................................................................56 FIGURE 4.26 REJET PAR DISTANCE .................................................................................................................57 FIGURE 6.1 AMÉNAGEMENT DE LA PASSE POUR LA PRISE DE DONNÉES ..........................................................67 FIGURE 6.2 PÊCHE ÉLECTRIQUE .....................................................................................................................68 FIGURE 6.3 CHALOUPE ÉQUIPÉE POUR LA PÊCHE ÉLECTRIQUE .......................................................................68 FIGURE 6.4 INSTALLATION SUR LA PASSE.......................................................................................................69 FIGURE 6.5 LE CAPTEUR DE SILHOUETTES INSTALLÉ DANS UN DES BASSINS ..................................................70 FIGURE 6.6 INSTALLATION DES BASSINS DE TESTS SUR LA PASSE À POISSONS................................................70 FIGURE 6.7 GRAND BROCHET (ESOX LUCIUS).................................................................................................72 FIGURE 6.8 SILHOUETTE D’UN GRAND BROCHET............................................................................................72 FIGURE 6.9 ACHIGAN À PETITE BOUCHE (MICROPTERUS DOLOMIEUI).............................................................73 FIGURE 6.10 SILHOUETTE D’UN ACHIGAN À PETITE BOUCHE..........................................................................73 FIGURE 6.11 DORÉ JAUNE (STIZOSTEDION VITREUM) ......................................................................................73 FIGURE 6.12 SILHOUETTE D’UN DORÉ JAUNE .................................................................................................74
vi
FIGURE 6.13 CHEVALIER ROUGE (MOXOSTOMA MACROLEPIDOTUM)...............................................................74 FIGURE 6.14 SILHOUETTE D’UN CHEVALIER ROUGE.......................................................................................74 FIGURE 6.15 POISSON-CASTOR (AMIA CALVA) ................................................................................................75 FIGURE 6.16 SILHOUETTE D’UN POISSON-CASTOR..........................................................................................75 FIGURE 6.17 PROFIL RADIAL D’UN POISSON DANS LE DOMAINE SPATIAL .......................................................79 FIGURE 6.18 PROFIL RADIAL D’UN POISSON DANS LE DOMAINE FRÉQUENTIEL...............................................79 FIGURE 6.19 PERFORMANCE DE LA RECHERCHE SÉQUENTIELLE PROGRESSIVE ..............................................82 FIGURE 6.20 PERFORMANCE DE L’ANALYSE DISCRIMINANTE PAS À PAS ........................................................84 FIGURE 6.21 PERFORMANCE DE L’ALGORITHME GÉNÉTIQUE .........................................................................85 FIGURE 6.22 PERFORMANCE SELON LE NOMBRE D’ESPÈCES...........................................................................91 FIGURE 6.23 EXEMPLE DE SILHOUETTE SYNTHÉTIQUE DE FORME RECTANGULAIRE.......................................92 FIGURE 6.24 EXEMPLE DE SILHOUETTE SYNTHÉTIQUE DE FORME RONDE.......................................................93 FIGURE 6.25 EXEMPLE DE SILHOUETTE DE FORME TRIANGULAIRE.................................................................93 FIGURE 6.26 EXEMPLE DE SILHOUETTE D’UN DÉBRIS QUI DESCEND ...............................................................94 FIGURE 6.27 EXEMPLE DE SILHOUETTE DE BULLES D’AIR ..............................................................................94
vii
Liste des tableaux
TABLEAU 3.1 CAUSES ET EFFETS DES MAUVAISES SILHOUETTES ...................................................................17 TABLEAU 4.1 GRADIENT DE L’ERREUR ..........................................................................................................42 TABLEAU 6.1 LISTE DES POISSONS CAPTURÉS ................................................................................................71 TABLEAU 6.2 NOMBRE DE POISSONS PAR GROUPE .........................................................................................72 TABLEAU 6.3 NOMBRE DE SILHOUETTES........................................................................................................75 TABLEAU 6.4 PERFORMANCE SUR L’ENSEMBLE D’ENTRAÎNEMENT................................................................78 TABLEAU 6.5 PERFORMANCE SUR L’ENSEMBLE DE TEST................................................................................78 TABLEAU 6.6 MATRICE DE CONFUSION MAXIMUM DE VRAISEMBLANCES ......................................................81 TABLEAU 6.7 MATRICE DE CONFUSION POUR LVQ........................................................................................81 TABLEAU 6.8 MATRICE DE CONFUSION POUR LES RÉSEAUX DE NEURONES ARTIFICIELS ................................81 TABLEAU 6.9 MATRICE DE CONFUSION LORSQUE LA DÉCISION DES CLASSIFICATEURS EST COMBINÉE ..........81 TABLEAU 6.10 PARAMÈTRES SÉLECTIONNÉS PAR LA RECHERCHE PROGRESSIVE SÉQUENTIELLE ...................83 TABLEAU 6.11 PARAMÈTRES SÉLECTIONNÉS PAR L’ANALYSE DISCRIMINANTE PAS À PAS .............................84 TABLEAU 6.12 PARAMÈTRES SÉLECTIONNÉS PAR L’ALGORITHME GÉNÉTIQUE...............................................86 TABLEAU 6.13 PERFORMANCES POUR DEUX ESPÈCES SUR L’ENSEMBLE D’ENTRAÎNEMENT ...........................87 TABLEAU 6.14 PERFORMANCES POUR DEUX ESPÈCES SUR L’ENSEMBLE DE TEST ...........................................88 TABLEAU 6.15 PERFORMANCES POUR TROIS ESPÈCES SUR L’ENSEMBLE D’ENTRAÎNEMENT...........................89 TABLEAU 6.16 PERFORMANCES POUR TROIS ESPÈCES SUR L’ENSEMBLE DE TEST...........................................89 TABLEAU 6.17 PERFORMANCES POUR QUATRE ESPÈCES SUR L’ENSEMBLE D’ENTRAÎNEMENT .......................90 TABLEAU 6.18 PERFORMANCES POUR QUATRE ESPÈCES SUR L’ENSEMBLE DE TEST .......................................90 TABLEAU 6.19 PERFORMANCES POUR CINQ ESPÈCES .....................................................................................90 TABLEAU 6.20 REJET POUR LE SOUS-ENSEMBLE DE 18 PARAMÈTRES ............................................................95 TABLEAU 6.21 REJET POUR L’ENSEMBLE DES 46 PARAMÈTRES......................................................................96 TABLEAU 6.22 PERFORMANCE AVEC REJET....................................................................................................96 TABLEAU 6.23 PERFORMANCE PAR ESPÈCE AVEC REJET ................................................................................97 TABLEAU 6.24 ENTRAÎNEMENT DES CLASSIFICATEURS POUR LA DÉSACTIVATION SANS CETTE ESPÈCE .......100 TABLEAU 6.25 PERFORMANCE POUR LA DÉSACTIVATION SANS CETTE ESPÈCE ............................................100 TABLEAU 6.26 ENTRAÎNEMENT POUR LA DÉSACTIVATION DE L’ACHIGAN ...................................................102 TABLEAU 6.27 CLASSIFICATION DES SILHOUETTES D’ACHIGAN...................................................................102 TABLEAU 6.28 ENTRAÎNEMENT POUR L’AJOUT D’UNE ESPÈCE AVEC ENTRAÎNEMENT NÉGATIF ...................104 TABLEAU 6.29 PERFORMANCE D’AJOUT D’UNE ESPÈCE À UNE BANQUE D’ESPÈCES DÉJÀ EXISTANTES.........104 TABLEAU 6.30 ENTRAÎNEMENT DES CLASSIFICATEURS................................................................................106 TABLEAU 6.31 PAIRES RECOMBINÉES POUR L’ESPÈCE ACHIGAN ..................................................................107 TABLEAU 6.32 PERFORMANCE D’AJOUT D’UNE NOUVELLE ESPÈCE PAS ENTRAÎNÉE NÉGATIVEMENT AVEC LES
ESPÈCES EXISTANTES............................................................................................................................108
viii
1. INTRODUCTION
L’hydroélectricité est une forme d’énergie bien adaptée à la géographie d’un pays
comme le Canada. C’est pour cette raison que l’on a vu la multiplication de centrales
hydroélectriques sur nos rivières au cours du dernier siècle. La construction de barrages
hydroélectriques n’est malheureusement pas sans effet sur la faune et l’environnement.
Ces ouvrages constituent un obstacle à la circulation des poissons. En effet, les barrages
affectent plus particulièrement les espèces de poissons migrateurs tels le saumon, l’alose
et l’anguille. Les poissons migrateurs sont des poissons qui se déplacent entre les eaux
salées et les eaux douces pour se reproduire. Par exemple, le saumon atlantique adulte
abandonne la mer et remonte les fleuves et les rivières lors de la frai pour se reproduire.
Les barrages peuvent empêcher les saumons de monter en amont des cours d’eaux vers
leurs endroits privilégiés de reproduction.
Depuis plusieurs années, la protection environnementale est devenue une
préoccupation grandissante pour la société. Cette nouvelle conscience environnementale
vise à diminuer l’effet des humains sur la faune qui les entoure. Ainsi, des plans de
restauration et de protection des espèces sont progressivement mis en place. Une des
solutions aux problèmes des poissons migrateurs est de construire une voie d’eau spéciale
à côté des barrages, nommée passe à poissons, qui permet aux espèces migratrices de les
franchir. On les appelle aussi « passes migratoires ». Une passe à poissons est constituée
de plusieurs bassins successifs permettant aux poissons de franchir graduellement
l’obstacle. On incite les poissons en leur ouvrant une voie d’eau aux conditions
hydrodynamiques et d’écoulement compatibles avec les capacités et les comportements
des espèces concernées par la passe. Au Québec, la société d’État Hydro-Québec a
construite des passes à poissons sur certains de ses barrages. En restaurant le passage des
poissons, les passes permettent protéger les espèces de poissons migrateurs. La figure 1.1
1
et la figure 1.2 montrent respectivement la passe à poissons de Vichy, en France, et la
passe à poissons du barrage de la rivière Malbaie.
Figure 1.1 Passe à poissons de Vichy en France
Figure 1.2 Passe à poissons du barrage de la rivière Malbaie
Cependant, à elle seule cette mesure n’est pas suffisante. La conception des passes
à poissons est complexe et encore mal connue. Le comportement des poissons est mal
compris; il n’y a absolument rien qui ne garantisse l’efficacité d’une passe. Un suivi
scientifique de la migration des poissons doit être fait afin d’évaluer l’efficacité des
passes. Ceci permet de gérer les populations de poissons en observant et comptant les
poissons et les espèces qui franchissent les passes. Ce suivi permet aussi aux biologistes
de mieux comprendre le comportement des espèces migratrices et de suivre les
populations de ces espèces.
Une méthode répandue de suivi consiste à installer une cage de capture à un bout
de la passe et de capturer tous les poissons qui tentent de franchir la passe. Les spécimens
2
sont ensuite répertoriés et remis à l’eau. Toutefois, cette méthode comporte plusieurs
inconvénients. Le premier est qu’elle est fastidieuse et nécessite la présence d’une
personne à chaque site en saison de migration, ce qui est impossible en pratique et
coûteux. Les poissons peuvent être blessés par la manipulation. Plusieurs espèces peuvent
également se montrer particulièrement méfiantes à s’engager dans un piège, ce qui
pourrait les contraindre à ne pas migrer. Tous ces inconvénients font qu’il serait très
avantageux d’automatiser le comptage des poissons tout en réduisant les manipulations
de ces derniers.
Plusieurs appareils permettent de compter le passage de poissons, mais très peu de
ceux-ci donnent une idée précise de leur espèce. Jusqu’à maintenant, seul le comptage
visuel, qui consiste à enregistrer sur bande vidéo les passages de poissons, a été utilisé
avec succès pour cette tâche. Toutefois, cette technique nécessite un dépouillement
fastidieux de la bande vidéo par un expert. Elle a aussi pour défaut qu’il est difficile
d’avoir des images claires à cause de la turbidité de l’eau et du manque d’éclairage. De
plus, pour pouvoir utiliser cette méthode la passe doit être équipée d’une fenêtre
d’observation, ce qui n’est pas le cas de toutes les passes. Une autre méthode utilisée est
le compteur automatique à résistivité. Ce compteur fonctionne sur le principe de la
différence de conductivité entre l’eau et le corps du poisson. Au-delà d’un certain seuil de
résistivité, on compte un poisson. L’avantage d’un tel système réside dans le faible coût
d’investissement et de maintenance. Cependant, il ne permet que de discriminer les
poissons selon leurs tailles et non pas selon l’espèce.
Récemment, une chercheure de l’Institut National Polytechnique de Toulouse
[Castignolles, 1995] a développé un système utilisant des images binaires pour
reconnaître l’espèce des poissons. Ces images sont prises à l’aide d’une caméra vidéo. De
bons résultats ont été obtenus, mais les inconvénients déjà mentionnés sur l’utilisation
d’une caméra vidéo demeurent. De plus, le système ne semble pas offrir la possibilité
d’ajouter ou d’enlever des espèces au système afin de tenir compte, par exemple, de la
faune particulière d’une rivière. Puis, pour installer une caméra vidéo sur une passe à
poissons, cette dernière doit être équipée d’installations spéciales. La passe doit être
3
équipée d’une fenêtre d’observation et d’un accès à une source d’alimentation assez
puissante. Pas toutes les passes à poissons sont équipées d’un accès à une source
d’alimentation en régions éloignées. Il est important de mentionner que beaucoup de
barrages d’Hydro-Québec sont situés en régions éloignées. D’autres systèmes de
reconnaissance de l’espèce de poissons par vision artificielle existent [Loonis, 1996]
[Strachan et coll. 1990]. Ils ont par contre été développés pour un environnement
d’utilisation bien différent : les usines de traitement de poissons. Dans ce type
d’environnement, les conditions peuvent facilement être contrôlées, contrairement aux
passes à poissons.
Afin de contourner le problème, Hydro-Québec a fait l’acquisition d’un compteur
de poissons par infrarouge RiverWatcher de la firme islandaise Vaki. Cet appareil saisit et
enregistre les silhouettes des poissons qui passent entre ses deux capteurs linéaires
infrarouges. Ce capteur a l’avantage de nécessiter peu de puissance de fonctionnement,
d’être peu affecté par la qualité de l’eau et de ne requérir aucune installation spéciale sur
la passe. Cet appareil règle aussi plusieurs problèmes posés par l’enregistrement sur
bande vidéo, mais la nécessité de dépouillement reste la même. La lourdeur de la tâche
pourrait être évitée par l’automatisation de l’analyse des données recueillies. Ainsi, les
silhouettes sont envoyées à un ordinateur personnel (PC) où elles sont analysées, classées
et comptées par le logiciel d’analyse.
Le but de ce projet de maîtrise est de concevoir un logiciel d’analyse des
silhouettes de poissons. Ce logiciel reconnaît l’espèce ou la famille des poissons à partir
des silhouettes qui ont été saisies par le capteur d’image. Le logiciel est flexible et permet
d’ajouter facilement de nouvelles espèces à reconnaître. La classification est basée sur la
combinaison des décisions de trois classificateurs : un classificateur d’estimation par
maximum de vraisemblance, un classificateur par quantification vectorielle adaptative et
un classificateur de réseaux de neurones artificiels multicouches à rétro-propagation de
l’erreur de type une-classe-un-réseau (one-class-one-network ou OCON). La décision
finale sur l’espèce du poisson est faite par vote majoritaire. Un bloc de rejet assure que
les silhouettes d’objets qui ne sont pas des poissons soient bien rejetées. En utilisant des
4
classificateurs de natures différentes, un système plus robuste est obtenu. Le système de
classification proposé innove entre autres en permettant aux utilisateurs de choisir les
espèces d’intérêt et de désactiver les autres espèces. Il est alors possible de tenir compte
de la faune spécifique à chaque rivière.
Ce mémoire est organisé de la façon suivante. Le chapitre 2 fait un survol de
divers systèmes de reconnaissance de l’espèce de poissons existants. Le chapitre 3
présente le système intelligent que nous proposons pour le comptage de poissons. Le
capteur de silhouettes, les fonctionnalités du logiciel d’analyse et leurs interactions y sont
décrits. Le chapitre 4 décrit les techniques de reconnaissance de formes utilisées pour
identifier l’espèce des poissons. Après une brève introduction aux techniques de
reconnaissance de formes, les algorithmes des trois types de classificateurs utilisés sont
décrits. Les descriptions des méthodes de combinaison des décisions et de rejets des
silhouettes de débris suivent. Le chapitre 5 aborde les divers algorithmes de sélection des
paramètres optimaux qui ont été utilisés afin de réduire le nombre de paramètres de
reconnaissance. Le chapitre 6 traite des résultats expérimentaux obtenus. La création des
bases de connaissance d’entraînement et de test y est décrite. La performance du système
est évaluée dans diverses conditions (variation du nombre d’espèces, avec ou sans rejet
de débris, etc.). L’aspect de l’effet sur la reconnaissance de la modularité et de l’ajout et
de l’enlèvement d’espèces est étudié en fin de chapitre. Finalement, le chapitre 6 présente
une discussion sur les résultats ainsi que les possibilités d’amélioration du système.
5
2. SYSTÈMES EXISTANTS DE RECONNAISSANCE DE POISSONS
Dans le passé, plusieurs groupes de chercheurs se sont attaqués à la tâche de
reconnaître l’espèce des poissons à partir de l’image ou de la silhouette de ces derniers
[Arnarson et coll. 1988]. La plupart des systèmes développés l’ont été pour des
applications en milieu industriel. Dans un milieu industriel, comme une usine de
transformation, les conditions sont plus facilement contrôlables qu’en milieu naturel.
Malgré les difficultés que pose un système de reconnaissance de poissons vivants, une
équipe française a déjà étudié ce problème. Ce chapitre discute d’abord de ce système
développé pour les passes à poissons. Suit ensuite la description de deux autres systèmes
développés pour l’industrie de la pêche et de la transformation du poisson.
2.1 Comptage et reconnaissance des espèces dans les passes à poissons de Castignolles
Les travaux de l’Institut National Polytechnique de Toulouse en France avaient
pour but de créer un système de reconnaissance et de comptage de poissons pour les
passes migratoires [Castignolles, 1995] [Castignolles et coll. 1994]. Ce système utilise
des images binaires saisies à l’aide d’une caméra vidéo. La caméra vidéo filme les
poissons qui franchissent la passe à poissons à travers une fenêtre d’observation. Un
schéma de l’aménagement de la passe est présenté à la figure 2.1. Afin de compenser
pour la turbidité de l’eau, la largeur du passage est réduite. La peau des poissons
réfléchissant la lumière, le système nécessite un système d’éclairage spécial. Les poissons
sont éclairés par un système de rétro-éclairage, ce qui produit un effet similaire à la
technique des ombres chinoises. Comme le montre la figure 2.2, le système ne fonctionne
pas en temps réel, mais enregistre les images pour qu’elles soient analysées plus tard sur
un ordinateur. Un système de compression et de numérisation électronique transforme et
6
enregistre des images vidéos binaires pour ensuite les envoyer à l’ordinateur. Au niveau
des performances, le système fonctionne bien et reconnaît certaines espèces jusqu’à un
taux de 100% (anguilles et lamproies). Le système peut reconnaître en tout neuf espèces
ou familles de poissons avec des taux de réussite qui varient de 56% à 100% selon
l’espèce.
système de compressioncaméra
tubes néonsdiffuseur
vitre d'observation
convergent
courant
Figure 2.1 Aménagement de la passe à poissons de Castignolles
microordinateurcaméra systèmes de compressionet de numérisation
Figure 2.2 Fonctionnement du système de Castignolles
D’une façon très générale, le fonctionnement du système se base sur une approche
plutôt classique en reconnaissance de formes. Au niveau des paramètres, les deux
premiers moments de Hu [Hu 1962] sont utilisés pour décrire les silhouettes. Les autres
paramètres ne sont que des paramètres géométriques tels la longueur, la largeur, le
périmètre et la compacité. La sélection de ces paramètres a été faite de façon manuelle.
Les paramètres sont choisis en éliminant les paramètres fortement corrélés, en s’assurant
7
de garder les paramètres utiles à chacune des classes spécifiques [Castignolles 1995] et
en évitant de prendre ceux qui sont trop longs à calculer. La méthode de classification
utilisée est la méthode statistique d’estimation du maximum de vraisemblance avec la
règle de décision quadratique. Un critère de rejet basé sur la distance de Mahanolobis
[Castignolles 1995] est utilisé pour rejeter les silhouettes trop différentes et assurer que
les débris qui passent dans le système soient rejetés. Lorsqu’un poisson franchit la passe,
plusieurs images du même passage permettent au système de confirmer la classification.
La décision finale utilise un vote majoritaire sur chacune des classifications du poisson
pour chaque image. Si la simple majorité n’est pas obtenue, le système refuse de
classifier la silhouette. Cette redondance améliore le taux de reconnaissance du système.
Toutefois, ce système comporte certains inconvénients. Premièrement, lorsque
plusieurs poissons franchissent le champ de vision de la caméra en même temps ou que
les trajectoires des poissons se croisent, il ne peut déterminer l’espèce et compter les
poissons de façon satisfaisante. Deuxièmement, la différence de turbidité de l’eau entre
les différentes rivières de même que les différences dans une même rivière dans le temps
peuvent causer des problèmes lors de l’acquisition des images. Les ajustements
nécessaires peuvent être longs et même empêcher le système de fonctionner.
Troisièmement, la possibilité d’ajouter de nouvelles espèces reconnaissables par le
système ne semble pas être prévue. On ne mentionne pas non plus la possibilité d’adapter
le système de reconnaissance à la faune spécifique de la rivière. Par exemple, sachant que
l’alose savoureuse ne fréquente pas une rivière, rien ne sert d’essayer d’identifier cette
espèce. Finalement, le système nécessite la présence d’installations spéciales sur la
passe : une fenêtre d’observation, un système de rétro-éclairage et une source de courant
raisonnablement puissante pour alimenter le tout. Ce système pourrait difficilement être
installé en régions éloignées où se trouvent beaucoup des barrages québécois. De plus,
des tests d’utilisation en rivière sur une période prolongée ne semblent malheureusement
pas avoir été faits.
8
2.2 Reconnaissance des espèces de poissons pour l’industrie de la pêche de Strachan
L’étude du groupe de l’écossais Strachan [Strachan et coll. 1990] [Strachan et
coll. 1993] visait à concevoir un système de reconnaissance des prises pouvant être
utilisé à bord des navires de pêche. Les poissons pêchés défilent sur un tapis roulant
devant une caméra vidéo couleur et sont ensuite classifiés selon leur espèce, comme le
montre la figure 2.3. Un système mécanique trie les poissons et les envoie vers des
chaînes de traitements différentes. Pour l’acquisition vidéo, le système utilise une caméra
éclairée par une lampe diffuse et un rétro-éclairage. Le traitement est fait sur un
ordinateur avec une carte d’acquisition vidéo. Les exigences étant d’environ 60 poissons
par minute, le tout doit fonctionner en temps réel avec un débit rapide. Ce système arrive
à classifier jusqu’à neuf espèces. Le système fonctionne bien avec un taux de
reconnaissance moyen de 99%. Cependant, le système n’a réussi qu’à atteindre un débit
de 40 poissons/minute avec le matériel électronique utilisé à l’époque en 1994.
Bac #1 Bac #2
caméra
lumièrediffuse
lumière diffuse sous le poissonconvoyeur
contrôle du triage
microordinateur
sortie vidéo RGB de la caméra
Figure 2.3 Système de reconnaissance de prises à bord d’un navire
Strachan utilise 125 paramètres pour la reconnaissance. Les 114 premiers sont des
indices colorimétriques, c’est-à-dire qu’ils sont basés sur la couleur. Le poisson est
d’abord divisé en 38 zones. Ensuite, le système extrait les valeurs d’intensité de rouge, de
9
vert et de bleu (RVB) pour chacune des 38 zones. Il y a donc 38 zones avec trois
couleurs, soit 114 indices colorimétriques. Les onze autres paramètres sont basés sur la
longueur et la largeur de la silhouette. Aucun effort de sélection ou de réduction du
nombre de paramètres n’a été fait. L’utilisation de la couleur comme paramètre de
classification explique sûrement le très haut taux de discrimination entre les diverses
espèces. La méthode de classification utilisée se nomme « analyse discriminante
canonique ». Cette méthode construit une fonction mathématique polynomiale qui permet
de discriminer les espèces. Strachan ne discute pas du cas où une nouvelle espèce est
ajoutée ou si une espèce non reconnue vient à passer sur le tapis roulant.
Enfin, le système ayant pour champs d’application un milieu industriel, le
contexte est fort différent d’une application dans une passe à poissons. Les poissons à
classer étant morts, un système d’éclairage complexe peut être utilisé. À cause de cet
éclairage, la qualité des images saisies est excellente. Ceci explique en partie le haut taux
de discrimination entre les espèces. L’auteur mentionne même la possibilité de
discriminer entre deux poissons d’une même espèce, mais qui proviennent d’un
écosystème différent (Rockall et la Mer du Nord dans le cas de l’aiglefin) [Strachan et
coll. 1993].
2.3 Reconnaissance des espèces de poissons pour l’industrie de la pêche de Loonis
Le Laboratoire d’Informatique et d’Imagerie Industrielle de l’Université de La
Rochelle [Loonis, 1996] [Loonis et coll. 1996a] [Loonis et coll. 1996b] a créé un système
de reconnaissance automatique de poissons morts par vision artificielle. Ce système a été
conçu pour être utilisé en milieu industriel dans une usine de traitement du poisson.
Comme le système de Strachan, l’éclairage se fait par un système d’éclairage diffusé et
un rétro-éclairage. Les images sont ensuite traitées sur un ordinateur. Le système arrive à
classifier jusqu’à sept espèces. Il fonctionne bien avec un taux de reconnaissance moyen
d’environ 90% et ce en n’utilisant qu’un petit nombre d’images dans la base de
connaissance (96 images en tout). L’utilisation d’un plus grand nombre d’images aurait
sûrement contribué à avoir un taux de reconnaissance encore plus élevé.
10
Ce système utilise une approche innovatrice et très intéressante visant à minimiser
l’a priori dans le processus de reconnaissance de formes. L’objectif est de créer un
système de reconnaissance général qui peut être utilisé pour plusieurs problèmes
différents. Il s’agit d’un système multi-classificateurs utilisant des réseaux de neurones
artificiels comme classificateurs et un autre réseau de neurones artificiels pour la
combinaison de la décision. Dans le cas de la reconnaissance de l’espèce de poisson,
plusieurs types de paramètres sont utilisés : des paramètres issus de la forme, des
paramètres colorimétriques et des paramètres texturaux. Le système exploite une
méthode pour sélectionner parmi le grand nombre de paramètres. Une réduction du
nombre de paramètres permet de réduire le temps de calcul et d’améliorer les
performances. La sélection des paramètres se fait par un algorithme génétique [Loonis,
1996] [Loonis et coll. 1996b] qui agit comme méthode d’optimisation des entrées des
classificateurs. Les trois réseaux de neurones artificiels sont des réseaux multi-couches à
rétro-propagation de l’erreur. Chacun de ces réseaux a des entrées différentes. Plusieurs
méthodes de combinaisons des décisions sont proposées, mais la fusion par un autre
réseau de neurones est finalement choisie. De plus, un inconvénient de ce système est que
l’ajout d’une nouvelle espèce ou le cas où une espèce non reconnue passe sur le tapis
roulant ne sont pas considérés. Le système a donc une extensibilité et une modularité
limitées.
11
3. DESCRIPTION DU SYSTÈME DE RECONNAISSANCE DE POISSONS PROPOSÉ
La société d’État Hydro-Québec souhaite avoir un système permettant de compter
les poissons par espèce afin de faire un meilleur suivi de la population de poissons
migrateurs qui franchissent leurs barrages. Parmi les spécifications d’un tel système se
trouve la possibilité d’être utilisé en régions éloignées. Ceci implique l’utilisation sur des
sites où aucune installation spéciale sur la passe à poissons n’est présente (une fenêtre
d’observation par exemple). La possibilité d’utiliser une batterie ou un capteur solaire
comme source de puissance est également importante, car certaines passes à poissons ne
sont pas équipées convenablement d’une source d’électricité. Finalement, pouvoir
fonctionner sans trop d’entretien ou d’ajustements dus aux variations de la turbidité de
l’eau constitue également un avantage indéniable.
Le système intelligent de comptage de poissons par espèce [Cadieux et coll. 2000]
se divise donc en deux parties : le capteur de silhouettes et le logiciel d’analyse. Le
capteur de silhouettes saisit et enregistre les silhouettes des poissons qui franchissent la
passe à poissons. Le logiciel d’analyse sert au dépouillement et au comptage des
silhouettes enregistrées par le capteur.
Le compteur de poissons s’installe dans la chute d’eau à la sortie d’un des bassins
de la passe à poissons. Cela permet de s’assurer que les poissons ne s’arrêtent pas entre
les panneaux du capteur. L’unité de contrôle et l’équipement servant à transférer les
données doivent être installés près de la passe. L’aménagement d’une passe équipée avec
le système est présenté dans la figure 3.1 (vue de côté) et figure 3.2 (vue du dessus).
12
unité de contrôle
capteurs linéaires
passe à poissons
ordinateurtransfert des données
(lien direct,téléphone cellulaire,
etc.)
bassin précédent
Figure 3.1 Aménagement d’une passe à poissons avec le système de comptage de poissons RiverWatcher de Vaki (vue de côté)
La première section de ce chapitre décrit le capteur de silhouettes et son
fonctionnement. La deuxième section traite des fonctionnalités du logiciel de
dépouillement des silhouettes.
courant
capteurs linéaires
unité de contrôlecloison
déversoir
bassin avalbassin amont
Figure 3.2 Aménagement d’une passe à poissons avec le système de comptage de poissons RiverWatcher de Vaki (vue du dessus)
13
3.1 Capteur de silhouettes
Le capteur de silhouettes doit permettre de saisir et d’enregistrer des silhouettes
de poissons qui franchissent une passe à poissons. Le capteur choisi par Hydro-Québec
est le compteur de poissons RiverWatcher de la firme islandaise Vaki. La figure 3.3
présente une photo montrant ce capteur. Il est composé de deux parties : les capteurs
linéaires et l’unité de contrôle. Les capteurs linéaires utilisent des diodes infrarouges pour
saisir la forme des poissons qui les franchissent. Le compteur de poissons comprend aussi
une unité de contrôle qui gère les capteurs, enregistre les silhouettes et permet de
transmettre les données à un ordinateur. L’avantage de ce système est qu’il consomme
peu d’énergie. Une fois installé dans la passe à poissons, il nécessite peu d’ajustements,
contrairement aux caméras vidéo. La présence d’installations spéciales, tel une fenêtre
d’observation ou autre, ne sont pas nécessaires au fonctionnement de ce système. Il peut
être utilisé dans un endroit éloigné de tous services, en s’alimentant à l’énergie solaire et
en transférant les données saisies via un lien satellite. Cet appareil règle donc plusieurs
problèmes posés par l’enregistrement sur bande vidéo, mais le besoin de dépouiller les
données demeure.
Figure 3.3 Photo du capteur de silhouettes
D’une façon plus spécifique, le capteur de silhouettes est composé de deux
capteurs linéaires, c’est-à-dire deux rangés d’une centaine de diodes infrarouges. Les
diodes composant un capteur linéaire sont espacées de 5mm entre elles. Les deux
14
panneaux de diodes sont disposés à une distance de 10 cm à 45 cm, comme illustré à la
figure 3.4.
Figure 3.4 Fonctionnement du capteur de silhouettes
Lorsqu’un poisson passe entre les deux panneaux du capteur de silhouettes, il
bloque les faisceaux infrarouges des capteurs linéaires. La figure 3.5 illustre ce principe.
En mémorisant cette information en fonction du temps, la silhouette du poisson peut être
reconstituée.
Figure 3.5 Poisson traversant le capteur de silhouettes (vue de face)
15
Puisqu’il y a deux rangées de capteurs linéaires, deux silhouettes sont saisies à
chaque passage. La vitesse de passage, v, peut être calculée en faisant la moyenne des
temps de passages des deux silhouettes. Elle est calculée par la formule 3.1 :
( )21
2dtdtdxfv
+⋅⋅= (3.1)
où dx est la distance entre les capteurs linéaires, dt1 est le temps de passage de l’objet
devant le premier capteur linéaire, dt2 est le temps de passage de l’objet devant le
deuxième capteur linéaire et f est la fréquence d’échantillonnage des capteurs linéaires,
c’est-à-dire le nombre de fois par seconde que les capteurs linéaires sont lus. La longueur,
l, des objets qui passent est dérivée de la vitesse évaluée précédemment, avec la relation
3.2 :
( )
fvNN
l⋅
⋅+=
221 (3.2)
où N1 et N2 sont les nombres de tranches qui composent la première silhouette et la
deuxième silhouette saisie respectivement, et l est la longueur de l’objet. La relation 3.3
exprime la longueur en fonction des paramètres.
( )
( )21
21
dtdtNNdxl
++⋅
= (3.3)
L’exactitude de la mesure de longueur dépend donc de l’exactitude de la mesure de
vitesse. De plus, la définition de la silhouette dépend de la longueur et de la vitesse des
poissons qui franchissent le capteur. Ainsi, la silhouette d’un poisson qui passe trop vite,
qui est trop court ou encore qui change de vitesse lors du passage n’est pas saisie de
façon satisfaisante. Les causes et les effets des mauvaises silhouettes sont résumés au
tableau 3.1.
16
Tableau 3.1 Causes et effets des mauvaises silhouettes
Cause Effet Passage trop rapide La silhouette n’est pas composée d’assez de
points pour facilement distinguer l’espèce du poisson. Mauvaise définition de la silhouette.
Poisson trop court Même effet que le passage trop rapide. Poisson change de vitesse dans le capteur
La mesure de longueur est erronée, ce qui rend la distinction de l’espèce plus difficile.
La figure 3.6 et la figure 3.7 montrent deux exemples de silhouettes saisies par le
capteur : un saumon atlantique (Salmo salar) et un grand brochet (Esox lucius).
Figure 3.6 Silhouette d’un saumon atlantique
Figure 3.7 Silhouette d’un grand brochet
Une fois enregistrées, les données sont envoyées périodiquement à un ordinateur
pour y être analysées. Le lien entre le capteur et l’ordinateur peut être soit direct, soit par
téléphone-satellite ou soit par téléphone cellulaire.
17
3.2 Logiciel d’analyse
Le logiciel d’analyse permettant de reconnaître et de compter des poissons selon
leur espèce, à partir d’images produites par le détecteur de silhouettes, constitue le point
central du présent projet. Les silhouettes de poissons sont envoyées à un ordinateur où
elles sont analysées, classées et comptées par le logiciel d’analyse. Le logiciel a été conçu
de façon à être facilement modifiable subséquemment.
L’outil de développement LabView de National Instrument a été utilisé pour
développer le logiciel d’analyse. La raison de ce choix est la grande portabilité des
logiciels développés avec LabView, la facilité du développement et la présence d’une
imposante librairie de fonctions. Un autre avantage est la facilité de maintenance des
logiciels développés avec cet outil.
Le logiciel comporte une interface graphique afin de faciliter son utilisation. Le
temps d’analyse et de comptage des images varie selon le nombre d’images à analyser et
l’ordinateur sur lequel l’analyse est faite. Le temps de traitement des images a été
minimisé le plus possible. Le logiciel est extensible, car il permet à l’utilisateur d’ajouter
des espèces à reconnaître. Il est possible de trier des fichiers de silhouettes manuellement.
L’utilisateur peut aussi choisir spécifiquement les espèces de poissons auxquelles il est
intéressé, ce qui permet de tenir compte de la faune spécifique de chaque rivière. Toutes
les images d’objets n’étant pas considérées comme des poissons sont comptées comme
des débris.
Les étapes de traitement réalisées par le logiciel d’analyse sont montrées à la
figure 3.8 et décrites dans les paragraphes qui suivent :
• Prétraitement des silhouettes. Au cours de cette étape, les silhouettes qui
proviennent du capteur de silhouettes de la firme Vaki sont transformées dans un
format standard. Ce nouveau format facilite autant l’affichage que le traitement et
l’enregistrement des silhouettes.
18
•
•
•
•
•
Extraction des paramètres. Il a été décidé dès le départ d’essayer d’exploiter tous
les paramètres qui pourraient donner de bons résultats. Les paramètres sont
ensuite normalisés.
Classification. Cette étape constitue le cœur du système. L’approche multi-
classificateurs est préconisée puisqu’elle combine les avantages de plusieurs
méthodes, ce qui améliore les performances de classification. De plus, puisque la
possibilité d’ajouter des espèces après la création du logiciel d’analyse pose un
problème pour ce qui est des classificateurs, l’utilisation de techniques modulaires
permet à l’utilisateur de pouvoir choisir les espèces qu’il veut reconnaître.
Comptage. Le logiciel d’analyse doit comptabiliser les poissons migrateurs qui
franchissent la passe où le capteur est installé. Pour ce faire, le système utilise les
données fournies par le capteur ainsi que les connaissances a priori sur la rivière
et sur les poissons pour en déterminer l’espèce. Le bloc « comptage » ne fait que
compter les interprétations qui ont été effectuées par le bloc de classification. Les
résultats sont rapportés par espèce. Il permet aussi à l’utilisateur de pouvoir
réviser de façon manuelle l’identification des silhouettes rejetées.
Classification manuelle. L’utilisateur identifie manuellement un certain nombre
de silhouettes qui appartiennent à l’espèce qu’il veut ajouter au logiciel d’analyse.
Une fois qu’un nombre suffisant de silhouettes ont été identifiées, l’entraînement
est effectué par le bloc d’initialisation des classificateurs. Évidemment, plus le
nombre de silhouettes fournies par l’utilisateur pour l’entraînement est grand, plus
la classification tend à être précise.
Initialisation des classificateurs. À cette étape, l’entraînement des classificateurs
est effectué à partir des silhouettes classées manuellement par l’utilisateur.
19
Extraction desparamètres
Prétraitementdes silhouettes
Identification del'espèce
Comptage
Initialisationdes
classificateurs
Classificationmanuelle
Utilisateur
Extraction desparamètres
Silhouettes
Figure 3.8 Structure du logiciel d’analyse
Les étapes d’extractions des paramètres, de classification et d’initialisation des
classificateurs sont rattachées au processus de reconnaissance et d’identification des
poissons, décrit en détails au chapitre 4.
20
4. RECONNAISSANCE ET IDENTIFICATION DES POISSONS
La classification, réalisée par le logiciel d’analyse, s’effectue en faisant appel à
des techniques de reconnaissance de formes. Dans ce chapitre, les diverses méthodes de
reconnaissance de formes qui sont utilisées par le logiciel d’analyse pour la classification
des silhouettes sont présentées.
L’algorithme de reconnaissance de formes du logiciel d’analyse fonctionne
suivant les quatre étapes, comme illustrées à la figure 4.1 : l’extraction des paramètres, la
classification des espèces, la fusion des décisions et l’évaluation du rejet. La section 4.1
présente une brève introduction à la reconnaissance de formes et à la classification. La
section 4.2 traite des quatre types de paramètres qui sont extraits des silhouettes de
poissons. La section 4.3 discute des trois types de classificateurs utilisés : l’estimation du
maximum de vraisemblance, la quantification vectorielle adaptative et les réseaux de
neurones artificiels. La section 4.4 démontre la nécessité d’utiliser des classificateurs
modulaires. La section 4.5 traite de l’algorithme de fusion de la décision et de l’approche
multi-classificateurs en général. Finalement, la section 4.6 présente la méthode de rejet
des silhouettes de débris.
Classificationdes espèces
Extraction desparamètres
Silhouettes Fusion desdécisions
Rejet desdébris
Identification
Figure 4.1 Quatre étapes de l’algorithme de reconnaissance
21
4.1 Théorie sur la reconnaissance de formes
L’être humain est capable de différencier un très grand nombre de sensations
perçues par ses cinq sens. Par exemple, il est capable de différencier les différents mots
qu’il entend ou encore les différents objets qu’il voit. La reconnaissance de formes tente
de reproduire artificiellement cette activité à l’aide d’un système informatique. La
reconnaissance de formes peut se définir comme l’association d’une interprétation à une
observation [Kulkarni et coll. 1998] [Schurmann, 1996], tel qu’illustré par la figure 4.2.
1
2
n
3
InterprétationObservation
Figure 4.2 Reconnaissance de formes
Le processus de reconnaissance de formes peut être divisé en trois parties :
l’extraction des paramètres, la classification et l’apprentissage.
4.1.1 Extraction des paramètres
L’extraction des paramètres consiste à évaluer les propriétés des formes
observées. Les observations peuvent être modélisées à l’aide de paramètres. Ces
paramètres peuvent aussi bien être des propriétés de bas niveaux que des propriétés de
hauts niveaux. L’important, c’est qu’ils caractérisent bien les formes à différencier. Les
paramètres peuvent être des valeurs symboliques ou, plus souvent, des valeurs réelles.
Les paramètres sont rassemblés en un vecteur v de dimension d, où d est le nombre de
paramètres utilisés. Chaque observation constitue un point dans l’espace de
représentation. L’espace de représentation est un hyperplan de d dimensions. Ceci peut-
être exprimé par l’équation 4.1.
22
v = {v1, v2, … , vd} ∈ ℜ d (4.1)
où ℜ d est l’espace de représentation.
4.1.2 Classification
La classification s’effectue par un algorithme qui fait l’association des paramètres
d’une observation à son interprétation. Le classificateur divise l’espace de représentation
entre les diverses interprétations. L’interprétation se fait sous forme d’assignation d’une
observation à une classe. Une classe peut être par exemple « classe saumon » qui
comprend les poissons qui ont été identifiés comme étant des saumons. D’une manière
formelle, la classification se définit par la relation 4.2 :
F : ℜ d → C (4.2)
où C est l’ensemble des interprétations (ou classes) et F est le classificateur. L’ensemble
des interprétations est composé de toutes les classes qui peuvent exister, selon la relation
exprimée en 4.3 :
C = c1 ∪ c2 ∪ … ∪ cM (4.3)
où M est le nombre de classes et ci une interprétation ou classe associée avec une
observation. Un classificateur s’exprime mathématiquement par la relation 4.4 :
F(v) = ci (4.4)
où v est le vecteur de paramètres ou l’observation, F( ) est le classificateur et ci est la
classe sélectionnée ou l’interprétation.
23
4.1.3 Initialisation des classificateurs
Un système de reconnaissance de formes doit, tout comme l’être humain, analyser
et interpréter des données. Étant donné que les correspondances entre les observations et
les interprétations ne sont pas connues, des observations qui ont déjà été identifiées
servent de référence. Les interprétations sont donc guidées par l’a priori ou les
connaissances déjà acquises par le système. Cette étape est quelquefois aussi appelée
« l’apprentissage ». Une base de données D, qui contient des exemples d’observations
dont l’interprétation a déjà été faite par un expert, peut se définir comme un ensemble de
paires de vecteurs d’observations et d’interprétations. Cette relation est exprimée en 4.5:
D = { (v1,c1) , … , (vn,cn) } (4.5)
où le vecteur vi est une observation, ci est une interprétation et n est le nombre
d’observations identifiées. Cette base de données est utilisée pour créer le classificateur
ainsi que pour valider et évaluer ses performances. La base de données est elle-même
divisée en deux parties : l’ensemble d’entraînement et l’ensemble de test. L’ensemble
d’entraînement sert à créer le classificateur. L’ensemble de test sert à évaluer les
performances du classificateur avec des données différentes que celles utilisées pour
l’apprentissage.
4.2 Extraction des paramètres
La reconnaissance de formes à partir d’une silhouette est un problème qui
intéresse de nombreux chercheurs depuis longtemps [Reeves et coll. 1988] [Hu 1962]
[Kauppinen et coll. 1995]. Les méthodes doivent être robustes aux changements de
positions, de rotations et aux différences de grandeurs des formes à reconnaître. Les
paramètres doivent aussi bien caractériser les silhouettes qu’ils représentent afin de
faciliter la classification. Un mauvais choix de paramètres peut rendre la classification
difficile, voire impossible. Une silhouette en deux dimensions doit idéalement être
caractérisée par des ensembles de paramètres uniques pour chaque forme.
24
Au cours de ce projet, nous avons étudié la possibilité d’utiliser quatre méthodes
de paramétrisation des silhouettes, telle qu’illustrées par la figure 4.3. Les prochaines
sous-sections décrivent ces quatre types de paramètres : les moments invariants de Hu,
les descripteurs de Fourier, les descripteurs géométriques et la série de hauteurs.
Extraction des paramètres
Silhouettes
Momentsinvariants de
Hu
Descripteursde Fourier
Descripteursgéométriques
Série dehauteurs
Classification des espèces
Figure 4.3 Quatre méthodes de « paramétrisation » des silhouettes
4.2.1 Moments invariants de Hu
Cette méthode est issue des études de Hu [Hu 1962] sur les moments. Le concept
des moments est très utilisé en mécanique classique et en statistique. Hu a élaboré un
théorème énonçant qu’un ensemble infini de moments calculés à partir d’une image
permet de la décrire uniquement et complètement. Il a aussi créé une version de ces
moments invariants en translation, en rotation et en homothétie.
Les moments sont particulièrement sensibles aux variations de la distribution de
masse dans la silhouette de l’image [Reeves et coll. 1988], mais ce n’est pas un problème
pour des images binaires [Castignolles 1995]. Les moments ne font pas que tenir compte
25
des contours, mais aussi des « trous » qui se trouvent à l’intérieur de l’objet. Ils ont donc
l’avantage de bien représenter les formes complexes. Les moments de Hu sont utilisés
pour la reconnaissance du plancton [Tang et coll. 1996], d’avions [Reeves et coll. 1988]
et de poissons [Castignolles 1995].
Les moments d’ordre p+q en deux dimensions d’une fonction f(x,y) se définissent
par la relation 4.6 :
m x y f x ypq
p q
yx
= ∑∑ ( , ) (4.6)
où p et q sont l’ordre du moment par rapport à x et y respectivement. Dans le cas d’une
image binaire, pour un objet donné, la relation se simplifie selon la fonction 4.7.
(4.7) ( ) ∈
=sinon 0
),(pour 1,
objetyxyxf
Le moment de l’image binaire d’un objet peut être alors simplifié pour s’exprimer
selon la relation 4.8.
∑∑=x y
qppq yxm (4.8)
La mesure doit être invariante en translation. À cette fin, l’image est centrée par
rapport à son centre de gravité. Ceci permet d’obtenir une relation invariante en
translation (équation 4.9) :
∑∑ −−=x y
qc
pcpq yyxx )()(µ (4.9)
où xc et yc sont les centres de gravité de l’image de l’objet et µpq est le moment central
normalisé. À partir de ces moments centraux normalisés, de nouveaux moments qui sont
26
invariants par homothétie, c’est-à-dire qu’ils sont invariants aux changements d’échelle,
peuvent être évalués par la relation 4.10.
N pqpq
p q= + +
µ
µ00 21
(4.10)
À partir de cette dernière équation, Hu a dérivé des moments qui sont aussi
invariants en rotation. Les développements mathématiques menant à ces moments
invariants en rotation étant fastidieux, les lecteurs sont référés à [Hu 1962] pour plus de
détails. Seul les six premiers sont détaillés ici aux équations 4.11 à 4.16, car ceux d’ordre
plus élevés ont de très faibles valeurs en pratique et s’avèrent instables.
02201 NNH += (4.11)
( ) 211
202202 4NNNH +−= (4.12)
( ) ( 20321
212303 33 NNNNH −+−= )
)
) ]
) ]
(4.13)
( ) ( 20321
212304 NNNNH +++= (4.14)
( )( ) ( ) ([( )( ) ( ) ( )[ ]2
03212
123003210321
20321
21230123012305
33
33
NNNNNNNN
NNNNNNNNH
−−+−−
+−−++−= (4.15)
( ) ( ) ([( )( ).4 0321123011
20321
2123002206
NNNNNNNNNNNH
−−+−−−−= (4.16)
4.2.2 Descripteurs de Fourier
Les descripteurs de Fourier sont une représentation en une dimension d’une
silhouette en deux dimensions. La transformée de Fourier du « profil de distance
centroïdale » est prise pour obtenir cette représentation [Reeves et coll. 1988]. Le profil
27
de distance centroïdale d’un objet est défini comme la distance entre le centre de gravité
et le contour de ce dernier. La figure 4.4 présente un exemple d’objet 2D (à gauche) et
son profil de distance centroïdale (à droite). Notons que, par convention, la plus grande
valeur de distance est fixée à 0°. Cette représentation est invariante en translation. Pour
avoir l’invariance en rotation, la transformée de Fourier du profil [Reeves et coll. 1988]
est utilisée. La transformée de Fourier discrète permet d’obtenir une mesure invariante en
rotation.
angle0o 360o
Forme Distance centroïdale
Figure 4.4 Exemple de la distance centroïdale d’un carré
Les basses fréquences, c’est-à-dire les premiers descripteurs, représentent
l’information à propos de la forme générale de l’objet. Les hautes fréquences représentent
les détails de l’objet. Les descripteurs de Fourier sont utilisés pour la reconnaissance
d’avions [Reeves et coll. 1988] et du plancton [Tang et coll. 1996].
Le contour d’une silhouette est composé d’une série de pixels consécutifs. La
distance centroïdale r(i), c’est-à-dire la distance entre le centre gravité de l’objet et son
contour, peut être définie par la relation 4.17.
( ) ( ) ( ) 22
0)()( cc
niyiyxixir −+−=
→= (4.17)
où n est le nombre de pixels composant la silhouette. Comme indiqué précédemment,
étant donné que cette fonction est calculée autour du centre de gravité, elle est de fait
invariante en translation. La transformée de Fourier discrète (TFD) est utilisée pour
extraire la signature du contour de la silhouette. Les amplitudes de la TFD sont des
valeurs invariantes en rotation. L’invariance en homothétie est obtenue en normalisant
28
toutes les amplitudes de la TFD par la première amplitude de la TFD comme l’exprime la
relation 4.18:
FD
FF
FF
FFN=
1
0
2
0
2
0
, ,..., /
(4.18)
où N est le nombre de points dans la TFD et Fi la ième amplitude du spectre de Fourier.
4.2.3 Descripteurs géométriques
Il existe plusieurs descripteurs géométriques pouvant servir à l’identification des
poissons. Voici les huit descripteurs géométriques choisis pour l’identification des
poissons :
• Longueur. La mesure de longueur utilisée est la longueur donnée par le
capteur de silhouettes (en centimètre). Cette mesure est évaluée par l’équation
3.3. La figure 4.5 donne un exemple d’une mesure de longueur. Tel que
mentionné au chapitre précédent, en pratique, cette mesure est peu fiable si
l’objet change de vitesse à l’intérieur du capteur.
Figure 4.5 Longueur d’une silhouette de grand brochet
• Hauteur. La mesure de hauteur du poisson est calculée à partir de la hauteur
maximum du poisson. Cette hauteur est évaluée en centimètre, tel que montré
29
à la figure 4.6, sachant que la distance entre deux diodes infrarouges est de
5mm.
Figure 4.6 Hauteur d’une silhouette de grand brochet
• Rapport longueur sur hauteur. Comme son nom l’indique, ce paramètre est le
rapport entre la mesure de longueur du poisson et la mesure de hauteur, tel
qu’exprimé par l’équation 4.19.
hauteur
longueur=hauteursur longueur Rapport (4.19)
• Surface. La surface d’un objet est le nombre de points (ou pixels) qui le
composent. Cette mesure est illustrée par la figure 4.7.
Figure 4.7 Surface d’une silhouette d’achigan
30
• Compacité. La compacité d’un objet s’exprime par la relation 4.20:
S
PCompacité4
2
π= (4.20)
où P est le périmètre et S est la surface du poisson. Une des caractéristiques de
ce paramètre est qu’il est invariable par rapport à la taille de l’objet. Il est
minimum dans le cas d’un disque.
• Périmètre. Le périmètre est la longueur de la ligne qui délimite le contour d’un
objet. Le périmètre se calcule selon le principe de Freeman [Castignolle,
1995]. Cette mesure fonctionne en comptabilisant le nombre N1 de segments
droits (horizontaux et verticaux) et le nombre N2 de segments diagonaux. La
figure 4.8 illustre ceci. La valeur du périmètre est alors exprimée par
l’équation 4.21 :
21 2NNP += (4.21)
Segments horizontaux et verticaux :
Segment diagonaux :
Figure 4.8 Calcul du périmètre
31
•
•
Taux de concavité. Le taux de concavité d’un objet est le rapport entre la
surface de l’enveloppe convexe de l’objet et la surface de l’objet.
Rapport entre la surface du poisson et la surface du rectangle. Comme son
nom l’indique, ce paramètre est le rapport entre la surface du plus petit
rectangle qui englobe totalement le poisson et la surface du poisson. La figure
4.9 illustre ce paramètre, calculé selon l’équation 4.22.
Poisson
Rectanglepoisson surface- rectangle surfaceRapport SS
= (4.22)
Figure 4.9 Enveloppe rectangulaire d’une silhouette
4.2.4 Série de hauteurs
Une série de paramètres simples et qui représentent bien la forme d’un poisson
sont des mesures de hauteurs régulièrement espacées sur toute la longueur du poisson. La
figure 4.10 montre la forme de la série de hauteurs pour une silhouette d’un grand
brochet. Cette mesure est invariable en translation et partiellement invariable en rotation.
C’est-à-dire qu’une légère rotation de la silhouette, comme c’est le cas en pratique,
modifie peu ou pas la série de hauteurs. Un paramètre semblable a déjà été utilisé sur une
des premières versions de l’algorithme de reconnaissance de formes de Strachan
[Strachan, 1990]. Dans ce cas-ci, la silhouette est divisée en 32 hauteurs régulièrement
espacées.
32
Figure 4.10 Série de hauteurs d’une silhouette d’un grand brochet
4.3 Classification des espèces
Plusieurs méthodes ont été développées dans le passé pour associer les
observations aux interprétations. En général, trois types d’approches peuvent être
distingués à la reconnaissance de formes : les méthodes dites statistiques, les méthodes
connexionnistes et les méthodes syntaxiques. Cette taxonomie est simple, mais d’autres
taxonomies existent [Kulkarni et coll. 1998] [Jain et coll. 2000].
Comme le montre la figure 4.11, trois classificateurs de natures différentes ont été
choisis pour le logiciel d’analyse : un classificateur de type statistique et deux
classificateurs de type connexionniste.
33
Extraction des paramètres
Fusion des décisions
Classification des espèces
Estimation dumaximum de
vraisemblance
Quantificationvectorielleadaptative
Réseaux deneuronesartificiels
Figure 4.11 Approche pour la reconnaissance de formes du projet
Dans l’approche statistique, les distributions des observations sont associées aux
statistiques [Duda et coll. 1973]. Il existe deux types de méthodes statistiques : les
méthodes paramétriques et les méthodes non-paramétriques. Les méthodes paramétriques
assument une forme connue pour la distribution des interprétations. Les méthodes non-
paramétriques ne font pas d’hypothèses sur les formes des densités de probabilités. Les
méthodes statistiques les plus populaires sont [Kulkarni et coll. 1998] : les estimateurs de
vraisemblance Bayesien, la fenêtre de Parzen et la méthode des k-plus-proches-voisins.
La méthode choisie est paramétrique, soit un estimateur de vraisemblance Bayesien,
décrit à la section 4.3.1.
Le cerveau humain fait de la reconnaissance comme nulle autre machine n’en est
capable. Ce n’est donc pas surprenant que la structure du cerveau serve de source
d’inspiration pour créer des méthodes performantes de reconnaissance de formes [Haykin
1999]. Le cerveau est une structure composée de milliards de cellules appelées neurones.
Les approches connexionnistes modélisent mathématiquement différentes propriétés ou
opérations des neurones. Ces méthodes sont de natures très différentes, mais elles sont
toutes basées de près ou de loin sur un modèle du fonctionnement du cerveau humain.
Plus de détails sur les méthodes connexionnistes se trouvent dans [Haykin 1999]. Les
deux méthodes choisies, quoique appartenant à l’approche connexionniste, sont bien
34
différentes dans leur fonctionnement : les réseaux de neurones multi-couches à rétro-
propagation de l’erreur et la quantification vectorielle adaptative. Les réseaux de
neurones multi-couches à rétro propagation de l’erreur sont décrits à la section 4.3.2 et le
quantificateur vectoriel adaptatif l’est à la section 4.3.3.
4.3.1 Estimateur de vraisemblance Bayesien
L’estimation par maximum de vraisemblance est une méthode paramétrique basée
sur l’approche probabiliste et la théorie de Bayes. La densité de probabilité est définie par
une forme paramétrique connue, soit la forme gaussienne [Duda et coll. 1973]. Elle existe
sous une forme dite linéaire et une forme dite quadratique, la première étant une
simplification de la deuxième. Cette méthode statistique a l’avantage de ne pas trop
nécessiter de calculs pour la classification. Elle peut être considérée comme optimale si la
distribution des classes est normale. Toutefois, l’estimation du maximum de
vraisemblance nécessite un grand nombre d’échantillons afin de bien évaluer la
distribution statistique des interprétations. Cette méthode est utilisée dans de nombreux
systèmes de reconnaissance de formes. Elle a été utilisée entre autres pour la
reconnaissance de poissons [Castignolles 1995] [Loonis 1996] et d’espèces d’oiseaux par
leurs chants [McIlraith et coll. 1997].
La méthode fonctionne comme suit. Soit la probabilité que l’observation v
appartienne à la classe ci, que l’on écrit P(ci v). L’objectif est de minimiser l’erreur de
classification, ce qui équivaut à minimiser la probabilité de faire une erreur de
classification, comme exprimé par la relation 4.23:
( ) ( )∑≠
=ji
| minarg vv ij
cPF (4.23)
où cj est la classe à laquelle l’observation v appartient. L’observation doit absolument
appartenir à une des classes. Donc, la somme des probabilités que l’observation v
appartienne à une des classes doit être égale à 1. En remplaçant dans 4.23, la relation 4.24
est obtenue:
35
(4.24) ( ) ( )vv | maxarg1 ii
cPF −=
où
( ) ( vv | maxarg| ii
j cPcP = )
)
(4.25)
Le problème de minimiser l’erreur de classification revient donc à maximiser
P(ci v). En utilisant la règle de Bayes, P(ci v) s’exprime par l’équation 4.26:
( ) ( ) (( )v
vv
PcPcP
cP iii
|| = (4.26)
où P(ci) est la probabilité d’apparition a priori de la classe ci, P(v ci) est la densité de
probabilité de la classe ci et P(v) la densité de probabilité de l’observation v. Étant donné
que P(v) est la même pour chaque classe, cette variable n’intervient pas dans la
maximisation de P(ci v) dans l’équation 4.27:
(4.27) ( ) ( )vv ii
gF maxarg=
où
(4.28) ( ) ( ) ( )iii cPcPg |vv =
Supposons une densité de probabilité gaussienne pour la classe ci, exprimée par
l’équation 4.29:
( )
−Σ−− −
Σ=
)()(21 1
21|
iit
i vv
idi ecP
µµ
πv (4.29)
36
où Σi est la matrice de covariance associée à la classe ci et µi est le vecteur moyen associé
à la classe ci. Les vecteurs de moyennes et les matrices de covariances se calculent à
partir de la base de données d’entraînement. La fonction discriminante est représentée par
gi(v). Pour déterminer la classe d’une observation, la fonction gi(v) doit être maximisée.
La figure 4.12 résume le fonctionnement de l’estimation du maximum de vraisemblance
Bayesien.
Maximum
...
Décision
moyenne 1
g (x)1
matrice decorrélation 1
moyenne 2
g (x)2
matrice decorrélation 2
moyenne i
g (x)i
matrice decorrélation i
Figure 4.12 Fonctionnement de l’estimation par maximum de vraisemblance Bayesien
En remplaçant par la densité gaussienne, en prenant le logarithme et en simplifiant
un peu, gi(v) s’exprime par l’équation 4.30. Cette simplification est possible étant donné
la monotonicité des logarithmes. Maximiser une variable ou son logarithme revient au
même.
( ) ( ) ( ) ( )( ) ∑∑ −+−−−= −
iii it
ii cPg ln21ln
21 1 µµ vvv (4.30)
Cette règle de décision se nomme la règle de décision bayésienne quadratique, car
la fonction a une forme quadratique par rapport à v. Dans le cas d’une décision
quadratique, la matrice de covariance et la moyenne sont différentes pour chacune des
classes. En supposant que la matrice de covariance est la même ou suffisamment proche
pour chacune des classes, gi(v) s’exprime par la relation 4.31. Cette fonction
37
discriminante est linéaire par rapport à v, ce qui est qualifié de décision bayésienne
linéaire.
( ) ( )iit
it
ii cPg ln21 11 +−= ∑∑ −− µµµ vv (4.31)
Donc, pour résumer, l’estimation du maximum de vraisemblance choisit la classe
dont la probabilité de se tromper est minimisée par rapport aux autres classes. Cette
méthode statistique paramétrique a l’avantage de ne pas trop nécessiter de calculs pour la
classification, une fois les moyennes et covariances pour chaque classe calculée.
4.3.2 Réseau de neurones artificiels multi-couches à rétro-propagation de l’erreur
Parmi les méthodes dites connexionnistes, les réseaux de neurones artificiels
multi-couches à rétro-propagation de l’erreur (Multi-Layered Perceptron with error
backpropagation ou MLP) sont de loin les plus utilisés et les plus populaires [Haykin
1999]. Les réseaux de neurones multi-couches à rétro-propagation de l’erreur sont en fait
des fonctions mathématiques complexes et fortement non-linéaires. Ces réseaux sont
composés de couches, qui sont elles mêmes composées d’éléments appelés neurones.
Chaque neurone a pour entrée les sorties de chacun des neurones de la couche
précédente. Ces entrées sont pondérées par les poids, pour ensuite être combinées et
traitées par une fonction d’activation. Les poids entre les neurones sont fixés lors de
l’apprentissage. L’ajustement des poids se fait de façon à réduire l’erreur quadratique
entre les valeurs obtenues en sortie et les valeurs désirées. Le gradient de l’erreur est
utilisé à cette fin. Le processus se poursuit jusqu’à la convergence, c’est-à-dire tant que
l’erreur totale n’atteint pas une valeur inférieure à un seuil.
Les réseaux de neurones multi-couches sont reconnus pour leurs excellentes
capacités de généralisation. Ils nécessitent un long entraînement où la convergence est
d’autant plus difficile que la dimension des vecteurs d’observation augmente. Ils sont
utilisés entre autres pour la reconnaissance de caractères manuscrits [Cho et coll. 1995],
la reconnaissance de poissons [Loonis, 1996], la reconnaissance de véhicules [Prampero
38
et coll. 1998], la classification d’images satellites [Benediktsson et coll. 1998] et la
reconnaissance des empreintes digitales [Jain et coll. 1999].
Tel que mentionné plus haut, un MLP est composé de cellules élémentaires,
nommées neurones (appelées aussi perceptrons), organisées en plusieurs couches en
cascade. Chaque couche est reliée avec la ou les couches voisines. Il est à noter que les
réseaux MLP ne présentent pas de cycle, chaque cellule ne dépendant que des neurones
antérieurs et du biais.
Tel qu’illustré à la figure 4.13, des réseaux de neurones à trois couches sont
utilisés dans ce projet. Voici la fonction de chacune des couches :
1. La couche d’entrée est formée de neurones qui transmettent un vecteur
d’entrées, aussi appelé le vecteur d’observation, à la couche suivante.
2. La couche cachée est formée de neurones qui sont reliés à toutes les cellules
de la couche précédente et à toutes celles de la couche suivante.
3. La couche de sortie regroupe les neurones de sortie en fonction des sorties de
la couche cachée précédente.
39
{ { {couched'entrée
couchecachée
couchede sortie
sign
aux
d'en
trées
sign
aux
de so
rties
Figure 4.13 Structure d’un MLP
Un neurone est une cellule de calcul élémentaire. Chaque neurone possède
plusieurs entrées, ei, et une sortie sj, illustré à la figure 4.14. Chaque lien entre neurone de
différentes couches est pondéré par un poids w, dit poids synaptique par analogie aux
neurones biologiques. En fonctionnement normal, la dynamique d’un neurone est de type
propagation vers l’avant (feedforward propagation), c’est-à-dire que les signaux se
propagent de l’entrée vers la sortie. La sortie d’un neurone se calcule en faisant une
combinaison linéaire des signaux entrant dans ce neurone et en limitant le résultat.
L’équation 4.32 décrit cette opération :
(4.32)
= ∑=
−N
i
kj
kij
kj swfs
1
1
où wijk est le poids entre la sortie du perceptron i de la couche k-1, sj
k-1 est la sortie du
perceptron i de la couche k-1 et le perceptron j de la couche k, alors que sj est la sortie du
perceptron j de la couche k et f() est la fonction d’activation.
40
w
w3j
w4jw5j
wnj
...
n
Σ sj
fonctiond'entrée
fonctiond'activation sortie
1j
e 1j
e 2j
e 3j
e 4j
e 5j
e nj
...
w2j
Figure 4.14 Modèle d’un neurone artificiel
Le rôle de la fonction d’activation est de limiter la sortie. Il existe plusieurs
fonctions d’activation utilisées en pratique : la fonction signe, la fonction sigmoïde et la
fonction tangente hyperbolique (tanh). Tel que recommandé dans [Haykin, 1999], la
fonction tanh est utilisée. Cette dernière est illustrée à la figure 4.16 et décrite par
l’équation 4.33.
( ) ( ) vv
vv
eeeevvf −
−
+−== tanh (4.33)
-1.5
-1
-0.5
0
0.5
1
1.5
-3
-2.7
-2.3 -2
-1.6
-1.3
-0.9
-0.5
-0.2
0.15 0.
5
0.85 1.
2
1.55 1.
9
2.25 2.
6
2.95
x
y =
tanh
(x)
Figure 4.15 Fonction d’activation tanh
L’apprentissage se fait en utilisant l’algorithme de rétro-propagation de l’erreur
du gradient. Cet algorithme permet de corriger l’erreur issue de la propagation vers
41
l’avant de l’information. Des couples observations-interprétations de la base de données
d’entraînement servent à entraîner le réseau. Les sorties du réseau sont comparées aux
sorties désirées. Puisque chaque poids reliant les neurones ont concouru à la création du
vecteur de sortie, l’erreur finale doit être redistribuée de façon rétroactive sur chacun des
poids reliant les neurones des couches précédentes. Ceci permet de corriger pas à pas les
pondérations associées à chaque lien entre les neurones des couches voisines. Ce
processus est répété itérativement jusqu’à la convergence, c’est-à-dire tant que l’erreur
n’atteint pas une valeur inférieure à un seuil ou pour un nombre fini d’itérations.
Le principe d’apprentissage consiste en fait à trouver les poids qui minimisent
l’erreur entre la sortie si, obtenue sur la couche de sortie et la sortie désirée di. Plus
spécifiquement, ce critère consiste à minimiser l’erreur quadratique globale sur
l’ensemble d’apprentissage tel que définie par la relation 4.34.
(∑ −=i
iki dsE 2
21 )
)
)
(4.34)
L’algorithme du gradient appliqué à un MLP se résume à l’expression 4.35 :
(4.35) ( ) ( ) ( tikij
kij Etwtw ∇⋅−=+ ε1
où ε est le pas de variation aussi nommé le taux d’apprentissage, puis ∇ i est le vecteur de
gradient d’erreur entre le neurone i et les neurones de la couche précédente. Le gradient
est différent s’il vient d’un neurone de sortie et d’une couche cachée. Le tableau 4.1 en
présente les équations [Haykin, 1999].
Tableau 4.1 Gradient de l’erreur
Perceptrons de sortie ( ) ( iiti afEE '=∇
Perceptrons des couches cachés ( ) ( ) ( )∑ ∇=∇
jtjijiti EwafE '
42
Le taux d’apprentissage peut être fixe ou bien varier selon une règle. Dans ce
projet, nous utilisons une règle inspirée du Neural Networks Toolbox [Demuth et coll.
1997] pour Matlab. À chaque époque, le taux d’apprentissage varie selon l’évolution de
l’erreur. Cet algorithme de variation du taux d’apprentissage fonctionne de la manière
suivante : si l’erreur augmente de plus que d’un seuil d’erreur (maximum error ratio), le
taux d’apprentissage est réduit d’un pourcentage nommé le taux de réduction (learning
rate decrease). Dans le cas contraire, le taux d’apprentissage est augmenté d’un
pourcentage nommé le taux d’augmentation (learning rate increase). L’heuristique
derrière cette algorithme est que l’augmentation de l’erreur du réseau peut être attribuable
à un rythme d’apprentissage trop élevé.
4.3.3 Quantification vectorielle adaptative
La quantification vectorielle adaptative (Learning Vector Quantization ou LVQ)
[Kohonen 1989] est une autre méthode de l’approche dite connexionniste, bien qu’elle
soit très différente des MLP. La quantification vectorielle adaptative construit un livre de
codes (codebook) composé de vecteurs qui représentent bien les interprétations. Afin de
reconnaître l’interprétation à partir d’une nouvelle observation, le LVQ consiste à
chercher le vecteur du livre de codes le plus près (selon une mesure de proximité) et
assigner l’interprétation de ce vecteur à l’observation. La mesure de proximité la plus
souvent utilisée est la distance Euclidienne entre un vecteur à interpréter et les vecteurs
du livre de codes.
Selon Kohonen [Kohonen 1989], cette méthode fonctionne mieux que les
estimateurs par maximum de vraisemblance, probablement parce qu’elles ne se basent
pas sur aucune forme paramétrique pour modéliser la distribution. La méthode LVQ est
utilisée dans plusieurs systèmes de reconnaissance de formes, comme par exemple pour
la reconnaissance de plancton [Tang et coll. 1996].
La quantification vectorielle adaptative est une méthode qui ressemble beaucoup à
la méthode des k-plus-proche-voisins dans le cas où k = 1 [Duda et coll. 1973]. Les deux
méthodes évaluent la proximité d’une observation à des vecteurs. La différence entre les
43
deux méthodes est que les k-plus-proche-voisins utilisent toutes les observations de la
base de données d’entraînement comme vecteurs pour évaluer la distribution des
interprétations, tel qu’illustré à la figure 4.16. Dans cet exemple, étant donné que le
vecteur de la base de données le plus près de l’observation à interpréter appartient à la
classe « o », on considère que l’observation appartient à la classe « o ». Dans le cas de la
méthode LVQ, plusieurs observations représentatives pour chaque interprétation sont
créées. Ces observations représentatives ou vecteurs, composent le livre de codes. Les
observations de la base de données d’entraînement sont utilisées pour ajuster de façon
adaptative les vecteurs du livre de codes lors de l’apprentissage, tel que montré à la figure
4.17. Dans cet exemple, le vecteur du livre de codes le plus près de l’observation
appartient à la classe « o », alors il est possible de considérer que l’observation appartient
à la classe « o ».
o xxxxxx xx
xxxxx
x
x
x
xxx x
xx
x
x
x
xx
xx
x
xx
x xx
xo
o ooo ooo ooo
o
oo
oo
o
ooo
o
o
o
oo
o
o
o
observation à interpréter
Figure 4.16 Fonctionnement de la méthode des k-plus-proches-voisins
44
o xxxxxx xx
xxxxx
x
x
x
xxx x
xx
x
x
x
xx
xx
x
xx
x xx
xoo oo
o ooo ooo
o
oo
oo
o
ooo
o
o
o
oo
o
o
o
o
oo
ox
xx
x
livre decodes
classe "o"
livre de codesclasse "x"
observation à interpréter
Figure 4.17 Fonctionnement de la méthode LVQ
D’une manière plus spécifique, la quantification vectorielle crée M vecteurs de
références, constituant ainsi le livre de codes. Ces vecteurs de références doivent
représenter le mieux possible les vecteurs de la base d’entraînement. Le nombre de
vecteurs par classe dans le livre de codes représente la densité de probabilités des classes,
c’est-à-dire qu’une classe qui est plus présente qu’une autre dans l’ensemble
d’entraînement aura plus de vecteurs la représentant dans le livre de codes. Le nombre de
vecteurs par classe dans le livre de codes est donc proportionnel à la probabilité a priori
de la classe.
Chaque vecteur du livre de codes est associé à une classe. Un vecteur
d’entraînement de l’ensemble d’entraînement, appelé v, et appartenant à la classe ce se
définit par la relation 4.37.
v ∈ ce (4.37)
Le vecteur du livre de code, li, est le plus près de v et appartenant à la classe ci se
trouve à partir de la relation 4.38.
45
vll jj
i −= minarg (4.38)
où li ∈ ci (4.39)
La détermination de la classe d’une observation se fait en choisissant le vecteur de
tous les livres de codes qui est le plus près du vecteur d’observation. La figure 4.18
résume le fonctionnement de la quantification vectorielle adaptative.
Minimum
...
Décision
Livre de codes classe 1
...
Livre de codes classe 2
...
Livre de codes classe i
...
Figure 4.18 Fonctionnement de la quantification vectorielle adaptative
Lors de l’entraînement, les vecteurs du livre de codes sont d’abord initialisés de
façon aléatoire. Ensuite, un entraînement optimise les vecteurs du livre de codes afin
qu’ils représentent le mieux possible l’ensemble d’entraînement. Les vecteurs du livre de
codes sont mis à jour par la règle d’apprentissage exprimée par les équations suivantes
(4.40) :
ikl
CClvlCClvl
i
kiii
kiii
≠=∆≠−−=∆=−=∆
pour 0 si )( si )(
αα
(4.40)
où α est le taux d’apprentissage. Il est important de remarquer que seul le vecteur li est
mis à jour. La direction de la correction dépend de l’appartenance ou la non-appartenance
du vecteur de l’ensemble d’entraînement à l’une ou l’autre des classes. En fait, les
46
vecteurs du livre de codes ont tendance à se rapprocher des régions où la classification est
exacte et à s’éloigner des régions où la classification est erronée.
4.4 Modularité et extensibilité pour l’identification des espèces
Notre système de reconnaissance de poissons doit non seulement permettre à
l’utilisateur d’ajouter des espèces au classificateur, mais aussi de choisir les espèces
auxquelles il est intéressé. Les méthodes choisies doivent donc permettre à l’utilisateur de
pouvoir désactiver certaines classes (ou espèces) et même d’en entraîner de nouvelles
sans avoir à réentraîner les classificateurs déjà existants. Cette caractéristique a été
nommée la modularité des classificateurs. Elle permet au logiciel d’analyse de pouvoir
tenir compte de la faune spécifique à chaque rivière.
Beaucoup de méthodes utilisées en reconnaissance de formes n’offrent pas de
modularité : les classificateurs doivent être entraînés de nouveau lorsque les classes à
reconnaître changent. Les méthodes pouvant être utilisées de façon modulaire sont entre
autres certaines des méthodes statistiques bien connues [Duda et coll. 1973] : estimateurs
de vraisemblance, la fenêtre de Parzen et la méthode des k-plus-proche-voisins.
Les classificateurs dits « à une classe » sont une autre solution qui pourrait
permettre d’avoir cette modularité [de Ridder et coll. 1998] [Murshed et coll. 1996]
[Kung et coll. 1995] [Jou et coll. 1999] [Lee et coll. 1999]. Les méthodes dites « à une
classe » ne nécessitent que la classe donnée pour leur entraînement. Dans ce type de
problème, le but est de différencier une classe par rapport à tout le reste de l’espace de
représentation. Les classificateurs habituels nécessitent des exemples négatifs pour
l’entraînement. Très peu de méthodes de ce type existent en pratique.
Nous présentons dans les sections qui suivent l’utilisation des méthodes choisies
dans le contexte de la modularité et extensibilité de la classification des espèces pour
notre projet.
47
4.4.1 Estimation de vraisemblance Bayesien modulaire
La première des trois méthodes choisies, soit l’estimation du maximum de
vraisemblance, est déjà modulaire. En effet, il n’existe aucune interaction entre les
différentes classes lors de l’entraînement. Chaque classe est composée d’un vecteur de
moyenne des paramètres et d’une matrice de corrélation des paramètres. En assemblant
les vecteurs de moyennes et les matrices de corrélation des espèces choisies, tel qu’il est
présenté à la figure 4.12, un classificateur qui ne tient compte que des espèces d’intérêts
est obtenu.
4.4.2 Quantification vectorielle adaptative modulaire
Même si elle n’est pas faite pour être utilisée de façon modulaire en tant que telle,
la quantification vectorielle adaptative pourrait être utilisée de façon modulaire sans trop
d’effet sur sa performance. Si les exemples négatifs ont été bien choisis, la dégradation
des performances à cause du manque d’exemples négatifs ne devrait pas trop nuire. Les
classes de la LVQ sont composées de livres de codes composés eux-mêmes de vecteurs.
Il y a un livre de codes par classe. Encore une fois, seuls les livres de codes des espèces
d’intérêts sont assemblés (comme le montre la figure 4.18) pour former un classificateur
modulaire.
4.4.3 Réseau de neurones multi-couches modulaire
Les MLP ne permettent pas de désactiver une classe ou d’en ajouter une autre. Ils
n’offrent pas cette modularité. Si une ou des classes doivent être modifiées, le réseau doit
être entraîné de nouveau. Étant donnée la longueur de l’entraînement des MLP, ceci est
inacceptable pour ce projet.
Habituellement, les MLP utilisés en reconnaissance de formes se composent d’un
seul réseau avec une sortie pour chaque classe. La classe choisie est la classe qui a eu la
plus grande valeur en sortie. Ce type de réseau est illustré à la figure 4.19.
48
Maximum
Décision
sortieclasse 1
sortieclasse 2
...sortie
classe i
Figure 4.19 Structure d’un MLP classique en reconnaissance de formes
L’approche « une classe un réseau » (one class one network ou OCON) [Pandya
et coll. 1995] est utilisée avec succès depuis quelques années. Dans cette approche,
chaque classe est entraînée sur un sous-réseau individuel. Chaque sous-réseau possède
une sortie. Dans l’approche « une classe un réseau », il y a autant de sous-réseaux à une
sortie qu’il y a de classes. Comme dans l’approche classique, le résultat de classification
consiste à choisir la classe du sous-réseau dont la sortie est la plus élevée. Ce type de
réseau est illustré à la figure 4.20.
49
...
Maximum
Décision
Réseau de la classe 1
Max
sortieclasse 1
Réseau de la classe 2
Max
sortieclasse 2
Réseau de la classe i
Max
sortieclasse i
Figure 4.20 Structure d’un MLP OCON
Dans la littérature, plusieurs méthodes existent pour calculer la sortie des réseaux
individuels. Quelques brefs essais nous ont permis de choisir la méthode présentée. La
méthode utilisée dans ce projet utilise deux neurones de sortie comme le montre la figure
4.20. La première sortie définit l’appartenance à la classe du réseau et la deuxième définit
la non-appartenance à la classe [Drouhard et coll. 1994]. Lorsque l’observation présentée
appartient à la classe que représente le réseau, la première sortie est à 1 et la deuxième est
à -1. Si l’observation appartient à une autre classe, c’est le contraire : la première sortie
est à -1 et la deuxième est à 1. La sortie finale est obtenue en soustrayant les deux sorties
tel que présenté à l’équation 4.41.
sréseau = s1 - s2 (4.41)
Les coefficients de classification pour une classe donnée correspondent ici aux
poids synaptiques du réseau de neurones une fois entraîné.
4.4.4 Coefficients représentant une espèce
La figure 4.21 montre les différents coefficients des classificateurs représentant
une classe ou une espèce. Ces coefficients sont pour chaque classe : un vecteur moyenne,
une matrice de corrélation, un livre de codes contenant N vecteurs et deux matrices de
50
poids synaptiques. Ce sont à l’aide de ces coefficients que le logiciel d’analyse peut
tenter d’identifier les espèces des poissons. Une fois toutes les espèces d’intérêts
sélectionnées pour l’identification, les coefficients de chacune des classes sont assemblés.
.
Classifieur pour 1 espèce
Maximum de vraisemblance
moyenne (1 x n)
matrice decorrélation
(n x n)
LVQ
C = nbr de vecteurs dansle livre de codes
Livre de codes(C x n)
n = nombre de paramètres
Réseau de neurones MLP
Poids synaptiques
Nbr. de poids synaptique =n x NC + NC x 2
Figure 4.21 Coefficients des classificateurs pour une espèce
4.5 Fusion des décisions par une approche multi-classificateurs
La méthode classique en reconnaissance de formes consiste à utiliser un seul
classificateur pour faire l’association entre les observations et les interprétations. Lorsque
le problème prend de l’ampleur et gagne en complexité, le classificateur tend aussi à
grossir et ses performances à diminuer. Ainsi, dans les applications réelles, qui sont
généralement très complexes, les performances sont souvent moins bonnes.
Une approche multi-classificateurs consiste à utiliser différents classificateurs
ayant des propriétés ou même des paramètres distincts [Suen et coll. 1992] [Ho et coll.
1994] [Kittler et coll. 1998]. Ces classificateurs sont individuellement plus petits, mais le
résultat combiné a tendance à être plus performant que le meilleur des classificateurs
individuels [Suen et coll., 1992]. Un multi-classificateurs est composé de deux types de
blocs, comme illustré à la figure 4.22 : les classificateurs individuels et le bloc de fusion.
Les classificateurs individuels ont chacun des entrées qui leurs sont propres et un jeu de
paramètres différents des autres. Le bloc de fusion reçoit ses entrées des classificateurs et
choisit la classification finale.
51
Classificateur 1
. . .paramètres 1
Classificateur n
. . .
Classificateur 2
. . .
. . .
Fusion
classification
paramètres 2 paramètres n
Figure 4.22 Approche multi-classificateurs
Fusionner l’interprétation de plusieurs classificateurs améliore les performances
parce que les lacunes de chaque classificateur individuel sont comblées en combinant les
résultats de tous. Les classificateurs étant différents, ils n’ont probablement pas toutes les
mêmes limitations. De plus, le fait d’avoir plusieurs classificateurs qui confirment
l’identification donne une plus grande confiance dans cette dernière. Cela évite aussi les
instabilités dues à un seul classificateur.
Plusieurs méthodes de fusion de classificateurs existent [Suen et coll., 1992] [Ho
et coll. 1994] [Foggia et coll. 1999] [Huang et coll. 1993] [Huang et coll. 1994]. Chaque
méthode de fusion ne s’applique qu’à certains types de classificateurs. Ceci doit être
considéré lors de la sélection d’un algorithme de fusion. Nous avons choisi la fusion par
vote majoritaire pour sa simplicité et sa modularité. La figure 4.23 illustre le principe
d’identification de l’espèce dans notre système avec un classificateur de chaque type pour
chacune des espèces reconnaissables par le système.
52
Classification des espècesEstimation du maximum de vraisemblance
Maximum
...
Quantification vectorielle adaptative
Minimum
...... ... ...
Réseaux de neurones artificiels
...
Maximum
Fusion des décisions par vote
Silhouettes
Extraction des paramètresMoments
invariants deHu
Descripteursde Fourier
Descripteursgéométriques
Série dehauteurs
Figure 4.23 Structure de fusion des décisions des classificateurs
Le vote majoritaire est basé sur la résolution de conflits dans la société humaine
[Suen et coll. 1992] [Lam et coll. 1997]. Lorsqu’il y a conflit dans les opinions de
chacun, la décision est prise par vote majoritaire. Ainsi, chaque classificateur possède un
vote. Chacun vote pour la classe qu’il croit être la bonne. Plusieurs types de majorités
existent, il y a entre autres : la simple majorité (50% et plus), l’unanimité (100%) et la
double majorité (66% et plus).
La fusion par simple majorité possède plusieurs avantages. Elle nécessite peu de
calculs et fonctionne peu importe le type de classificateur utilisé. Toutefois, elle a aussi
l’inconvénient de ne pas tenir compte de l’importance relative de chaque classificateur.
53
En effet, elle donne le même poids à chaque vote, ce qui ne tient pas compte de la
performance relative de chaque classificateur. La fusion par vote est tout de même
appropriée à la reconnaissance de poissons à cause de sa simplicité. De plus, elle peut
être utilisée dans un système modulaire, car elle ne nécessite aucun entraînement ou
connaissance a priori. La fusion par vote majoritaire a été utilisée par plusieurs
chercheurs pour la reconnaissance de caractères manuscrits [Suen et coll. 1992] [Lam et
coll. 1997] et la reconnaissance de signatures [Dimauro et coll. 2000].
4.6 Rejet des débris
La majorité des algorithmes de classification n’ont pas la propriété de rejeter les
observations qui ne ressemblent en rien à une des interprétations apprises, si un objet non
appris est présenté au système, il est associé de façon erronée à l’interprétation la plus
proche. Par exemple, si la silhouette d’un long bâton passait dans notre système, une
interprétation qui ressemble le plus à la forme d’un bâton (la classe anguille par
exemple) pourrait être choisie. C’est pourquoi il faut introduire la notion de rejet. Une
fois l’espèce choisie par la classe, cette décision est évaluée par le bloc de rejet, qui peut
soit l’accepter ou la refuser. Si la silhouette est refusée, cette silhouette est considérée
comme un débris. Ce mécanisme est illustré à la figure 4.24.
54
Classification des espècesEstimation du maximum de vraisemblance
Maximum
...
Quantification vectorielle adaptative
Minimum
...... ... ...
Réseaux de neurones artificiels
...
Maximum
Fusion des décisions par vote
Silhouettes
Extraction des paramètresMoments
invariants deHu
Descripteursde Fourier
Descripteursgéométriques
Série dehauteurs
Bloc de rejet des débris
Figure 4.24 Bloc de rejet
La classification fonctionne donc en deux étapes : la sélection d’une interprétation
suite à la fusion des décisions et ensuite la vérification que l’observation est
suffisamment similaire à cette classe. Cette dernière étape est effectuée par le bloc de
55
rejet. Le rejet s’applique aux observations dont les vecteurs représentatifs sont situés loin
de toutes les classes connues, comme le montre la figure 4.25.
x
o oo
o oo ooo ooo
o oooo
o
oxxxxxx x
xxxx
xxx
x
x
xx
xx
x
x
xx
espèce A espèce B
nouvelleobservation
Figure 4.25 Principe du rejet
La plupart des méthodes de rejets sont basées sur un critère de distance
[Castignolles, 1995] [Clavier et coll. 1999] [Kato et coll. 1999]. Plusieurs types de
mesures de distances existent : la distance Euclidienne, distance Mahalonibis, etc. La
difficulté de ces méthodes réside dans le choix des seuils de rejet. Dans notre projet, la
distance Euclidienne est utilisée comme mesure de distance. Si la distance entre
l’observation et le prototype d’une classe est plus grande qu’un certain seuil Ri, cette
observation est rejetée. Ceci est illustré à la figure 4.26.
56
m
oo
o
o oo oo
o ooo
oo
ooo
o
o
nouvelleobservation
seuil
Figure 4.26 Rejet par distance
Deux solutions sont proposées pour fixer le seuil Ri de la classe i :
1. Ri est fixé à la plus grande distance Euclidienne entre les observations de
l’ensemble d’entraînement appartenant à la classe i et le vecteur d’observation
moyen de la classe i, selon la relation 4.42.
jij
i vmR −= maxarg (4.42)
où mi est le vecteur d’observation moyen de la classe i et vj les vecteurs
d’observation de l’ensemble d’entraînement.
2. Ri est fixé proportionnellement à l’écart-type [Catignolles,1995] de la distribution
des observations de la classe i dans les bases de connaissances
d’entraînement (4.43).
iii kMR σ+= (4.43)
57
où k est une constante à ajuster empiriquement. Mi est la moyenne des distances
entre les observations appartenant à la classe i et le vecteur moyen de la classe i
telle que définie par la relation 4.44:
∑=
−=N
kkii vm
NM
0
1 (4.44)
où N est le nombre d’observations dans l’ensemble d’entraînement et v un vecteur
d’observation. σi est l’écart-type de la distance entre les observations appartenant
à la classe i et le vecteur moyen de la classe i comme le défini la relation 4.45:
∑−
−−=N
kkiii vmM
N 1
1σ (4.45)
58
5. SÉLECTION DES PARAMÈTRES OPTIMAUX
En examinant les sections précédentes avec un peu de recul, il est possible de
constater que nous disposons d’un nombre important de paramètres pour réaliser la
classification. La sélection de paramètres est en fait un des aspects de la reconnaissance
de formes qui nécessite le plus d’expérience et d’ajustement. Une façon d’éviter le
problème est d’automatiser la sélection des paramètres. L’optimisation des paramètres
permet ainsi d’avoir de meilleures performances en classification en réduisant le nombre
de paramètres. La plupart du temps, le taux de reconnaissance ou le temps de calcul des
classificateurs sont optimisés.
Cette section présente les méthodes qui ont été utilisées pour automatiser la
sélection des paramètres utilisées pour les expérimentations [Jain et coll. 1997] [Jain et
coll. 2000] [Kudo et coll. 2000] [Pudil et coll. 1994]. Quatre méthodes sont présentées
dans cette section: la recherche exhaustive, la recherche progressive séquentielle,
l’analyse discriminante pas à pas et les algorithmes génétiques.
5.1 Recherche exhaustive
La recherche exhaustive est la méthode la plus simple, mais aussi la moins
performante. Cette méthode fonctionne en essayant toutes les possibilités de
combinaisons de paramètres et en évaluant leurs performances. Cependant, lorsque le
nombre de paramètres augmente, le nombre d’évaluations nécessaires augmente de façon
exponentielle selon l’équation 5.1 :
59
Nombre d’évaluations = 2n (5.1)
où n est le nombre de paramètres en entrées. Par exemple, pour 46 paramètres, il y a 246
évaluations, soit environ 7 x 1013 évaluations à effectuer. Sur un ordinateur puissant
d’aujourd’hui, un tel calcul prendrait environ 32 millions d’années à compléter! Le seul
avantage de cette méthode est qu’elle garantie de trouver la combinaison optimale de
paramètres. Étant donné les limites de cette méthode, elle n’est utilisée que dans quelques
petits systèmes, par exemple, la reconnaissance de cellules cancéreuses [Murshed et coll.
1996].
5.2 Recherche progressive séquentielle
La recherche progressive séquentielle (Sequential Forward Search, SFS) est assez
simple [Jain et coll. 2000]. Cette méthode de recherche fait partie des méthodes dites
heuristiques. Dans sa version standard des paramètres sont ajoutés un à un en choisissant
à chaque étape celui qui améliore le plus les performances. Au premier pas, l’algorithme
débute dans un espace à une dimension et calcule la performance en considérant les
paramètres un à un. Le paramètre retenu est celui pour lequel la performance est
maximale. Ensuite, l’algorithme travaille dans un espace en deux dimensions et cherche
le paramètre qui, couplé avec celui de l’étape précédente, maximise la performance du
système. La même opération se répète jusqu’à l’obtention d’un classement des p
paramètres par ordre de pouvoir discriminant. La combinaison de paramètres qui donne
la meilleure performance est enfin choisie.
Il faut remarquer que la solution de cette méthode n’est pas optimale, puisque
chaque étape ne remet pas en cause le choix des paramètres déjà introduits. La sélection
du sous-ensemble optimal nécessiterait une recherche exhaustive. Cette méthode ne
nécessite que le nombre d’évaluations décrit par la relation 5.2.
( )2
1 sévaluationd' Nombre += nn (5.2)
60
Dans le cas de 46 paramètres en entrées, 1081 évaluations doivent être réalisées.
Cette méthode a l’avantage d’être assez rapide et est souvent utilisée comme algorithme
de présélection des paramètres. Ainsi, elle est utilisée par divers chercheurs [Kudo et coll.
2000] [Jain et coll. 2000] dans plusieurs domaines d’application.
5.3 Analyse discriminante pas à pas
L’analyse discriminante pas à pas est encore plus simple que la recherche
progressive séquentielle. Elle fait aussi partie des méthodes heuristiques. L’algorithme
évalue d’abord la performance de chacun des paramètres dans un espace à une dimension
en considérant les paramètres un à un. Les paramètres sont ensuite ajoutés
successivement un à un, en les choisissant dans l’ordre de performance dans un espace à
une dimension. Donc, au premier pas l’algorithme sélectionne le paramètre qui avait eu la
meilleure performance lorsque utilisé seul. Au deuxième pas le paramètre classé en
deuxième, soit le deuxième meilleur paramètre, est couplé avec le précédent et la
performance de ce nouveau couple est évaluée. La même opération est répétée jusqu’à
l’obtention d’un classement des p jeux de paramètres par ordre de pouvoir discriminant.
Le jeu de paramètres offrant la meilleure performance est choisi.
Cet algorithme n’est pas plus optimal que l’algorithme de recherche progressive
séquentielle. Le nombre d’évaluation nécessaire est donné par la relation 5.3.
Nombre d’évaluations = 2n - 1 (5.3)
Cette méthode nécessite encore moins d’évaluations que la méthode de recherche
progressive séquentielle. Dans le cas de 46 paramètres en entrées 92 évaluations doivent
être effectuées. Cette méthode a l’avantage d’être très simple. Elle est utilisée par
Castignolles [Castignolles, 1995] dans son étude de la reconnaissance des espèces de
poisson.
61
5.4 Algorithme génétique
L’optimisation par algorithme génétique est appliquée à de nombreux problèmes
d’optimisation [Goldberg, 1989] [Cadieux et coll. 1997]. Elle a été mise au point dans les
années 70 par l’équipe de John Holland à l’Université du Michigan. Après être demeurée
mal connue pendant des années, l’intérêt pour cette méthode s’est accru récemment.
L’avantage de cette méthode d’optimisation est qu’elle trouve une solution qui
s’approche de la solution optimale, et ce même pour des problèmes fortement non-
linéaires [Goldberg, 1989]. Cet algorithme donne de bonnes performances même lorsque
le nombre de dimensions est très élevé. De nombreuses variations quant aux opérateurs et
à l’encodage utilisé existent dans la littérature, mais il n’est question ici que de
l’algorithme génétique simple. Cette version de base est celle la plus souvent utilisée
[Goldberg, 1989]. Les algorithmes génétiques sont utilisés pour la sélection des
paramètres par plusieurs chercheurs [Loonis 1996] [Loonis et coll. 1996b] [Fukumi et
coll. 1996] [Sherrah et coll. 1996].
Les algorithmes génétiques s’inspirent de la sélection naturelle tel que proposé par
Darwin [Darwin 1859] au 19ième siècle. C’est le phénomène de la sélection naturelle qui
permet à la nature « créer » avec succès des organismes adaptés à leur environnement.
Les organismes qui sont le moins adaptés disparaissent peu à peu tandis que ceux qui
survivent et qui sont mieux adaptés peuvent se reproduire. Les descendants sont
semblables à leurs parents, mais pas identiques. Ils retiennent une partie de « la clé du
succès » de leurs parents. Lorsque l’environnement change lentement, les espèces
s’adaptent graduellement et en défavorisant les traits avantageux et défavorisant les traits
désavantageux. Les mécanismes qui gèrent la recherche d’un optimum dans un
algorithme génétique s’inspirent de ce phénomène.
Des opérateurs génétiques servent à faire évoluer artificiellement un ensemble de
vecteurs. Par analogie, l’ensemble des vecteurs est qualifié de population et les vecteurs
sont qualifiés d’individus. Dans les algorithmes génétiques simples, trois opérateurs sont
utilisés : la reproduction, la mutation et le croisement. Les opérateurs modifient de façon
successive la population, ce qui permet d’explorer l’espace de recherche afin de trouver
62
un optimum. Une fonction d’évaluation sert à évaluer l’adaptation des individus. Cette
fonction évalue l’adéquation de l’individu à la solution recherchée. Plus la valeur
qu’évalue la fonction d’évaluation est élevée, plus cet individu est adapté. Chaque
application des trois opérateurs sur une population se nomme une génération ou une
itération. Les étapes détaillées de traitement d’un algorithme génétique sont :
• Reproduction. La reproduction est un mécanisme selon lequel les individus
d’une population sont copiés dans la population de la génération suivante
selon la fonction d’évaluation. Plus la valeur obtenue par la fonction
d’évaluation est grande, plus la probabilité d’être copiée dans la prochaine
population est élevée. La sélection étant aléatoire, les meilleurs ont tendance à
être copiés plusieurs fois dans la prochaine population proportionnellement à
l’importance de la valeur de la fonction d’évaluation des parents dans la
population. Ceux qui sont moins adaptés sont, quant à eux, probablement
abandonnés et non présents dans la population suivante. Cette phase a pour
but d’accroître l’importance des bonnes solutions par rapport aux mauvaises.
Elle tend à augmenter l’uniformité de la population.
63
•
•
•
•
•
•
Croisement. Cet opérateur permet de mélanger les caractéristiques de deux
individus dans la recherche de nouvelles solutions. Le principe consiste à
utiliser l’information contenue dans deux solutions afin d’en produire deux
nouvelles. Des couples sont créés en sélectionnant deux individus de façon
aléatoire. Ensuite, les caractéristiques des individus sont mélangées de façon
aléatoire. Ce type de croisement se nomme le croisement uniforme.
Mutation. La mutation consiste à modifier aléatoirement un individu. La
probabilité que cette modification ait lieu est en réalité très faible. Cet
opérateur permet de changer la direction de l’exploration et ainsi s’extraire
d’un éventuel optimum local.
Fonction d’évaluation. Cette fonction évalue l’adéquation de l’individu à la
solution recherchée. Plus la valeur qu’évalue la fonction d’évaluation est
élevée, plus cet individu est adapté.
Les individus de la population initiale sont initialisés de façon aléatoire.
L’algorithme s’arrête lorsqu’il y a convergence ou après un nombre fixe d’itérations (ou
générations). Dans notre cas, nous avons fait le choix d’arrêter l’algorithme après un
nombre fixe d’itérations. Les paramètres à ajuster pour les algorithmes génétiques
simples sont :
Nombre maximal de générations : spécifie le nombre d’itérations qui
seront effectuées.
Nombre d’individus formant une population : représente en quelque sorte
la mémoire de l’algorithme : plus il est grand, plus l’algorithme a tendance
à garder de bonnes parties de solutions. Cependant, plus la population
contient d’individus, plus il y a d’évaluations.
Probabilité de croisements : spécifie le taux avec lequel les deux individus
parents sont mélangés lors du croisement.
64
• Probabilité de mutations : contrôle la variation aléatoire des individus et
dicte donc l’exploration de l’espace de recherche.
Dans le cas de la sélection de paramètres optimaux en reconnaissance de formes à
l’aide d’algorithmes génétiques, la fonction d’évaluation utilisée est le taux de
reconnaissance du système. Les individus sont composés d’un vecteur de valeurs
booléennes. Il y a une valeur booléenne par paramètre du jeu de paramètre initial. Chaque
valeur booléenne détermine l’inclusion ou la non inclusion du paramètre. Dans la
littérature, une population d’au moins deux fois le nombre de paramètres [Jain et coll.
2000] est recommandée.
Le nombre d’évaluations requises pour une recherche par algorithme génétique
correspond au produit du nombre de générations maximal avec le nombre d’individus tel
qu’exprimées par la relation 5.4.
Nbr. évaluations = Nbr. générations max. x Nbr. individus population (5.4)
65
6. RÉSULTATS D’EXPÉRIMENTATION
Ce chapitre décrit la mise en œuvre expérimentale et les performances des
méthodes de reconnaissance et de comptage du système construit selon les
caractéristiques présentées aux chapitres 3 et 4. Tout d’abord, la section 6.1 présente la
façon dont la base de connaissances a été assemblée. La section 6.2 décrit les espèces de
poissons utilisées. La section 6.3 traite de la topologie des classifieurs utilisés. La section
6.4 met en évidence les performances individuelles et combinées des classificateurs pour
divers jeux de paramètres de reconnaissance. Ces résultats permettent d’évaluer la
performance des différents types de paramètres utilisés pour la caractérisation des
silhouettes de poissons. La section 6.5 décrit l’effort de réduction et d’optimisation qui a
été fait sur le jeu de paramètres d’entrées. Une nouvelle évaluation de la performance du
système pour un jeu de paramètres optimisé est présentée à la section 6.6. La section 6.7
traite de la façon dont la base de connaissances des silhouettes de débris a été élaborée et
présente les résultats expérimentaux de l’algorithme de rejet. Finalement, la section 6.8
discute de l’impact de l’ajout d’espèces à l’algorithme de reconnaissance.
6.1 Essais au barrage de Rivière-des-Prairies
Tel qu’expliqué au chapitre 4, les algorithmes de reconnaissance de formes
nécessitent des connaissances a priori des espèces de poissons à reconnaître. Cette
connaissance prend la forme d’une base de données contenant des silhouettes de poissons
des espèces d’intérêt. Cette dernière doit autant que possible être élaborée à partir
d’images de poissons acquises dans des conditions proches des conditions de
fonctionnement du système, c’est-à-dire dans une passe à poissons et directement avec le
capteur de silhouettes.
66
Nos données ont été prises au cours d’essais qui ont eu lieu au barrage d’Hydro-
Québec de Rivière-des-Prairies. Ce barrage est construit sur la rivière des Prairies, entre
l’île de Montréal et l’île Jésus. Le barrage est doté d’une passe à poissons depuis
quelques années. Cette passe fut choisie pour la diversité de la faune aquatique de la
rivière des Prairies, sa proximité de l’IREQ et la facilité d’accès au site. Les essais ont eu
lieu entre le 18 et le 21 octobre 1999.
Le processus pour la prise de données était fort simple. La passe a été aménagée
afin de permettre l’expérimentation. La figure 6.1 présente l’aménagement initial de la
passe. L’entrée et la sortie du premier bassin de la passe ont été grillagées, créant ainsi
une cage. Nous avons ensuite installé le capteur de silhouettes au milieu de ce bassin. En
lâchant des spécimens vivants dans la passe, une seule espèce à la fois, nous étions sûrs
de l’espèce des silhouettes saisies par le capteur.
grillage
séparateur de la passe
vitre d'observation
courant
capteurs linéaires
unité de contrôle
Figure 6.1 Aménagement de la passe pour la prise de données
La firme Environnement Illimité avait le contrat de capturer des spécimens vivants
pour cette expérience. Les poissons ont été capturés par pêche électrique. Cette méthode
a l’avantage de peu blesser les poissons lors de leur capture. Étant donné l’efficacité de la
pêche électrique, elle n’est généralement utilisée que pour des fins scientifiques.
Brièvement, la pêche électrique fonctionne en envoyant une forte tension électrique dans
67
l’eau, ce qui paralyse les poissons qui sont à proximité des électrodes. Les poissons
paralysés par l’électricité remontent à la surface et sont capturés à l’aide d’épuisettes. La
figure 6.2 montre cette procédure. Un bateau équipé d’une génératrice est utilisé. Le
bateau montré à la figure 6.3, lui-même en aluminium, fait office de cathode et deux
perches font office d’anode.
Figure 6.2 Pêche électrique
Figure 6.3 Chaloupe équipée pour la pêche électrique
Pour toute la durée des tests, les poissons vivants ont été gardés dans deux bassins
aménagés sur le barrage juste à côté de la passe à poissons (tel que montré à la figure
6.4). Les bassins faisaient environ 1,5m de diamètre. Afin de ne pas perdre de spécimens,
68
les poissons prédateurs ont été séparés des autres poissons. L’eau de la rivière était
pompée aux bassins afin de les alimenter en eau oxygénée, ce qui a permis de garder
vivants les poissons plusieurs jours après leur capture.
Figure 6.4 Installation sur la passe
La saisie de données ayant eu lieu tardivement à l’automne, l’eau était froide.
Après avoir mis plusieurs poissons dans notre aménagement de la passe à poissons, il
était évident que ces derniers ne voulaient pas « coopérer » aux essais. Selon les
biologistes, le niveau d’activité des poissons varie avec la température de l’eau : plus
l’eau est froide moins ils sont actifs. Nous avons donc dû changer nos plans. La solution
choisie fut de faire les essais dans un troisième bassin, soit celui montré à la figure 6.5
avec le capteur installé dans cet environnement. Ce nouvel aménagement est présenté à la
figure 6.6.
69
Figure 6.5 Le capteur de silhouettes installé dans un des bassins
capteurs linéaires
pompe
bassin de tests bassin des poissons
eau de la rivièreunité de contrôle
entrée d'eauentrée d'eau
sortie d'eau
vers la rivière
Figure 6.6 Installation des bassins de tests sur la passe à poissons
Les essais ont été faits de la façon suivante : les poissons appartenant à une espèce
étaient d’abord mis dans le bassin de tests. Ensuite, nous agitions les poissons à l’aide
d’une perche pour les forcer à passer dans le capteur de silhouettes. Cette étape durait
environ une heure. Enfin, les poissons étaient remis dans la rivière et nous passions à
l’espèce suivante.
6.2 Ensemble d’entraînement et de tests
Étant donnée la date tardive des essais, les espèces capturées ne sont pas
nécessairement des espèces migratrices. Par exemple, cinq spécimens de poissons-castors
(Amia calva) ont été capturés, même si cette espèce est rarement rencontrée dans la
70
passe. Les espèces capturées servent donc à valider les principes développés et ne sont
pas nécessairement les mêmes espèces que les utilisateurs potentiels du système
voudraient reconnaître. Le tableau 6.1 présente le nombre de poissons et les espèces
capturées.
Tableau 6.1 Liste des poissons capturés
Espèces Nom latin Nombre de spécimens
Achigan à petite bouche Micropterus dolomieui 4 Chevalier blanc Moxostoma anisurum 13 Chevalier rouge Moxostoma macrolepidotum 7 Doré jaune Stizostedion vitreum 10 Doré noir Stizostedion canadense 1 Grand brochet Esox lucius 3 Maskinongé Esox masquinongy 2 Perchaude Perca flavescens 5 Poisson-castor Amia calva 5
Les espèces d’aspects similaires, de formes similaires ou de même famille ont été
regroupées ensemble. En fait, pour classifier un poisson, même les biologistes doivent
regarder de près un spécimen, car la forme n’est pas le seul critère de classification. De
tels regroupements facilitent l’identification de l’espèce par le système. Cinq
regroupements ont ainsi été constitués. Il est à noter que les perchaudes n’ont pas été
utilisées dans les essais, ces dernières étant trop petites pour avoir une bonne définition
avec le capteur de silhouettes (autour de 10 cm). Dans le reste du document, nous
référerons à ces groupements par le terme « espèce » même si ce terme n’est pas exact
d’un point de vue taxonomique, nous devrions plutôt parler de famille. Ces groupements
sont résumés dans le tableau 6.2.
71
Tableau 6.2 Nombre de poissons par groupe
Nom du groupement
Espèces du groupe Nombre de poissons total
Achigans Achigan à petite bouche 4 Brochets Grand brochet et maskinongé 5 Chevaliers Chevalier blanc et chevalier rouge 20 Dorés Doré jaune et doré noir 11 Poisson-castors Poisson-castor 5
Des exemples de silhouettes de chaque espèce saisies avec le capteur de
silhouettes sont donnés aux figures 6.7 à 6.16. Des images réelles [Scott et coll., 1973]
des poissons ont aussi été incluses pour fins de comparaison.
Figure 6.7 Grand brochet (Esox Lucius)
Figure 6.8 Silhouette d’un grand brochet
72
Figure 6.9 Achigan à petite bouche (Micropterus dolomieui)
Figure 6.10 Silhouette d’un achigan à petite bouche
Figure 6.11 Doré jaune (Stizostedion vitreum)
73
Figure 6.12 Silhouette d’un doré jaune
Figure 6.13 Chevalier rouge (Moxostoma macrolepidotum)
Figure 6.14 Silhouette d’un chevalier rouge
74
Figure 6.15 Poisson-castor (Amia Calva)
Figure 6.16 Silhouette d’un poisson-castor
Les silhouettes acquises avec le capteur de silhouettes ont été ensuite triées
manuellement. Elles ont été choisies de telle manière que les poissons soient
reconnaissables « à l’œil » et en enlevant les silhouettes corrompues par autre chose que
des poissons (par la présence de la perche par exemple). Le nombre de silhouettes ainsi
sélectionnées est présenté au tableau 6.3.
Tableau 6.3 Nombre de silhouettes
Espèce Nombre de silhouettes Achigans 208 Brochets 182 Chevaliers 354 Dorés 350 Poisson-castors 106
La base de connaissances a ensuite été séparée en deux parties : l’ensemble
d’entraînement et l’ensemble de test. L’ensemble d’entraînement est constitué de 60
75
silhouettes de chaque espèce et l’ensemble de test est constitué du reste des silhouettes.
La division des ensembles a été faite de façon aléatoire.
6.3 Topologie des classificateurs
Tout au cours des expérimentations, les classificateurs ont été créés en utilisant
l’ensemble des silhouettes d’entraînement. Après plusieurs évaluations préliminaires et
de brèves optimisations manuelles, une configuration qui donne de bons résultats pour
chaque type de classificateurs a été choisie. Cependant, il est possible qu’une recherche
plus approfondie des configurations optimales des classificateurs aurait pu avoir
légèrement améliorer les résultats de classification. Dans ce projet, c’est la structure du
système de classification qui est le point d’intérêt plutôt que le raffinement de chacun de
ses composants.
Voici la configuration des trois classificateurs :
•
•
•
Le classificateur par estimation du maximum de vraisemblance est entraîné en
calculant le vecteur de moyennes et la matrice de covariances pour chaque
espèce. La règle de discrimination utilisée est la règle quadratique.
Le classificateur par LVQ utilise sept vecteurs par espèce dans le livre de
codes. L’entraînement est fait sur 750 époques avec un taux d’apprentissage
de 0,04.
Le réseau de neurones utilise la configuration OCON décrite à la section 4.4.3.
Chaque réseau est composé d’une couche cachée de sept neurones. Chacun est
entraîné à reconnaître une espèce de poisson. Les entraînements se font sur
400 époques, avec un taux d’apprentissage initial de 0,1, un taux
d’augmentation de 0,2 et un taux de réduction de 0,3. Le seuil d’erreur est de
1,02. L’entraînement est en mode séquentiel [Haykin, 1999] et n’utilise pas de
momentum.
76
6.4 Performances par groupements de paramètres
Les premiers tests effectués permirent d’abord d’évaluer la performance
préliminaire des divers groupements de paramètres utilisés pour représenter les
silhouettes. Les paramètres présentés à la section 4.2 ont été divisés en sept groupes :
I. 6 moments de Hu;
II. 2 premiers moments de Hu;
III. 8 descripteurs de forme;
IV. 32 coefficients de Fourier;
V. 32 coefficients de hauteur;
VI. 2 premiers moments de Hu et les 8 descripteurs de forme (II+III);
VII. 6 moments de Hu, les 8 descripteurs de forme et les 32 coefficients de
hauteur (I+III+V).
Les cinq premiers groupes sont composés de paramètres d’un seul type. Les deux
derniers groupes sont des combinaisons des cinq premiers. Le groupe VI représente à peu
près les paramètres utilisés par Castignolles dans son étude [Castignolles, 1995]. Seuls
dix des treize paramètres pouvaient être reproduits à partir des silhouettes obtenues par
notre capteur de silhouettes. Le groupe VII est l’association des jeux de paramètres les
plus performants parmi ceux étudiés.
Des classificateurs furent entraînés avec chacun des groupes de paramètres
présentés. Les cinq espèces de l’ensemble d’entraînement ont été utilisées. Étant donné la
nature aléatoire de l’initialisation des classificateurs LVQ et OCON, les performances des
classificateurs entraînés varient un peu d’un entraînement à l’autre. Pour cette raison, la
performance moyenne sur cinq entraînements est présentée. Les résultats sur l’ensemble
d’entraînement sont présentés dans le tableau 6.4 et ceux sur l’ensemble de test sont
présentés dans le tableau 6.5. La colonne « devin » indique le cas où au moins un des
trois algorithmes utilisés a su trouver la bonne espèce après un entraînement sur les cinq
espèces. Cette valeur représente en quelque sorte le plafond que peut atteindre la fusion
des décisions des trois algorithmes.
77
Tableau 6.4 Performance sur l’ensemble d’entraînement
Paramètres MV LVQ RNA Combi. DevinI 29% 33% 38% 35% 52% II 27% 33% 37% 32% 57% III 52% 70% 67% 69% 87% IV 22% 44% 67% 36% 74% V 87% 75% 88% 88% 99% VI 54% 69% 67% 66% 88% VII 97% 80% 90% 92% 98%
Tableau 6.5 Performance sur l’ensemble de test
Paramètres MV LVQ RNA Combi. DevinI 28% 29% 32% 29% 52% II 27% 30% 32% 28% 43% III 49% 56% 58% 56% 74% IV 21% 31% 39% 21% 50% V 44% 60% 64% 58% 73% VI 47% 57% 58% 56% 74% VII 55% 63% 67% 61% 78%
Si nous examinons les performances en fonction des paramètres, il est possible de
remarquer que les moments invariants de Hu pris seuls, c’est-à-dire les groupes I et II, ne
donnent pas de bons résultats. Cette mauvaise performance peut être attribuée au fait que
tous les poissons ont la même forme générale et ne diffèrent que dans les détails. Les
moments invariants de Hu semblent mal adaptés aux différences qui ne sont que dans les
détails d’une silhouette. Les taux de reconnaissance pour les moments de Hu sont
d’environ 29%, soit près de 20% qui est la limite extrême de classification pour cinq
classes. En effet, en choisissant de façon totalement aléatoire la classe d’une silhouette, le
taux de classification serait donné par la relation 6.1 :
Taux = 1 / nombre d’interprétations possibles (6.1)
Le meilleur des quatre types de paramètres utilisés parmi les groupements I à V
est la série de hauteurs (groupe V), suivi des huit descripteurs de formes (groupe III),
avec 58% et 56% de reconnaissance respectivement. Il est intéressant de noter que ces
deux types de paramètres sont basés directement sur la forme sans passer par des
78
transformations comme les moments et les coefficients de Fourier. Il est surprenant que le
bruit et les déformations dus à l’inclinaison des poissons ne semblent pas trop être
nuisibles à la reconnaissance.
Le meilleur résultat de tous les classificateurs est obtenu en utilisant le groupe
VII, qui inclut le plus grand nombre et la plus grande variété de paramètres. Cela prouve
que chaque type de paramètres apporte sa contribution à la différentiation des espèces.
Les pires résultats ont été pour les coefficients de Fourier. Ces derniers ne semblent pas
permettre de bien caractériser la forme des poissons. Une explication de cette piètre
performance pourrait être qu’étant donné la forme allongée des poissons, dans le profil
radial, seule une basse fréquence est fortement présente. Les plus hautes fréquences, où
se trouvent l’information contenant les détails, sont masquées par la grandeur de ces
basses fréquences. Ce phénomène est illustré à la figure 6.17 et à la figure 6.18.
Figure 6.17 Profil radial d’un poisson dans le domaine spatial
Figure 6.18 Profil radial d’un poisson dans le domaine fréquentiel
79
En examinant les performances en fonction des classificateurs, nous constatons
que les réseaux de neurones artificiels donnent toujours de meilleurs résultats de
classification que les deux autres classificateurs. Ceci peut être attribué à la grande
adaptabilité des réseaux de neurones artificiels. Le manque de généralisation du
classificateur par maximum de vraisemblances est notable : il obtient de bons résultats
sur l’ensemble d’entraînement pour la plupart des groupes de paramètres, mais de
beaucoup moins bons sur l’ensemble de test. Une des raisons expliquant ces résultats
pourrait être le manque d’exemples dans l’ensemble d’entraînement (60 silhouettes par
espèces), ce qui pourrait ne pas permettre de construire une représentation gaussienne
valable des paramètres. La piètre représentativité des coefficients de Fourier fait que les
classificateurs peuvent à peine reconnaître mieux qu’une décision aléatoire. Enfin, le
classificateur LVQ donne des résultats de quelques points inférieurs aux réseaux de
neurones artificiels, mais il est tout de même robuste.
Il est important de noter que lors de ce test et contrairement à des tests présentés
plus loin, la fusion des décisions n’améliore pas la performance en classification. Elle a
tout de même une utilité. En regardant les matrices de confusion de chaque classificateur
et la matrice de la combinaison des décisions, nous remarquons comment les
classificateurs se complètent. Un exemple de matrices de confusion pour le groupe de
paramètres VII pour quatre espèces est présenté aux tableaux 6.6 à 6.9. En comparant les
matrices de confusion, nous constatons que les faiblesses d’un classificateur ne sont pas
les mêmes entre les espèces. Par exemple, le classificateur par RNA a de la difficulté à
bien reconnaître les dorés alors que le classificateur par maximum de vraisemblances a de
la difficulté à reconnaître les chevaliers. Ceci constitue un autre avantage de la
combinaison des décisions de plusieurs classificateurs sur celle d’un seul classificateur,
c’est-à-dire la robustesse des décisions finales.
80
Tableau 6.6 Matrice de confusion maximum de vraisemblances
Classification réelle Classification Brochet Chevalier Doré Poisson-castor
Brochet 81% 5% 8% 0% Chevalier 0% 34% 3% 0% Doré 2% 32% 76% 0% Poisson-castor 17% 29% 13% 100%
Tableau 6.7 Matrice de confusion pour LVQ
Classification réelle Classification Brochet Chevalier Doré Poisson-castor
Brochet 89% 7% 9% 0% Chevalier 3% 69% 11% 7% Doré 3% 15% 74% 2% Poisson-castor 4% 9% 6% 91%
Tableau 6.8 Matrice de confusion pour les réseaux de neurones artificiels
Classification réelle Classification Brochet Chevalier Doré Poisson-castor
Brochet 91% 6% 8% 0% Chevalier 2% 71% 23% 0% Doré 6% 17% 67% 0% Poisson-castor 2% 5% 2% 100%
Tableau 6.9 Matrice de confusion lorsque la décision des classificateurs est combinée
Classification réelle Classification Brochet Chevalier Doré Poisson-castor
Brochet 90% 3% 6% 0% Chevalier 0% 64% 7% 0% Doré 3% 17% 75% 0% Poisson-castor 2% 6% 2% 98%
6.5 Sélection du jeu de paramètres optimaux
Pour la plupart des classificateurs, plus le nombre de paramètres est élevé, plus
l’entraînement et la reconnaissance sont longs [Jain et coll. 2000]. De plus, la redondance
dans les paramètres peut réduire les performances du système. Les résultats de la section
précédente démontrent que les meilleurs résultats sont obtenus avec les paramètres du
groupe VII, c’est-à-dire avec tous les paramètres présentés, sauf les coefficients de
81
Fourier. Les coefficients de Fourier donnant de très mauvais résultats, ils ont donc été
abandonnés. Il reste alors, quarante-six paramètres. Nous avons alors cherché à réduire le
nombre de paramètres utilisé à l’aide des trois algorithmes présentée au chapitre 5. : une
recherche séquentielle progressive, une analyse discriminante pas à pas et un algorithme
génétique.
6.5.1 Recherche progressive séquentielle
Pour chaque jeu de paramètres évalués, les classificateurs ont été entraînés deux
fois et la performance finale est la moyenne des deux. L’ensemble de départ étant
composé de 46 paramètres, un total de 2162 entraînements ont été effectués.
L’optimisation a nécessité environ 145 heures sur un Pentium 233MHz. La performance
pour chaque paramètre ajouté est présentée à la figure 6.19.
35%
40%
45%
50%
55%
60%
65%
70%
75%
1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 46
Nombre de paramètres
Tau
x de
rec
onna
issa
nce
Figure 6.19 Performance de la recherche séquentielle progressive
Le meilleur résultat est de 70% pour le cas où il y a 18 paramètres. C’est une
amélioration d’environ 9% par rapport à l’ensemble des paramètres de départ. Ces
paramètres sont résumés au tableau 6.10 .
82
Tableau 6.10 Paramètres sélectionnés par la recherche progressive séquentielle
# Nom des paramètres # Nom des paramètres 1 25ième hauteur 10 1er moment de Hu 2 13ième hauteur 11 15ième hauteur 3 29ième hauteur 12 24ième hauteur 4 23ième hauteur 13 Rapport longueur sur hauteur 5 14ième hauteur 14 2ième moment de Hu 6 Longueur 15 12ième hauteur 7 19ième hauteur 16 27ième hauteur 8 7ième hauteur 17 11ième hauteur 9 18ième hauteur 18 Compacité
Il est intéressant de noter que la plupart des paramètres sélectionnés font partie
des séries de hauteurs. Sur les dix-sept paramètres, douze (soit 70%) en font partie.
Moins de la moitié des paramètres sont sélectionnés, ce qui prouve que beaucoup d’entre
eux sont redondants ou n’apportent que peu d’informations.
6.5.2 Analyse discriminante pas à pas
Pour chaque jeu de paramètres évalué, les classificateurs ont été entraînés deux
fois et la performance finale est la moyenne des deux. Cette méthode d’optimisation étant
très grossière, elle nécessite que 92 entraînements pour 46 paramètres. L’optimisation a
demandé environ 7 heures sur un Pentium 233MHz. La performance pour chaque jeu de
paramètres créé par l’algorithme est présentée à la figure 6.20.
83
35.00%
40.00%
45.00%
50.00%
55.00%
60.00%
65.00%
1 5 9 13 17 21 25 29 33 37 41 45
Nombre de paramètres
Tau
x de
rec
onna
issa
nce
Figure 6.20 Performance de l’analyse discriminante pas à pas
Le meilleur résultat est de 63% pour le cas où il y a 33 paramètres. Dans ce cas,
une amélioration d’environ 2% par rapport à l’ensemble des paramètres est observé. Ces
paramètres sont résumés au tableau 6.11.
Tableau 6.11 Paramètres sélectionnés par l’analyse discriminante pas à pas
# Nom des paramètres # Nom des paramètres 1 25ième hauteur 18 28ième hauteur 2 24ième hauteur 19 14ième hauteur 3 31ième hauteur 20 1ième hauteur 4 5ième hauteur 21 29ième hauteur 5 7ième hauteur 22 30ième hauteur 6 6ième hauteur 23 23ième hauteur 7 2ième hauteur 24 27ième hauteur 8 26ième hauteur 25 Taux de concavité 9 9ième hauteur 26 13ième hauteur 10 8ième hauteur 27 16ième hauteur 11 3ième hauteur 28 15ième hauteur 12 17ième hauteur 29 22ième hauteur 13 4ième hauteur 30 Surface 14 11ième hauteur 31 21ième hauteur 15 10ième hauteur 32 20ième hauteur 16 Longueur 33 3ième moment de Hu 17 Hauteur
Encore une fois, la plupart des paramètres sélectionnés (28 sur 33 soit 85% des
paramètres) font parties des séries de hauteurs. De plus, 60% des paramètres choisis par
84
la recherche progressive séquentielle ont aussi été choisis par l’analyse discriminante pas
à pas. En comparant avec la recherche progressive séquentielle nous constatons que
l’analyse discriminante pas à pas a éliminé peu de paramètres de l’ensemble de départ.
6.5.3 Algorithme génétique
Un algorithme génétique simple a été utilisé pour optimiser le jeu de paramètres
d’entrées au système. Les opérateurs utilisés sont la reproduction, la mutation et le
croisement. Les taux de croisement et de mutation ont été fixés à 0,08 et 0,05
respectivement. La population a été arbitrairement fixée à 50 et le nombre de générations
à 20. Chaque jeu de paramètres est entraîné deux fois et la performance finale est la
moyenne des deux performances. Ceci fait un total de 2000 entraînements.
L’optimisation a nécessité environ 275 heures (environ deux semaines) sur un Pentium
233 MHz.
La performance des jeux de paramètres créés par l’algorithme est présentée à la
figure 6.21. Dans cette figure, le jeu de paramètres choisis par l’algorithme génétique
ayant obtenu la meilleure performance est présenté. Ce graphe permet de démontrer que
l’algorithme tendait lentement vers un meilleur jeu de paramètres.
0.00%
10.00%
20.00%
30.00%
40.00%
50.00%
60.00%
70.00%
80.00%
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Nombre de générations
Taux
de
reco
nnai
ssan
ce
MoyenneMaximumMinimum
Figure 6.21 Performance de l’algorithme génétique
85
Le meilleur résultat est de 68% pour le cas où il y a 25 paramètres. L’algorithme
génétique trouve un sous-ensemble de paramètres qui améliore de 6% le taux de
reconnaissance par rapport à l’ensemble de départ. Ces paramètres sont résumés au
tableau 6.12.
Tableau 6.12 Paramètres sélectionnés par l’algorithme génétique
# Nom des paramètres # Nom des paramètres 1 25ième hauteur 18 28ième hauteur 2 24ième hauteur 19 14ième hauteur 3 31ième hauteur 20 1ième hauteur 4 5ième hauteur 21 29ième hauteur 5 7ième hauteur 22 30ième hauteur 6 6ième hauteur 23 23ième hauteur 7 2ième hauteur 24 27ième hauteur 8 26ième hauteur 25 Taux de concavité 9 9ième hauteur 26 13ième hauteur 10 8ième hauteur 27 16ième hauteur 11 3ième hauteur 28 15ième hauteur 12 17ième hauteur 29 22ième hauteur 13 4ième hauteur 30 Surface 14 11ième hauteur 31 21ième hauteur 15 10ième hauteur 32 20ième hauteur 16 Longueur 33 3ième moment de Hu 17 Hauteur
La majorité des paramètres sélectionnés (28 sur 33, soit 85% des paramètres) font
partie des séries de hauteurs. Selon [Jain et coll. 2000] l’algorithme génétique devrait
donner de meilleurs résultats que la recherche séquentielle progressive pour des
problèmes avec beaucoup de paramètres. La pratique recommande une population d’au
moins deux fois le nombre de paramètres [Jain et coll. 2000]. Dans notre cas, ceci aurait
nécessité une population d’au moins 92, donc un temps d’évaluation d’autour de deux
semaines sur l’ordinateur disponible. Ce délai a été considéré beaucoup trop long. De
plus, la longueur de l’évaluation des algorithmes génétiques a empêché la possibilité de
faire plusieurs essais d’optimisation.
86
6.5.4 Choix du meilleur jeu de paramètres
L’automatisation de la sélection des paramètres a permis de choisir les paramètres
qui donnent les meilleures performances. Les performances sont améliorées par rapport à
l’utilisation de tous les paramètres. Selon les résultats présentés dans cette section, le
meilleur choix de paramètres est le groupe de dix-huit trouvé par la méthode de recherche
séquentielle progressive. Cet ensemble a été choisi à cause de son haut taux de
reconnaissance et du petit nombre de paramètres faisant partie de l’ensemble.
6.6 Performance des classificateurs avec un jeu de paramètres optimisé
Dans cette section, nous présentons une étude plus approfondie des performances
de reconnaissance des algorithmes selon le nombre d’espèces utilisées avec ces
paramètres pour effectuer la classification. Chacun des résultats de performance présentés
ici sont la moyenne des résultats de cinq entraînements. Nous présentons dans cette
section des résultats d’entraînement lorsque seulement deux, trois, quatre ou cinq espèces
sont entraînées, afin d’évaluer la performance d’un classificateur en fonction du nombre
d’espèces.
Les résultats de reconnaissance lorsqu’il y a deux espèces sont présentés aux
tableaux 6.13 et 6.14.
Tableau 6.13 Performances pour deux espèces sur l’ensemble d’entraînement
Espèces MV LVQ RNA Combi. Achigans+Brochets 100% 97% 99% 100% Achigans+Chevaliers 63% 69% 70% 73% Achigans+Dorés 93% 86% 94% 94% Achigans+Poissons-castors 97% 98% 100% 100% Brochets+Chevaliers 97% 95% 97% 97% Brochets+Dorés 97% 94% 95% 97% Brochets+Poissons-castors 99% 96% 87% 99% Chevaliers+Dorés 88% 90% 95% 95% Chevaliers+Poissons-castors 89% 96% 99% 99% Dorés+Poisson-castor 99% 97% 100% 100%
Moyenne : 92% 92% 94% 95%
87
Tableau 6.14 Performances pour deux espèces sur l’ensemble de test
Espèces MV LVQ RNA Combi. Achigans+Brochets 96% 92% 93% 96% Achigans+Chevaliers 50% 49% 52% 52% Achigans+Dorés 84% 80% 83% 86% Achigans+Poissons-castors 92% 96% 95% 97% Brochets+Chevaliers 94% 93% 93% 95% Brochets+Dorés 92% 90% 90% 93% Brochets+Poissons-castors 97% 98% 87% 98% Chevaliers+Dorés 74% 82% 84% 84% Chevaliers+Poissons-castors 79% 93% 95% 95% Dorés+Poissons-castors 93% 94% 97% 97%
Moyenne : 85% 87% 87% 89%
La performance sur l’ensemble de test est de 89%. Il est à remarquer que la fusion
des décisions des trois classificateurs augmente de 3% les performances comparativement
aux performances individuelles. La raison pour laquelle cet effet ne pouvait être observé
lors des essais de la section 6.4 est sûrement parce qu’il semble que pour qu’il y ait une
augmentation du taux de reconnaissance, il faut que les trois classificateurs aient des
performances semblables. C’est le cas ici pour presque tous les couples d’espèces.
Une autre chose qui peut être remarquée est que le couple « Achigans -
Chevaliers » donne une performance bien en deçà de celle des autres couples. Il semble
que tous les classificateurs aient de la difficulté à les différencier.
Les résultats de reconnaissance lorsqu’il y a trois espèces sont présentés aux
tableaux 6.15 et 6.16.
88
Tableau 6.15 Performances pour trois espèces sur l’ensemble d’entraînement
Espèces MV LVQ RNA Combi. Achigans+Brochets+Chevaliers 75% 77% 77% 79% Achigans+Brochets+Dorés 93% 87% 92% 94% Achigans+Brochets+Poissons-castors 97% 95% 99% 99% Achigans+Chevaliers+Dorés 70% 72% 75% 77% Achigans+Chevaliers+Poissons-castors 73% 79% 78% 80% Achigans+Dorés+Poissons-castors 93% 89% 95% 96% Brochets+Chevaliers+Dorés 88% 86% 89% 91% Brochets+Chevaliers+Poissons-castors 92% 94% 97% 97% Brochets+Dorés+Poissons-castors 97% 93% 97% 98% Chevaliers+Dorés+Poissons-castors 86% 90% 95% 95%
Moyenne : 86% 86% 90% 91%
Tableau 6.16 Performances pour trois espèces sur l’ensemble de test
Espèces MV LVQ RNA Combi. Achigans+Brochets+Chevaliers 64% 62% 65% 65% Achigans+Brochets+Dorés 84% 79% 83% 85% Achigans+Brochets+Poissons-castors 92% 91% 93% 94% Achigans+Chevaliers+Dorés 56% 55% 57% 57% Achigans+Chevaliers+Poissons-castors 62% 63% 67% 66% Achigans+Dorés+Poissons-castors 83% 82% 86% 88% Brochets+Chevaliers+Dorés 76% 80% 84% 84% Brochets+Chevaliers+Poissons-castors 83% 91% 93% 93% Brochets+Dorés+Poissons-castors 90% 90% 93% 94% Chevaliers+Dorés+Poissons-castors 73% 81% 86% 85%
Moyenne : 76% 77% 81% 81%
La performance sur l’ensemble de test pour la reconnaissance lorsque trois
espèces sont utilisées est de 81%. Encore une fois, la fusion des décisions des trois
classificateurs augmente la reconnaissance. De plus, dans la plupart des cas, tous les
groupements contenant le couple « achigans-chevaliers » donnent une moins bonne
performance que les autres groupes.
Les performances de reconnaissance pour quatre espèces sont présentées aux
tableaux 6.17 et 6.18.
89
Tableau 6.17 Performances pour quatre espèces sur l’ensemble d’entraînement
Espèces MV LVQ RNA Combi. Achigans+Brochets+Chevaliers+Dorés 75% 75% 77% 79% Achigans+Brochets+Chevaliers+Poissons-castors 79% 80% 82% 83% Achigans+Brochet+Doré+Poisson-castor 93% 88% 93% 94% Achigans+Chevaliers+Dorés+Poissons-castors 76% 78% 82% 83% Brochets+Chevaliers+Dorés+Poissons-castors 88% 89% 93% 94%
Moyenne : 82% 82% 86% 87%
Tableau 6.18 Performances pour quatre espèces sur l’ensemble de test
Espèces MV LVQ RNA Combi. Achigans+Brochets+Chevaliers+Dorés 63% 60% 63% 64% Achigans+Brochets+Chevaliers+Poissons-castors 69% 70% 72% 71% Achigans+Brochets+Dorés+Poissons-castors 83% 82% 86% 87% Achigans+Chevaliers+Dorés+Poissons-castors 62% 63% 66% 66% Brochets+Chevaliers+Dorés+Poissons-castors 75% 81% 86% 86%
Moyenne : 71% 71% 75% 75%
La performance sur l’ensemble de test pour quatre espèces est d’environ 75%. Les
meilleurs résultats sont les deux cas où le couple « achigans-chevaliers » ne sont pas
présents dans les ensembles d’entraînement et de test en même temps.
Finalement, les résultats globaux de reconnaissance des cinq espèces sont
présentés au tableau 6.19. Dans le cas où l’ensemble de test comprend cinq espèces, le
taux de reconnaissance est de 70%. La tendance des performances de reconnaissance
avec l’ajout d’espèces est illustrée à la figure 6.22.
Tableau 6.19 Performances pour cinq espèces
Ensemble MV LVQ RNA Combi. Entraînement 79% 79% 83% 85% Test 67% 65% 69% 70%
90
75%81%70%
89%
0%
20%
40%
60%
80%
100%
2 3 4 5Nombre d'espèces
Taux
de
reco
nnai
ssan
ce
Figure 6.22 Performance selon le nombre d’espèces
Tel que prévu, le taux de reconnaissance tend à diminuer avec l’augmentation du
nombre d’espèces à reconnaître. Il semble que cette tendance tend à se stabiliser. Ce
phénomène démontre l’importance de bien choisir les espèces d’intérêt afin d’augmenter
les performances du système de comptage.
6.7 Silhouettes de rejet
Cette section décrit l’ensemble des tests réalisés afin d’évaluer la robustesse du
système en présence de silhouettes d’objets qui ne sont pas des poissons connus. Ces
objets peuvent être des débris, des bulles d’air ou même une espèce inconnue de
poissons. Il est important de noter que le but de l’étape de rejet n’est pas de rejeter les
silhouettes de poissons d’une espèce inconnue, mais bien de s’assurer que seules des
silhouettes qui ressemblent à des poissons soient acceptées. Rappelons que la première
étape de classification assigne une espèce à toutes les silhouettes, même si certaines de
ces dernières n’ont aucunement la forme des poissons. La deuxième étape détermine si la
silhouette traitée a la forme d’un poisson afin de retenir la classification de la première
étape sinon la silhouette est classée comme débris. Par exemple, si un poisson d’une
espèce inconnue par le système venait à passer, il est probable que sa silhouette sera
acceptée. Seules les silhouettes ne ressemblant pas à des poissons sont rejetées comme
étant des débris.
91
La première partie de cette section discute de la façon dont l’ensemble de rejet a
été constitué. La deuxième partie présente les résultats de tests empiriques permettant de
choisir la méthode la mieux adaptée pour fixer les seuils de rejet parmi celles présentées à
la section 4.6.
6.7.1 Création de l’ensemble de rejet
Afin de pouvoir évaluer la performance des algorithmes de rejet, un ensemble de
silhouettes de débris a été créé. Cet ensemble de silhouettes doit contenir des silhouettes
ayant des formes qui ne ressemblent pas à celles des poissons. L’ensemble de silhouettes
de débris comprenait 80 silhouettes qui ont été divisées en deux sous-ensembles :
l’ensemble de silhouettes synthétiques et l’ensemble de silhouettes réelles.
Les silhouettes de l’ensemble synthétique étaient des formes géométriques
simples : des carrés, des ronds et des triangles. Ces silhouettes ont été générées
manuellement, c’est-à-dire qu’elles ne furent pas acquises avec le capteur de silhouettes.
Sur ces silhouettes, un peu de bruit fut ajouté afin de les rendre plus réalistes.
L’orientation, la grosseur et la hauteur du passage ont aussi été variées. En tout, 30 de ces
silhouettes synthétiques ont été créées. La figure 6.23, la figure 6.24 et la figure 6.25
présentent des exemples de ces silhouettes.
Figure 6.23 Exemple de silhouette synthétique de forme rectangulaire
92
Figure 6.24 Exemple de silhouette synthétique de forme ronde
Figure 6.25 Exemple de silhouette de forme triangulaire
L’utilisation de silhouettes de rejet synthétique peut donner une bonne idée de la
performance théorique de rejet, mais pour connaître le comportement réel de
l’algorithme, nous devons utiliser des silhouettes obtenues par le capteur en
fonctionnement dans une passe à poissons. Nous avons donc extrait une série de
silhouettes de débris des données issues d’essais qui ont eu lieu au printemps 1998 à la
passe à poissons du barrage de la rivière Malbaie. Le triage a été fait manuellement sur
des silhouettes qui étaient de façon évidente des silhouettes autres que celles de poissons.
Deux types de cas ont été observés : des silhouettes d’objets qui descendent la passe et
des silhouettes causées par des bulles dues au courant de l’eau. En tout, 50 silhouettes de
93
ce type ont été mises dans l’ensemble de silhouettes de rejet. Les figures 6.26 et 6.27
présentent un exemple de chacun des deux types de silhouettes de ce sous-ensemble.
Figure 6.26 Exemple de silhouette d’un débris qui descend
Figure 6.27 Exemple de silhouette de bulles d’air
6.7.2 Performances avec rejet
L’évaluation des performances avec rejet consiste à utiliser l’ensemble de
silhouettes de rejets comme entrées au système de reconnaissance et d’observer les
résultats. Tel que mentionné à la section 4.6, la problématique consiste à fixer le seuil de
rejet pour l’algorithme de rejet des silhouettes de débris. Les deux façons de calculer le
94
seuil de rejet ont été testées. Pour la méthode où le seuil est fixé proportionnellement à
l’écart-type, plusieurs valeurs de k ont été évaluées.
L’évaluation de l’algorithme de rejet se quantifie par trois paramètres : le
pourcentage de silhouettes bien classées et rejetées, le pourcentage de silhouettes mal
classées et rejetées et le pourcentage de silhouettes de débris rejetées.
Le pourcentage de silhouettes bien classées mais rejetées donne une indication de
comment l’ algorithme de rejet nuit à la reconnaissance. Il faut donc tenter de minimiser
cette valeur autant que possible. Le pourcentage de silhouettes mal classées et rejetées
représente le pourcentage des silhouettes pour lequel les classificateurs se sont trompés et
dont les silhouettes ont été rejetées par l’algorithme de rejet. Même si ce n’est pas
nécessairement cette valeur qui doit être optimisée, c’est un effet positif de l’algorithme
de rejet. La valeur à maximiser est le pourcentage des silhouettes de débris qui sont
rejetées. Un compromis doit être fait entre le pourcentage de silhouettes bien classées et
rejetées et le pourcentage de silhouettes de débris rejetées. Les évaluations portent sur le
sous-ensemble optimal de 18 paramètres décrit à la section 6.5.1 ainsi que pour
l’ensemble de départ de 46 paramètres. Cela permet de donner une meilleure idée des
tendances de l’algorithme de rejet pour les différents seuils obtenus. Les résultats sont
tels que présentés aux tableaux 6.20 et 6.21.
Tableau 6.20 Rejet pour le sous-ensemble de 18 paramètres
Ensemble d’entraînement Ensemble de test Type de seuil Bien classées
et rejetées Mal classées et rejetées
Bien classées et rejetées
Mal classées et rejetées
Débris rejetés
max 0% 2% 1% 7% 80% k = 1 13% 5% 9% 15% 94%
k = 1,5 11% 4% 6% 13% 91% k = 2 9% 4% 4% 11% 91%
k = 2,5 6% 3% 3% 10% 91% k = 3 5% 3% 3% 9% 91%
k = 3,5 3% 3% 1% 9% 87% k = 4 2% 3% 1% 8% 87%
95
Tableau 6.21 Rejet pour l’ensemble des 46 paramètres
Ensemble d’entraînement Ensemble de test Type de seuil Bien classées
et rejetées Mal classées et rejetées
Bien classées et rejetées
Mal classées et rejetées
Débris rejetés
max 0% 1% 1% 12% 74% k = 1 17% 2% 7% 17% 94%
k = 1,5 12% 2% 5% 15% 94% k = 2 9% 1% 4% 14% 94%
k = 2,5 7% 1% 3% 13% 92% k = 3 5% 1% 2% 12% 88%
k = 3,5 3% 1% 2% 11% 87% k = 4 2% 1% 1% 11% 84%
Sur l’ensemble de test, l’algorithme de rejet permet d’éliminer une certaine partie
de la classification erronée. Le compromis entre le pourcentage de silhouettes bien
classées rejetées et le pourcentage de silhouettes de l’ensemble de rejet rejetées est bien
mis en évidence. Il a été remarqué que l’utilisation de la distance Euclidienne (type max)
occasionne une classification trop permissive des silhouettes de rejet. Pour la méthode
d’évaluation du seuil avec l’écart-type, le meilleur compromis s’obtient avec k égal à 2,5
pour les deux ensembles de paramètres. Avec cette valeur, pour le sous-ensemble de 18
paramètres et celui de 46 paramètres, le rejet des silhouettes bien classées est de 3%, avec
91% et 92% de rejets des silhouettes de débris. De plus, 10% et 13% des silhouettes mal
classées sont rejetées, ce qui est très bien.
Le tableau 6.22 résume la performance du système avec et sans rejet des débris,
dans les deux cas avec les 18 paramètres optimaux. Le tableau 6.23 présente la
performance par nombre d’espèces avec et sans bloc de rejet.
Tableau 6.22 Performance avec rejet
Ensemble Sans rejet Avec rejet Entraînement 85% 78% Test 70% 67%
96
Tableau 6.23 Performance par espèce avec rejet
Nombre d’espèces Sans rejet Avec rejet 2 89% 85% 3 81% 78% 4 75% 72% 5 70% 67%
Cette diminution générale des performances du système lorsque le rejet est
introduit peut sembler grande, mais il faut tenir compte que les silhouettes de débris
peuvent être très fréquentes et même dépasser le nombre de silhouettes de « vrais »
poissons sur certaines rivières. Sans un tel système, le résultat de comptage n’auraient
aucun lien avec la réalité. Quelques points de pourcentage d’erreur de plus n’affectent pas
autant les statistiques.
6.8 Modularité et ajout d’espèces
Un des objectifs du système de classification proposé est de permettre aux
utilisateurs de choisir les espèces d’intérêt et de désactiver les autres espèces. C’est ce
que nous entendons par « modularité » du système de reconnaissance. Cette propriété
permet de tenir compte de la faune spécifique de chaque rivière. Elle permet aussi
d’ajouter facilement de nouvelles espèces à reconnaître sans avoir à entraîner de nouveau
tous les classificateurs pour chacune des espèces. Cela constitue d’ailleurs un des aspects
innovateurs de ce projet. Lors de l’évaluation du système de reconnaissance, nous
voulions aussi valider la robustesse de la modularité.
Il est à noter qu’avec l’ajout d’une nouvelle espèce au système de reconnaissance,
sans entraîner de nouveau tous les classificateurs, nous pouvons prévoir une légère
réduction des performances. Par exemple, les classificateurs entraînés à reconnaître les
brochets n’ont pas nécessairement été entraînés à ne pas reconnaître un achigan comme
un brochet. Il est donc important de toujours utiliser un bon ensemble d’entraînement
négatif lors de la création de nouvelles espèces, dans le but de permettre au classificateur
97
de bien différencier les différentes espèces déjà connues. Le système présenté tente de
minimiser les effets et le travail d’ajouter une espèce au logiciel de reconnaissance.
Cette section présente la performance du système lors de l’activation ou la
désactivation de la reconnaissance de certaines espèces et lors de l’ajout de nouvelles
espèces. Soit un système de classification composé de classificateurs entraînés à
reconnaître un ensemble d’espèces et à limiter la confusion entre les autres classificateurs
par entraînement négatif. Pour évaluer la modularité, deux cas sont possibles :
a) Désactivation d’une espèce : Il suffit alors de retirer le classificateur de
l’espèce à désactiver. Par contre, il faut noter que les autres classificateurs ont
été entraînés à rejeter, par entraînement négatif, l’espèce désactivée. Les
performances du système doivent donc être validées dans les conditions
suivantes :
i. Ne pas présenter l’espèce au système. Les performances ne devraient pas
être affectées pour un nombre d’espèces donné.
ii. Présenter l’espèce désactivée au système. Nous voulons ainsi examiner la
possibilité que le système confonde l’espèce désactivée avec une de celles
préservées pour la reconnaissance. Une telle situation se présenterait
lorsqu’une espèce dont l’opérateur ne prévoyait pas la présence dans une
rivière est désactivée, mais pourtant elle y serait belle et bien présente.
b) Activation d’une nouvelle espèce. L’idée ici consiste à ajouter de nouveaux
classificateurs pour reconnaître une espèce additionnelle à des classificateurs
déjà entraînés à reconnaître un ensemble d’espèces. Nous avons déjà étudié (à
la section 6.7.2) l’impact du nombre d’espèces activées lorsque tous les
classificateurs sont entraînés avec tout l’ensemble en question. L’objectif ici
est plutôt d’étudier l’impact d’ajouter une espèce sans refaire l’entraînement
des classificateurs existants. Deux situations sont possibles :
98
i. Les classificateurs de la nouvelle espèce sont entraînés négativement avec
les espèces des classificateurs existants. Par contre, les classificateurs
existants ne sont pas entraînés négativement avec les nouvelles espèces.
ii. Les classificateurs de la nouvelle espèce ne sont pas entraînés
négativement avec les espèces des classificateurs existants. Ceci
correspond au pire cas, car le risque de confusion entre les classificateurs
existants et les classificateurs de la nouvelle espèce est maximal.
Les prochaines sous-sections présentent les résultats obtenus pour chacune de ces
possibilités, et formulent des recommandations quant à la modularité du système de
classification présenté dans ce mémoire.
6.8.1 Cas a.i : Désactivation d’une espèce avec l’espèce désactivée non présentée au système de classification
Lors de ce test, nous avons désactivé successivement chacune des cinq espèces et
évalué la performance du système. Cette première évaluation de la désactivation vise à
prouver que désactiver une espèce, parce qu’elle ne vit pas dans une certaine rivière par
exemple, n’affecte pas la performance des autres classificateurs, même si ces derniers ont
été entraînés à rejeter cette espèce.
Le tableau 6.24 résume, pour chaque test, quels classificateurs ont été utilisés et
comment ils ont été entraînés. La deuxième colonne, intitulé « Espèce activée » spécifie
quelles espèces ont été activées lors de l’entraînement pour chaque test. Les deux
colonnes suivantes spécifient avec quels ensembles le classificateur a été entraîné, c’est-
à-dire quelle espèce il a été entraîné à reconnaître (troisième colonne intitulée « Ent.
positif ») et quelles espèces il a été entraîné à ne pas reconnaître (quatrième colonne
intitulée « Ent. négatif »). Les résultats sont présentés dans le tableau 6.25.
99
Tableau 6.24 Entraînement des classificateurs pour la désactivation sans cette espèce
Test Espèce activée Ent. positif Ent. négatif Brochet B A-C-D-PC 1 Chevalier C A-B-D-PC Doré D A-B-C-PC Poisson-castor PC A-B-C-D Achigan A B-C-D-PC 2 Chevalier C A-B-D-PC Doré D A-B-C-PC Poisson-castor PC A-B-C-D Achigan A B-C-D-PC 3 Brochet B A-C-D-PC Doré D A-B-C-PC Poisson-castor PC A-B-C-D Achigan A B-C-D-PC 4 Brochet B A-C-D-PC Chevalier C A-B-D-PC Poisson-castor PC A-B-C-D Achigan A B-C-D-PC 5 Brochet B A-C-D-PC Chevalier C A-B-D-PC Doré D A-B-C-PC
A = Achigan, B = Brochet, C = Chevalier, D = Doré et PC = Poisson-castor.
Tableau 6.25 Performance pour la désactivation sans cette espèce
# Espèce désactivée MV LVQ RNA Combi. Débris rejetés
1 Achigan 75% 79% 86% 82% 91% 2 Brochet 62% 62% 67% 64% 91% 3 Chevalier 83% 78% 87% 83% 91% 4 Doré 69% 69% 72% 70% 91% 5 Poisson-castor 63% 59% 64% 61% 91%
Moyenne : 71% 69% 75% 72% 91%
Remarquons que la performance moyenne des classificateurs n’a pas été affectée
par la désactivation d’une espèce, si elle est comparée au taux de reconnaissance pour
quatre espèces présenté au tableau 6.23, c’est-à-dire de 72%. De plus, le rejet des débris,
100
91%, est aussi équivalent à celui du test de rejet présenté au tableau 6.21. Ainsi, il est
possible d’affirmer que la désactivation d’une espèce affecte peu ou pas la performance
des autres classificateurs.
6.8.2 Cas a.ii : Désactivation d’une espèce avec présentation de l’espèce désactivée au système de classification
Ce deuxième test permet d’évaluer la performance du système lorsqu’une espèce
non activée est présentée au système. Ce serait le cas si une espèce dont l’opérateur ne
prévoyait pas la présence dans une rivière donnée est belle et bien présente.
Afin de prouver cette limite du système d’identification des espèces, nous avons
fait le test suivant : nous avons présenté à quatre classificateurs les silhouettes d’une
cinquième espèce. Les silhouettes de l’espèce désactivée seront sûrement identifiées
comme appartenant à une autre espèce parmi celles activées, probablement à l’espèce qui
lui ressemble le plus. Il faut rappeler que le bloc de rejet ne rejette que les silhouettes qui
n’ont rien de la silhouette d’un poisson, son rôle n’est pas de rejeter les poissons qui ne
sont pas d’une des espèces d’intérêt. Il est donc très important de choisir judicieusement
les espèces d’intérêt.
Le test consiste à présenter à quatre classificateurs (brochet, chevalier, doré et
poisson-castor), entraînés selon les conditions présentées au tableau 6.26, des silhouettes
d’une autre espèce, soit l’achigan. La première colonne, intitulée « Espèce activée »
spécifie quelles espèces ont été activées. Les deux colonnes suivantes spécifient avec
quels ensembles le classificateur a été entraîné, c’est-à-dire quelle espèce il a été entraîné
à reconnaître (troisième colonne intitulée « Ent. positif ») et quelles espèces il a été
entraîné à ne pas reconnaître (quatrième colonne intitulée « Ent. négatif »). Le tableau
6.27 présente les résultats de classification des silhouettes d’achigan présentées au
système de classification.
101
Tableau 6.26 Entraînement pour la désactivation de l’achigan
Espèce activée Ent. positif Ent. Négatif Brochet B A-C-D-PC Chevalier C A-B-D-PC Doré D A-B-C-PC Poisson-castor PC A-B-C-D
A = Achigan, B = Brochet, C = Chevalier, D = Doré et PC = Poisson-castor.
Tableau 6.27 Classification des silhouettes d’achigan
Espèce reconnue % Brochet 1% Chevalier 77% Doré 13% Poisson-castor 3% Rejet 6%
La plupart des silhouettes d’achigan, soit 94%, n’ont pas été rejetées. Malgré cette
piètre performance, ce résultat est consistant avec ce qui avait été prévu : le bloc de rejet
ne distingue pas entre les différentes espèces de poisson. Une majorité des silhouettes,
c’est-à-dire 77%, ont été identifiées comme étant des chevaliers. La silhouette de ces
derniers ressemble bel et bien à celle de l’achigan (voir les figures 6.10 et 6.14). Ce test
permet donc de souligner l’importance de bien choisir les espèces utilisées. En fait, juste
l’entraînement négatif n’est pas suffisant pour éviter une confusion, il faut avoir des
classificateurs pour toutes les espèces qui franchissent le système. En conséquence, si une
attention particulière n’est pas portée à bien choisir la faune présente dans une rivière, les
statistiques peuvent être faussées.
6.8.3 Cas b.i : Ajout d’une nouvelle espèce entraînée négativement avec les espèces existantes
Ce test permet d’évaluer la performance lorsqu’un nouveau classificateur a été
entraîné à rejeter les « anciennes » espèces, c’est-à-dire celles pour lesquelles un
classificateur existe déjà. C’est le cas de l’ajout d’une espèce lorsque le classificateur est
entraîné négativement avec toutes les autres espèces qui vivent dans la même rivière.
102
Étant donné que seulement cinq espèces existent dans notre banque d’espèces, le
test a été fait comme suit : nous avons ajouté successivement chacune des cinq espèces
aux quatre autres en évaluant la performance à chaque fois. Quatre espèces sont d’abord
entraînées entre elles. Ensuite, l’espèce ne faisant pas partie de l’entraînement initial,
c’est-à-dire l’espèce à ajouter, était entraînée avec les quatre autres espèces comme
exemple négatif.
Le tableau 6.28 résume, pour chaque test, quels classificateurs ont été utilisés et
comment ils ont été entraînés. La deuxième colonne, intitulée « Espèce activée » spécifie
quelles espèces ont été activées pour chaque test. L’astérisque indique l’espèce ajoutée
pour ce test. Les deux colonnes suivantes spécifient avec quels ensembles le
classificateur a été entraîné, c’est-à-dire quelle espèce il a été entraîné à reconnaître
(troisième colonne intitulée « Ent. positif ») et quelles espèces il a été entraîné à ne pas
reconnaître (quatrième colonne intitulée « Ent. négatif »). Les résultats sont présentés au
tableau 6.29.
103
Tableau 6.28 Entraînement pour l’ajout d’une espèce avec entraînement négatif
Test Espèce activée Ent. positif Ent. négatif *Achigan A B-C-D-PC Brochet B C-D-PC 1 Chevalier C B-D-PC Doré D B-C-PC Poisson-castor PC B-C-D Achigan A C-D-PC *Brochet B A-C-D-PC 2 Chevalier C A-D-PC Doré D A-C-PC Poisson-castor PC A-C-D Achigan A B-D-PC Brochet B A-D-PC 3 *Chevalier C A-B-D-PC Doré D A-B-PC Poisson-castor PC A-B-D Achigan A B-C-PC Brochet B A-C-PC 4 Chevalier C A-B-PC *Doré D A-B-C-PC Poisson-castor PC A-B-C Achigan A B-C-D 5 Brochet B A-C-D Chevalier C A-B-D Doré D A-B-C *Poisson-castor PC A-B-C-D
A = Achigan, B = Brochet, C = Chevalier, D = Doré et PC = Poisson-castor. * espèce ajoutée
Tableau 6.29 Performance d’ajout d’une espèce à une banque d’espèces déjà existantes
Test Espèce ajoutée MV LVQ RNA Combi. Rejet 1 Achigan 67% 67% 69% 66% 91% 2 Brochet 67% 64% 67% 65% 91% 3 Chevalier 67% 63% 68% 64% 91% 4 Doré 67% 64% 69% 65% 91% 5 Poisson-castor 67% 65% 66% 64% 91%
Moyenne : 67% 65% 68% 65% 91%
104
En comparant avec les résultats de la section 6.7.2, nous constatons qu’il y a
diminution de la reconnaissance, tel que prévue, mais que cette diminution n’est que
d’environ 2%, soit 65% comparativement à 67%. Si un ensemble d’entraînement
contenant de nombreux exemples négatifs pour l’entraînement d’une espèce ajoutée est
utilisé, le taux de reconnaissance n’est presque pas diminué. Cette faible réduction des
performances est acceptable compte tenu que l’on n’a pas à entraîner de nouveau tous les
classificateurs à chaque ajout d’une nouvelle espèce. La diminution des performances
peut en pratique être limitée en choisissant un ensemble d’entraînement comprenant des
silhouettes d’espèces déjà présentes dans la banque d’espèces. Ce test prouve la
possibilité d’utiliser des classificateurs modulaires pour construire le système de
classification avec de bonnes performances.
6.8.4 Cas b.ii : Ajout d’une nouvelle espèce pas entraînée négativement avec les espèces existantes
Ce dernier test consiste à évaluer l’ajout d’une nouvelle espèce qui n’est pas
entraînée avec toutes les autres espèces existantes dans le système. Dans ce cas, ni la
nouvelle espèce ni les anciennes ne « connaissent » l’existence de l’autre. Ici, le risque de
confusion entre les espèces est maximal. Ce genre de test permet de bien situer les limites
de la modularité du système d’identification de l’espèce des poissons.
De nombreuses topologies de tests auraient pu être utilisées ici, mais nous nous
sommes contenté de tester un cas type. Supposons qu’en premier lieu on entraîne toutes
les espèces de la banque d’espèces par paire, c’est-à-dire avec des exemples négatifs
d’une seule autre espèce. Cette première étape nous permet d’obtenir 10 paires ou 20
classificateurs différents. Les classificateurs entraînés lors de la première étape sont
présentés au tableau 6.30. La deuxième colonne, intitulée « Espèce activée », spécifie de
quelles espèces chaque paire est composée. Le chiffre qui suit le nom de l’espèce permet
de différencier entre les différents classificateurs pour chaque espèce. Il y a donc quatre
classificateurs par espèce. Les deux colonnes suivantes spécifient avec quels ensembles le
classificateur a été entraîné, c’est-à-dire quelle espèce il a été entraîné à reconnaître
105
(troisième colonne intitulée « Ent. positif ») et quelles espèces il a été entraîné à ne pas
reconnaître (quatrième colonne intitulée « Ent. négatif »).
Tableau 6.30 Entraînement des classificateurs
Paire# Espèce activée Ent. positif
Ent. négatif
1 Achigan – 1 A B Brochet – 1 B A 2 Achigan – 2 A C Chevalier – 1 C A 3 Achigan – 3 A D Doré – 1 D A 4 Achigan – 4 A PC Poisson-castor– 1 PC A 5 Brochet – 2 B C Chevalier – 2 C B 6 Brochet – 3 B D Doré – 2 D B 7 Brochet – 4 B PC Poisson-castor– 2 PC B 8 Chevalier – 3 C D Doré – 3 D C 9 Chevalier – 4 C PC Poisson-castor– 3 PC C
10 Doré – 4 D PC Poisson-castor– 4 PC D
A = Achigan, B = Brochet, C = Chevalier, D = Doré et PC = Poisson-castor.
Dans la deuxième étape, nous avons recombiné par paires les classificateurs de
façon à ce qu’aucun des deux n’ait eu d’exemples négatifs de l’autre espèce. Cela nous
donne 90 paires différentes ou 36 paires par espèce. Nous avons testé chacune de ces 90
paires avec l’ensemble des espèces qu’elles représentent. Les résultats pour chaque
espèce est donc la moyenne des performances de chaque test. Présenter les 90 paires
serait long. Nous nous sommes contentés de présenter les paires dont l’achigan fait partie
au tableau 6.31. Les autres paires ont été constituées de la même façon que pour
l’achigan. Les résultats sont présentés au tableau 6.32.
106
Tableau 6.31 Paires recombinées pour l’espèce achigan
Paire # Classificateur Paire # Classificateur 1 Achigan – 1 19 Achigan – 3 Chevalier – 2 Brochet – 2 2 Achigan – 1 20 Achigan – 3 Chevalier – 3 Brochet – 3 3 Achigan – 1 21 Achigan – 3 Chevalier – 4 Brochet – 4 4 Achigan – 1 22 Achigan – 3 Doré – 2 Chevalier – 2 5 Achigan – 1 23 Achigan – 3 Doré – 3 Chevalier – 3 6 Achigan – 1 24 Achigan – 3 Doré – 4 Chevalier – 4 7 Achigan – 1 25 Achigan – 3 Poisson-Castor - 2 Poisson-Castor – 2 8 Achigan – 1 26 Achigan – 3 Poisson-Castor – 3 Poisson-Castor – 3 9 Achigan – 1 27 Achigan – 3 Poisson-Castor – 4 Poisson-Castor – 4
10 Achigan – 2 28 Achigan – 4 Brochet – 2 Brochet – 2
11 Achigan – 2 29 Achigan – 4 Brochet – 3 Brochet – 3
12 Achigan – 2 30 Achigan – 4 Brochet – 4 Brochet – 4
13 Achigan – 2 31 Achigan – 4 Doré – 2 Chevalier – 2
14 Achigan – 2 32 Achigan – 4 Doré – 3 Chevalier – 3
15 Achigan – 2 33 Achigan – 4 Doré – 4 Chevalier – 4
16 Achigan – 2 34 Achigan – 4 Poisson-Castor – 2 Doré – 2
17 Achigan – 2 35 Achigan – 4 Poisson-Castor – 3 Doré – 3
18 Achigan – 2 36 Achigan – 4 Poisson-Castor – 4 Doré – 4
A = Achigan, B = Brochet, C = Chevalier, D = Doré et PC = Poisson-castor.
107
Tableau 6.32 Performance d’ajout d’une nouvelle espèce pas entraînée négativement avec les espèces existantes
Espèce MV LVQ RNA Combi. Rejet Achigan 81% 76% 71% 75% 90% Brochet 95% 89% 84% 89% 94% Chevalier 81% 74% 72% 74% 93% Doré 94% 88% 85% 89% 93% Poisson-castor 98% 92% 89% 92% 94%
Moyenne : 90% 84% 80% 84% 93%
Nous remarquons que la performance moyenne a diminuée d’environ 5%, soit
84%, par rapport aux résultats pour deux espèces présentées à la section précédente, soit
89%. Ceci n’est pas si mal, si nous considérons que les classificateurs n’ont pas été
entraînés négativement. Cette réduction, même si elle n’est pas majeure, pourrait éroder à
la longue la performance du système. Cela démontre l’importance de choisir un ensemble
d’entraînement incluant autant que possible des exemples négatifs d’espèces qui font déjà
partie de la banque d’espèces. Malgré cette faiblesse, le système est modulaire en
considérant que l’utilisateur n’a pas à réentraîner tous les classificateurs à chaque ajout
d’une nouvelle espèce.
108
7. DISCUSSION
À la lumière des résultats présentés au chapitre précédent, le rendement du
système de comptage des poissons peut être évalué. Brièvement, les spécifications du
projet prévoyaient que le système devait permettre d’automatiser le décompte des espèces
de poissons. Ce système doit aussi pouvoir être facilement adaptable à la faune de
différentes rivières. L’ajout de nouvelles espèces au système doit aussi être possible. De
plus, il faut s’assurer que les débris qui descendent les rivières ne soient pas considérés
comme étant des poissons. Une fois automatisé, le taux de reconnaissance devait
idéalement se rapprocher le plus possible du taux de reconnaissance de l’observation
d’une bande vidéo, soit environ 80%.
Le logiciel d’analyse et de dépouillement des silhouettes a un taux de
reconnaissance inférieur à celui du groupe français. Des résultats allant jusqu'à 96%
[Catignolles, 1994] sont rapportés. Il a été remarqué lors des tests que la performance de
notre système dépend du nombre d’espèces qu’il faut distinguer. Le système permet à
l’utilisateur de choisir les espèces, évitant ainsi d’essayer de reconnaître des espèces qui
ne sont pas présentes dans une rivière donnée. Déterminer de façon judicieuse la faune
qui peut passer par la passe à poissons permet de maximiser les performances du
système. Il est donc important de rappeler que le système ne peut servir que dans une
rivière dont la faune est déjà connue d’avance. Il ne peut donc pas servir à déterminer les
espèces vivant dans une certaine rivière, mais seulement à compter les poissons dans une
rivière bien connue. Sur la plupart des passes à poissons du Québec, seulement deux ou
trois espèces de poissons migrateurs y transitent. Dans ces conditions, le logiciel de
reconnaissance a un taux de reconnaissance entre 75% et 80%. L’objectif de performance
109
a été rencontré pour les rivières qui sont habitées par peu d’espèces migratrices. La
modularité est l’un des côtés innovateurs de notre système. L’utilisation de plusieurs
classificateurs de natures différentes permet d’obtenir non seulement des résultats
souvent légèrement supérieurs au plus performant des classificateurs utilisés, mais aussi
plus stables.
Un autre des défis du système de dépouillement des silhouettes est de séparer les
débris des poissons. Une étape de rejet par critère de distance similaire à celui qu’utilise
Castignolles dans son système permet de rejeter plus de 90% des débris qui passent par le
capteur de silhouettes. Les données de rejet de débris pour le système de Castignolles ne
sont pas rapportées.
Le cas le plus extrême pour lequel notre système a été évalué est le cas de la
présence de cinq espèces et avec rejet de débris. La performance globale, dans ce cas, est
d’environ 67% avec 91% des débris rejetés. Ces résultats sont intéressants, même s’ils
sont inférieurs à la reconnaissance de l’être humain qui est environ 80%. Il ne faut pas
oublier que les données extraites par le capteur sont très sommaires. Avec seulement la
silhouette, un taux de reconnaissance de 100% est impensable. Il peut être présumé que
l’être humain aurait des performances similaires, sinon pires, que le logiciel de
dépouillement s’il tentait de classifier des silhouettes.
La modularité, l’extensibilité et la performance du système n’est garantie qu’aux
conditions suivantes :
1. Que toutes les espèces qui pourraient franchir la passe soient activées et
existent dans le système d’identification.
2. Qu’à l’ajout d’espèces le nouveau classificateur soit entraîné avec un
maximum d’espèces en exemples négatifs.
3. Finalement, que le nombre d’espèces activées soit minimisé afin de
maximiser les performances.
110
Plusieurs améliorations pourraient être apportées au système. Tout d’abord du
côté matériel, un capteur de silhouettes plus précis permettrait d’obtenir des silhouettes
plus fines. Cette précision pourrait être obtenue en augmentant la fréquence de balayage
des séries linéaires de diodes infrarouges. L’ajout d’une troisième série de diodes
permettrait de pouvoir faire des calculs beaucoup plus précis sur la mesure de longueur et
de vitesse augmentant ainsi la précision des silhouettes.
Du point de vue du logiciel d’analyse, de nouveaux paramètres auraient peut-être
permis une plus grande discrimination entre les espèces. Par exemple, des paramètres qui
décriraient mieux la silhouette ou même des paramètres qui n’ont pas de liens avec les
silhouettes. Un exemple de paramètres qui n’ont pas de liens avec les silhouettes sont des
données telles les heures de passage et les dates de passage qui auraient potentiellement
pu aider à la discrimination entre certaines espèces. Une étude plus approfondie de la
possibilité d’utiliser des méthodes de logique floue aurait peut-être aidé à la
discrimination. Naturellement, une banque d’espèces plus grande et plus précise aurait
permis une meilleure évaluation du système. Finalement, de nombreux compromis ont dû
être faits lors de l’optimisation des paramètres d’entrées. S’il avait été possible d’avoir
accès à plus de puissance de calculs, la sélection des paramètres par les algorithmes
génétiques en particulier aurait pu être explorée plus en profondeur. Peut-être qu’un
meilleur choix de paramètres aurait aussi pu contribuer à améliorer les performances du
système.
111
8. CONCLUSION
Ce mémoire présente un système intelligent pour le comptage par espèces des
poissons qui franchissent une passe à poissons. Ces données sont essentielles aux
biologistes afin d’évaluer la performance des passes à poissons et d’assurer une meilleure
gestions des populations de poissons. Elles permettent aussi d'évaluer l'efficacité des
passes à poissons, ce qui pourrait permettre éventuellement de les améliorer.
Traditionnellement, les poissons sont comptés de façon manuelle: on capture les poissons
et on les identifie un à un ou on les compte à travers une vitre de comptage. Cette
méthode exige la présence quotidienne d'un expert sur les lieux, ce qui est très difficile en
pratique. L'utilisation d'une caméra vidéo rend plus efficace le comptage, mais la bande
vidéo nécessite un dépouillement fastidieux. De plus, les caméras vidéo étant mal
adaptées pour filmer sous l'eau, elles nécessitent des ajustements fréquents.
Le système présenté utilise un capteur de silhouettes qui présente de nombreux
avantages par rapport aux caméras vidéo. Il s'installe n'importe où et ne requiert comme
source d'alimentation qu'un panneau solaire. Le logiciel d'analyse décrit en détail dans ce
mémoire fait le dépouillement automatique des silhouettes. Ce logiciel d'analyse a été
conçu pour permettre aux utilisateurs de choisir la faune d'intérêt et de facilement ajouter
des espèces au système de reconnaissance. Ceci est un des aspects innovateurs de ce
projet.
Pour arriver à de tels résultats, le logiciel d'analyse utilise une approche multi-
classificateurs à la reconnaissance de formes. Cette approche rend l’algorithme de
reconnaissance robuste et améliore un peu ses performances. Les classificateurs qui ont
été choisis l'ont été pour leur modularité et pour leur nature différente. La nature
112
différente des classificateurs donne de la robustesse au système de reconnaissance, de
part leurs habilités respectives à reconnaître les espèces. Il a fallu s'assurer que les
algorithmes choisis permettaient d'ajouter des classes facilement et qu'ils étaient
modulaires. Le rejet des débris est assuré par un bloc de rejet. Cette étape soit confirme le
choix de l’espèce, soit identifie la silhouette comme étant un débris si elle n’a pas la
forme d’un poisson.
L'utilisation d'un grand nombre de paramètres comme entrées à notre système a
été explorée. Étant donné que la sélection des paramètres est l'un des aspects de la
reconnaissance de formes qui nécessite le plus d'expérience, une évaluation de
l’automatisation de ce choix a été faite en utilisant trois méthodes différentes. L’une de
ces trois méthodes, la recherche séquentielle progressive, a permis de choisir un sous-
ensemble des paramètres qui optimiserait la reconnaissance. Avec un taux de
reconnaissance de 75% à 80% lorsqu’il y a deux ou trois espèces présentes, comme c’est
le cas sur plusieurs passes migratoires du Québec, nous pouvons affirmer que le système
performe aussi bien qu’un observateur humain. Un taux de reconnaissance de 66%
lorsqu’il y a cinq espèces est aussi un résultat intéressant.
Les résultats sont donc très positifs et prouvent l'utilité du logiciel de
dépouillement des silhouettes. Ce logiciel permettra aux biologistes de sauver beaucoup
de temps en dépouillement des silhouettes et d’avoir ainsi accès à plus de données
statistiques sur l’effet réel des barrages sur les poissons.
113
Bibliographie
ARNARSON, H., BENGOETXEA, K., PAU, L.F. (1988) Vision applications in the fishing and fish product industries, International Journal of Pattern Recognition and Artificial Intelligence, vol. 2, no. 4, p. 657-671.
BENEDIKTSSON, J.A., SVEINSSON, J.R., ARNASON, K. (1998) Classification and integration of multitype data, IEEE Proceedings of Geoscience and Remote Sensing Symposium, vol. 2, p. 1121-1123.
CADIEUX, S., MICHAUD, F., LALONDE, F. (2000) Intelligent System for Automated Fish Sorting and Counting, Proceedings of the 2000 IEEE International Conference on Intelligent Robots and Systems, Takamatsu, Japan, p. 1279-1284.
CADIEUX, S., TANIZAKI, N., OKAMURA, T. (1997) A time efficient robust method for centering PET brain images using an hybrid genetic algorithm, Proceedings of the Conference of the SICE of Japan, vol. 2, p. 467-472.
CASTIGNOLLES, N. (1995) Automatisation du comptage et de la reconnaissance des espèces dans les passes à poissons par l’analyse d’images, Toulouse, Thèse de doctorat, Université Paul-Sabatier, 134 p.
CASTIGNOLLES, N., CATTOEN, M., LARINIER, M. (1994) Identification and counting of live fish by image analysis, SPIE Image and Video Processing, vol. 2182, p. 200-209.
CHO, S.-B., KIM, J.H. (1995) Combining multiple neural networks by fuzzy integral for robust classification, IEEE Transactions on Systems, Man and Cybernetics, vol. 25, n° 2, p. 380-384.
CLAVIER, E, CLAVIER, S., LABICHE, J. (1999) Images sorting – Image classification : A global approach, International Conference on Document Analysis and Recognition (ICDAR’99), Bangalore, India, p. 455-461.
DARWIN, C. (1998) The origins of species, Columbia University Press, 459 p.
DE RIDDER, D., TAX, D., DUIN, R. (1998) An experimental comparison of one class classification methods, Proceedings of the 4th Annual Conference of Advanced School of Computing and Imaging, vol. 1, p. 213-218.
DEMUTH, H., BEALE, M. (1997) MATLAB Neural Network Toolbox User’s Guide, MathWorks, 840 p.
DIMAURO, G., IMPEDOVO, S., PIRLO, G. et DI LECCE, V. (2000) A multi-expert system for
114
dynamic signature verification, First International Workshop Multiple Classifier Systems, p. 320-329.
DROUHARD, J.P., SABOURIN, R. et GODBOUT, M. (1994) Evaluation of a training method and of various rejection criteria for a neural network classifier used for off-line signature verification, Proceedings of IEEE International Conference on Neural Networks, Orlando, Florida, p. 4294-4299.
DUDA, R.O., HART, P.E. (1973) Pattern Recognition and Scene Analysis, New York, John Wiley and Sons, 680 p.
FOGGIA, P., SANSONE, C., TORTORELLA, F., VENTO, M. (1999) Multiclassification : reject criteria for the Bayesian combiner, Journal of Pattern Recognition, vol. 32, p. 1435-1447.
FUKUMI, M., AKAMATSU, N. (1996) A method to design a neural pattern recognition system using a genetic algorithm with partial fitness and a deterministic mutation, IEEE International Conference on Systems, Man and Cybernetics, vol. 3, p. 1989-1993.
GOLDBERG, D. (1989) Genetic Algorithm in Search, Optimization and Machine Learning, Reading, Addison-Wesley, 432 p.
HAYKIN, S. (1999) Neural Networks – A Comprehensive Foundation, New York, Prentice Hall, 842 p.
HO, T.K., HULL, J., SRIHARI, S. (1994) Decision combination in multiple classifier systems, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 16, n° 1, p. 66-75.
HU, M.K. (1962) Visual pattern recognition by moment invariant, IRE Transactions on Information Theory, vol. 1, p. 179-187.
HUANG, Y., SUEN (1993) The behaviour-knowledge space method for the combionation of multiple classifier, IEEE Conference on Computer Vision and Pattern Recognition, vol. 5, n° 4, p. 721-755.
HUANG, Y., SUEN (1994) A method of combining multiple classifiers – A neural approach, Proceeding of the International Conference of IAPR, vol. 2, p. 473-475.
JAIN, A., ZONGKER, D. (1997) Feature selection : Evaluation, application and small sample performance, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 19, n° 2, p. 153-158.
JAIN, A.K., DUIN, R., MAO, J. (2000) Statistical pattern recognition : A review, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 22, no. 1, p. 4-37.
JAIN, A.K., PRABHAKAR, S., HONG, L. (1999) A multichannel approach to fingerprint classification, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 21, n° 4, p. 348-358.
115
JOU, J.L., REN, J.B., WANG, C.S., CHIEU, B.C. (1995) One class one network with fuzzy number input and fuzzy number output for face recognition, Proceedings of Neural, Parallel and Scientific Computations, vol. 1, p. 227-232.
KATO, N., OMACHI, S., SUZUKI, M., ASO, H., NEMOTO, Y. (1999) A handwritten character recognition system using directional element feature and asymmetric Mahalanobis distance, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 21, n° 3, p. 258-262.
KAUPPINEN, H., SEPPANEN, T., PIETKAINEN, M. (1995) An experimental comparison of autoregressive and Fourier-based descriptors in 2D shape classification, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 17, n° 2, p. 201-207.
KITTLER, J., HATEF, M., DUIN, R., MATAS, J. (1998) On combining classifiers, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 20, no. 3, p. 225-239.
KOHONEN, T. (1989) Self-Organization and Associative Memory, Berlin, 3e édition, Springer-Verlag, 275 p.
KUDO, M., SKLANSKY, J. (2000) Comparison of algorithms that select features for pattern classifiers, Journal of Pattern Recognition, vol. 33, p. 25-41.
KULKARNI, S.R., LUGOSI, G., VENKATESH, S.S. (1998) Learning pattern classification – A survey, IEEE Transactions on Information theory, vol. 44, n° 6, p. 2178-2206.
KUNG, S.Y., TAUR, J.S. (1995) Decision-based neural networks with signal/image classification applications, IEEE Transactions on Neural Networks, vol. 6, no. 1, p. 170-181.
LAM, L., SUEN, C.Y. (1997) Application of majority voting to pattern recognition: An analysis of its behaviour and performance, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 27, p. 553-568.
LEE, T., CHING, P.C. (1999) Cantonese syllable recognition using neural networks, IEEE Transactions on Speech and Audio Processing, vol. 7, n° 4, p. 466-472.
LOONIS, P. (1996) Contribution à la minimisation de l’a priori en reconnaissance des formes. Conception d’un prototype de trieuse automatique de poissons par vision artificielle en milieu industriel. La Rochelle, Thèse de doctorat, Université de La Rochelle, 125 p.
LOONIS, P., MÉNARD, M. (1996a) Considération sur l’approche connexionniste de la fusion – Application à la reconnaissance de poissons de rivière, Journées thématiques en fusion, Tours, p. 1-5.
LOONIS, P., MÉNARD, M. (1996b) A new genetic algorithm for the multi-classifier fusion optimization, Proceedings of Information Processing and Management of Uncertainty in Knowledge Based Systems, vol. 2, p. 957-961.
MCILRAITH, A.L., CARD, H.C. (1997) Methods of combining multiple classifiers and their
116
applications to handwriting recognition, IEEE Transactions on Signal Processing, vol. 45, n° 11, p. 2740-2748.
MURSHED, N., BORTOLOZZI, F., SABOURIN, R. (1996) A fuzzy ARTMAP-based classification system for detecting cancerous cell, based on the one-class problem approach, Proceedings of the International Conference on Pattern Recognition, p. 478-482.
PANDYA, A., MACY, R. (1995) Pattern recognition with neural networks in C++, Boca Raton, CRC Press, 432 p.
PRAMPERO, P.S., DE CARVALHO, A. (1998) Recognition of vehicles silhouette using combination of classifiers, Proceedings of IEEE International Joint Conference on Neural Networks, vol. 3, p. 1723-1726.
PUDIL, P., NOVOVICOVA, J., KITTLER, J. (1994) Floating search methods in feature selection, Pattern Recognition Letters, vol. 15, p. 1119-1125.
REEVES, A., PROKOP, R.J., ANDREWS, S.E., KUHL, F.P. (1988) Three dimensional shape analysis using moments and Fourier Descriptor, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 10, n° 6, p. 937-943.
SCHURMANN, J. (1996) Pattern Classification – A Unified View of Statistical and Neural Approaches, New York, John Wiley and Sons, 392 p.
SCOTT, W.B., CROSSMAN, E.J. (1973) Freshwater Fishes of Canada, Fisheries Research Board of Canada, 966 p.
SHERRAH, J., BOGNER, R., BOUZERDOUM, A. (1996) Automatic selection of features for classification using genetic programming, Proceedings of the Australian-New-Zealand on Intelligent Information Systems, p. 284-287.
STRACHAN, N.J.C., KELL, L. (1993) A potential method for the differentiation between haddock fish stock by computer vision using canonical discriminant analysis, ICES Journal of Marine Science , vol. 52, p. 145-149.
STRACHAN, N.J.C., NESVADA, P., ALLEN, A.R. (1990) Fish species recognition by shape analysis of images, Pattern Recognition, vol. 23, n° 5, p. 187-192.
SUEN, C.Y., XU, L.,KRZYZAK, A. (1992) Methods of combining multiple classifiers and their applications to handwriting recognition, IEEE Transactions on Systems, Man and Cybernetics, vol. 22, n° 3, p. 418-435.
TANG, X., STEWART, W. (1996) Plankton image classification using novel parallel-training learning vector quantization network, Proceedings of OCEAN ‘96, vol. 3, p. 1227-1236.
117