Groupe 3CP13:
Groupe 3CP13:
DESPAIGNE Vianney,GERBAUX Amaury,MARTIN François-Noël DESPAIGNE Vianney,GERBAUX Amaury,MARTIN François-Noël
22
Présentation Générale Présentation Générale
Logiciel de vidéosurveillance par WebcamLogiciel de vidéosurveillance par Webcam
• Fonctionnalités : Fonctionnalités :
Détection d’intrusionDétection d’intrusion
Compteur de passageCompteur de passage
Compteur InstantanéCompteur Instantané
• Archivage des événementsArchivage des événements
• Traitements sur les imagesTraitements sur les images
• Algorithme de l’OrdonnanceurAlgorithme de l’Ordonnanceur
• LimitesLimites
Une réponse adaptée Une réponse adaptée
à un besoin utilisateur à un besoin utilisateur
Utilisateurs potentiels Utilisateurs potentiels
• Agent de surveillanceAgent de surveillance
• Responsable de surveillanceResponsable de surveillance
Contexte de travail : Contexte de travail :
• Grandes surfaces à surveillerGrandes surfaces à surveiller
• Nombreux points à couvrirNombreux points à couvrir
Travail fastidieux à l’échelle humaine
44
Avantage sur l’existant Avantage sur l’existant
Vidéo surveillance traditionnelle Vidéo surveillance traditionnelle
• Nécessite plusieurs écrans et des Nécessite plusieurs écrans et des agents attentifs pour les surveiller agents attentifs pour les surveiller
• SURVI analyse lui-même les prises SURVI analyse lui-même les prises de vues
de vues
But du projet But du projet
Fonctionnement simple Fonctionnement simple
• Au niveau de l’interface Au niveau de l’interface
• Au niveau de l’exploitation des Au niveau de l’exploitation des résultats
résultats
Fonctionnement efficace Fonctionnement efficace
• Résultats rapides et synthétiques Résultats rapides et synthétiques
• Surveillance automatisée Surveillance automatisée
66
Modes de fonctionnement Modes de fonctionnement
3 modes différents 3 modes différents
Détection d’intrusionDétection d’intrusion
Compteur de passageCompteur de passage
Compteur instantanéCompteur instantané
Modes de fonctionnement Modes de fonctionnement
Image de référence Image de référence
• Nécessaire aux analysesNécessaire aux analyses
• Prise automatique au lancementPrise automatique au lancement
• Réinitialisable par l’utilisateur à tout Réinitialisable par l’utilisateur à tout moment
moment
• Visualisable par l’utilisateur à tout Visualisable par l’utilisateur à tout moment
moment
88
Modes de fonctionnement Modes de fonctionnement
Détection d’intrusion Détection d’intrusion
• Choix de l’utilisateur entre 2 modes :Choix de l’utilisateur entre 2 modes :
Mode Mode normalnormal : différence progressive non : différence progressive non signalée
signalée
Mode Mode extrêmeextrême : toute différence signalée : toute différence signalée
Modes de fonctionnement Modes de fonctionnement
Détection d’intrusion Détection d’intrusion
• Enclenchement manuel d’une sessionEnclenchement manuel d’une session
• Enclenchement en programmant une Enclenchement en programmant une session
session
• Choix du nom du fichier d’archiveChoix du nom du fichier d’archive
• A tout moment :A tout moment :
Arrêt d’une détection en fonctionnementArrêt d’une détection en fonctionnement
Annulation d’une session programméeAnnulation d’une session programmée
1010
Modes de fonctionnement Modes de fonctionnement
Compteur de passage Compteur de passage
• Comptabiliser le nombre de personnes Comptabiliser le nombre de personnes passant devant la Webcam sur une
passant devant la Webcam sur une durée choisie par l’utilisateur
durée choisie par l’utilisateur
• Ne pas comptabiliser plusieurs fois une Ne pas comptabiliser plusieurs fois une personne restant dans le champ
personne restant dans le champ
Modes de fonctionnement Modes de fonctionnement
Compteur de passage Compteur de passage
• Enclenchement manuel d’une sessionEnclenchement manuel d’une session
• Enclenchement en programmant une Enclenchement en programmant une session
session
• Choix du nom du fichier d’archiveChoix du nom du fichier d’archive
• A tout moment :A tout moment :
Arrêt d’un compteur en fonctionnementArrêt d’un compteur en fonctionnement
Annulation d’une session programméeAnnulation d’une session programmée
1212
Modes de fonctionnement Modes de fonctionnement
Compteur instantané Compteur instantané
• Dénombrer le nombre de personnes Dénombrer le nombre de personnes devant la Webcam à un instant donné devant la Webcam à un instant donné
Modes de fonctionnement Modes de fonctionnement
Compteur instantané Compteur instantané
• Enclenchement uniquement manuelleEnclenchement uniquement manuelle
• Enclenchement à n’importe quel Enclenchement à n’importe quel
moment (même si une autre session est moment (même si une autre session est
en fonctionnement) en fonctionnement)
• Choix du nom du fichier d’archiveChoix du nom du fichier d’archive
1414
Archives Archives
Format Html Format Html
• Permet une synthèse rapide des Permet une synthèse rapide des événements
événements
• Mise en forme agréable et facile à Mise en forme agréable et facile à analyser
analyser
Archives Archives
Détection d’intrusion Détection d’intrusion
• Titre de la sessionTitre de la session
• Date et heure de début de sessionDate et heure de début de session
• Liste des événementsListe des événements
Date et heure de détectionDate et heure de détection
Aperçu de la prise de vueAperçu de la prise de vue
• Cadre rouge autour de la zone détectéeCadre rouge autour de la zone détectée
• Image visualisable par simple clicImage visualisable par simple clic
• Cause d’arrêtCause d’arrêt
• Date et heure de fin de sessionDate et heure de fin de session
1616
Archives Archives
Compteur Instantané Compteur Instantané
• Titre de la sessionTitre de la session
• Date et heure de la prise de vueDate et heure de la prise de vue
• Prise de vue associéePrise de vue associée
• Affichage du nombre de personnes Affichage du nombre de personnes comptées
comptées
Archives Archives
Compteur de passage Compteur de passage
• Titre de la sessionTitre de la session
• Date et heure de début de sessionDate et heure de début de session
• Pour chaque nouvelle personne détectéePour chaque nouvelle personne détectée
Prise d’un certain nombre de prises de vuePrise d’un certain nombre de prises de vue
Pour chaque prise de vue :Pour chaque prise de vue :
• Date et heureDate et heure
• Nombre total de personnes comptéesNombre total de personnes comptées
• Cause de fin de sessionCause de fin de session
• Date et heure de fin de sessionDate et heure de fin de session
1818
Analyses d’images Analyses d’images
Qu’est ce qu’une image ? Qu’est ce qu’une image ?
• Tableau de pixels à 2 dimensionsTableau de pixels à 2 dimensions
Cas d’une image en couleurs : Cas d’une image en couleurs :
• trois valeurs par pixel (composantes rouge, verte trois valeurs par pixel (composantes rouge, verte et bleue)
et bleue)
Cas d’une image en niveaux de gris : Cas d’une image en niveaux de gris :
• une valeur par pixel une valeur par pixel
2020
Analyses d’images Analyses d’images
Qu’est ce qu’une image ? Qu’est ce qu’une image ?
• Exemple:Exemple:
Analyses d’images Analyses d’images
Conversion en niveaux de gris Conversion en niveaux de gris
• Pourquoi cette conversion ?Pourquoi cette conversion ?
Réduction du temps de traitement des imagesRéduction du temps de traitement des images
• Comment convertir ?Comment convertir ?
Pour chaque pixel en couleurs :Pour chaque pixel en couleurs :
valeur_grise = 0.299 R + 0.587 V + 0.114 B valeur_grise = 0.299 R + 0.587 V + 0.114 B
R = composante rouge R = composante rouge V = composante verte V = composante verte B = composante bleue B = composante bleue
2222
Analyses d’images Analyses d’images
Conversion en niveaux de gris Conversion en niveaux de gris
• Exemple:Exemple:
Analyses d’images Analyses d’images
Comparaison d’imagesComparaison d’images
• Création d’un tableau résultatCréation d’un tableau résultat
Application de la formule :Application de la formule :
Image résultat [i,j] = | Image traitée [i,j] – Image référence [i,j] | Image résultat [i,j] = | Image traitée [i,j] – Image référence [i,j] |
110110 112112 110110 214214
109109 100100 111111 114114
11 1212
11 100100 Image référence Image traitée Image résultat
&
2424
Analyses d’images Analyses d’images
Comparaison d’images Comparaison d’images
• Seuillage du tableau résultatSeuillage du tableau résultat
Élimination des faibles variationsÉlimination des faibles variations
Comparaison de chaque élément à une Comparaison de chaque élément à une valeur de seuil
valeur de seuil
11 1212
11 100100 Image résultat
255255 255255 255255 00
Image résultat seuillée
Analyses d’images Analyses d’images
Comparaison d’images Comparaison d’images
• Exemple:Exemple:
2626
Analyses d’images Analyses d’images
Elimination du bruit Elimination du bruit
• Elimination des pixels noirs isolésElimination des pixels noirs isolés
Si un pixel noir possède 3 voisins noirs ou Si un pixel noir possède 3 voisins noirs ou moins
moins transformation en pixel blanctransformation en pixel blanc
• Elimination des petites surfacesElimination des petites surfaces
Si une zone noire a une surface plus petite Si une zone noire a une surface plus petite que la valeur de seuil
que la valeur de seuil transformation en transformation en zone blanche
zone blanche
Analyses d’images Analyses d’images
Elimination du bruit Elimination du bruit
• Elimination des petites surfacesElimination des petites surfaces
Procédé d’étiquetage Procédé d’étiquetage
Pour tous les pixels noirs de l’image:
Pour tous les pixels noirs de l’image:
• S’il n’est pas étiqueté: S’il n’est pas étiqueté:
Si une valeur étiquette est présente sur la Si une valeur étiquette est présente sur la
même ligne ou la même colonne, cette valeur même ligne ou la même colonne, cette valeur lui est attribuée ainsi qu’aux autres pixels
lui est attribuée ainsi qu’aux autres pixels noirs sur la même ligne et sur la même noirs sur la même ligne et sur la même colonne
colonne
Sinon, une valeur étiquette lui est attribuée Sinon, une valeur étiquette lui est attribuée ainsi qu’à tous les pixels noirs sur la même ainsi qu’à tous les pixels noirs sur la même ligne et sur la même colonne
ligne et sur la même colonne
• S’il est déjà étiqueté: sa valeur d’étiquette est S’il est déjà étiqueté: sa valeur d’étiquette est
attribuée à tous les pixels noirs sur la même ligne et attribuée à tous les pixels noirs sur la même ligne et
sur la même colonne sur la même colonne
2828
Analyses d’images Analyses d’images
Elimination du bruitElimination du bruit
• Etiquetage des surfacesEtiquetage des surfaces
11 11 11 11 11 11
11 11 11 11 11 11 11 11 11 11
22 22 22 11 11 11 11 11 11 11 11 11 11
22 22 22 11 11 11 11 11 11 11 11 11 11 11
Analyses d’images Analyses d’images
Elimination du bruit Elimination du bruit
• Exemple:Exemple:
3030
Analyses d’images Analyses d’images
Remplissage des formes Remplissage des formes
• Intérêt: rendre les formes interprétablesIntérêt: rendre les formes interprétables
• Procédure: pour chaque colonne du Procédure: pour chaque colonne du tableau résultat, transformer en pixel tableau résultat, transformer en pixel
noir les pixels blancs compris entre deux noir les pixels blancs compris entre deux
pixels noirs pixels noirs
Analyses d’images Analyses d’images
Remplissage des formes Remplissage des formes
• Exemple:Exemple:
3232
Analyses d’images Analyses d’images
Analyse du résultat: détection d’intrusion Analyse du résultat: détection d’intrusion
• Détection d’intrusion normale: comparaison Détection d’intrusion normale: comparaison de l’image courante avec l’image précédente de l’image courante avec l’image précédente
• Détection d’intrusion extrême: comparaison Détection d’intrusion extrême: comparaison de l’image courante avec l’image référence de l’image courante avec l’image référence
Analyses d’images Analyses d’images
Analyse du résultat: détection d’intrusion Analyse du résultat: détection d’intrusion
Si une forme noire de surface supérieure à la Si une forme noire de surface supérieure à la valeur seuil de détection d’intrusion est
valeur seuil de détection d’intrusion est présente sur l’image résultat
présente sur l’image résultat le système le système signale une intrusion
signale une intrusion
3434
Analyses d’images Analyses d’images
Analyse du résultat: compteur instantané Analyse du résultat: compteur instantané
• comparaison de l’image courante avec comparaison de l’image courante avec l’image référence
l’image référence
• On compte le nombre de surfaces noires On compte le nombre de surfaces noires
présentes dans l’image résultat après avoir présentes dans l’image résultat après avoir
effectué une nouvelle opération d’étiquetage effectué une nouvelle opération d’étiquetage
Analyses d’images Analyses d’images
Analyse du résultat: compteur de passage Analyse du résultat: compteur de passage
• comparaison de l’image courante avec l’image comparaison de l’image courante avec l’image référence
référence
• Comparaison de l’image précédente avec Comparaison de l’image précédente avec l’image référence
l’image référence
3636
Analyses d’images Analyses d’images
Analyse du résultat: compteur de passage Analyse du résultat: compteur de passage
• On détermine les coordonnées du centre On détermine les coordonnées du centre d’inertie de chaque surface noire des deux d’inertie de chaque surface noire des deux
images résultats, en effectuant la moyenne images résultats, en effectuant la moyenne sur les lignes et sur les colonnes de tous les sur les lignes et sur les colonnes de tous les
pixels de la surface prise en compte pixels de la surface prise en compte
Analyses d’images Analyses d’images
Analyse du résultat: compteur de passage Analyse du résultat: compteur de passage
• L’intervalle de temps entre chaque prise de L’intervalle de temps entre chaque prise de vue étant faible, une personne effectue un vue étant faible, une personne effectue un
court déplacement court déplacement
• Ainsi, les centres d’inerties peuvent se Ainsi, les centres d’inerties peuvent se retrouver sur les deux images résultat retrouver sur les deux images résultat
3838
Analyses d’images Analyses d’images
Analyse du résultat: compteur de passage Analyse du résultat: compteur de passage
• On traite l’ensemble des centres d’inerties de On traite l’ensemble des centres d’inerties de l’image résultat de l’image courante:
l’image résultat de l’image courante:
Si un centre d’inertie ne possède pas de voisin Si un centre d’inertie ne possède pas de voisin proche dans l’image résultat de l’image
proche dans l’image résultat de l’image
précédente, on a donc une nouvelle personne dans précédente, on a donc une nouvelle personne dans le champ de la caméra et donc le compteur associé le champ de la caméra et donc le compteur associé est incrémenté
est incrémenté
Ordonnanceur Ordonnanceur
Gestion des Gestion des sessions
sessions
manuelles et manuelles et
programmées et programmées et
envoi de cause envoi de cause
pour les pour les archives archives
Demande Arrêt
Enclenchement Manuel Session
Fin Session Programmée
Début Session Programmée
4040
Ordonnanceur Ordonnanceur
Demande Arrêt ?
Enclenchement Manuel Session ?
NON
Session En Cours ?
OUI
Arrêt Session
OUI NON
Envoi aux archives : Arrêt demandé par
l’utilisateur
Ordonnanceur Ordonnanceur
Session En Cours ?
OUI
Arrêt Session
OUI
Fin Session Programmée ?
NON
Enclenchement Manuel Session ?
Début Session Manuelle
NON
Envoi aux archives : Arrêt à cause du démarrage
d’une autre
4242
Ordonnanceur Ordonnanceur
Arrêt Session
OUI
NON
Début Session Programmée ?
Fin Session Programmée ?
Envoi aux archives : Arrêt normal lors d’une fin
de session programmée
Ordonnanceur Ordonnanceur
Session En Cours ?
OUI
Arrêt Session
OUI
Arrêt Session ?
NON
Début Session Programmée ?
NON
Début Session Programmée Envoi aux archives :
Arrêt à cause du démarrage d’une
autre session
4444
Limites Limites
Limites matérielles Limites matérielles
• Résolution et profondeur de la Webcam Résolution et profondeur de la Webcam limitées
limitées
Calculs erronésCalculs erronés
• Poste de travail ayant les Poste de travail ayant les
caractéristiques minimales suivantes : caractéristiques minimales suivantes :
Pentium IV 1,7 GHzPentium IV 1,7 GHz
256 Mo de Ram256 Mo de Ram
Port USBPort USB
Limites Limites
Limites des algorithmes Limites des algorithmes
• Temps de calculs longsTemps de calculs longs
• Changement de luminositéChangement de luminosité
• Individu d’une couleur égale à celle de Individu d’une couleur égale à celle de l’image de référence
l’image de référence
• Compteur de passage :Compteur de passage :
• Flux trop important de personnesFlux trop important de personnes
• Croisement des personnesCroisement des personnes
• Compteur instantanéCompteur instantané
• Contact entre les personnesContact entre les personnes
4646
Pouvoir gérer plusieurs Webcams Pouvoir gérer plusieurs Webcams
• Utilisation d’un identifiantUtilisation d’un identifiant
Etendre l’application en réseau Etendre l’application en réseau
• Compression du flux vidéoCompression du flux vidéo
• Archives consultables sur Internet Archives consultables sur Internet
• Consultation depuis un assistant Consultation depuis un assistant personnel
personnel