Vous êtes sur la page 1sur 105

République Algérienne Démocratique et Populaire

Ecole nationale Supérieure d’Informatique (ESI)

Projet de Fin d’Etudes


Pour l’obtention du diplôme d’ingénieur d’état en informatique

Thème

Mise en œuvre d’un système de contrôle d’accès pour les bâtiments


intelligents basé sur la reconnaissance conjointe faciale et vocale

Réalisé par : Encadré par :


Mr. BENCHOHRA Mohamed Amine (SIQ) Dr. KERMI Adel (ESI)
Mr. MAHMOUDI Sid Ali (SIT) Mme. BOULKABOUL Sahar (CERIST)

Année : 2019-2020
1
Plan

Introduction

Généralités

Etude du besoin

Conception

Réalisation

Intégration

Conclusion

2
Introduction

Généralités

Etude du besoin

Conception

Réalisation

Intégration

Conclusion

3
Introduction
Contexte Problématique Objectif

Emergence mondial rapide des Smart Buildings

Dépenses de services gérés par un bâtiment intelligent, marchés mondiaux : 2012-2020


4
Introduction
Contexte Problématique Objectif

Le marché des bâtiments intelligents devrait passer de 60,7 milliards $ en 2019 à


105,8 milliards $ d'ici 2024. « Smart Building Market Research Report, 2019 »

5
Introduction
Contexte Problématique Objectif

Le marché des bâtiments intelligents devrait passer de 60,7 milliards $ en 2019 à


105,8 milliards $ d'ici 2024. « Smart Building Market Research Report, 2019 »

 Gain des bâtiments intelligents


Les résidents de l’ Asie du sud est pourraient économiser jusqu'à 16 milliards $ par an,
car les bâtiments intelligents contribuent à de meilleures options de logement et à réduire
leurs factures d'énergie. « McKinsey »

6
Introduction
Contexte Problématique Objectif

•Contact

Méthodes avec contact

Méthodes invasives

7
Introduction
Contexte Problématique Objectif

•Egarement des accessoires

Forte dépendance sur des accessoires

8
Introduction
Contexte Problématique Objectif

•Compatibilité
Non compatibles avec les bâtiments intelligents

• Les serrures classiques. • L’interphone.


9
Introduction
Contexte Problématique Objectif

• Utiliser les biométries personnelles pour :

o Eviter le contact en utilisant des méthodes d’authentification à distance.

o Eviter l’égarement en se débarrassant des méthodes nécessitant des


accessoires.
o Garantir une solution compatible et efficace pour les bâtiments intelligents.

10
Introduction
Contexte Problématique Objectif

• Utiliser les biométries personnelles pour :

o Eviter le contact en utilisant des méthodes d’authentification à distance.

o Eviter l’égarement en se débarrassant des méthodes nécessitant des


accessoires.
o Garantir une solution compatible et efficace pour les bâtiments intelligents.

• Utiliser les méthodes de l'état de l'art telles que l’intelligence artificielle tenu
compte de :
o Efficacité : exécution rapide avec une précision stable.

o Fonctionnement automatique : pas d’intervention humaine

o Amélioration : on peut toujours faire mieux.


11
Introduction

Généralités

Etude du besoin

Conception

Réalisation

Intégration

Conclusion

12
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

 Toute technique utilisée pour contrôler le passage


vers ou de n’importe quelle zone ou entrée

13
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

 Toute technique utilisée pour contrôler le passage


vers ou de n’importe quelle zone ou entrée

 Deux fonctionnalités principales :


 La sécurité du bâtiment
 L’enregistrement des demandes d’accès

14
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

 Toute technique utilisée pour contrôler le passage


vers ou de n’importe quelle zone ou entrée

 Deux fonctionnalités principales :


 La sécurité du bâtiment
 L’enregistrement des demandes d’accès

 Abrévié par ACS (Access Control System en anglais)

15
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

Les Facteurs d’ACS

Simulation du processus demande d’accès ( les 04 facteurs)


16
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

Bâtiment intelligent

 Un bâtiment qui intègre divers systèmes technologiques pour gérer


efficacement ses ressources afin de maximiser les performances
techniques, économie d’investissement et de fonctionnement.

17
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

18
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

L'intelligence artificielle
 L'intelligence démontrée par des machines

19
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

Apprentissage Automatique

20
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

21
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

22
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

CNN RNN

23
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

CNN RNN

• Analyser des images visuelles.


• Une topologie en forme de grille.
• Détecter et classer les objets.

24
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

CNN RNN

• Analyser des images visuelles. • Une séquence temporelle en entrée.


• Une topologie en forme de grille. • Les RNN ont un état interne (mémoire)
• Détecter et classer les objets. • Reconnaissance d'écriture ou de la voix.

25
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

Le processus consistant à reconnaître automatiquement qui parle


