FR3026526A1 - Procede et systeme de detection d'evenements de nature connue - Google Patents

Procede et systeme de detection d'evenements de nature connue Download PDF

Info

Publication number
FR3026526A1
FR3026526A1 FR1459143A FR1459143A FR3026526A1 FR 3026526 A1 FR3026526 A1 FR 3026526A1 FR 1459143 A FR1459143 A FR 1459143A FR 1459143 A FR1459143 A FR 1459143A FR 3026526 A1 FR3026526 A1 FR 3026526A1
Authority
FR
France
Prior art keywords
event
events
micro
data stream
observation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR1459143A
Other languages
English (en)
Other versions
FR3026526B1 (fr
Inventor
Adrien Chan-Hon-Tong
Laurent Lucat
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
Original Assignee
Commissariat a lEnergie Atomique CEA
Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Commissariat a lEnergie Atomique CEA, Commissariat a lEnergie Atomique et aux Energies Alternatives CEA filed Critical Commissariat a lEnergie Atomique CEA
Priority to FR1459143A priority Critical patent/FR3026526B1/fr
Priority to US15/514,384 priority patent/US10296781B2/en
Priority to EP15767185.0A priority patent/EP3198523A1/fr
Priority to PCT/EP2015/072023 priority patent/WO2016046336A1/fr
Publication of FR3026526A1 publication Critical patent/FR3026526A1/fr
Application granted granted Critical
Publication of FR3026526B1 publication Critical patent/FR3026526B1/fr
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/174Facial expression recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)

Abstract

Procédé de détection d'évènements dans un flux de données comportant au moins les étapes suivantes : • définir un domaine de votes décomposé en I intervalles [Di, Di+1[ ou sous domaines, • initialiser un tableau S contenant des valeurs de scores S[e][t] correspondant à un évènement « e » localisé en t, • détecter un ou plusieurs micro-évènements mn dans le flux de données localisés en t1,..tN, (20) et correspondant à une observation On, • pour chaque micro-évènement mn, pour chaque évènement « e » possible, pour chaque intervalle i, [Di, Di+1[, et pour toutes les localisations d contenues dans un intervalle [Di, Di+1[, mettre à jour le tableau S[e][t] des variables « e » en ajoutant une même valeur de confiance, pour un micro-évènement mn et pour un intervalle i, et pour chaque localisation t1,..tN, • déterminer un ensemble d'évènements probables associés à une observation locale à partir du tableau S[e][t],(32).

Description

