Vous êtes sur la page 1sur 36

L’université de Carthage

L’École Supérieure des Communications de Tunis

rapport de stage d’ingénieur

Conception d’une chaîne de traitement pour


l’évaluation de la qualité de l’eau : du capteur à
l’évaluation basée sur l’apprentissage profond

organisme d’accueil
Laboratoire de recherche Communication, Signal et Image (COSIM)

auteur
Mohamed Chaaben

encadrement
Prof. Amel Benazza
Prof. Rabaa Youssef

Année universitaire
2021 - 2022
Résumé

L’apprentissage profond a prouvé son efficacité dans des domaines aussi nombreux que divers
et le succès qu’il a eu lui confère un rôle essentiel dans le développement de nouvelles solutions
technologiques.

Dans ce contexte, nous nous intéressons au domaine du contrôle de la qualité de l’eau. Une
base de données avec sa vérité-terrain a été créée à cet effet et a servi d’une part à l’estimation
de la turbidité de l’eau et d’autre part, à la classification des eaux en niveaux de turbidité en se
basant sur des techniques de l’apprentissage profond.
Remerciements

Ce stage d’ingénieur m’était l’origine d’une pléthore de connaissances aussi bien théoriques
que techniques. C’est une occasion précieuse pour mettre en exergue mes acquis académiques,
apprivoiser le domaine de l’ingénierie et examiner de près ses besoins et ses défis.

À cet égard, je tiens à témoigner toute ma reconnaissance à Mme Amel Benazza qui m’a offert
cette opportunité et m’a doté de sa confiance et de ses conseils continus.

Ce travail doit son existence au support pédagogique, à la patience et à la disponibilité généreuse


de Mme Rabaa Youssef à qui je réitère mes remerciements et mon respect.
Table des matières

Introduction générale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1 État de l’art 9
1.1 Turbidité et méthodes classiques de mesure . . . . . . . . . . . . . . . . . . . . . . . 9
1.2 Mesure de turbidité basée sur la vision par ordinateur . . . . . . . . . . . . . . . . . 10
1.3 Rétrospection sur le travail antérieur à COSIM . . . . . . . . . . . . . . . . . . . . . 12
1.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2 Protocole d’acquisition et environnement d’exécution 15


2.1 Mise en place du capteur de détection de turbidité . . . . . . . . . . . . . . . . . . . 15
2.2 Collecte de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3 Environnement de travail et d’exécution . . . . . . . . . . . . . . . . . . . . . . . . 18

3 Estimation de la valeur de turbidité par régression 19


3.1 AquaSight : Détection automatique des impuretés aquatiques . . . . . . . . . . . . 19
3.2 Implémentation de l’architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3 Exécution & Résultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

4 Estimation de la turbidité par classification 25


4.1 Choix des classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.2 Métriques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4.2.1 Accuracy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4.2.2 Matrice de confusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
4.3 Implémentation & Résultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.3.1 Découpage en 4 classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.3.2 Découpage en 3 classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.3.3 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Conclusion et perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Bibliographie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

4
Liste des figures

1.1 Le disque de Secchi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10


1.2 Le dispositif Secchi-3300 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.3 Aperçu sur l’expérience de Gimenez et al. . . . . . . . . . . . . . . . . . . . . . . . 11
1.4 Exemple d’images utilisées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.5 Aperçu sur la base de données formée à COSIM . . . . . . . . . . . . . . . . . . . . 13
1.6 Effet de l’étirement du contraste . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.1 Branchement du turbidimètre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15


2.2 Courbe de conversion Voltage en UTN . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3 Les deux positions de capture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.4 Image avec motif avant extraction de la région d’intérêt . . . . . . . . . . . . . . . . 17
2.5 Image sans motif - La région d’intérêt à extraire . . . . . . . . . . . . . . . . . . . . 18

3.1 Architecture AquaSight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19


3.2 Exemples d’images utilisées pour AquaSight . . . . . . . . . . . . . . . . . . . . . . 20
3.3 Architecture globale utilisée . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.4 Dataset A - Évolution de la fonction de perte et de RMSE . . . . . . . . . . . . . . 22
3.5 Reprendre une partie de taille 400×400 pixels . . . . . . . . . . . . . . . . . . . . . 23
3.6 Dataset B - Évolution de la fonction de perte et de RMSE . . . . . . . . . . . . . . 24

4.1 Découpage en 4 classes - Nombre d’images par classe . . . . . . . . . . . . . . . . . 26


4.2 Découpage en 3 classes - Nombre d’images par classe . . . . . . . . . . . . . . . . . 26
4.3 Évolution de la fonction de perte et de l’accuracy . . . . . . . . . . . . . . . . . . . 28
4.4 Matrice de confusion de la classification en 4 classes du dataset A . . . . . . . . . . 29
4.5 Matrice de confusion de la classification en 4 classes du dataset B . . . . . . . . . . 30
4.6 Exemples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.7 Évolution de la fonction de perte et l’Accuracy . . . . . . . . . . . . . . . . . . . . . 31
4.8 Matrice de confusion de la classification 3 classes du dataset A . . . . . . . . . . . . 32
4.9 Évolution de la fonction de perte et l’Accuracy . . . . . . . . . . . . . . . . . . . . . 32
4.10 Matrice de confusion de la classification 3 classes du dataset A . . . . . . . . . . . . 33

5
Liste des tables

3.1 Dataset A - Performances du modèle . . . . . . . . . . . . . . . . . . . . . . . . . . 22


3.2 Dataset B - Performances du modèle . . . . . . . . . . . . . . . . . . . . . . . . . . 23

4.1 Performances du modèle en 4 classes . . . . . . . . . . . . . . . . . . . . . . . . . . 29


4.2 Performances du modèle en 4 classes . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.3 Dataset A - Le score F1 et l’indice de Jaccard par classe . . . . . . . . . . . . . . . 31
4.4 Dataset B - Le score F1 et l’indice de Jaccard par classe . . . . . . . . . . . . . . . 31
4.5 Performances du modèle en 4 classes . . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.6 Dataset B - Performances du modèle en 3 classes . . . . . . . . . . . . . . . . . . . 33
4.7 Dataset A - Le score F1 et l’indice de Jaccard par classe . . . . . . . . . . . . . . . 33
4.8 Datset B - Le score F1 et l’indice de Jaccard par classe . . . . . . . . . . . . . . . . 34

6
Introduction générale

L’eau est une ressource indispensable à la vie humaine, à la sécurité alimentaire ainsi qu’à
l’industrie. La qualité de l’eau est donc un paramètre important qui touche à tous les aspects
du bien-être des écosystèmes, à savoir la santé publique, les denrées alimentaires produites, les
activités économiques et la biodiversité.