en utilisant des informations spécifiques au locuteur incluses
dans les ondes de sa parole

26
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

Reconnaissance vocale vs reconnaissance du locuteur

27
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

Processus du RV

Deux étapes principales :


 Extractions des caractéristiques
 Mise en correspondance des caractéristiques

28
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

Etape 1 : Extraction de caractéristiques


MFCC = Mel-Frequency Cepstral Coefficients

29
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

Etape 2 : Mise en correspondance des caractéristiques

Méthodes Classiques Méthodes basées sur NN

 VQ : Vector Quantization (clustering)


 ResNet20
 HMM : Hidden Markov Model (probabiliste)
 GE2E: Generlazed End to End
 GMM : Gaussian Mixture Model (probabiliste)

30
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

Comparaison
1) Méthodes d’extraction de caractéristiques

31
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

Comparaison
2) Méthodes de mise en correspondance des caractéristiques

La précision du modèle basé sur GE2E est : 2.55%

32
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

Méthodes de reconnaissances :
• Traits du visage
• Forme du visage
• Textures de la peau

33
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

Méthodes de reconnaissance faciale :

34
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

Vérification

35
Généralités
Système de Contrôle d’Accès Apprentissage Profond Reconnaissance Vocale Reconnaissance Faciale

Vérification Identification

36
Introduction

Généralités

Etude du besoin

Conception

Réalisation

Intégration

Conclusion

37
Etude du besoin
Organisme d’Accueil Capture des Besoins

 Centre de recherche nationale.


 Créé en 1985.
 Ben Aknoun – Alger.
 Il est l’ISP actuelle pour les établissements universitaires.
 Il héberge le cluster de calcul IBN BADIS

38
Etude du besoin
Organisme d’Accueil Capture des Besoins

Notre système est constitué de ces grandes parties :


• Module de reconnaissance faciale.

39
Etude du besoin
Organisme d’Accueil Capture des Besoins

Notre système est constitué de ces grandes parties :


• Module de reconnaissance faciale.
• Module de reconnaissance vocale.

40
Etude du besoin
Organisme d’Accueil Capture des Besoins

Notre système est constitué de ces grandes parties :


• Module de reconnaissance faciale.
• Module de reconnaissance vocale.
• Un serveur hébergeant l’application web.

41
Etude du besoin
Organisme d’Accueil Capture des Besoins

Notre système est constitué de ces grandes parties :


• Module de reconnaissance faciale.
• Module de reconnaissance vocale.
• Un serveur hébergeant l’application web.
• Une application mobile Android pour les demandeurs d’accès.

42
Introduction

Généralités

Etude du besoin

Conception

Réalisation

Intégration

Conclusion

43
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

44
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Deux phases dans le système RV :


 Inscription
 Vérification

Dans les deux phases, l’extraction des caractéristiques est nécessaire.

45
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

46
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

47
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Pseudo algorithme d’entraînement

 𝑀𝑒𝑡𝑡𝑟𝑒 à 𝑗𝑜𝑢𝑟 𝑙𝑒𝑠 𝑝𝑜𝑖𝑑𝑠 𝑑𝑢 𝑟 é 𝑠𝑒𝑎𝑢

48
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Pseudo algorithme de vérification

 𝑃𝑜𝑢𝑟 𝑐h𝑎𝑞𝑢𝑒 𝑒𝑛𝑡𝑟 é 𝑑𝑎𝑛𝑠 𝑙𝑎 𝑏𝑎𝑠𝑒𝑑𝑒 𝑑𝑜𝑛𝑛 é 𝑒𝑠:

49
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

50
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Deux grandes phases :


• Détection du visage.
• Identification du visage.
51
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Détection

L'algorithme MTCNN :

 Détecter les boîtes englobantes des visages.

 En utilisant : P-Net (Proposal Network)

52
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Détection

L'algorithme MTCNN :

 Détecter les boîtes englobantes des visages.

 En utilisant : P-Net (Proposal Network)

 Régression des boîtes englobantes.

 En utilisant : R-Net (Refine Network)

53
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Détection

L'algorithme MTCNN :

 Détecter les boîtes englobantes des visages.

 En utilisant : P-Net (Proposal Network)

 Régression des boîtes englobantes.

 En utilisant : R-Net (Refine Network)

 Détecter Les 5 points de repère faciaux.

 En utilisant : O-Net (Output Network)

54
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Datasets d’entraînement
WIDER FACE: A Face Detection Benchmark
• ≈ 30k images.
• ≈ 400k visages

CelebA : Large-scale CelebFaces Attributes


• ≈ 10k personnes.
• ≈ 200k images.

55
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Détection – Pseudo algorithme d’entraînement

1) Entraîner le modèle P-Net avec les données de WIDER_Face.

