Beruflich Dokumente
Kultur Dokumente
B.P. 854/BUKAVU
INTRODUCTION GENERALE
CHAPITRE PREMIER
REVUE DE LA LITTERATURE
2 Le Jargon Informatique définit les données comme étant des informations de nature
numérique ou alphanumérique, représentées sous forme codée en vue d'y être enregistrées,
traitées, conservées et communiquées et qui sont compréhensibles par la seule machine.
7
3 Opération par laquelle le destinataire et/ou l'émetteur d'un message s'assure de l'identité de son interlocuteur
4 Opération par laquelle on transmet son identité pour que le destinateur puisse en faire connaissance
5 Deux dimensions. Caractéristique de ce qui est désespérément plat. Exemple : l'écran d'un ordinateur
8
une image avec l'information 3D6, cela se fait par des scanners 3D, où la
mesure de la profondeur est réalisée grâce à un rayon laser balayant la
scène ou par stéréo vision. Chaque type de capteur présente des avantages
et des inconvénients. Dans la reconnaissance de visage on peut utiliser les
capteurs 3D par exemple pour s'affranchir des problèmes de pose. Mais leur
prix excessif ne permet pas une utilisation à grande échelle. Les capteurs en
proche infrarouge sont utilisés pour éliminer les problèmes de l'illumination
(Walid Hizem ; 2009, p.10). Dans le cadre de ce travail, nous avons effectué
nos tests de capture avec la webcam de notre ordinateur ;
I.2.2. Détection du visage
Après avoir capturé l’image contenant un visage, la deuxième étape
consiste à l'extraire de l'image. Cela peut se faire par détection de la couleur
de la peau, ou par des méthodes détectant les différentes caractéristiques du
visage par des descripteurs locaux. Cette étape est autant plus délicate
pareillement que l'image acquise contient plusieurs objets de visage ou un
fond non uniforme qui crée une texture perturbant la bonne segmentation
du visage. Cette étape est dépendante de la qualité des images acquise.
Après la segmentation du visage, on peut filtrer ou améliorer la qualité par
des prétraitements qui sont appliqués au visage extrait. On peut effectuer
des normalisations géométrique et photométrique. Ces prétraitements sont
nécessaires pour éliminer ou limiter les variations de pose ou d'illumination.
Un prétraitement photométrique tend à uniformiser l'éclairage dans une
image et ainsi minimiser l'influence de l'illumination. Cela peut être effectué
soit par des méthodes simples telle que l'égalisation d'histogramme, une
correction gamma ou par des méthodes plus complexes tel que le lissage
anisotropique ou la méthode retinex. Une normalisation géométrique est un
ajustement du visage pour qu'il ait une dimension donnée et qu'il soit
horizontal. La taille du visage est généralement donnée par la distance
interoculaire (Walid Hizem ; 2009, p.11). La figure N°4 montre la
6 Trois dimensions. L'espace physique commun, avant Einstein. Quand on parle de quelque chose en « 3D », c'est pour
indiquer que l'image affichée donnant une impression de relief, vue à l'écran, est une projection d'un monde
tridimensionnel calculé... sauf quand il ne s'agit que d'une illusion d'optique, comme pour les contrôles en 3D des
interface graphiques.
9
Figure N°4 : (a) Image RGB (b) Image en gris (c) Egalisation des histogrammes
(BOUDJELLAL Sofiane ; 2010, p.27)
du nez est plus intéressante que les yeux ou la bouche dit V. Bruce. Dans
Studies of cue saliency de J.W. Shepherd et alii (1981) cité par SOUHILA
GUERFI ABABSA (2008, p.18), les auteurs ont particulièrement établi que
la partie supérieure du visage est plus utile pour la reconnaissance
faciale que la partie inférieure ;
I.2.4. Comparaison des caractéristiques
Selon les caractéristiques extraites précédemment, les algorithmes de
comparaison dont nous allons découvrir dans les lignes qui suivent diffèrent.
On trouve dans la littérature plusieurs approches : calcul de distance, calcul
de similarité. D'autres méthodes reposent sur la classification des
caractéristiques par un seul classifieur ou par plusieurs.
La problématique de la reconnaissance de visage est celle des
variations intra classe. En effet, les variations d'illumination, de pose ou
d'expression détériorent les performances d'un algorithme de
reconnaissance. Le visage d'une personne X peut ressembler plus à celui
d'une personne Y qu'à lui-même si l'on change les conditions d'acquisition.
Cela étant, nous allons présenter les principales difficultés de la
reconnaissance de visage.
critique que la différence physique entre les individus, et peut entraîner une
mauvaise classification des images d'entrée (SOUHILA GUERFI ABABSA ;
2008, p.19). Jusque là, l'identification de visage dans un environnement non
contrôlé reste donc un domaine de recherche aéré.
7 Algorithmes
13
8C’est cette approche qui est utilisée dans la librairie de reconnaissance faciale de notre
projet
15
Figure N°10 : Les 10 vues d’une personne dans la base de données ORL
18
Discussion
Bien que les méthodes holistiques aient eu beaucoup de triomphe, leur
inconvénient majeur réside dans le fait qu’elles utilisent uniquement des
photos 2D d’apparence faciale. Or, on sait qu'une telle représentation est
sensible aux mutations d'expression, d'illumination et de poses. Lors de
l’expérimentation que nous avons accomplie avec la librairie OpenIMAJ en
utilisant eigenface, nous nous sommes heurtés à plusieurs problèmes
attachés à l’illumination, poses et expressions faciales ; une chose qui est
plus tragique pour une application intégrant la gestion des présences. Cela
étant, une manière d’éviter ce problème consiste à utiliser des
représentations faciales locales. En effet, les caractéristiques locales ne sont
généralement pas aussi sensibles aux changements d’apparence que les
caractéristiques globales.
19
locales étaient plus prometteuses que les approches globales. Cela étant,
nonobstant le succès qu’ont connu les approches globales et leur
implémentation dans plusieurs API de reconnaissance faciale, dans le cadre
de notre travail, nous avons fait usage d’une librairie utilisant l’approche
basée sur l’apparence pour la détection des visages ainsi que l’approche
locale géométrique pour faire la reconnaissance.
24
Cette section essaye d’exposer quelques études empiriques qui ont été
menées dans différentes contrées et qui ont trait à ce sujet.
Dans son travail de thèse, SOUHILA avait mené une étude sur
l’authentification des individus à l’aide de la reconnaissance faciale. Utilisant
la méthode ACP, son étude avait comme objectif de concevoir un système
d’authentification de visage simple et efficace. Il est arrivé au résultat en
développant une technique 2D de reconnaissance de visage basée sur
l’Analyse en Composant Principal qui prend en entrée, non pas l’image
entière du visage, mais les « imagettes » correspondant aux trois régions
caractéristiques du visage (le nez, les yeux et la bouche) et a réussi a
démontré que cette technique donnais des taux de reconnaissance aussi bon
que l’image complète.
Dans son travail de thèse, Walid a mené une étude sur le capteur
intelligent pour la reconnaissance de visage. Etant beaucoup plus intéressé
par les problèmes liés à la lumière dans le domaine de reconnaissance
faciale, dans son travail, Walid s’est fixé comme objectif de mettre en place
une solution capable d’éliminer le problème lié à la luminosité. Pour y
arriver, Walid a utilisé l’illumination active avec deux méthodes
d’acquisition : la première avec un capteur CMOS différentiel, la seconde, et
qui a présenté son apport personnel dans son travail, une acquisition avec
réduction du temps d'exposition et un flash synchrone à la période
d'acquisition. Ainsi, comme résultat, il a mise au point une caméra CCD
permettant d'avoir des images de bonne qualité en proche infrarouge et à
moindre coût en éliminant la variation d’illimitation.
25
Cet auteur a mené une étude sur l’identification des personnes par
reconnaissance de visage pour la sécurité d’une institution bancaire.
L’objectif de ce travail était celui d’offrir aux banques un système de contrôle
par caméras de surveillance et ces dernières assistées par une application de
détection et reconnaissance faciale (des visages) afin que les figures
capturées puissent subir de suivi en cas d'espionnage, d'escroquerie et de
braquage. En utilisant la méthode EigenFace avec la librairie OpenCV, il est
arrivé à un résultat de mise en place d’une application de reconnaissance
faciale qui ne s’est limité qu’au stockage des images sur disque dur à
condition que le visage ne soit pas encore dans la base.
2 Walid Hizem
(2009) Acquisition avec Il a mise au point une caméra CCD
réduction du permettant d'avoir des images de bonne
temps qualité en proche infrarouge et à moindre
coût en éliminant la variation d’illimitation
3 BOUDJELAL
Sofiane (2010) Eigenface Développement d’une application de
reconnaissance faciale.
4 Serge KOMANDA
BASEMA (2010) Eigenface et Une application d’identification des individus.
Comparative
5 Varun JAIN
(2011) Lors de ses expérimentations, Varun JAIN a
constaté que dans le cas d’un éclairage partiel
L’approche du visage les dérivées Gaussiennes multi-
Gaussienne Multi- échelle ne fournissaient pas une description
Echelle et l’ACP d’image suffisamment discriminante. Pour
résoudre ce problème il avait combiné des
dérivées Gaussiennes avec des histogrammes
locaux de type LBP (Local Binary Pattern).
6 Kalghoum
ANWAR (2011) Méthode non Une application de gestion des présences
spécifiée dans le pour la société SIEREEN.
travail
7 M.BELAHCENE-
BENATIA Analyse en Une application de reconnaissance faciale
Mébarka Composant avec un TEE=11.5%
(2014) Principal et la
classification avec
le réseau de
neurones
Source : nos compilations
28
Discussion
Nous venons de feuilleter certains travaux relatifs à la reconnaissance
faciale et nous avons eu comme initiale impression que presque tous ces
projets ont utilisés l’approche globale EigenFace pour réaliser leurs
applications. Comme nous l’avons gravé dans la revue théorique, la méthode
Eigenface est trop sensible aux problèmes d’expression faciale, de luminosité
et de pose. Cela étant, notre premier apport par rapport à ces travaux est
que notre travail utilise une approche locale géométrique basée sur 70 points
caractéristiques du visage afin de renforcer la robustesse de la
reconnaissance. Cette méthode est implémentée dans la librairie que nous
avons utilisé « Luxand FaceSDK ».
Par rapport au travail de Monsieur Kalghoum ANWAR qui a travaillé
sur un sujet presque similaire au notre par rapport à son titre ; son système
faisait le pointage de présence en capturant la photo manuellement et il
n’avait pas gérer l’enregistrement des sorties des agents. Une autre
originalité de notre travail se situe au niveau où notre système de pointage
se fait de manière automatique sans mécanisme de la part de l’agent et en
temps réel et qu’après une heure donnée, le système commence à enregistrer
la sortie. En plus, l’autre originalité par rapport au travail d’ANWAR est que
nous gérons même les congés des agents pour éviter qu’un agent qui ne fait
que passer devant la caméra soit considéré comme agent présent alors qu’il
est en congé. Nous avons aussi mis en place un algorithme pour différencier
une vraie personne et une photo devant la caméra (figure N°64) afin d’éviter
que notre système soit trompé plus tard. Indiquons enfin que nous avons
ajoutés dans notre application l’aspect de contrôle des entrées à l’ISP en
instaura un système de stockage des images des visiteurs avec la date et
l’heure d’entrée.
Il revient aussi important de souligner que le problème principal
attaqué dans ce mémoire n’est pas celui de la reconnaissance faciale mais
plutôt un problème de gestion manuelle des présences (figure N°1). Cela
étant, nous n’avons pas apporté des apports en termes de reconnaissance
faciale (exemple : correction d’un algorithme) mais plutôt nos apports ont été
apporté dans le cadre d’une bonne gestion des présences du personnel.
29
Conclusion Partielle
CHAPITRE DEUXIEME
II.1.1. Historique
L’ISP/Bukavu, jadis connu sous le nom d’« ESP » (Ecole Supérieure
Pédagogique), puis sous celui d’« ENM » (Ecole Normale Moyenne), tire ses
origines pendant la période tumultueuse caractérisée par les troubles
politiques où a été fondée l’école supérieure pédagogique, le 10 décembre
1964. Comme il se faisait sentir justement un besoin d’enseignant pour cette
nouvelle ère après l’indépendance de la RDC, où le secteur d’enseignement
ne dépendait que de l’extérieur en besoins des formateurs, le projet était
mieux adapté, mais ne comptait qu’une classe de préparatoire de 23
étudiants et une première année de l’option lettres de 22 étudiants. Poussé
toujours par l’esprit de mieux faire, l’ESP deviendra ENM en 1966 dotée de
deux options : l’option FRANÇAIS et l’option HISTOIRE.
10 Archive de l’ISP-Bukavu
31
Les années 1970 à 1980 seront marquées par l’explosion remarquable dans
son développement. Cependant, l’essor de nouvelles universités privées à
Bukavu au milieu des années 90 n’a fait que diminuer l’hégémonie qu’il
portait dans le temps. Comme conséquence, l’ISP sombrait davantage, les
suspicions d’une fermeture éventuelle prenaient faute d’effectif suffisant
permettant son bon fonctionnement.
Biologie-Chimie
Chimie-Physique
Mathématique-Physique
Physique-Technologie
Histoire-Sciences-Sociales
Géographie-Sciences naturelles
32
Psychopédagogie
Informatique de Gestion
Direction du Personnel
Le secrétariat
Bureau de trésorerie
o Directeur Général
Gestion du
Agent
personnel
2
1 5
4
3
Services Finance
Légende :
1 : L’agent se présente devant le bureau de son service où il va trouver
une fiche sur laquelle il signe à l’arrivée ou la sortie ;
2 : A la fin de chaque semaine, le service de gestion du personnel
demande les rapports des présences à tous les services ;
41
a) la fiche de présence
=
26
Où MR est le montant à retrancher, P est la prime de l’agent, 26 est le
nombre des jours de travail et N le nombre d’absences de l’agent au cours
d’une période donnée.
43
Conclusion Partielle
CHAPITRE TROISIEME
APPROCHE METHODOLOGIQUE
Ce chapitre se subdivise en trois sections. La première section propose
les différentes méthodes de développement informatique, la deuxième essaye
de faire le choix et la description de la méthode utilisée. Enfin, la dernière
section consiste à faire le développement de la méthode utilisée.
III.1.1. MERISE
MERISE est un acronyme signifiant Méthode d’Étude et de Réalisation
Informatique par les Sous-ensembles ou pour les systèmes d’Entreprise.
La méthode Merise a comme objectif d’aider, de guider les concepteurs des
systèmes d’information, dans leurs phases d’analyses, de conception et le
développement de l’applicatif (Jean-Luc BAPTISTE, p.1).
La méthode Merise se caractérise par :
III.1.2. UP
UML n’est qu’un langage de modélisation (Joseph Gabay et David
Gabay ; 2008, p.111). Signalons que nous n’avons pas aujourd’hui dans la
norme, de démarche unifiée pour construire les modèles et conduire un
projet mettant en œuvre UML. Cependant les auteurs d’UML, ont décrit,
dans un ouvrage de Jacobson (2000) cité par Joseph Gabay et David Gabay
(2008, p.111), le processus unifié (UP, Unified Process) qui doit être associé
à UML. Nous n’allons pas, dans le cadre de cette section, donner une
présentation détaillée d’UP. Cependant il nous a paru intéressant de dégager
les idées fondatrices d’UP dans le cadre d’une présentation générale. Nous
allons tout d’abord expliciter les principes de la méthode UP. Nous
compléterons ensuite cette présentation générale en décrivant l’architecture
à deux dimensions d’UP, nous passerons aussi en revue les différentes
phases d’UP, et pour finir nous citerons les activités d’UP.
III.1.2.1. Les principes d’UP
Le processus de développement UP, associé à UML, met en œuvre les
principes suivants :
Processus guidé par les cas d’utilisation : L’orientation forte donnée ici
par UP est de montrer que le système à construire se définit d’abord
avec les utilisateurs ;
Processus itératif et incrémental ;
Processus centré sur l’architecture : Les auteurs d’UP mettent en
avant la préoccupation de l’architecture du système dès le début des
travaux d’analyse et de conception ;
Processus orienté par la réduction des risques : L’analyse des risques
doit être présente à tous les stades de développement d’un système;
Ces principes sont à la base du processus unifié décrit par les auteurs
d’UML.
47
Figure N°16 : Schéma d’ensemble d’UP (Joseph Gabay et David Gabay ; 2008, p.112).
Disons que la société Rational Software, racheté par IBM, avait mis en place
une autre version d’UP spécifique sous le nom de RUP (Rational Unified
48
Processus). Dans le point suivant, nous allons beaucoup plus nous atteler
sur les apports de RUP.
III.1.3. RUP
Selon Joseph Gray et David Gray (2008, p.112), RUP est un processus
basé sur une approche disciplinée afin de bien maîtriser l’assignation des
tâches et la responsabilisation des différents acteurs participant au cycle de
développement du logiciel. Cela étant, l’objectif principal de cette approche
est de faire appliquer des bonnes pratiques de développement aux
entreprises.
Nous allons présenter les apports du RUP en essayant d’exploiter les
éléments ci-après :
Modélisation visuelle ;
Vérification continue de la qualité ;
Contrôle des changements du logiciel.
Figure N°17 : Schéma d’ensemble du RUP (Joseph Gabay et David Gabay ; 2008)
Dans la démarche RUP, il y a un aspect qui s’est ajouté. L’aspect en question
est appelé « jalon ». Un jalon est un ensemble des tests à accomplir à la fin
de chaque phase et qu’on ne peut passer à la phase suivante que si ces
derniers sont vérifiés.
III.1.3.3. Les Activités du processus
Comme vous le voyez dans la figure N°12, RUP organise 9 activités
suivantes :
Modélisation métier ;
Gestion des exigences ;
Analyse et conception ;
Implémentation ;
Test ;
Déploiement ;
Gestion de la configuration et du changement ;
Gestion des projets ;
Environnement.
50
III.1.4. UP7
La démarche UP7 était proposée par Joseph Gabay, Directeur de projet
informatique au CNRS-Paris et chargé du cours à l’Université de Paris-
Dauphin avec David Gabay, directeur chef de projet chez Cap Gemini une
entreprise informatique se trouvant en France. La démarche est articulée
suivant deux axes : les quatre phases qui correspondent à celles d’UP et sept
activités. Ainsi, ils ont présenté dès ce stade un premier schéma d’ensemble
de la démarche suivant ces deux axes (figure N°18).
Figure N°18 : Schéma d’ensemble de la démarche UP7 (Joseph Gabay et David Gabay ;
2008)
Le grisé sur le schéma représente l’effort à consentir pour chaque
activité durant les phases d’un projet. Ainsi par exemple, pour l’activité 3
(Analyse des cas d’utilisation), l’activité commence légèrement lors de la
phase de lancement puis se déroule principalement lors de la phase
d’élaboration et se termine en phase de construction.
51
V. Conception
V.1. Réalisation des choix techniques
V.2. Elaboration des diagrammes de séquence techniques
V.3. Elaboration du diagramme de classe technique
V.4. Elaboration du diagramme de paquetage
VI. Implémentation
VI.1. Elaboration du diagramme de structure composite
VI.2. Elaboration du diagramme de déploiement
VII. Test
Vérification de l’implémentation des tous les cas d’utilisation
(cfr chapitre 4)
Figure N°19 : Schéma détaillé de la démarche
53
Dans le cadre de notre projet, nous avons fait une descente sur terrain,
précisément dans le bureau du chargé du personnel et rémunération des
agents de l’ISP-Bukavu. Avec cet agent et ses 2 autres collègues, nous avons
eu à leurs poser des questions relatives au fonctionnement de la gestion des
présences des agents au sein de l’ISP-Bukavu, auxquelles ils ont quand
même répondu. Il revient ainsi impérieux de signaler que les exigences que
nous avons spécifiées au niveau du développement de la démarche UP7 ont
été découlées des réponses obtenues lors de la séance de remue méninge
que nous avons eu avec ces agents.
Ainsi donc, plongeons nous dans une étape cruciale qui est celle de la
matérialisation de notre schéma détaillé de la démarche UP7.
54
Finance Gestion du
Personnel
Agents
L’Agent : il est l’acteur principal car c’est lui qui déclenche le début de
toute activité. Il se présente au sein du service chargé de prélevé les
présences pour être enregistré en plus aussi devant la caméra pour
certifier qu’il est présent au travail ;
L’administrateur : Il est chargé d’enregistrer les services dans le
système, les agents, d’enregistrer les congés des agents, d’imprimer les
fiches des présences des agents ainsi que de lancer la caméra pour
débuter le processus de reconnaissance faciale afin de prélever les
présences et sorties. Il sera représenté par le chef du personnel ;
Service : Il pourra enregistrer les agents de son service, imprimer la
liste des agents de son service, visualiser les fiches des présences des
agents de son service, visualiser les fiches des absences des agents de
son service mais aussi lancer la caméra. Il sera représenté par un chef
de service.
56
MAJ AGENT
MAJ SERVICE
MENU IMPRESSION
AJOUT
MAJ
MENU PRESENCES
À l’issue de cette activité, l’analyse des cas d’utilisation est produite mais
non encore consolidée ni validée définitivement.
62
Dans le cadre de notre travail, nous n’avons pas présenté les interfaces
utilisateurs pour les cas d’utilisation car nous allons les présenter dans le
dernier chapitre au niveau du guide d’utilisateur.
S’authentifier ;
Ajout agent ;
Se présenter devant la caméra.
a) Description du DCU « S’authentifier»
CU : S’authentifier
Résumé : Ce CU permet à un utilisateur de se connecter au système et lui
présente une interface.
Acteur : Administrateur, chef de service
Pré conditions : Introduire login et mot de passe
Post-Condition : Le cas démarre après le point 02 de l’enchaînement
nominal, l’utilisateur s’authentifie
Scénario nominal
DESCRIPTION DU SCENARIO NOMINAL
« DEBUT »
01 : Le système invite l’utilisateur à entrer son login et son mot de passe
02 : L’utilisateur saisie son login et son mot de passe
03 : Le système vérifie les paramètres
04 : Le système ouvre l’Espace de travail
« FIN »
Scénario alternatif
DESCRIPTION DU SCENARIO ALTERNATIF
Le login ou le mot de passe est incorrect : ce scénario commence au point 03
du scénario nominal
01 : Le système informe l’utilisateur que les données saisies sont erronées et
le scénario reprend au point 01 du scénario nominal
64
CU : Ajout Agent
Résumé : Ce CU permet à ajouter un agent dans le système.
Acteur : Administrateur, Chef de service
Pré conditions : S’authentifier
Post-Condition : Le cas démarre après le point 03 de l’enchaînement
nominal, l’utilisateur saisie les informations
Scénario nominal
DESCRIPTION DU SCENARIO NOMINAL
« DEBUT »
01 : L’utilisateur demande la page pour ajouter un agent au système
02 : Le système affiche un formulaire d’ajout d’un agent
03 : L’utilisateur saisi les informations et capture la photo de l’agent
04 : Le système vérifie la validité des informations saisies
05 : Le système enregistre ces informations dans la base de données
06 : Le système notifie l’utilisateur du bon déroulement de l’opération
« FIN »
Scénario alternatif
DESCRIPTION DU SCENARIO ALTERNATIF
Les informations sont manquantes ou incorrectes : ce scénario commence
au point 04 du scénario nominal
01 : Le système informe l’utilisateur que les données saisies sont erronées et
le scénario reprend au point 03 du scénario nominal
65
S’authentifier ;
Se présenter devant la caméra ;
a) Diagramme de séquence « S’authentifier »
le concept d’objet ;
le concept de classe comprenant les attributs et les opérations ;
les différents types d’association entre classes.
III.3.3.4.1. Objet
Nous allons donner une première définition du concept d’objet avant
de traiter le concept de classe. La description d’un objet sera complétée
simultanément à la présentation du concept de classe. Un objet est un
concept, une abstraction ou une chose qui a un sens dans le contexte du
système à modéliser. Chaque objet a une identité et peut être distingué des
autres sans considérer a priori les valeurs de ses propriétés (MUSANGU
LUKA ; 2015-2016, p.63).
Exemple : la figure ci-dessous montre des exemples d’objets physiques (une
chaise, une voiture, une personne, un vélo) et d’objets de gestion (la
Commande n° 12, le Client Durand).
a) Classe
la désignation de la classe,
la description des attributs,
la description des opérations.
b) Attribut
o Formalisme et exemple
o Caractéristiques
Visibilité ;
71
du congé
Date de fin DateFin La date de fin du Date
congé
Le numéro de la IdSortie Le numéro d’une Int (11)
sortie sortie
La date de la sortie DateSortie La date de la sortie Date
de l’agent
L’heure de sortie HeureSortie L’heure de sortie Time
de l’agent
Le numéro de la IdPresence Le numéro d’une Int (11)
présence présence
Date de Presence DatePresence La date du jour de Date
présence
L’heure d’arrivée Heure L’heure d’arrivée Time
de l’agent au
travail
Retard Retard Le retard encaissé Int (11)
par l’agent
Consigne Consigne Consigner si Int (11)
l’agent possède des
absences
antérieures
Le numéro du IdVisiteur Le numéro attribué Int (11)
visiteur au visiteur
Date d’entrée DateEntrer La date d’entrée du Date
visiteur
Heure Heure L’heure de la Time
capture
Photo Photo La photo du MEDIUMBLOB
visiteur
Code de la photo CodePhoto L’Identifieur 11 du Int (11)
visiteur
Source : nos propres compilations
c) Opération
Une opération est une fonction applicable aux objets d’une classe. Une
opération permet de décrire le comportement d’un objet. Une méthode est
l’implémentation d’une opération (Joseph Gabay et David Gabay ; 2008,
p.20).
Formalisme et exemple
d) Association
Agent ;
Administrateur ;
Utilisateur ;
Congé ;
Service ;
Photo ;
Sortie ;
Présence ;
Visiteur.
Multiplicité
La multiplicité indique un domaine de valeurs pour préciser le nombre
d’instance d’une classe vis-à-vis d’une autre classe pour une association
donnée. La multiplicité peut aussi être utilisée pour d’autres usages comme
par exemple un attribut multi-valué. Le domaine de valeurs est décrit selon
plusieurs formes (Joseph Gabay et David Gabay ; 2008, pp.24-25):
Exemples
Figure N°36 : Exemple de multiplicités (Joseph Gabay et David Gabay ; 2008, p.25)
Après avoir dégagé le dictionnaire de données épuré (tableau N°2),
nous pouvons dégager les classes, les règles de gestion ainsi que les
multiplicités dans le tableau suivant :
Tableau N°3 : Les règles de gestion ainsi que les multiplicités
N° Association Classe d’objet Multiplicité Règle de gestion
source Cible Source Cible
1 Ajouter Utilisateur Congé 1 0..* Un utilisateur ajoute
zéro ou plusieurs
congés
2 Posséder Agent Photo 1 1..* Un agent possède une
ou plusieurs photos
3 Posséder (2) Visiteur Photo 1 1..* Un visiteur possède une
ou plusieurs photos
4 Appartenir Agent Service 1..* 1 Un ou plusieurs agents
appartiennent dans un
service
5 Est concerné Agent Congé 1 1..* Un agent est concerné
(1) par un ou plusieurs
congés
6 Est concerné Agent Présence 1 1..* Un agent est concerné
(2) par une ou plusieurs
présences
7 Est concerné Agent Sortie 1 1..* Un agent est concerné
(3) par une ou plusieurs
sorties
Source : nos propres compilations
Cependant, après avoir recensé tous ces éléments relatifs au diagramme des
classes, nous pouvons maintenant représenter ce dernier.
76
En ce qui concerne le cas de notre projet, étant donné que nous n’avons
pas présenté un DCL pour chaque cas d’utilisation, le diagramme de classe
représenté ci-haut représente en même temps le diagramme de classe
récapitulatif. Nonobstant, nous allons présenter le modèle relationnel de
notre projet à la place du diagramme de dernier.
III.3.5. CONCEPTION
La cinquième activité de la démarche se concentre sur le « comment
faire ». Elle a pour but de définir et de mettre en place les choix
d’architecture technique, et de compléter la description du système sous
l’angle technique. Cette activité permet d’obtenir quatre résultats :
Les choix techniques retenus ;
Les scénarios techniques par cas d’utilisation (diagrammes de
séquence technique) ;
Les classes techniques par cas d’utilisation (diagrammes de classe
technique) ;
Le regroupement sous forme de paquetage de l’ensemble des classes
techniques en un seul diagramme (diagramme de paquetage).
De ce fait la conception préliminaire est couverte par cette activité. Signalons
qu’au terme de cette activité la conception (au sens UP) sera achevée.
Ajouter service ;
Lancer la caméra.
o MAJ Congé.
Application : Paquetage regroupant l’ensemble des classes
permettant le démarrage du système :
o Menu ;
o Index ;
o Login.
Etats : Paquetage regroupant l’ensemble des classes permettant
d’imprimer les documents du système :
o Fiche Présence ;
o Fiche Visiteurs ;
o Liste des Agents ;
o Menu impression.
Présence : Paquetage regroupant l’ensemble des classes permettant
d’effectuer les opérations sur les présences des agents :
o Ajout présence ;
o Ajout sortie ;
o MAJ présence ;
o MAJ sortie.
Visiteur : Paquetage regroupant l’ensemble des classes permettant
d’effectuer les opérations sur les visiteurs :
o Rechercher visiteur ;
o Consulter l’historique des visites.
Service : Paquetage regroupant l’ensemble des classes permettant
d’effectuer les opérations sur les services :
o Ajouter service ;
o MAJ service.
Images : Paquetage regroupant l’ensemble des images utilisées dans le
système ;
Live Recognition : Paquetage regroupant l’ensemble des classes
permettant d’effectuer la reconnaissance faciale :
o Live Recognition Application ;
o Live Recognition View.
85
III.3.6. IMPLEMENTATION
Cette phase correspond à la production du logiciel sous forme de
composants, de bibliothèques ou de fichiers. De cela, dans le présent point,
nous allons décrire les collaborations d’instances qui constituent des
fonctions particulières du système à développer (diagramme de structure
composite). Enfin, nous allons présenter l’architecture physique de notre
application sous forme des nœuds et artefacts (diagramme de déploiement).
Dans le cadre de notre travail, nous avons opté pour la représentation par
une structure composite. En revanche, nous avons représenté quelques
structures composites (figure N°37) de notre application.
III.3.7. TEST
Pour s’assurer d’une démarche qualité et pour être sûr que le produit
correspond aux attentes prédéfinies au départ, des tests ont été réalisés le
long du cycle de vie du projet. Pour bien mener nos tests nous avons
formalisés les procédures de tests avec trois questions prépondérantes :
Quoi ? Quand ? Qui ? Comment ?
III.3.7.1. Quoi ? Qu’est ce qu’on teste ?
Conclusion partielle
CHAPITRE QUATRIEME
LA REALISATION DU SYSTEME
D’INFORMATION
Ce chapitre se subdivise en cinq sections. La première section propose
le choix et la présentation du langage de programmation utilisée, la
deuxième présente le choix et la présentation du SGBD utilisé, la troisième
essaye de présenter la réalisation de l’application en exposant les structures
des tables, requêtes, formulaires, états de sorties ainsi que les outils utilisés
lors du développement. La quatrième quant à elle consiste à faire une
estimation de la durée et du coût de réalisation du logiciel. En fin, la
dernière section consiste à faire la présentation du guide de l’utilisateur.
Il a un caractère OpenSource ;
Il a des fonctionnalités de plus en plus riches ;
Il est ouvert presque à tous les langages de programmation du
marché ;
Il est fonctionnel sur les systèmes les plus courants (les distributions
classiques de LUNIX, Windows, Mac OS, BSD, Novell et les dérivés
d’UNIX) ;
Il est facile à utiliser si on peut le dire aussi.
Pour réaliser notre application, nous avons manipulé les objets ci-
après : les tables, les requêtes, formulaires ainsi que les états de sortie.
IV.3.1. Tables
Notre application était doté de 8 tables dont 7 ont été implémenté dans
MySQL et une autre qui était un fichier à part mais accessible par JAVA.
Voici un exemple des codes sources pour la création des tables visiteur et
agent.
IV.3.2. Requêtes
Pour réalisé nos requêtes, nous avons utilisé le langage SQL. Dans
notre application, nous avons utilisé plusieurs requêtes mais nous allons
seulement présenter l’exemple d’une requête qui nous amène la situation de
présence d’un agent au cours d’une période donnée.
95
IV.3.3. Formulaires
Afin de réaliser les différents formulaires que vous allez exploiter au
niveau du guide de l’utilisateur, nous avons utilisé les packages Javax.swing
et Java.awt de JAVA.
IV.3.4. Etats
Pour réaliser les Etats de sorties, nous avons utilisé la librairie Java
Dynamic reports. Voici un exemple d’une méthode java qui nous permet
d’afficher la liste des agents avec Dynamic Reports:
Figure N°51 : Méthode java pour générer la liste des agents avec Dynamic Reports
96
c) Netbeans
d) Le serveur WAMP
Windows Apache MySQL PHP est un serveur local qui nous permet de
simuler le rôle d’un serveur sur la machine locale. Nous avons utilisé ce
système afin d’exploiter le serveur MySQL car notre logiciel fonctionnera
sous une base de données partagée. Le système est disponible sur
http://www.wampserver.com/.
e) Environnement matériel
Un ordinateur TOSHIBA ;
Capacité de disque dur : 320GB ;
Processeur : Intel(R) Core(TM) i5-2520M CPU @ 2.50GHZ 2.50GHZ ;
Mémoire RAM : 4G0 ;
Caméra Webcam pour Ordinateur.
98
Aspect technique
Analyse fonctionnelle
Analyse organique
Programmation
Tests
Documentation
Qualité
Contrôle
Gestion
Encadrement
Suivi du projet
Gestion des configurations
Evolution du produit
Organique ‘Organic’
Semi-Détaché – ‘Semi-detached’
Imbriqué –‘Embedded’
Étant donné que l’application est tellement vaste, nous avons présenté
seulement trois modules entre autre :
Ajouter un agent ;
Capturer la photo de l’agent ;
Modifier un agent.
Conclusion partielle
Dans le présent chapitre, il a été question d’expliquer comment la
réalisation (la base de données et la programmation) a été faite. Nous avons
montré comment nous nous sommes servis du duo JAVA-MYSQL afin de
développer notre application de gestion de présence sur laquelle nous avons
associés la librairie Luxand Face SDK pour la reconnaissance faciale. Nous
avons enfin parachevé par une présentation des quelques interfaces
utilisateurs de notre application. Cependant, comme nous l’avons annoncé
au niveau de la revue empirique, nous ne sommes pas le premier à aborder
cette thématique. Par conséquent, le dernier chapitre fera l’objet d’une
discussion entre le travail de Monsieur ANWAR du fait que son sujet est
similaire au notre, mais aussi une discussion par rapport à d’autres
applications de reconnaissance faciale que nous avons découvert sur
internet.
111
CHAPITRE CINQUIEME
DISCUSSIONS ET RECOMMANDATIONS
V.1.1. Discussions
Nous venons donc de réaliser une application de reconnaissance
faciale pour la gestion des présences des agents de l’ISP/Bukavu. Avec la
dite application, désormais l’agent ne signera plus à la main sa présence
mais plutôt se présentera devant la caméra pour certifier l’entrée et la sortie.
Le gestionnaire du personnel aura la possibilité de visualiser les absences
des agents et savoir ainsi les pénalités à retrancher.
En regardant avec un œil comparatif ce qu’avait fait Monsieur
Kalghoum ANWAR de la Tunisie, la gestion des présences se faisait par un
système de pointage en capturant la photo de l’agent manuellement et il
n’avait pas en plus gérer l’enregistrement des sorties des agents.
Comparativement avec ce que nous avons eu comme résultat, notre système
de pointage se fait de manière automatique sans mécanisme de la part de
l’agent et en temps réel et qu’après une heure donnée, le système
commencera à enregistrer les sorties des agents. Une attention particulière à
été mené sur les absences ainsi que les congés des agents. Nous avons
intégré dans notre application un système de gestion des congés qui
permettra au chef du personnel d’enregistrer un congé d’un agent afin que le
système ne spécifie pas sa présence au travail alors qu’il est en congé.
L’application que nous avons développée est même capable de détecter le
nombre des absences accusées par un agent grâce à un algorithme de
détection des absences que nous avons mis en place et faciliter ainsi le
travail du chef du personnel en calculant même les pénalités mensuelles qui
seront retranchées sur la prime de l’agent.
112
tmp_Ve 0;
Ve 0;
face 0;
i 0
12https://arstechnica.com/gadgets/2017/03/video-shows-galaxy-s8-face-recognition-can-
be-defeated-with-a-picture/
13http://www.huffingtonpost.fr/2017/04/01/la-video-qui-fait-du-mal-a-la-reconnaissance-
faciale-du-galaxy-s8_a_22021404/
116
V.2. RECOMMANDATIONS
CONCLUSION
BIBLIOGRAPHE
I. OUVRAGES ET THESES
- Gabriela Dinescu (2014), Familiar faces: the effects of experience on
change blindness, thesis for the degree of Master of Cognitive Science,
Carleton University, Ottawa/Ontario
- Hadrien Mélot (2011), Eléments de rédaction scientifique en
Informatique, Faculté des sciences, Université de MONS
- Jean Michel DOUDOUX (2016), Développons en JAVA, GNU Free
Documentation
- Joseph Gabay et David Gabay (2008), UML2 Analyse et Conception :
Mise en œuvre guidée avec études de cas, DUNOD, Paris, ISBN 978-2-
10-053567-5
- Luxand FaceSDK 6.2 (2016), Face Detection and Recognition Library :
Developer’s guide, Luxand
- Randy Milbert et alii (2015), Multi-Camera Immersive Surveillance
System Phase II, Primordial, Inc.
- Sergey Demyanov (2015), Regularization methods for neural networks
and related models, thesis of PhD in the Department of Computing
and Information Systems, The University of Melbourne
- Shepell.fgi (2010), la gestion de l’effectif : réaliser vos objectifs
d’affaires grâce à une bonne gestion des absences, HRCO Inc.
- SOUHILA GUERFI ABABSA (2008), Authentification d’individus par
reconnaissance de caractéristiques biométriques liées aux visages
2D/3D, Thèse de doctorat en Sciences de l’ingénieur, Université Evry
Val d’Essone
- Varun JAIN (2011), Visual Observation of Human Emotions, thèse de
doctorat en Informatique, Université de GRENOBLE
- Walid Hizem (2009), Capteur intelligent pour la reconnaissance de
visage, Thèse de doctorat en électronique et informatique, Université
Pierre et Marie currie
- Yunlian Sun (2014), Advanced Techniques for Face Recognition under
Challenging Environments, A thesis submitted for the degree of Doctor
120
II. MEMOIRES
- ASSUMANI NABONIBO (2014), Conception et mise en œuvre d’un
système trois-tiers de gestion d’un parc informatique cas de la SNEL,
mémoire, Inédit, ISC/Kinshasa
- BOUDJELLAL Sofiane (2010), Détection et identification des personnes
par la méthode biométrique, mémoire, inédit, UMMTO
- Kalghoum ANWAR (2011), réalisation d’une application de gestion des
présences via la reconnaissance faciale, mémoire, inédit, Institut
supérieur d’informatique et de gestion de kairouan, Tunisie
- PHITOS MBAA (2014), Conception et réalisation d’une plate-forme
d’e-Learning : cas de l’Institut Supérieur de Commerce de Kinshasa,
mémoire, Inédit, ISC/Kinshasa
- Serge KOMANDA BASEMA (2010), l’identification des personnes par
reconnaissance de visage pour la sécurité d’une institution bancaire,
mémoire, inédit, ISP/Bukavu
III. COURS
- Marcelin JILUS (2013), Ingénierie des systèmes logiciels, Master II
IASIG, Université de Doula
- MUSANGU LUKA (2015-2016), Cours de Conception des systèmes
d’information d’entreprises, L1 IG, ISP/BUKAVU.
IV. SITES WEB ET ARTICLES
- M.BELAHCENE-BENATIA Mébarka (2014), Authentification et
identification de visages basées sur les ondelettes et les réseaux de
Neurones, Revue science des matériaux
- PAUL VIOLA et MICHAEL J. JONES (2004), Robust Real-Time Face
Detection, International Journal of Computer Vision 57(2), 137–154
- Yun-Che Tsai et Chiou-Shann Fuh (2015), Office entrance control with
face recognition, Dept. of Computer Science and Information
Engineering, National Taiwan University, Taiwan
- http://www.journaldunet.com/management/expert/63059/la-
121
reconnaissance-faciale---une-nouvelle-alliee-pour-l-entreprise.shtml
consulté le 21/04/2017 à 14h°°
- http://www.lemonde.fr/big-browser/article/2017/03/15/l-
application-de-reconnaissance-faciale-en-lien-avec-votre-profil-
facebook-n-existe-pas-encore_5094984_4832693.html consulté le
21/04/2017 à 14h20
- http://exclusiverh.com/articles/logiciel-gestion-temps/la-
reconnaissance-faciale-s-invite-dans-les-solutions-de-pointage.htm
consulté le 18/03/2017 à 15h°°
- http://cangaroorh.ca/nos-solutions/cangaroo-chrono/collecte-
donnees-presence/ consulté le 16/03/2017 à 16h°°
- https://www.sciencesetavenir.fr/decryptage/decryptage-la-
reconnaissance-faciale-mais-jusqu-ou-ira-t-elle_27964 consulté le
21/04/2017 à 14h30
- http://www.huffingtonpost.fr/2017/04/01/la-video-qui-fait-du-mal-
a-la-reconnaissance-faciale-du-galaxy-s8_a_22021404/ consulté le
21/04/2017 à 14h40
- https://arstechnica.com/gadgets/2017/03/video-shows-galaxy-s8-
face-recognition-can-be-defeated-with-a-picture/ consulté le
21/04/2017 à 14h45
122
INTRODUCTION GENERALE.................................................................. 1
REVUE DE LA LITTERATURE................................................................ 6
CONCLUSION.................................................................................... 117
BIBLIOGRAPHE ................................................................................ 119
TABLE DES MATIERES ..................................................................... 122