La turbidité est un indicateur essentiel pour surveiller la qualité de l’eau. C’est une caractéris-
tique optique qui traduit la capacité à diffuser ou absorber la lumière incidente. Elle est due à
la présence dans l’eau de particules en suspension minérales ou organiques. Ainsi, plus une eau
est chargée en particules en suspension, plus elle est turbide. La présence de ces particules peut
détériorer l’état de l’eau, pouvant par exemple perturber très significativement le milieu aquatique
en le rendant inapte aux conditions de vie pour la faune et la flore, ou altérer son aptitude à la
potabilisation pour la consommation humaine.

En pratique, le turbidimètre est un moyen de détection de turbidité largement utilisé. Des


échantillons d’eau sont prélevés sur le site cible puis analysés en laboratoire avec des turbidimètres.
Bien qu’elle soit précise, cette méthode présente divers inconvénients, à savoir le coût élevé, le be-
soin d’experts et le manque de performance en temps réel. Pour des sites à grande échelle tels
que les lacs, les fleuves et les océans, des images satellitaires ont été utilisées pour une estimation
à distance de la qualité de l’eau. L’avantage de cette technique est de ne plus nécessiter de cam-
pagnes de prélèvement in situ et de couvrir des zones géographiques de grandes tailles. Toutefois,
la fréquence des passages du satellite ainsi que le coût élevé des images satellitaires rendent difficile
le recours à cette méthode pour une analyse en permanence.

Depuis quelques années, l’Intelligence Artificielle connaît un regain d’intérêt sans précédent
grâce à d’importantes avancées technologiques qui étendent les capacités des ordinateurs et ac-
croissent leurs performances, notamment dans le domaine de la vision par ordinateur. C’est dans
ce sens que s’inscrit ce stage d’ingénieur dont le but est de développer une approche simple,
peu coûteuse et efficace pour mesurer la turbidité de l’eau en se basant sur des techniques de
l’apprentissage profond.

7
Le stage a été effectué au sein du laboratoire de recherche Communication, Signal et Image
(COSIM) réputé pour sa manipulation des outils en signal, image et communications numériques
afin de mettre en place des solutions répondant à des besoins patents dans les domaines de la
santé publique, l’agriculture, les réseaux de communication de 5e génération et la protection de
l’environnement.

Ce rapport synthétise le travail réalisé au cours de la période du stage, nous l’abordons par
un aperçu général sur les méthodes antérieures utilisées dans la mesure de turbidité . Ensuite,
la deuxième partie est consacrée à l’estimation des valeurs de turbidité par régression. La partie
suivante se concentre sur la classification des valeurs de turbidité par intervalles. Enfin, nous
clôturons par une conclusion générale qui donne un bilan du travail réalisé en traçant quelques
perspectives.

8
Chapitre 1

État de l’art

Introduction
L’état de l’art est une étape préliminaire essentielle qui permet de mieux cerner le sujet et
donc pourvoir aboutir à de réelles avancées, en évitant de refaire ce qui a déjà été fait, à savoir les
erreurs expérimentées. Dans ce chapitre, nous commençons par définir la turbidité et ses méthodes
de mesures classiques. Ensuite nous découvrons les approches de mesure de turbidité basées sur
la vision par ordinateur. Enfin, nous présentons un travail antérieur fait au sein du laboratoire
COSIM et qui sert comme point de départ pour ce stage.

1.1 Turbidité et méthodes classiques de mesure


La turbidité de l’eau est principalement causée par la présence d’argile, de matière organique
et de micro-organismes provenant souvent du ruissellement de l’industrie, de l’agriculture ou des
sources domestiques. La mesure de la turbidité est un test clé de la qualité de l’eau, car des niveaux
de turbidité élevés peuvent être un indicateur d’un certain nombre de problèmes.

L’unité de turbidité Jackson (UTJ) est une unité historique utilisée lorsque les mesures ont été
effectuées visuellement à l’aide d’un turbidimètre à bougie de Jackson. Cette méthode utilise un
long tube de verre placé au-dessus d’une bougie à luminosité normalisée et gradué en unités de
turbidité Jackson. On ajoute de l’eau dans le tube jusqu’à ce que la flamme ne soit plus perçue de
manière nette.

Un autre moyen de mesure de turbidité est le disque de Secchi. C’est un disque de 20 cm


de diamètre avec des quadrants noirs et blancs alternés. Il est attaché à une ligne calibrée et
muni d’un lest pour qu’il coule rapidement. La visibilité du disque de Secchi est généralement
indiquée en centimètres, et dans les eaux naturelles, la valeur peut varier de quelques centimètres
à plusieurs mètres. Ce disque, qui doit son nom à son inventeur, l’astronome italien Angelo Secchi,
est immergé au bout d’un filin étalonné jusqu’à sa disparition et permet d’indiquer la profondeur
moyenne à partir de laquelle on ne voit plus le disque à l’œil nu. La profondeur est ensuite corrélée
aux unités de mesure de turbidité.

9
Figure 1.1: Le disque de Secchi

Les méthodes décrites ci-dessus font face à plusieurs limites, à savoir l’inaptitude de détecter
des niveaux très bas de turbidité et la subjectivité des mesures du fait qu’elles sont basées sur
l’observation humaine, ce qui introduit des erreurs de perception et de jugement personnel.

Aujourd’hui, les turbidimètres néphélométriques sont les plus utilisés dont l’unité de mesure
est UTN, unité de turbidité néphélométrique. Cet instrument envoie un rayon lumineux à travers
un échantillon d’eau et mesure la quantité de lumière qui passe à travers l’eau par rapport à la
quantité de lumière qui est réfléchie par les particules dans l’eau. Le prix cher de cet appareil et
le besoin d’un expert pour faire les tests rendent cette technique onéreuse.

1.2 Mesure de turbidité basée sur la vision par ordinateur


Motivés par les avancées technologiques du domaine de la vision par ordinateur, les scientifiques
sont en quête d’une méthode de mesure de turbidité à la fois précise et peu coûteuse.

Mullins et al. [1] ont proposé une méthode basée sur des images échantillonnées appelées Cam-
era Estimated Turbidity (CET). Au moyen d’une source de lumière infrarouge, un récipient en
verre, un agitateur magnétique pour maintenir une répartition uniforme dans le récipient et une
caméra, cette méthode vise à détecter la turbidité de l’échantillon en fonction du nombre de pixels
dans la région d’intérêt. Pour éviter toute interférence avec l’éclairage ambiant, la plateforme
d’acquisition de données a été entourée de matériaux opaques pour occulter la lumière.