56
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Détection – Pseudo algorithme d’entraînement

1) Entraîner le modèle P-Net avec les données de WIDER_Face.

2) Générer les données d’entraînement du modèle R-Net à partir de WIDER Face en

utilisant le modèle P-Net déjà entraîné.

57
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Détection – Pseudo algorithme d’entraînement

1) Entraîner le modèle P-Net avec les données de WIDER_Face.

2) Générer les données d’entraînement du modèle R-Net à partir de WIDER Face en

utilisant le modèle P-Net déjà entraîné.

3) Entraîner le modèle R-Net avec les données générées dans (2).

58
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Détection – Pseudo algorithme d’entraînement

1) Entraîner le modèle P-Net avec les données de WIDER_Face.

2) Générer les données d’entraînement du modèle R-Net à partir de WIDER Face en

utilisant le modèle P-Net déjà entraîné.

3) Entraîner le modèle R-Net avec les données générées dans (2).

4) Générer les données d’entraînement du modèle O-Net à partir de WIDER Face en

utilisant les modèles P-Net et R-Net déjà entraînés.

59
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Détection – Pseudo algorithme d’entraînement

1) Entraîner le modèle P-Net avec les données de WIDER_Face.

2) Générer les données d’entraînement du modèle R-Net à partir de WIDER Face en

utilisant le modèle P-Net déjà entraîné.

3) Entraîner le modèle R-Net avec les données générées dans (2).

4) Générer les données d’entraînement du modèle O-Net à partir de WIDER Face en

utilisant les modèles P-Net et R-Net déjà entraînés.

5) Entraîner le modèle O-Net avec les données générées en (4) et avec CelebA.

60
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Evaluation de la détection de visage sur AFLW (Zang, 2016)

61
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Evaluation de la détection des repères faciaux sur AFLW (Zang, 2016)

62
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Identification
 VGGFace2 :
• Reconnaitre une personne parmi 8631 candidats.

63
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Identification
 VGGFace2 :
• Reconnaitre une personne parmi 8631 candidats.

 Utiliser comme comparateur :


• Sans le classificateur  Sortie réduite à un vecteur.

64
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Identification
 VGGFace2 :
• Reconnaitre une personne parmi 8631 candidats.

 Utiliser comme comparateur :


• Sans le classificateur  Sortie réduite à un vecteur.

 Comparer les résultats


• Deux vecteurs  Un calcul de distance (distance cosinus).

65
Conception
Architecture Globale Reconnaissance Vocale Reconnaissance Faciale

Identification
 VGGFace2 :
• Reconnaitre une personne parmi 8631 candidats.

 Utiliser comme comparateur :


• Sans le classificateur  Sortie réduite à un vecteur.

 Comparer les résultats


• Deux vecteurs  Un calcul de distance (distance cosinus).

 Comparer une entrée avec une base de données


•  Retourner les degrés de similitude.

66
Introduction

Généralités

Etude du besoin

Conception

Réalisation

Intégration

Conclusion

67
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

Technologies Matérielles :
• Google Colab : machine virtuelle sur cloud pour entraîner les modèles avec GPU
• Serveur web : héberger les deux modèles de reconnaissances et l’application web

68
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

Technologies Matérielles :
• Google Colab : machine virtuelle sur cloud pour entraîner les modèles avec GPU
• Serveur web : héberger les deux modèles de reconnaissances et l’application web

Technologies Logicielles :

• Python : pour l’application web et les modèles avec Flask, PyTorch et NumPy.
• Java : pour l’application mobile.

69
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

70
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

Entraînement du modèle

 N = 4 ; nombre de locuteurs par lot (batch size), 2 pour test,

 M = 5 ; nombre d’énoncés (utterances) par locuteur, 6 pour test,

 Epoques = 100 pour entraînement et 10 pour test,

 LR = 0.01 (le taux d’apprentissage)

Le calcul d’erreur est en utilisant la


fonction softmax sur Sji,k pour k=1,…,N

71
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

Entraînement du modèle

72
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

Entraînement du modèle

Durée d’entraînement : 2 h 42 min


73
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

Entraînement du modèle

74
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

Test de modèle
1 ère entraînement sur TIMIT 2 ème entraînement sur VoxCeleb1

75
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

76
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

I. Sous-module détection

Pour entraîner les modèles du sous-module de détection, nous


avons utilisé les deux ensembles de données :
• WIDER Face : pour entraîner les modèles P-Net, R-Net et O-Net à
détecter les visages dans une image .
• CelebA : pour entraîner le modèle O-Net à détecter les repères
faciaux dans une image d’un visage.

77
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

Google Colab 78
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

Les hyperparamètres utilisés :


 Les modèles P-Net et R-Net

• Taux d’apprentissage = 0.01


• Nombre d’époques = 10
• Taille des lots = 512

 Le modèle O-Net