PROCEDE ET SYSTEME DE DETECTION D'EVENEMENTS DE NATURE CONNUE L'invention concerne un procédé et un système pour la détection d'évènements. Elle est utilisée pour la détection d'évènements de nature connue dans des flux de données, temps réels ou enregistrés. Elle s'applique, par exemple, pour la détection d'activité de nature répertoriée d'une personne, des actions de la vie courante d'une personne d'intérêt, la détection des émotions (de nature répertoriée) d'une personne d'intérêt, la présence d'un objet de nature connue dans une scène, un évènement sonore de nature connue, par analyse d'un signal typiquement une vidéo. Elle s'applique aussi pour des évènements de type sismographie/géologique de nature connue. Le domaine de la détection et de la reconnaissance d'événements tels que l'activité humaine est devenu un axe important de recherche. La possibilité de détecter des activités humaines peut conduire au développement d'applications dans différents domaines, par exemple, la protection médicale par vidéo, etc. Les systèmes connus de l'art antérieur mettent en jeu la détection de micro-évènements qui sont caractéristiques d'un ou plusieurs évènements différents, et l'accumulation pondérée dans le temps ou dans l'espace de ces micro-évènements fait ressortir préférentiellement un évènement, puis un autre et ainsi de suite. La détection d'un micro-évènement génère des votes pondérés pour chacun des évènements, à chaque localisation temporelle/spatiale. Dans les systèmes existants, le vote d'un micro-évènement suit une distribution quelconque présentant un poids différent dans le domaine temps/espace. Cela nécessite donc une quantité importante de mémoire et d'opérations. La figure 1 est un schéma de principe de procédé de détection selon l'art antérieur. Pour chaque observation 0; on associe à un instant donné to, 10, une valeur de vote ou de confiance V;0, 11, qui va servir pour déterminer l'évènement associé, 13 en to. L'approche générique de détection connue de l'art antérieur nécessite une mémoire de taille assez importante. Supposant que chacune des valeurs de la fonction représentative du score v soit stockée sur un « double », c'est-à-dire sur 8 octets, alors, selon le procédé générique de l'art antérieur, la quantité nécessaire pour stocker v est le produit de 8 par, le nombre d'évènements intéressants (E), le nombre de micro-évènements détectables (M), le domaine temporel des votes (2D+1), c'est-à-dire E*M*(2D+1), où D est la demi-taille du domaine temporel sur lequel on regarde l'observation. De plus, la propagation de l'information nécessite E*(2D+1) opérations d'addition et de lecture de « doubles », la lecture d'un tableau v[E][mn][d], où d correspond à un instant d'observation relatif et d'addition à une table d'évènement S[e][tn+d] par micro-évènement. Par exemple, si E= 30 (il y a 30 évènements différents possibles), M=1000 micro-évènements différents possibles, D=100 (équivalent de 5 secondes à 25 images par seconde), la mémoire nécessaire au détecteur générique est de 60 Mo et le nombre d'opérations de lecture égal à 15 000. Dans le cas de méthodes qui utilisent plus de micro-évènements, la mémoire de stockage doit pouvoir stocker l'équivalent de 1 Go de votes, ce qui est en général peu compatible avec un microcontrôleur standard. L'une des approches connues pour diminuer la mémoire et les calculs requis est de compresser le tableau v (v[E][mn][d]), par exemple, par la méthode décrite dans le document intitulé « best piecewise constant approximation of a function of single variable » de Hiroshi Konno et al, Operations Research Letters, volume 7, number 4, august 1988. Cette approche conduit à une modification aveugle des votes. En effet, les votes sont des intermédiaires entre les micro-évènements et la segmentation. Modifier les votes sans tenir compte de l'effet sur la segmentation revient à faire des modifications à l'aveugle et peut conduire à une augmentation importante de l'erreur même pour de faibles modifications. Le document intitulé « A Hough Transform-Based Voting 30 Framework for Action Recognition » de Angela Yao et al, Conference Computer vision and Pattern Recognition, June 13-18, 2010, IEEE, pages 2061-2068 décrit une méthode pour classifier des actions ou observations contenues dans une séquence vidéo. Le document intitulé « simultaneous segmentation and classification for human actions in video streams using deeply optimized Hough transform » de Adrien Chan-Hong-Tong publié en 2014 décrit une méthode de détection d'actions prenant en compte la localisation temporelle des actions. Les documents US 2012/0128045, US 5,430,810 décrivent des méthodes de détection de ligne dans des images et portent sur la gestion optimisée des résultats intermédiaires. Les méthodes décrites dans l'art antérieur connues du demandeur requièrent une taille de mémoire assez importante pour traiter les données. Un des objectifs de la présente invention est d'offrir un procédé et un système permettant de réduire la taille mémoire nécessaire au stockage de l'ensemble des votes, et de réduire le nombre d'opérations de traitement sans porter atteinte au niveau de performance du détecteur (c'est-à-dire en restant compatible avec les apprentissages réputés efficaces de la littérature). Dans la suite de la description, on associe au mot « vote » une confiance élémentaire qu'un micro-événement soit associé à un événement localisé, et on associe au mot « score » d'un événement une valeur de confiance ou de probabilité que l'évènement corresponde à l' observation effectuée sur un signal. Le score de l'événement E est la somme de tous les votes des micro-événements en faveur de cet événement E.
L'idée de la présente invention est notamment d'améliorer les systèmes de détection d'évènements en considérant des intervalles de temps pour lesquels on attribue une valeur de score constante. L'invention concerne un procédé pour détecter des évènements dans un flux de données, le procédé comportant au moins les étapes suivantes : - définir un domaine de votes dans lequel on recherche un ou des évènements possibles associés à une observation dans le flux de données décomposé en I intervalles [Di, Di+1 [ ou sous domaines, - initialiser un tableau S contenant des valeurs de scores S[e][t] correspondant à un évènement « e » localisé en t, - détecter un ou plusieurs micro-évènements mn dans le flux de données, localisés en ti,..tN, (20) et correspondant à une observation On, - pour chaque micro-évènement mn, pour chaque évènement « e» possible, pour chaque intervalle i, [Di, Di+1[, et pour toutes les localisations d contenues dans un intervalle [Di, Di+1 [, mettre à jour le tableau S[e][t] des variables « e » correspondant à un évènement en utilisant une même valeur v de confiance, par exemple par en ajoutant la valeur, pour un micro-évènement mn et pour un intervalle i, et pour chaque données localisées en ti,..tN, - déterminer un ensemble d'évènements probables associés à une observation locale dans le flux de données à partir du tableau S[e][t],(32). Les localisations ti,..tN, sont, par exemple, des instants temporels.
Selon une variante de réalisation, on choisit les valeurs d'instants de détection des micro-évènements comme des multiples d'une valeur « incrément » donnée. Le procédé prend en compte un flux de données de taille T donnée.
Selon une autre variante de réalisation, le flux de données est traité en continu. On peut définir les intervalles en utilisant les instants spécifiques associés aux maximums obtenus par la mise en oeuvre des étapes suivantes : PrecalculGain(D,I) si I = 0 retourner 0 si D = 0 retourner 1 retourner le max sur D' de (2D'+1 )(D-D'+1 )2 + PrecalculGain (D'-1 ,I-1 ) GAIN(D,I) soit D' tel que (2D'+1)(D-D'+1)2 + Precalcul (D'-1 ,l-1) = Precalcul(D,I) afficher D' GAIN(D'-1,I-1) L'invention concerne aussi un système pour détecter des évènements dans un flux de données comportant au moins les éléments suivants : - un capteur adapté à détecter un ou plusieurs micro-évènements mn dans le flux de données, à des localisations données ti,..tN, correspondant à une observation 0i, - une mémoire de stockage des résultats, - un processeur adapté à exécuter les étapes du procédé selon l'invention. Le système peut comporter une mémoire tampon pour stocker le flux à analyser, dans le cas où le flux de données est un flux continu. D'autres caractéristiques et avantages de la présente invention apparaîtront mieux à la lecture de la description qui suit d'exemples de réalisation donnés à titre illustratif et nullement limitatif annexée des figures qui représentent : - La figure 1, un schéma du procédé selon l'art antérieur, - La figure 2, le principe mis en oeuvre par le procédé selon l'invention, - La figure 3, un exemple d'architecture de détecteur selon l'invention, - La figure 4, une illustration d'une première variante du procédé, et - La figure 5, un exemple de construction d'intervalles temporels.
L'exemple détaillé qui va suivre est donné à titre illustratif pour la détection d'une action d'une personne à partir de données contenues dans un flux vidéo de taille donnée ou arrivant en continu sur un capteur de détection ou d'une image. L'action d'une personne couvre tout type d'évènement dont la nature est connue. La description qui va suivre peut être mise en oeuvre, sans sortir du cadre de l'invention et avec éventuellement quelques adaptations, à tout type d'évènements répertoriés lors d'une phase préalable d'apprentissage, par exemple. Chaque vidéo est vue comme une succession d'images/d'instants. A chaque instant correspond une image et réciproquement. Le procédé selon l'invention fait appel à un apprentissage statistique. Durant cet apprentissage, chaque image de chaque vidéo est fournie avec une annotation indiquant quel est l'évènement associé à l'image. Cette annotation est donnée, par exemple, par un expert qui peut utiliser une suite d'images autour de l'image considérée, voire la totalité des informations contenues dans la vidéo. L'apprentissage consiste notamment à paramétrer le détecteur de façon à ce qu'il produise de manière cohérente des sorties souvent équivalentes aux données annotées. Le procédé et le système pour sa mise en oeuvre vont chercher à détecter à chaque image de la vidéo quel ou quels évènements semblent le plus en adéquation avec une observation.
La figure 2 représente un exemple d'architecture d'un système permettant la mise en oeuvre des étapes du procédé selon l'invention. Le système comporte un processeur 20, une mémoire 21 adaptée à stocker à la fois le logiciel et les valeurs de vote obtenues par l'exécution du procédé et qui seront lues pour déterminer l'évènement probable. Le système comporte aussi un capteur 22 de détection du signal ou de la vidéo relié au processeur, une sortie 24 reliée par exemple à un système d'affichage 25 représentant l'évènement retenu et associé à une observation. Le système peut aussi comporter une mémoire tampon ou « Buffer » 26 pour stocker le flux à analyser lorsque l'on effectue une analyse en continu d'un flux de données.
Selon un premier mode de réalisation illustré à la figure 3, le procédé et son système vont mettre à jour le score pour chaque type d'évènement. Pour cela, le procédé extrait un ensemble de micro-évènements localisés dans la vidéo. Chaque micro-évènement augmente d'une certaine quantité le score de chaque évènement (c'est-à-dire « vote » pour chaque événement) dans un voisinage temporel ou spatial de son image d'extraction. Une fois que tous les micro-évènements voisins d'un instant ont augmenté les scores des évènements possibles de cet instant, un ensemble d'évènements pertinents est sélectionné pour caractériser l'observation présente et passée. Par exemple, les évènements dont la valeur de score dépasse une valeur seuil sont retenus, ou bien les Q évènements ayant les Q meilleurs scores (singulièrement le meilleur si 0=1). Les données et paramètres utilisés pour la mise en oeuvre du procédé illustré à la figure 3 sont donnés ci-après : m1,...,mN, un micro évènement, avec N micro événements détectés aux instants ti,...,tN, T la taille de la vidéo, E le nombre d'événements dont la présence potentielle est recherchée, D est le domaine temporel des votes, -D = D1 < D2 <... G Di = D une décomposition du domaine temporel en I intervalles, d correspond à un instant de l'intervalle [Di, Di+1[ « Detection » est l'ensemble des prédictions renvoyées (1 par image). Le procédé peut comporter les étapes suivantes : Initialiser un tableau S de taille T fois E : S[e][t] = 0 ; le tableau S contient les valeurs des variables e correspondant à un évènement, t un instant d'observation donné, Pour n = 1 à N Pour e de 1 à E, (boucle sur les évènements possibles), Pour i de 1 à I, (boucle sur les intervalles temporels), Pour d de Di (inclus) à Di+1 (exclu), (boucle sur les instants d d'observations contenus dans l'intervalle temporel), On met à jour le tableau S[e][t] en ajoutant une valeur v de confiance ou score, constante sur l'intervalle temporel [Di, Di+1[, pour un micro-évènement mn et un intervalle temporel i, 31, S[e][tn+d] = S[e][tn+d] + v[e][mn][i] ; où "=" signifie "est remplacé par la valeur", Pour t = 1 à T, on va déterminer l'évènement caractéristique, par exemple l'événement le plus probable en recherchant la valeur maximale sur e, 32, Detection[t] = arg max sur e de S[e][t], ce qui donne l'évènement caractéristique le plus probable associé à une observation Oi de la vidéo. 10 Toutes les valeurs de vote associées à un couple {micro-évènement ; événement} sont imposées et identiques pour les instants contenus dans l'intervalle temporel [Di, Di+1[ et sont stockées dans une seule valeur. Le nombre de valeurs à stocker diminue de E*M*(2D+1) selon les méthodes connues de l'art antérieur à E*M*I. De même, le nombre d'opérations de 15 lecture dans la mémoire est réduit. Selon un autre mode de réalisation illustré à la figure 4, le procédé suppose que les instants sur lesquels on effectue les observations Oi sont un multiple d'une valeur « incrément » plus connue dans le domaine technique par le terme anglo-saxon « step » donnée. 20 Les paramètres et données d'entrée sont les suivantes : m1,...,r1N, N micro événements détectés aux instants ti,...,tN en supposant que la valeur des instants choisis pour l'observation tn est multiple de « step », T la taille de la vidéo, 25 E est le nombre de types d'événements intéressant l'utilisateur, D est le domaine temporel des votes, -D = D1 < D2 <... G DI = D une décomposition du domaine temporel telle que pour tout i, Di et D sont multiple de « step », « Detection » est l'ensemble des prédictions renvoyées (une par image). 30 Le procédé « INTERVALLES_STEP » comporte alors les étapes suivantes : Initialiser un tableau S de taille T/step fois E : S[e][t] = 0 ; Pour n = 1 à N, étape 40, Pour e de 1 à E Pour i de 1 à I Pour j de Di (inclus) à Di+1 (exclu) par saut de step, étapes 41, 42 tau = (t, + j)/step, instant multiple de step, S[e][tau] = S[e][tau] + v[e][m,][i] ; étape 43, Pour t = 1 à T tau = partieEntiere(t/step) ; Prediction[t] = arg max sur e de S[e][tau] ; on détecte l'évènement pour une observation, étape 44. Cette variante de réalisation permet de diviser par « step » le nombre d'additions de doubles. Dans le cas où « incrément » = 4, cela équivaut à une réduction de 75% du nombre d'addition de « doubles ». Le procédé peut être mis en oeuvre pour détecter des évènements ou des actions dans un flux de données vidéo observé en continu. L'algorithme mis en oeuvre est alors une boucle infinie, puisque la vidéo arrive de façon infinie, et utilise une commande « Extraire » le micro-évènement suivant pour obtenir le prochain mot extrait (processus indépendants).
Les paramètres et données d'entrée du processus sont les suivantes : E est le nombre d'événements élus ou choisis, D est le domaine temporel des votes, -D = D1 < D2 <... G Di = D une décomposition du domaine temporel, « Detection » est l'ensemble des prédictions renvoyées (1 par image) B une taille de buffer (typiquement 5*D), Le procédé « INTERVALLE_FLUX » comprend par exemple les étapes suivantes : Initialiser un tableau S de taille B fois E : S[e][t] = 0 ; t = -D Faire en boucle Extraire le micro-événement suivant m en t' Tant que t<f-D Detection[t] = arg max sur e de S[e][r/oB] ; avec tcloB désignant le reste de la division euclidienne de t par B S[e][t%B]=0 ; t = t+1 ; Pour e de 1 à E Pour i de 1 à I Pour d de Di (inclus) à Di+1 (exclu) S[e][t'+d] = S[e][t'+d] + v[e][m][i]. Selon un autre mode de réalisation, le procédé fait l'hypothèse que les intervalles temporels correspondent à ceux qui vont maximiser l'espérance d'un certain gain, comme expliqué ci-après. Les paramètres et donnés d'entrée de cette variante sont les suivants : m1,..., mN, N micro événements détectés aux instants ti,...,tN, T la taille de la vidéo, E est le nombre de type d'événements qui nous intéressent, D est le domaine temporel des votes, -D = D1 < D2 G ... G Di = D une décomposition du domaine temporel en supposant que les Di sont exactement les intervalles qui maximisent l'espérance de ce certain gain, « Detection » est l'ensemble des prédictions renvoyées (1 par image) Le procédé « INTERVALLE_GAIN » comporte alors les étapes suivantes : Initialiser un tableau S de taille T fois E : S[e][t] = 0 ; Pour n = 1 à N Pour e de 1 à E Pour i de 1 à I Pour d de Di (inclus) à Di+1 (exclu) S[e][tn+d] = S[e][tn+d] + v[e][mn][i] ; Pour t = 1 à T Detection[t] = arg max sur e de S[e][t] ; Pour obtenir les intervalles qui maximisent l'espérance de ce certain gain (qui ne dépendent que de D et de I le nombre d'intervalles voulus), on pourra procéder de la manière suivante: PrecalculGain (D, I) si I = 0 retourner 0 si D = 0 retourner 1 retourner le max sur D' de (2D'+1)(D-D'+1)2 + PrecalculGain (D'-1 ,l-1) GAIN(D,I) soit D' tel que (2D'+1)(D-D'+1)2+ Precalcul (D'-1 ,l-1) = Precalcul(D,I) afficher D' GAIN(D'-1,I-1). Cette décomposition est intéressante dans le contexte d'une méthode procédant par vote avec des votes constants par morceau car le résultat de la fonction « PrecalculGain » est interprétable comme la quantité de vote individuel disponible durant l'apprentissage (en espérance).
Sans sortir du cadre de l'invention, les étapes principales du procédé selon l'invention s'appliquent en les adaptant si nécessaire en travaillant dans le domaine spatial en localisant dans l'espace les micro-évènements, en définissant un domaine de score spatial, et en initialisant le tableau S dans l'espace. On considérera alors des localisations spatiales et non plus temporelles pour l'exécution des étapes. Un des avantages du procédé selon l'invention est que, quelque soit le domaine temporel ou spatial choisi (par exemple [-D, D]) et quels que soient les intervalles de décompositions choisis (D1,...,DI), il est toujours possible de réaliser les apprentissages connus de la littérature. Durant la phase d'apprentissage, le procédé peut considérer tous les intervalles temporels comprenant 0 construits sur la décomposition: c'est-à-dire l'ensemble des [Di,Dj[ avec Di<O<Dj. Un traitement supplémentaire consistant à recombiner ces intervalles permet alors d'obtenir la valeur de vote recherchée sur chaque intervalle [Di,Di+1[. Cette recombinaison consiste à associer à un intervalle [Di,Di+1[ la somme des variables associées aux intervalles [Di,Dj[ le contenant. Les différentes variantes de mise en oeuvre du procédé selon l'invention décrites précédemment peuvent être utilisées combinées les unes aux autres afin d'améliorer la détection d'évènements. Dans le cas où un évènement considéré est une action et une observation est le squelette d'une personne, un système possible pour la mise en oeuvre du procédé selon l'invention comporte, par exemple, un ordinateur sur lequel est branchée une caméra active. Le processeur 20 de l'ordinateur effectue par exemple trois tâches en parallèle : - Extraire le squelette d'une personne observée image par image, et former la trajectoire de chaque articulation, - Extraire de ces trajectoires, les positions, les vitesses et les suites de positions de taille, chaque fois que cela est possible, ou tous les « step » images. Chacune des ces informations est écrite par un vecteur selon une méthode connue de l'homme du métier. On associe ensuite chacun de ces vecteurs à leur plus proche voisin parmi une banque de vecteurs spécifiques à l'articulation et au type d'information (position, vitesse ou suite). A la suite de cela, chaque information est associée à un symbole correspondant à un micro-évènement. - Utiliser les micro-évènements extraits et les votes appris pour déterminer l'action effectuée par la personne dans l'image, l'évènement, selon l'une des variantes du procédé selon l'invention décrite ci-avant. Durant l'entrainement, un corpus de vidéos annotées est utilisé. Les annotations définissent quelles actions seront recherchées en test.
Typiquement, les actions suivies peuvent être des actions de la vie de tous les jours : boire, manger, lire, se reposer, faire la cuisine, prendre des médicaments, etc. Un domaine de votes est décidé en fonction du nombre maximum d'images consécutives associées à la même action dans une vidéo. Ensuite, on choisit un nombre d'intervalles temporels pour décomposer le domaine de votes. On détermine alors les intervalles Di associée à la fonction « GAIN » présentée ci-avant. On utilise alors l'apprentissage DOHT approximé (Deeply Optimized Hough Transform) ou toute autre méthode d'apprentissage statistique. L'utilisation de ces votes avec le procédé selon l'invention permet de conserver une faible erreur tout en utilisant que peu de ressources, peu de mémoire, peu de lectures de cette mémoire, et éventuellement peu d'additions dans le cas de la variante de procédé avec « sous-échantillonnage ». La figure 5 illustre ce mode de réalisation dans lequel, pour un évènement, 50, on va choisir les intervalles souhaités, 51, 52 et on va fournir, 53, au DOHT des intervalles approximés correspondant à l'ensemble des intervalles construit sur l'union des extrémités contenant 0. L'invention s'applique notamment à des signaux sismographiques ou sonores, à des images 2D ou vidéos 2D, à des images 3D ou vidéo 3D. Les signaux sont des signaux pleins dans une matrice de dimension N, ou encore locaux, en particulier dans le cas de données ponctuelles associées à un modèle (tels que squelette du corps, un maillage sur un visage). Le procédé et le système selon l'invention offrent notamment l'avantage de diminuer la mémoire et le temps de calcul nécessaires, tout en étant compatible avec une structure d'optimisation des votes réputée performante. L'invention propose une structure pour la valeur de score qui induit un processus de vote particulier, lequel réduit à E*M*I, le nombre de valeurs à stocker, avec I très inférieur à (2D+1), et à seulement E*I, le nombre d'opérations de lecture par mots. Par rapport à l'exemple donné de l'art antérieur, la ressource nécessaire est diminuée à 3 Mo au lieu de 60 et le nombre d'opérations à 10 000 au lieu de 15 000. De plus, cette structure est compatible avec des sélections efficaces de vote. Elle conduit donc à des modifications informées de vote dont la pertinence est supérieure à celles des modifications aveugles de l'art antérieur.5

Claims (4)

  1. REVENDICATIONS1 - Procédé de détection d'évènements dans un flux de données comportant au moins les étapes suivantes : - définir un domaine de votes dans lequel on recherche un ou des évènements possibles associés à une observation dans le flux de données décomposé en I intervalles [Di, Di+1[ ou sous domaines, - initialiser un tableau S contenant des valeurs de scores S[e][t] correspondant à un évènement « e » localisé en t, - détecter un ou plusieurs micro-évènements mn dans le flux de données localisés en (20) et correspondant à une observation On, - pour chaque micro-évènement mn, pour chaque évènement « e » possible, pour chaque intervalle i, [Di, Di+1[, et pour toutes les localisations d contenues dans un intervalle [Di, Di+1[, mettre à jour le tableau S[e][t] des variables « e » correspondant à un évènement en utilisant une même valeur de confiance, pour un micro-évènement mn et pour un intervalle i, et pour chaque donnée localisée en - déterminer un ensemble d'évènements probables associés à une observation locale dans le flux de données à partir du tableau S[e][t],(32).
  2. 2 - Procédé selon la revendication 1 caractérisé en ce que les localisations sont des instants temporels.
  3. 3 - Procédé selon la revendication 2 caractérisé en ce que l'on choisit les valeurs d'instants de détection des micro-évènements comme des multiples d'une valeur « incrément » donnée.
  4. 4 - Procédé selon la revendication 2 caractérisé en ce que le flux de données traité est de taille T donnée. - Procédé selon la revendication 2 caractérisé en ce que le flux de données est traité en continu. 6 - Procédé selon la revendication 2 caractérisé en ce que l'on détermine l'évènement le plus probable en recherchant l'argument maximal sur e du tableau S[e] [1] . 7 - Procédé selon l'une des revendications 1 à 6 caractérisé en ce que le flux de données se présente sous la forme de signaux sismographiques ou sonores, à des images 2D ou vidéos 2D, à des images 3D ou vidéo 3D. 8 - Système de détection d'évènements dans un flux de données comportant au moins les éléments suivants : - un capteur adapté à détecter un ou plusieurs micro-évènements mr, dans le flux de données, à des positions de localisation données ti,..tN, correspondant à une observation 0i, - un processeur (20) adapté à exécuter les étapes du procédé selon l'une des revendications 1 à 7, - une mémoire (21) de stockage des résultats obtenus par l'exécution des étapes. 9 - Système de détection selon la revendication 8 caractérisé en ce qu'il comporte une mémoire tampon (26) pour stocker le flux de données arrivant en continu. 10 - Système de détection selon l'une des revendications 8 et 9 caractérisé en ce qu'il comporte une caméra active connectée à un micro-ordinateur.
FR1459143A 2014-09-26 2014-09-26 Procede et systeme de detection d'evenements de nature connue Expired - Fee Related FR3026526B1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
FR1459143A FR3026526B1 (fr) 2014-09-26 2014-09-26 Procede et systeme de detection d'evenements de nature connue
US15/514,384 US10296781B2 (en) 2014-09-26 2015-09-24 Method and system for detecting events of a known nature
EP15767185.0A EP3198523A1 (fr) 2014-09-26 2015-09-24 Procede et systeme de detection d'evenements de nature connue
PCT/EP2015/072023 WO2016046336A1 (fr) 2014-09-26 2015-09-24 Procede et systeme de detection d'evenements de nature connue

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR1459143A FR3026526B1 (fr) 2014-09-26 2014-09-26 Procede et systeme de detection d'evenements de nature connue

Publications (2)

Publication Number Publication Date
FR3026526A1 true FR3026526A1 (fr) 2016-04-01
FR3026526B1 FR3026526B1 (fr) 2017-12-08

Family

ID=52589479

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1459143A Expired - Fee Related FR3026526B1 (fr) 2014-09-26 2014-09-26 Procede et systeme de detection d'evenements de nature connue

Country Status (4)

Country Link
US (1) US10296781B2 (fr)
EP (1) EP3198523A1 (fr)
FR (1) FR3026526B1 (fr)
WO (1) WO2016046336A1 (fr)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10581945B2 (en) * 2017-08-28 2020-03-03 Banjo, Inc. Detecting an event from signal data
US10313413B2 (en) 2017-08-28 2019-06-04 Banjo, Inc. Detecting events from ingested communication signals
US11025693B2 (en) 2017-08-28 2021-06-01 Banjo, Inc. Event detection from signal data removing private information
US10585724B2 (en) 2018-04-13 2020-03-10 Banjo, Inc. Notifying entities of relevant events
FR3116634B1 (fr) 2020-11-23 2022-12-09 Commissariat Energie Atomique Dispositif apprenant pour système cyber-physique mobile

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110235859A1 (en) * 2010-03-26 2011-09-29 Kabushiki Kaisha Toshiba Signal processor
US20130259390A1 (en) * 2008-02-15 2013-10-03 Heather Dunlop Systems and Methods for Semantically Classifying and Normalizing Shots in Video

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04287290A (ja) 1990-11-20 1992-10-12 Imra America Inc ハフ変換画像処理装置
JP4556195B2 (ja) * 2008-02-15 2010-10-06 カシオ計算機株式会社 撮像装置、動画再生装置及びそのプログラム
FR2982684B1 (fr) * 2011-11-10 2014-01-10 Commissariat Energie Atomique Systeme et procede de conception de circuit numerique a capteur d'activite
US9349069B2 (en) 2011-11-21 2016-05-24 Analog Devices, Inc. Dynamic line-detection system for processors having limited internal memory

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130259390A1 (en) * 2008-02-15 2013-10-03 Heather Dunlop Systems and Methods for Semantically Classifying and Normalizing Shots in Video
US20110235859A1 (en) * 2010-03-26 2011-09-29 Kabushiki Kaisha Toshiba Signal processor

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ANGELA YAO ET AL: "A Hough transform-based voting framework for action recognition", 2010 IEEE CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION (CVPR), 13-18 JUNE 2010, SAN FRANCISCO, CA, USA, IEEE, PISCATAWAY, NJ, USA, 13 June 2010 (2010-06-13), pages 2061 - 2068, XP031725713, ISBN: 978-1-4244-6984-0 *
CHAN-HON-TONG ADRIEN ET AL: "Simultaneous segmentation and classification of human actions in video streams using deeply optimized Hough transform", PATTERN RECOGNITION, ELSEVIER, GB, vol. 47, no. 12, 27 May 2014 (2014-05-27), pages 3807 - 3818, XP029054130, ISSN: 0031-3203, DOI: 10.1016/J.PATCOG.2014.05.010 *

Also Published As

Publication number Publication date
US10296781B2 (en) 2019-05-21
EP3198523A1 (fr) 2017-08-02
WO2016046336A1 (fr) 2016-03-31
FR3026526B1 (fr) 2017-12-08
US20170293798A1 (en) 2017-10-12

Similar Documents

Publication Publication Date Title
Linardos et al. Simple vs complex temporal recurrences for video saliency prediction
Tobiyama et al. Malware detection with deep neural network using process behavior
US20210133483A1 (en) Object detection based on pixel differences
Jiang et al. Weakly supervised discriminative learning with spectral constrained generative adversarial network for hyperspectral anomaly detection
EP2321769B1 (fr) Procédé de reconnaissance de formes et système mettant en oeuvre le procédé
AU2021259170A1 (en) Supervised contrastive learning with multiple positive examples
FR3026526A1 (fr) Procede et systeme de detection d&#39;evenements de nature connue
CN111027576B (zh) 基于协同显著性生成式对抗网络的协同显著性检测方法
EP2364490A1 (fr) Dispositif a architecture pipeline de flot de donnees pour la reconnaissance et la localisation d&#39;objets dans une image par balayage de fenetres de detection
US11443553B1 (en) Scalable training data preparation pipeline and efficient distributed trainer for deep neural networks in facial recognition
EP3674741B1 (fr) Système et procédé d&#39;identification de source radar
WO2021216310A1 (fr) Apprentissage contrastif supervisé à l&#39;aide de multiples exemples positifs
FR2719384A1 (fr) Procédé de trajectographie d&#39;objets et dispositif de mise en Óoeuvre de ce procédé.
WO2022008605A1 (fr) Dispositif électronique et procédé de traitement de données à base de réseaux génératifs inversibles, système électronique de détection et programme d&#39;ordinateur associés
EP3616132A1 (fr) Procédé et dispositif automatisés aptes à assurer l&#39;invariance perceptive d&#39;un évènement spatio-temporel dynamiquement en vue d&#39;en extraire des représentations sémantiques unifiées
Karras et al. A Hybrid Ensemble Deep Learning Approach for Emotion Classification
EP0447306B1 (fr) Dispositif de reconnaissance de séquences dans un signal multidimensionnel
Vrigkas et al. Human activity recognition using robust adaptive privileged probabilistic learning
Guo et al. Efficient and adaptable patch-based crack detection
Amerini et al. Prana: Prnu-based technique to tell real and deepfake videos apart
Pasqualino et al. A multi camera unsupervised domain adaptation pipeline for object detection in cultural sites through adversarial learning and self-training
Ildar Increasing FPS for single board computers and embedded computers in 2021 (Jetson nano and YOVOv4-tiny). Practice and review
Saluja et al. Analysis and comparison of various deep learning models to implement suspicious activity recognition in CCTV surveillance
Rakhmatulin Increasing FPS for Single Board Computers and Embedded Computers in 2021 (Jetson Nano and YOVOv4-Tiny)
Alsarhan et al. Collaborative Positional-Motion Excitation Module for Efficient Action Recognition

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20160401

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLFP Fee payment

Year of fee payment: 5

PLFP Fee payment

Year of fee payment: 6

PLFP Fee payment

Year of fee payment: 7

PLFP Fee payment

Year of fee payment: 8

PLFP Fee payment

Year of fee payment: 9

ST Notification of lapse

Effective date: 20240505