Toivanen et al. [2] et Näykki et al. [3] ont inventé un dispositif appelé Secchi-3300 qui peut
être utilisé pour mesurer la turbidité de l’eau en fonction de la couleur et la transparence. Afin
de prendre des mesures, l’utilisateur remplit le conteneur Secchi-3300 avec l’échantillon à tester,
place la structure de mesure dans le conteneur et prend une photo avec un téléphone portable à
travers un trou dans le couvercle de l’appareil, comme illustré dans la figure 1.2. En arrière-plan est
placée une grille contenant les couleurs noire, blanche et grise, dans deux profondeurs distinctes.
Le principe de Secchi-3300 est basé sur la comparaison de l’intensité lumineuse sur les différentes
couleurs.
Leeuw et Boss [4] ont présenté une méthode de détection de turbidité qui nécessite un smart-

10
Figure 1.2: Le dispositif Secchi-3300

phone doté d’une application mobile, disponible déjà sur Google Play, appelée HydroColor. Trois
images doivent être capturées: une image d’une carte grise, une image du ciel et une image de
l’échantillon d’eau. Plus tard, l’application donne la mesure de la turbidité en se basant sur le
rapport de la réflectance RVB entre le ciel, la carte grise et l’échantillon d’eau.

Gimenez et al. [5] ont avancé une autre technique de mesure qui se différencie par l’utilisation
en arrière-plan d’un motif en forme de grille. Les données sont collectées par une caméra vidéo et
un algorithme mathématique est utilisé pour corréler la perte d’image avec la turbidité.
En utilisant l’unité de turbidité néphélométrique (UTN), les résultats obtenus couvrent une large
gamme de UTN, soit de 1,95 à 1000 UTN.

Figure 1.3: Aperçu sur l’expérience de Gimenez et al.

La littérature sur la mesure de la turbidité ne se limite pas aux méthodes de régression où


on veut estimer une valeur réelle de l’échantillon, de diverses recherches s’intéressent aussi à la
classification.

L’exemple le plus frappant est celui de Ankit Gupta et Elliott Ruebush [6] qui ont proposé
une application mobile intitulée AquaSight pour la classification binaire du niveau de turbidité.
Ces deux chercheurs ont construit un réseau neuronal convolutif formé de 8 couches prenant en
entrée une image RVB de taille 300×300 pixels afin de décider si l’échantillon d’eau représenté
dans l’image est propre ou contaminé.

11
Le jeu de données utilisé est composé de 105 images d’échantillons d’eau avec une large gamme
de niveaux de lumière. Le principal avantage de cette architecture est son petit réseau, ce qui
signifie un nombre réduit de paramètres et un coût de calcul relativement faible et par conséquent,
une classification rapide utile à la détection en temps réel.

(a) Eau propre (b) Eau contaminée

Figure 1.4: Exemple d’images utilisées

1.3 Rétrospection sur le travail antérieur à COSIM


Un premier travail inspiré du papier scientifique de Ankit Gupta et Elliott Ruebush [6] été
entrepris au sein du laboratoire COSIM. Ce travail s’est basé sur l’architecture proposé dans [6]
pour vérifier si une estimation de turbidité par régression est possible. En effet, une architecture
neuronale similaire a été utilisée pour faire la tâche de régression.

La tâche d’acquisition d’images pour construire une base de données a été effectuée au Labora-
toire des Ressources Minérales et de l’Environnement de la Faculté des Sciences de Bizerte. Pour
chaque valeur de turbidité, on prend 4 à 5 photos puis on en extrait les régions d’intérêt. Enfin,
un dataset constitué de 779 images annotées couvrant le spectre de turbidité inférieur à 876 UTN
a été construit.

Le modèle entrainé sur cette base a fait face à un problème de surapprentissage dû à la taille
réduite du dataset. Le recours à l’augmentation artificielle des données par l’ajout d’un bruit
gaussien blanc et l’étirement du contraste a été utilisé pour contourner ce problème. L’ensemble
ainsi augmenté est composé de 2260 images annotées.
L’utilisation du nouveau dataset après augmentation a diminué les signes de surapprentissage et
engendré une bonne capacité de généralisation. Néanmoins, il a généré plus d’erreur et réduit les
performances du modèle.

12
(a) 0.66 UTN (b) 362 UTN (c) 876 UTN

Figure 1.5: Aperçu sur la base de données formée à COSIM

1.4 Discussion
À l’issu de cette revue du travail préliminaire fait dans le laboratoire COSIM dans le cadre
de l’estimation de la qualité de l’eau, nous pouvons conclure que la technique d’augmentation de
la base utilisée n’est pas adapté. En effet, l’étirement du contraste donne lieu à des images non
réalistes, dont les valeurs d’attributs faussent l’apprentissage du modèle. Ceci est d’autant plus
problématique que la nouvelle base est constitué de 65% d’images augmentées. Ajoutons à cela
que la technique de redimensionnement de l’image, faite pour adapter l’image à l’entrée du réseau
de neurones, change aussi la texture et trompe donc le modèle.

Concernant la classification, le déséquilibre en termes de nombre d’observations par classe a


conduit à un modèle biaisé. Le découpage en classes, adopté lors de ce travail, n’a pas pris en
compte la particularité du dataset, et a défini donc des classes sur des intervalles de turbidité de
largeurs uniformes.

(a) Avant (b) Après

Figure 1.6: Effet de l’étirement du contraste

13
Conclusion
À la lumière de cet état de l’art, il découle que de nombreux paramètres influencent la mesure
de turbidité ce qui nous motive déjà au recours à l’apprentissage profond.

Peu importe la technologie à utiliser, la mesure de la turbidité via la vision par ordinateur
est un processus intrinsèquement laborieux. En fait, l’eau est un objet transparent pauvre en
caractéristiques et en information utile ce qui complique la tâche d’extraction de features. En
plus, les résultats sont généralement sensibles aux conditions d’acquisition telles que le contraste,
la luminosité et les taches aberrantes de réflexion. La résolution de la caméra peut aussi influencer
le modèle du fait que les images à haute résolution représentent plus de détails, ce qui signifie que
le réseau de neurones peut en extraire des caractéristiques plus pertinentes.

Compte tenu des travaux réalisés, nous proposons de créer une nouvelle base de données plus
stable en terme de contraste et de luminosité. En s’inspirant des papiers scientifiques de Gimenez
et al.[5], nous pensons que l’utilisation d’un motif peut faciliter au réseau la tâche d’extraction
de caractéristiques et par conséquent, augmenter les performances. Pour vérifier cette hypothèse,
notre base doit être constitué de deux sous-bases: une sous-base avec un motif en arrière-plan
et une autre sans motif. Un réseau de neurones convolutif toujours inspiré du travail de [6] est
appliqué afin de vérifier si la stabilisation de l’environnement d’exécution, ainsi que l’ajout de motif
jouent un rôle dans l’amélioration de la précision du modèle.