• Taux d’apprentissage = 0.002


• Nombre d’époques = 10
• Taille des lots = 1000

79
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

L’entraînement du modèle P-Net


L’entraînement de ce premier modèle a duré 2224 secondes (ou 37 min) :

Le résultat final de l’entraînement : une précision de 94% et une perte de 2%

80
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

L’entraînement du modèle R-Net


L’entraînement de ce premier modèle a duré 3713 secondes (ou 1 h 2 min) :

Le résultat final de l’entraînement : une précision de 87% et une perte de 1%

81
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

L’entraînement du modèle O-Net


L’entraînement de ce premier modèle a duré 1880 secondes (ou 31 min 20 s) :

Le résultat final de l’entraînement :


• une précision de 97%
• une perte de 0.5% pour la détection du visage
• une perte de 0.07% pour la détection des repères faciaux

82
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

II. Sous-module d’identification

• Utiliser le modèle préentraîné de VGGFace2.


• Adapter le modèle pour d’identification.
• Utilisé le modèle modifié pour générer les vecteurs de caractéristiques.
• Comparer ces vecteurs avec un calcul de distance

83
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

Chargement du modèle

• Charger le modèle sans le classificateur : le paramètre « inclure_top = False ».


• Réduire la sortie à un vecteur : « pooling = avg ».

• Calculer la distance entre deux plongements pour trouver la similarité.

84
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

• Application web

L’application doit :
 Gérer toutes les demandes d’inscription et d’indentification d’une manière optimale.
 Fait appel aux modèles pour l’inscription et la vérification.
 Avoir une fonction de décision dynamique en fonction des circonstances.
 Journaliser toute tentative d’accès.
 Configurable seulement par l’administrateur.

85
Réalisation
Technologies Reconnaissance Vocale Reconnaissance Faciale Application Web Application Mobile

• Application mobile

L’application doit :
 Permettre aux employées d’envoyer leurs photo et voix.

 Chiffrer les données avant les envoyer au serveur.

86
Introduction

Généralités

Etude du besoin

Conception

Réalisation

Intégration

Conclusion

87
Intégration
Sécurité Hybridation Déploiement

88
Intégration
Sécurité Hybridation Déploiement

I. Chiffrement des biométries (photo et voix) d’inscription

89
Intégration
Sécurité Hybridation Déploiement

II. Suppression des biométries des vérification réussies

90
Intégration
Sécurité Hybridation Déploiement

III. Garder des biométries des personnes non reconnues


ou interdites

91
Intégration
Sécurité Hybridation Déploiement

92
Intégration
Sécurité Hybridation Déploiement

93
Intégration
Sécurité Hybridation Déploiement

94
Intégration
Sécurité Hybridation Déploiement

95
Intégration
Sécurité Hybridation Déploiement

Sweet spot

96
Intégration
Sécurité Hybridation Déploiement

Avec :

Avec une fonction de décision dynamique:

Telle que :
: résultats des deux reconnaissances
: pourcentages d’importance de chaque biométrie

97
Intégration
Sécurité Hybridation Déploiement

 
Exemples :

 S’il y a du bruit en site, on augmente l’importance de la photo et on

diminue celle de la voix. Par exemple :

98
Intégration
Sécurité Hybridation Déploiement

 
Exemples :

 S’il y a du bruit en site, on augmente l’importance de la photo et on

diminue celle de la voix. Par exemple :

 Si c’est le soir ou il fait sombre, on augmente l’importance de la voix et on

diminue celle de la photo. Par exemple :

99
Intégration
Sécurité Hybridation Déploiement

100
Introduction

Généralités

Etude du besoin

Conception

Réalisation

Intégration

Conclusion

101
Conclusion
Synthèse Perspectives Opportunités

 Identification basée sur des biométriques multiples.

 Meilleurs résultats avec DL.

 Entraîner, tester et déployer des modèles RF et RV.

 Conception et développent application mobile + web.

L’utilisation et l’intégration des applications web, mobiles et des capteurs dans les
bâtiments est un prérequis pour qu’ils deviennent smart (surtout utilisation de IoT).

102
Conclusion
Synthèse Perspectives Opportunités

 Utiliser le Transfer Learning sur le modèle vocal pour identifier efficacement


autres langues

 Entraîner le modèle facial pour qu’il détecte le spoofing.

 Développer un logiciel local pour capturer le flux de caméra et de son en temps


réel en site dans le bâtiment.

103
Conclusion
Synthèse Perspectives Opportunités

 Avec l’émergence de pandémie COVID-19, le gens sont conseillé de minimiser le


touché, notre solution le permet avec l’automatisation de contrôle d’accès.

 Elle permet également de contrôler le port/non port des masques (extension).

104
Merci !

Questions ?

105

Vous aimerez peut-être aussi