Extraction et analyse du comportement humain à partir de flux vidéo
Transcription
Extraction et analyse du comportement humain à partir de flux vidéo
Extraction et analyse du comportement humain à partir de flux vidéo Jean Martinet FOX – LIFL – Université Lille 1 Présentation au LIM – Université de la Réunion 19 février 2013 Plan 2 Présentation Activités Au Lille 1, LIFL, FOX de recherche de FOX : analyse image/vidéo… niveau personne Suivi de la tête / Suivi du regard Reconnaissance de visages, de personnes Expressions et fatigue Actions Au niveau foule Dynamique d’une foule Situation anormales Projets de recherche en cours Lille 1, LIFL et FOX 3 Université Lille 1 Fondée en 1854 20,000 étudiants, 1500+ enseignants-chercheurs 400 thèses/an environ, 39 laboratoires de recherche Laboratoire d'Informatique Fondamentale UMR 8022 U. Lille 1, CNRS, U. Lille 3 200+ personnels de Lille Fouille d’infOrmations compleXes et multimedia 1 PR, 3 MCF 1 postdoc, 3 doctorants, 7 stagiaires Thème de recherche : analyse image/vidéo, extraction d’informations liées au comportement humain 3 4 Motivation, objectifs, contraintes Profusion de flux vidéos Environnement personnel : Webcams (2D or 3D) Environnement public : Système de surveillance/protection, TV Extraction d’information pour : Le retour implicite de l’utilisateur (expression, action …) L’analyse de foules (comportement, situation anormale …) L’analyse d’un contexte (carte de densité, d’occupation, flux …) Utiliser des caméras standards dans des environnements peu contraints Traiter les flux vidéos dans des délais courts 5 Niveau individu Suivi de la tête / du regard Que regardent les usagers ? Quels sont les éléments vus dans une scène ? Reconnaissance de visages Qui est la personne face à la caméra ? Quelle est la personne dont le journal télévisé parle ? Expressions faciales Comment est perçu un contenu/produit ? Quel est l’état (émotionnel) courant de l’usager ? L’usager s’endort-il ? Actions Qu’est-ce que l’usager est en train de faire ? La situation est-elle « anormale » ? 6 Suivi du regard 7 Plot of the dispersion value (Gini, inter-user distance) for each frame 8 Reveals the structure of the movie: fast sequence of short-length shots, with a few longer shots in between where character faces can be clearly seen) low dispersion (= good focus) ~ long shots high dispersion (= uncertain focus) ~ chains of short-length shots, with hard cuts (<-- individual physiological variations) Last shot: static display of the product name tools to analyse/predict audience focus in video shot 8 Estimation de la pose de la tête 9 Solutions intrusives (lunettes, casque, etc.) Solutions non-intrusives et peu onéreuses Distances variables, multi-personnes Estimation de la pose de la tête + position Avec U. Amsterdam : filtres de Gabor + suivi Avec USTHB Alger : symétrie du visage des yeux Suivi du regard 10 Reconnaissance de personnes 11 ANR - PERson reCOgnition in audiovisuaL content (2010-14) Recognize people in TV programs robustness to small changes of light, view points, partial occlusion, pose, expression … Improve static approaches take into account temporal aspects for more robust algorithms Take into account depth information from stereo inputs Who are these persons? 11 Time dimension Objective: 12 enhance static methods using time Several strategies Interest point Select and track interest points Build a face time signature Work in progress Space-time histograms Build a person signature Compare histograms Improves clustering 12 Expressions faciales Approches statiques Locale : 7 points caractéristiques du visage Globale : visage normalisé + classification (mono expression) Approches Détection Détection standard dynamiques d’unités d’actions automatique des points – matériel 13 Expressions faciales – statique locale 14 Proposition d’une combination de différentes méthodes Détection de visages Face Detec(on Eye Detec(on Eyebrow Localiza(on Surprise/Neutral Emo(on Detec(on Nose Localiza(on Mouth Corner Detec(on Happy/Neutral Emo(on Detec(on OpenCV, Détection Rowley Position Viola-Jones des yeux (RNA) sourcils, nez Seuillage Détection adaptatif coins de bouche RNA Expressions Règles faciales de décision Expressions faciales – statique locale 15 Endormissement Drowsy Driver Detection System (DDDS) temps réel basé sur les “eye blink patterns” (système non intrusif) Pas de calibration/pas d’initialisation du système Faible coût computationnel Capteurs bon marché (caméras low-cost) Symétrie horizontale des yeux 16 Drowsy Driver Detection System Drowsy Driver Detection Face Camera Face Detec(on Eye Detec(on Eye Blink Pattern Detection Horizontal Symmetry Calcula(on Eye Horizontal Symmetry Open No Increase Drowsy Frame Counter No is Drowsy? No Yes & Eye Detection Eye region extraction Eye blink detection Horizontal Closed Yes 17 is Sleeping? Yes symmetry Threshold Drowsiness Original Detection Vertical flip 0.5x0.16 of IPD Subtracted Alert normalized to 20x15px Reconnaissance d’actions 18 Détection d’action de la vie courante (marcher, courir, sauter, répondre au téléphone … ) Répondre au téléphone Boxer Challenges Différentes échelles spatio-temporelles Variabilité du mouvement et occlusions Mouvement de la personne vs. Mouvement de la caméra Reconnaissance d’actions – HOF/HOG 19 Video stream Detecting interest points Computing optical flow Allocating vectors to blocs Circular clustering Non-cirular clustering Direction model Magnitude model Direction : Mixture of von Mises distributions Query models Template models Magnitude : Mixture of Gaussian distributions Distance metric Action recognition 19 Reconnaissance d’actions 20 … walking running … jogging Modèle requête … handwaving … handclapping … boxing … Modèles de référence 20 Mouvements de foule Description de scène : Extraction Extraction 21 des zones les plus/moins fréquentées de classes de trajectoires Détection d’évenements non usuels : Detection de situations anormales de foule Logs de situation anormales (indexation/ recherche) Collapsing Overcrowd (high density) Running Evacuation, dispersion 21 Regroupement et suivi de groupes 22 Regroupement (cluster) des blocs contigüs ayant des directions proches 22 Exemple 23 Split / local dispersion events 23 Expés : situations anormales 24 Split / local dispersion events 24 Collaborations et projets en cours ANR PERCOL (2010-2014) PERson reCOgnition in audiovisuaL content U. Marseille, U. Lille, U. Avignon, FTRD Lannion (Orange) Reconnaissance de personne dans les JT Rôle FOX : responsable de la partie vidéo ITEA2 TWIRL (2012-2014) 25 Twinning virtual World (on-line) Information with Real world (off-Line) data sources 13 partenaires en France, Roumanie, Turquie Traitement, fouille, fusion de données du monde réel (estimations de trafic routier, prévisions météorologiques, etc.) avec des données en ligne (réseaux sociaux, forums, blogs, wikis, RSS, etc.) Rôle FOX : extraction d’informations en contexte de photos/vidéo de smartphones ITEA2 EMPATHIC (2012-2015) Technologies « empathiques » pour comprendre et répondre aux intentions et aux émotions des utilisateurs lors de l’utilisation des applications. 31 partenaires : France, Finlande, Belgique, Lituanie, Pays-Bas, Portugal, Espagne Rôle FOX : extraction d’informations en contexte de photos/vidéo de smartphone Synthèse Thème : extraction/analyse d’actions humaines à partir de flux vidéos Niveau individu Suivi de la tête / du regard Reconnaissance de personnes Expressions faciales et endormissement Actions Niveau groupe Détection et suivi de groupe Dynamiques de foule, évenements non usuels Travaux connexes : Indexation et recherche d’informations multimédia Multimédia, métadonnées et sémantique 26 Image descriptors : advanced representation PhD 27 works from Ismail El Sayad (2009-11) Extended BOW representation Feature Multilayer extraction + quantization Semantically Significant Analysis Dedicated Invariant Visual topic model visual glossary words and phrases 27 Enhanced Bag of Visual Words (E-BOW) Feature extraction Interest points detection Edge points detection SURF feature vector extraction at each interest point HAC and Divisive Hierarchical K-Means clustering Color filtering using vector median filter (VMF ) Color feature extraction at each interest and edge point Fusion of the SURF and edge context feature vectors Collection of all vectors for the whole images 28 Edge Context feature vector extraction at each interest point Color and position vector clustering using Gaussian mixture model ∑1 µ1 Pi1 ∑2 µ2 Pi2 ∑3 µ3 Pi3 VW vocabulary 28 29 Enhanced Bag of Visual Words (E-BOW) Hierarchal Feature Quantization Visual word vocabulary is created by clustering the observed merged features (SURF + Edge context 88 D) in 2 clustering steps: Hierarchical Agglomerative Clustering (HAC) Divisive Hierarchical K-Means Clustering k clusters from HAC Stop clustering at desired level k … Merged feature in the feature space A cluster at k =4 The tree is determined level by level, down to some maximum number of levels L, and each division into k parts. 29 29 Multilayer Semantically Significant Analysis (MSSA) model Generative Process 30 In the MSSA, there are two different latent (hidden) topics: High latent topic that represents the high aspects Visual latent topic that represents the visual aspects Θ im φ h Ψ v V W M N 30 Semantically Significant Invariant Visual Glossary (SSIVG) representation Semantically Significant Visual Word (SSVW) Set of VWs Estimating using MSSA Set of relevant visual topics( ) Estimating using MSSA Set of SSVWs 31 31 Semantically Significant Invariant Visual Glossary (SSIVG) representation Semantically significant Visual Phrase (SSVP) 32 Using both the SSVWs themselves and their interrelationships to obtain a higher-level and more discriminative representation of the data known as a semantically significant visual phrase (SSVP). SSVPs are formed from SSVW sets that satisfy all the following conditions: Occur in the same spatial context . Involved in strong association rules. Have the same semantic meaning (high probability related to at least one common visual latent topic). 32 Semantically Significant Invariant Visual Glossary (SSIVG) representation Semantically significant Visual Phrase (SSVP) The set of the all SSVWs or the SSVW vocabulary denotes set of items. The set (T) of all different sets of the frequent visual words located in a same context denotes the set of transactions. An association rule is a relation of an expression X ⇒ Y, where X and Y are sets of SSVWs. SSVW representation Construct set of transactions T SSVPs representation Check support s & confidence c If s > min support & c > min confidence strong association rules is detected 33 Check semantic coherence Set of SSVW involved in strong association rules 33 Example with blocks words 34 34 Image descriptors : bag-of-words 35 Evaluate code-words generated from different strategies Context Visual BOW techniques are inspired from text processing (stemming, filtering, weighting, similarity model, etc.) Implicit assumption in text: word distributions follow Zipf law Zipf's law: given some corpus of natural language, the frequency of a word is inversely proportional to its rank in the frequency table 35 Question: what about Zipf for visual BOW? 36 English Words frequencies in Wikipedia (2006) 36 Evaluation Feature 37 extraction SIFT SURF Quantization process Kmeans ([MacQueen, 1967]) Self-Organizing Maps (SOM) ([Kohonen, 1997]) ANN-like Generation unsupervised technique used for quantization of 4 BOW vocabularies SIFT-KMEANS, SOM SIFT-SOM, SURF-KMEANS, SURF37 Datasets Caltech101 38 Pascal 38 BOW distributions for Caltech101 39 39 BOW distributions for Pascal 40 40 Discussion 41 For both collections Similar distributions for SIFT and SURF SOM yields distributions that are closer to natural language Quantization algorithms build different vocabularies, with different distributions 41 Impact on retrieval 42 What is the impact for a standard retrieval task? Vector Space Model [Salton 1975] Cosine Each similarity image serves as a query, in turn Result is relevant if in the same category as the query 42 Recall-precision for Caltech101 43 43 Recall-precision for Pascal 44 44 Main results 45 Kmeans is popular but not optimal for BOW generation Possible theoretical justification: hypothesis of Zipf law not satisfied Caltech101 Pascal Partial validation of Zipf law hypothesis with SOM Needs a formal comparison of distributions (Chi2, T-test, etc.) 45