14
Chapitre 2

Protocole d’acquisition et environnement


d’exécution

Introduction
Les donnés sont fondamentales pour pouvoir entrainer un réseau de neurones profond. Or, il
n’existe pas une base de données présentant des échantillonnions d’eau avec leurs vérité-terrains,
c’est pourquoi on se propose d’en construire une. Dans ce chapitre, nous présentons un aperçu
général sur le capteur de turbidité utilisé, le protocole de collecte de données et les outils logiciels
employés.

2.1 Mise en place du capteur de détection de turbidité


Pour prendre les acquisitions, le capteur de turbidité SEN0189 est utilisé. Ce capteur, dont
le coût est relativement faible, est conçu par le fournisseur chinois de matériel robotique Zhiwei
Robotics Corp, connu aussi sous le nom DFRobot. Alimenté de 5 VCC, il dispose d’une diode
électroluminescente infrarouge et d’un détecteur de lumière positionné à un angle de 90 degrés. La
diode émet un faisceau dans l’échantillon d’eau, où une lumière diffusée est générée dès que le fais-
ceau entre en contact avec une particule dans une zone définie. Le détecteur convertit l’intensité
lumineuse reçue en un signal électrique qui sera ensuite transformé en une valeur de turbidité.
Plus la concentration des matières en suspension est élevée, plus le niveau de turbidité l’est aussi.

Figure 2.1: Branchement du turbidimètre

Le capteur communique avec un microcontrôleur de type Arduino via un signal digital ou


analogique. La corrélation entre la mesure du signal électrique V et la turbidité est donnée par

15
l’équation 1, fournie au wiki officiel du fournisseur [7].
U T N = −1120.4V 2 + 5742.3V − 4352.9 (2.1)

3000

2000
Turbidité en UTN

1000

1000

2.0 2.5 3.0 3.5 4.0 4.5


Voltage

Figure 2.2: Courbe de conversion Voltage en UTN

2.2 Collecte de données


Les acquisitions sont effectuées selon le protocole suivant.
Dans une chambre, et sous un niveau de luminosité constant, on met un fond blanc uniforme pour
minimiser le bruit dans l’image capturée. Un bécher en verre rempli d’eau sert pour préparer le
mélange et un smatephone équipé d’une caméra 48 mégapixels est fixé sur deux positions. Pour
préparer la solution, on utilise du sédiment très argileux pris de l’oued Majerda.

Les principales étapes d’acquisition:


• Ajouter progressivement, et avec de petites quantités, du sédiment.
• Mélanger le liquide et attendre à peu près 30 secondes.
• Avec le turbidimètre, mesurer les valeurs de turbidité.
• Prendre 3 à 4 photos pour chaque type d’image: sans et avec motif, et pour chaque position.
Après avoir réalisé la série d’acquisitions et l’annotation des images, on extrait les régions
d’intérêts qui constituent les entrées du modèle.
• Pour les images sans motif, comme le montre la figure 2.4, la région d’intérêt est tout juste
sous le niveau d’eau, là où le capteur est émergé. D’ailleurs, plus on descend, plus la concen-
tration des matières en suspension est élevée et la valeur de turbidité est augmentée. Cette
région prend la forme d’un rectangle dont la longueur est le double de la largeur pouvant
ainsi être découpée ensuite en deux imagettes carrées. Ce découpage sert à augmenter la
base de données sans pour autant modifier l’image.

16
(a) Position 1: 5 cm depuis la caméra (b) Position 2: 10 cm depuis la caméra

Figure 2.3: Les deux positions de capture

• Pour les images avec motif, le motif est constitué de quatre rectangles noires horizontales de
largeurs de plus en plus petites. Imprimé sur un papier et collé à la face derrière du bécher
au moment de l’acquisition, le motif est supposé donner plus de features, car au fur et à
mesure que l’eau augmente en turbidité, les rectangles deviennent moins nets, augmentent
en contraste et leurs bords deviennent moins acérés.

Figure 2.4: Image avec motif avant extraction de la région d’intérêt

Finalement, on a une base constituée de 562 images sans motif et 338 images avec motif couvrant
la plage de turbidité de 5 à 1990 UTN. À noter que 1100 UTN est la valeur de turbidité à partir
de laquelle le motif n’est plus visible à travers le bécher.

Désormais, nous travaillons avec deux ensembles de données

• Un ensemble sans motif constitué des acquisitions faites durant ce stage auxquelles on joint à
la base déjà existante du laboratoire COSIM. Cette base compte donc 1340 images annotées
qu’on notera désormais A.

• Un ensemble de données avec motif de 338 images qu’on note B.

17
Figure 2.5: Image sans motif - La région d’intérêt à extraire

2.3 Environnement de travail et d’exécution


Pour le découpage des régions d’intérêt, l’outil ImageJ est utilisé. C’est un logiciel multiplate-
forme, libre et open source de traitement et d’analyse d’images, il permet de visualiser et éditer
des piles d’images en même temps. ImageJ est capable d’appliquer beaucoup d’opérations telles
que la visualisation, l’ajustement de l’histogramme des niveaux de gris, le débruitage, la correction
d’éclairage, la détection de contours et le rognage.

En ce qui concerne le volet implémentation, nous avons recours à la plateforme Google Colab-
oratory, communément appelée Google Colab. Conçu en 2018, cette plateforme est basée sur le
cloud et est destinée à la formation et à la recherche dans l’apprentissage automatique.
L’un des principaux avantages de l’utilisation de Google Colab est qu’elle contient la majorité
des bibliothèques courantes nécessaires à l’apprentissage automatique telles que TensorFlow, Scik-
itLearn, OpenCV, etc. préinstallées, sans avoir à configurer quoi que ce soit.

Google propose également gratuitement un processeur graphique GPU, c’est un accélérateur matériel
permettant d’exécuter des opérations lourdes et sur de grands ensembles de données beaucoup plus
rapidement que les processeurs ordinaires.

Conclusion
Finalement, nous avons une base de données bien organisée, constituée de deux ensembles A
(sans motif) et B (avec motif). Nous avons aussi préparé notre environnement d’exécution. Par la
suite, on va entamer la partie estimation et classification.

18
Chapitre 3

Estimation de la valeur de turbidité par


régression

Introduction
Dans ce chapitre, nous allons détailler le travail [6] en termes d’architecture utilisée et résultats
obtenus. Ensuite, nous présentons le réseau de neurones que nous avons utilisé et les résultats
d’exécution sur la base de données A, puis sur la base de données B. On finit par discuter les
résultats et une conclusion.

3.1 AquaSight : Détection automatique des impuretés aqua-


tiques
Rappelons que [6] propose un réseau de neurones convolutif formé de 8 couches, prend en en-
trée des images RVB de taille 300×300 pixels et décide pour chaque image si elle est propre ou
contaminée.

Figure 3.1: Architecture AquaSight

19
L’architecture légère de ce réseau est un atout important. La première couche est une con-
volution qui vise à extraire les caractéristiques générales de l’image. Les couches suivantes de
convolution détectent des caractéristiques de plus en plus complexes et abstraites. Le nombre
considérable de filtres (64) combinés avec leur petite taille (3x3) permet de détecter quasiment
tous les détails dans l’image d’entrée.

Le max-pooling permet non seulement de réduire la dimension tout en préservant les caractéris-
tiques importantes, mais aussi d’alléger la charge calculatoire et éviter le surapprentissage.

La couche Dropout consiste à désactiver des sorties de neurones aléatoirement pendant la phase
d’apprentissage. Cela force chaque unité à apprendre indépendamment des autres, ce qui a pour
but de réduire le risque de surapprentissage. La couche Dropout permet aussi l’accélération de la
pahse d’apprentissage. Enfin, la sortie des deux couches entièrement connectées est alimentée par
une fonction sigmoïde à deux voies (propre, contaminée).

Les auteurs utilisent ReLu comme fonction d’activation pour les couches convolutives et en-
tièrement connectées. Pour l’optimisation, la méthode Adam est choisie avec une initialisation
aléatoire des poids.

L’ensemble de données utilisé est composé de 105 images d’échantillons d’eau. Un sous-ensemble
de 35 images d’eau propre est constitué de 7 images d’eau propre colorée en vert, bleu, jaune et
orange et de 14 images d’eau propre.. Les 56 images restantes comprennent 28 images d’eau non
colorée avec des contaminants ajoutés. La figure 3.2 présente des exemple d’images utilisées.

Figure 3.2: Exemples d’images utilisées pour AquaSight

Le modèle proposé atteint une précision de 96.19% et une perte de 0,177. Seulement 4 images
sont mal classées par le modèle : une image contaminée sont classée comme propre et 3 images
propres sont classées comme contaminées.

20
3.2 Implémentation de l’architecture
Le coût de calcul relativement faible de cette architecture ainsi que sa performance conduisent
à réfléchir à la construction d’un réseau semblable pour effectuer la tâche de régression.
Cependant, la nature de nos images d’entrée sont complexes, il est judicieux d’ajouter plus de
couches à l’architecture originale. De plus, nous remplaçons la la fonction d’activation sigmoïde
de la couche de sortie entièrement connectée par une fonction ReLu pour l’objectif de régression.

Le réseau est donc composé de 11 couches comprenant 3 couches principales de convolution,


3 couches de Max-pooling, 2 couches entièrement connectées, une couche de normalisation de lot
(Batch Normalization), une couche aplatie (Flatten Layer) et une couche Dropout de paramètre
0.5 ce qui signifie que chaque neurone a une chance sur 2 d’être désactivé. Le modèle prend en
entrée une image RVB de taille 400×400 pixels et produit une valeur continue pour chaque image.
La figure 3.3 donne un aperçu plus détaillé sur l’architecture.

Figure 3.3: Architecture globale utilisée

Une normalisation préalable de chaque image d’entrée est effectuée de sorte que chaque pixel
ait une valeur comprise entre 0 et 1. Cette étape de normalisation permet d’accélérer le processus
d’apprentissage et de converger plus rapidement. Comme nous essayons d’estimer une valeur con-
tinue positive, nous choisissons la fonction d’activation ReLu pour la couche de sortie.

La fonction de perte utilisée pour évaluer l’écart entre les prédictions réalisées par le réseau
de neurones et les valeurs réelles des observations est la racine de l’erreur quadratique moyenne,
connue surtout par son nom anglais Mean Square Error et abrégé en MSE. La RMSE est la
moyenne des différences au carré entre les valeurs prévues Ŷ et les valeurs réelles Y .
N
1 X
M SE = (Yi − Ŷi )2 (3.1)
N i=1
Le résultat est toujours positif quel que soit le signe des valeurs prévues et réelles et la valeur par-
faite est de 0. La quadrature signifie que les erreurs les plus grandes sont amplifiées par rapport
aux petites erreurs, ce qui signifie que le modèle est pénalisé davantage pour avoir commis de plus
grandes erreurs.

21
Pour évaluer les performances de notre modèle, nous avons recours à une métrique bien connue
dans le domaine de la régression qui est la racine de l’erreur quadratique moyenne, RMSE en
abrégé. Étant donné que les erreurs sont mises au carré avant d’être moyennées, la racine permet
de revenir aux dimensions originales du problème.
v
u N
u 1 X
RM SE = t (Yi − Ŷi )2 (3.2)
N i=1

3.3 Exécution & Résultats


Exécution avec la base de données A En premier lieu, nous entrainons notre modèle sur
l’ensemble de données A (sans motif) constitué de 1340 images. Nous fixons 120 époques pour
l’apprentissage. Une époque décrit le nombre de fois où l’algorithme voit le jeu de données entier.

Lors de l’exécution de ce modèle, on maintient en arrière-plan un historique conservant toutes


les valeurs de perte et des autres métriques de chaque époque afin qu’elles puissent être exploitées
ultérieurement. Ces valeurs peuvent fournir des indications utiles concernant les performances
telles que la convergence ou non du modèle, la vitesse de convergence au fil des époques, les cas
de sur-apprentissage ou sous-apprentissage, etc. La figure 3.4 qui représente l’évolution des la
fonction de perte et de la métrique, montre que le modèle apprend et la stabilisation est atteinte
dès l’époque 90.

Figure 3.4: Dataset A - Évolution de la fonction de perte et de RMSE

La table 3.1 permet de quantifier les performances générales obtenues sur les différents types de
données.
Perte RMSE
Phase d’entrainement 14 288 60.6
Phase de validation 39 418 130
Phase de test 50 022 141

Table 3.1: Dataset A - Performances du modèle

En analysant la figure 3.4 et le tableau 3.1, nous pouvons remarquer que l’écart entre les per-
formances du phase d’entrainement et celles des phases de validation et de test est notable, ce qui

22
peut être un signe de sur-apprentissage. En effet, l’exactitude du modèle se déprécie lorsqu’il est
face à de nouvelles images, et a donc de la peine à généraliser.

Le problème de sur-apprentissage est repéré aussi dans le travail antécédent du laboratoire


COSIM, ce qui signifie que la fusion de notre base de données avec celle déjà préparée n’est tou-
jours pas suffisante pour surmonter ce problème dans le cadre de l’estimation de la valeur de
turbidité. Le modèle a probablement besoin d’un dataset plus grand couvrant davantage le spec-
tre de valeurs de turbidité.

Exécution avec la base de données B

En vue d’avoir un modèle plus performant, nous essayons aussi d’alimenter le même réseau
de neurones avec la base de données B dont les images sont avec motif. Le motif a pour objectif
de fournir plus de caractéristiques et de détails. Les contours bruités et la couleur de moins en
moins marqué du motif en lien avec l’augmentation de turbidité peut fournir plus de features à
l’architecture, ce qui n’était pas le cas des échantillons d’eau sans motif (base A).
Rappelons que l’architecture neuronale accepte en entrée des images de tailles 400×400 pixels, mais
faute de bonnes dimensions, et pour éviter le changement d’échelle des images, on a dû choisir une
région plus petite pour s’adapter à l’entrée du modèle.

Figure 3.5: Reprendre une partie de taille 400×400 pixels

Les résultats de l’apprentissage sont résumés dans la figure 3.4 et la table 3.2.

Perte RMSE
Phase d’entrainement 90 677 156
Phase de validation 95 581 162
Phase de test 95 661 154

Table 3.2: Dataset B - Performances du modèle

23
Figure 3.6: Dataset B - Évolution de la fonction de perte et de RMSE

D’après ces résultats, le modèle n’est plus confronté au problème de sur-apprentissage, mais
ne présente pas d’améliorations prédictives lorsqu’il est comparé au modèle entrainé sur le jeu de
données sans motif, et contre toute attente, le motif n’a pas aidé à améliorer les performances.
Toutefois, cette comparaison est à relativiser vu que le dataset ne compte que 338 images, contre
1340 pour la base A.

Conclusion
Il ressort de ce qui précède que la taille de la base de données est un élément clé pour la
tâche de régression. Celle-ci nécessite un dataset riche qui balaye une bonne partie du spectre de
turbidité. Prenons comme référence la valeur du RMSE obtenue à la phase de test sur le dataset
A, l’erreur serait alors en moyenne ± 141 UTN. Compte-tenu de ces résultats, notamment le large
écart entre la valeur prédite et la valeur réelle de turbidité, nous nous proposons d’opter pour une
classification des échantillons d’eau au lieu d’une estimation de valeur de turbidité.

24
Chapitre 4

Estimation de la turbidité par classifica-


tion

Introduction
Dans cette partie, nous expliquons comment nous définissons les classes de turbidité afin de
mettre en œuvre la tâche de classification. Étant donnée que l’architecture de [6] opère une
classification binaire tandis que notre objectif ici est d’affiner plus la classification en proposant
plus de classes de turbidité, la fonction d’activation de la couche de sortie (Sigmoïde) est remplacée
par une fonction Softmax qui découlent de nos expérimentations. Deux essais de classification sont
faits, un essai avec 4 classes et un autre avec 3 classes. Cette démarche progressive nous permet
de mieux de comprendre les particularités de notre base et de cerner ses limites. Pour clore, nous
présentons les résultats et les conclusions qui découlent de nos expérimentations.

4.1 Choix des classes


Une première observation de notre base de données nous a aidé pour aboutir à un découpage
raisonnable de 4 classes, ce qui aiderait le modèle à bien classer.

• La classe 0: Elle couvre le spectre de turbidité de 0 à 200 UTN, l’eau est considérée peu
turbide.

• La classe 1: Elle contient les images de 200 à 500 UTN, l’eau est plutôt turbide, il est même
clair à l’œil nu que sa couleur a commencé de changer.

• La classe 2: La turbidité varie de 500 à 1100 UTN, l’eau est assez turbide, la ligne fine
du motif n’est plus claire, les espaces blancs séparant les rectangles du motif ne le sont pas
aussi.

• La classe 3: Cette classe couvre le spectre de turbidité de 1100 à 2000 UTN, l’eau est très
turbide, un objet derrière le bécher, notamment le motif, est invisible à l’œil nu.

25
Figure 4.1: Découpage en 4 classes - Nombre d’images par classe

Une tentative d’amélioration des performances est ensuite mise en œuvre sur un autre dé-
coupage en trois classes, ce découpage est basé sur les résultats de la classification en quatre
classes.

• La classe 0: Elle couvre le spectre de turbidité de 0 à 300 UTN, c’est la turbidité des cours
d’eau, des rivières et des lacs [76], l’eau est considérée peu turbide.

• La classe 1: Elle contient les images de 300 à 1100 UTN, l’eau est considérée assez turbide.

• La classe 2: La turbidité varie de 1100 à 2000 UTN, l’eau est très turbide.For sewage, the
turbidity range can reach thousands of NTU [36].

Figure 4.2: Découpage en 3 classes - Nombre d’images par classe

26
4.2 Métriques
L’objectif du modèle d’apprentissage est de capter au mieux les caractéristiques qui se prêtent
bien à la généralisation pour les données inédites au lieu de simplement mémoriser les données
rencontrées au cours de sa formation. Afin d’évaluer le modèle, nous nous basons sur l’accuracy,
la matrice de confusion, le score F1 et l’indice de Jaccard..

4.2.1 Accuracy
Appelée aussi précision ou parfois exactitude, cette métrique est l’une des mesures d’évaluation
les plus simples. C’est le pourcentage des observations correctement prédites. L’équation 2 montre
comment l’accuracy est calculée.
N ombre des prédictions correctes
Accuracy = (4.1)
N ombre de toutes les prédictions

4.2.2 Matrice de confusion


La matrice de confusion, appelée aussi tableau de contingence, est un tableau résumant les
résultats de prédictions sur un problème de classification. Cette matrice permet de comprendre de
quelle façon le modèle de classification est confus lorsqu’il au cours de l’apprentissage ce qui per-
met non seulement de savoir quelles sont les erreurs commises, mais surtout le type de ces erreurs.
Chaque colonne du tableau contient une classe prédite par l’algorithme et les lignes représentent
les classes réelles.

Pour mesurer les performances d’un classificateur avec une matrice de confusion, il est d’usage
de distinguer 4 types d’éléments. Pour faire simple, prenant l’exemple de deux classes 0 et 1.

• Vrai Positif VP: Élément de la classe 1 correctement prédit.

• Vrai Négatif VN: Élément de la classe 0 correctement prédit.

• Faux Positif Positif FP: Élément de la classe 1 mal-prédit.

• Faux Négatif FN: Élément de la classe 0 mal-prédit.

Il est possible de calculer plusieurs autres indicateurs résumant la matrice de confusion.

• La précision: la proportion d’éléments bien classés pour une classe donnée.


VP
P récision = (4.2)
V P + FP
La précision permet de mesurer le coût des faux positifs, c’est-à-dire ceux détectés par erreur.
Si on cherche à limiter les faux positifs, c’est cet indicateur qu’on va chercher à maximiser.

• Le rappel: Proportion d’éléments bien classés par rapport au nombre d’éléments de la classe
à prédire
VP
Rappel = (4.3)
V P + FN

27
• Le score F1 : Mesure de compromis entre précision et rappel.
2 . (P récision . Rappel)
Score F 1 = (4.4)
P récision + Rappel

• L’indice de Jaccard: C’est une métrique utilisée pour comparer la similarité entre l’ensemble
prédit d’une classe et l’ensemble des valeurs réelles. Étant donnée ypred l’ensemble des pré-
dictions et yreel l’ensemble de vraies valeurs, alors:
|ypred ∩ yreel |
Indice de Jaccard = (4.5)
|ypred ∪ yreel |

Un indice de Jaccard de 1 signifie que les valeurs prédites et celles réelles sont les mêmes. Ainsi,
un indice de 0 implique que les valeurs prédites et réelles sont totalement différentes.

Au cas de la multiclassification, il est possible de calculer tous ces indicateurs pour chaque classe,
et la moyenne sur chaque classe donne des informations globales sur la qualité du classificateur.

4.3 Implémentation & Résultats


4.3.1 Découpage en 4 classes
Exécution avec la base de données A
Le jeu de données est divisé comme suit:
• 60% pour former le modèle

• 20% pour la validation

• 20% pour tester le modèle


Le modèle est entrainé sur 120 époques.

Figure 4.3: Évolution de la fonction de perte et de l’accuracy

La fonction de perte diminue d’une façon exponentielle et l’accuracy augmente avec le nombre
d’époques ce qui reflète qu’à chaque époque le modèle apprend plus d’informations.

28
Perte Accuracy
Phase d’entraînement 0.78 71.75%
Phase de validation 0.8 73%
Phase de test 0.8 69%

Table 4.1: Performances du modèle en 4 classes

Globalement, le modèle semble stable à travers les 3 phases, et il n’y a plus de signes de sur-
apprentissage vues pendant la régression Néanmoins, le modèle atteint seulement 69% d’accuracy
de classification. Pour mieux comprendre les résultats, il est important de représenter la matrice
de confusion.

Figure 4.4: Matrice de confusion de la classification en 4 classes du dataset A

D’après la matrice de confusion de la figure 4.4, on remarque que le modèle parvient a bien
prédire la classe 3, et assez bien la classe 0 et la classe 1. Quant à la classe 2, une bonne partie de
ses images est mal prédite, elle est surtout confondue avec la classe 1, ce qui peut s’expliquer par le
fait que la base de données est faiblement indexée par des images de la classe 2. Une autre raison
plus directe de cette confusion est la similarité des images de ces deux classes en terme de couleur
et de texture, ce qui empêche le modèle de différencier parfaitement entre elles. D’ailleurs, pour
cette même raison que le modèle parvient à bien différencier la classe 3, puisque celle-ci présente
des images fortement différentiable en niveau de turbidité à l’œil nu.

Exécution avec la base de données B


En suivant la même logique du chapitre précédent, nous exécutons la même architecture neu-
ronale sur la base de données avec motif B. D’après la table 4.2, le modèle obtenu est plus
exact, les valeurs de l’accuracy sont meilleures dans les différentes phases et on peut dès lors
conclure sur l’utilité de l’utilisation d’un motif en arrière-plan.

29
Perte Accuracy
Phase d’entraînement 0.7 83%
Phase de validation 0.8 82%
Phase de test 0.9 79%

Table 4.2: Performances du modèle en 4 classes

Figure 4.5: Matrice de confusion de la classification en 4 classes du dataset B

D’après la matrice de confusion, cette architecture est maintenant capable de bien estimer les
classes, sauf la classe 1 qui est très confondue avec la classe 3. En fait, les images de la classe 0 et
celles de la classe 3 sont identifiables même à œil nu, mais les images de la classe 1 et la classe 2
partagent beaucoup de ressemblance.
La figure 4.6 permet d”étayer ce constat, elle représente des échantillons extrémums en terme de
valeur de turbidité et dans l’intervalle choisi pour chaque classe).

Figure 4.6: Exemples

30
Finalement, il est à noter que la classe 3 est toujours parfaitement prédite que ce soit avec la
base de données A ou B bien qu’elle soit toujours la plus pauvre en images, et c’est en fait grâce
à la pertinence de ses images qui sont identifiables par rapport aux autres classes.

Pour clore, on peut donc affirmer l’efficacité du motif qui ajoute du détail et de l’information
aux images. Ces informations sont essentiellement traduites par des variations entre les bandes
blanches et les bandes noires du motif ainsi que par le flou de contours créé au fur et à mesure que
la turbidité augmente.
L’indice de Jaccard et le score F1 présentés ci-dessous permettent d’appuyer nos interprétations.

Classe 0 Classe 1 Classe 2 Classe3


Score F1 (%) 70 79 48 85
Indice de Jaccard (%) 64.8 60 34 74

Table 4.3: Dataset A - Le score F1 et l’indice de Jaccard par classe

Classe 0 Classe 1 Classe 2 Classe3


Score F1 (%) 94 61 81 93
Indice de Jaccard (%) 89 43 67 86

Table 4.4: Dataset B - Le score F1 et l’indice de Jaccard par classe

Pour le dataset A, la classe 2 présente des valeurs de score F1 et d’indice de Jaccard faibles. Pour
le dataset B, c’est la classe 1 qui possède la plus faible prédiction ce qui est dû à la faiblesse de la
valeur du rappel qui révèle beaucoup de prédictions faux négatifs. Que ce soit avec motif ou non,
il y a toujours une classe qui est confondue. Ce découpage est n’est donc pas rigoureux en termes
de seuils entre les classes, ce qui nous incite à essayer un autre découpage avec seulement 3 classes.

4.3.2 Découpage en 3 classes


Exécution avec la base de données A

Figure 4.7: Évolution de la fonction de perte et l’Accuracy

31
Perte Accuracy
Phase d’entraînement 0.53 82.5%
Phase de validation 0.64 78%
Phase de test 0.55 79.9%

Table 4.5: Performances du modèle en 4 classes

On peut remarquer que les performances du modèle ont progressé et donc les résultats avec
3 classes sont meilleurs (79.93% pour les données de test) par rapport aux choix de 4 classes
(69.14%). Les métriques du score F1 et l’indexe de Jaccard sont en harmonie avec la matrice de
confusion. D’après celle-ci, la dernière classe est toujours la meilleure en terme de prédiction.

Figure 4.8: Matrice de confusion de la classification 3 classes du dataset A

Exécution avec la base de données B

Figure 4.9: Évolution de la fonction de perte et l’Accuracy

32
Perte Accuracy
Phase d’entraînement 0.2 97.5%
Phase de validation 0.26 95%
Phase de test 0.57 87%

Table 4.6: Dataset B - Performances du modèle en 3 classes

Comparé à la classification en 4 classes de turbidité, ce modèle a prouvé qu’il est plus stable.
L’accuracy a augmenté pour les différentes phases d’apprentissage. La matrice de confusion de
la figure 4.9 montre aussi ce progrès intéressant. Cette fois, la classe 2 possède la plus faible

Figure 4.10: Matrice de confusion de la classification 3 classes du dataset A

taux de prédiction. En effet, cette est composée d’images quasi-uniformes, donc le modèle se base
principalement sur la variation de couleur pour l’estimation, à l’inverse des autres classes où la
texture joue un rôle important pour l’estimation.

4.3.3 Discussion
À vue d’œil, le découpage en 4 classes donne lieu à une base de données non équilibrée pouvant
entraîner un biais dans le modèle. Cependant, l’expérience montre que la classe minoritaire, la
dernière classe, est la mieux prédite dans les différentes expérimentations. Ceci est expliqué par la
texture et la couleur différentes des images de cette classe. En effet, dès qu’on se met dans une eau
fortement turbide (à partir d’un seuil de 1100 NTU), on se rend compte que la couleur de l’eau est
très marquée par la présence du sédiment, ce qui différencie les images de cette classe des autres,
et par conséquent rend l’apprentissage plus facile dans cette plage de valeurs de turbidité.

Classe 0 Classe 1 Classe 2


Score F1 (%) 81 80 95
Indice de Jaccard (%) 67 66 91

Table 4.7: Dataset A - Le score F1 et l’indice de Jaccard par classe

33
Classe 0 Classe 1 Classe 2
Score F1 (%) 97 95 93
Indice de Jaccard (%) 94 90 87

Table 4.8: Datset B - Le score F1 et l’indice de Jaccard par classe

Par ailleurs, les résultats obtenus avec 3 classes sont encore meilleurs (79.93% pour les don-
nées de test) que ceux obtenus avec le choix de 4 classes (69.14%), en y ajoutant plus de stabilité
du modèle face au problème de surapprentissage. Les métriques F1 score et l’indexe de Jac-
card sont en harmonie avec les résultats obtenus et présentent une amélioration remarquable avec
l’apprentissage sur la base de données B.

Conclusion
D’après ce chapitre, il découle que la classification donne lieu à des résultats plus pertinents
que l’estimation par régression, que ce soit avec 4 classes ou avec 3 classes. D’ailleurs, l’utilité du
motif est remarquable lors de la classification. En outre, le découpage et les seuils utilisés affectent
aussi les performances du modèle.

34
Conclusion et perspectives

Ce rapport décrit en détail les différentes étapes que nous avons suivies pour mener à bien notre
travail. Il présente d’abord l’ensemble de données que nous avons utilisé et la façon avec laquelle
ces données sont recueillies. Ensuite, une estimation de la turbidité via une méthode de régression
basée sur [6] est détaillée. Faute de résultats satisfaisants dûs à la forte sensibilité de la mesure
de turbidité et à la transparence de l’eau qui lui confère très peu de caractéristiques intrinsèques,
nous optons pour une détection du niveau de turbidité de l’eau par classification nous nous sommes
appuyés sur la classification.

Grâce à ce projet, nous avons démontré que détecter la turbidité à partir d’images d’échantillons
d’eau en utilisant uniquement les images n’est pas une tâche facile, ce qui explique pourquoi il s’agit
d’un sujet de recherche actif. En effet, les résultats obtenus ne sont pas définitifs, mais tout à fait
acceptables pour motiver les travaux futurs sur le sujet.

Pour la tâche de régression, les résultats sont prévisibles du fait que certaines images ont le
même contenu visuel mais des valeurs numériques différentes de turbidité, autrement dit, on n’a
pas suffisamment d’informations en entrée pour faire une régression précise.

Nous avons aussi prouver l’efficacité d’utiliser le motif pour augmenter les performances. D’ailleurs,
on propose pour les travaux futurs recherches un autre motif plus robuste et présentons plus de
variations de structure pourrait être considérée. Un motif composé de grilles fines et épaisses al-
ternées rendrait le modèle plus sensible aux variations d’épaisseurs et à la présence de jonctions
dans le motif, les lignes fines pour distinguer les classes de faibles valeurs de turbidité et les plus
épaisses pour les classes de grandes valeurs de turbidité.

En guise de perspective, nous suggérons aussi de construire un ensemble de données plus riche
pour alimenter le modèle, et d’essayer d’autres réseaux de neurones.

35
Bibliographie

1 D. Mullins, D. Coburn, L. Hannon, E. Jones, E. Clifford, and M. Glavin, "A novel image
processing-based system for turbidity measurement in domestic and industrial wastewater" Water
Sci. Technol., vol. 77, no. 5,pp. 1469-1482, 2018.

2 T. Toivanen, S. Koponen, V. Kotovirta, M. Molinier, and C. Peng, "Water quality analysis


using an inexpensive device and a mobile phone" Environ. Syst. Res., vol. 2, pp. 1-6, Dec. 2013.

3 T. Näykki, S. Koponen, T. Väisänen, T. Pyhälahti, T. Toivanen, and I. Leito, "Validation of


a new measuring system for water turbidity field measurements" Accreditation Qual. Assurance,
vol. 19, no. 3, pp. 175-183, 2014.

4 T. Leeuw and E. Boss, “The hydrocolor app: Above water measurements of remote sensing
reflectance and turbidity using a smartphone camera" Sensors, vol. 18, no. 1, p. 256, 2018.

5 Alejandro J. Gimenez, Francisco J. Medellín-Rodriguez, Lydia M. Contreras-Martinez, J.M.


Lopez-Romero, Isaac C. Sanchez, Francisco Villaseñor-Ortega, and Gabriel Luna-Bárcenas, "Tur-
bidimetry by image degradation analysis"

6 Gupta, Ankit and Elliott Ruebush. "AquaSight: AutomaticWater Impurity Detection Utilizing
Convolutional Neural Networks" ArXiv abs/1907.07573 (2019).

7 DFRobot, Turbidity sensor SKU SEN0189


https://wiki.dfrobot.com/Turbidity_sensor_SKU__SEN0189

36

Vous aimerez peut-être aussi