La présente invention concerne un procédé et un système de détection
d'évènements prédéfinis par vidéosurveillance.
De façon connue, un système de vidéosurveillance comprend un ensemble de caméras vidéo reliées à au moins un poste de contrôle dans lequel un ou plusieurs opérateurs humains surveillent des écrans sur lesquels s'affichent les images prises par les caméras.
Lorsque le système comporte un nombre important de caméras, la multiplicité des informations visuelles et leur diversité rendent difficile, sur une longue période de temps, une surveillance fiable et sûre par les opérateurs.
Ainsi, un événement important peut se produire sans être vu par un opérateur, car celui-ci est fatigué ou a eu un moment de distraction.
De plus pour une bonne efficacité, le nombre d'opérateurs doit être proportionnel au nombre de caméras de surveillances, le coût du système étant donc considérable.
Dans d'autres situations, aucun opérateur ne surveille le flux vidéo fourni par les caméras, qui ne servent donc qu'à constater après coup la survenance d'un évènement sur un enregistrement.
Afin de résoudre ces problèmes techniques, des solutions on été proposées fournissant un système de surveillance assistée par ordinateur.
20. L'objectif d'un tel système est donc soit d'augmenter l'efficacité des opérateurs en charge de la surveillance, soit de suppléer l'absence d'opérateur. Ces systèmes permettent de réaliser une détection ou une prédétection d'évènements susceptibles de constituer une situation d'alarme.
Un premier type de système d'assistance utilise la détection de mouvement.
Une première génération de systèmes de ce type déclenche une alarme sur simple modification de certains points de l'image, ce qui présente l'inconvénient de générer un taux très élevé de fausses alertes rendant le système inexploitable.
Une seconde génération intègre un traitement de l'image basé sur la détection de seuil. Ainsi, si un nombre de pixels de l'image représentant un pourcentage de la taille de l'image supérieur à un seuil fixé est modifié, une alerte est déclenchée. Un système de cette seconde génération est moins sensible à de faibles variations de l'image, constituées par exemple par le mouvement d'une feuille sur un arbre en arrière plan.
D'autre part, certains systèmes de cette génération prennent en compte également un seuil haut. Ainsi, si l'image varie de plus de 90%, l'alerte n'est pas déclenchée, ce qui permet de s'affranchir de variations d'ensembles rapides de l'image, dues par exemple à un changement important de luminosité.
Certains de ces systèmes de la seconde génération permettent également de ne détecter les mouvements que sur des zones définies.
En particulier, le document US 6 154 133 décrit un système dans lequel un détecteur vidéo permet de détecter un mouvement dans une direction non autorisée, pour compléter un système de surveillance.
Si ces dispositions ont amélioré l'efficacité de ces systèmes par rapport à la première génération, leur taux de fausses alertes surtout en extérieur reste important, car ces systèmes d'un premier type ne permettent ni d'analyser ni d'interpréter le contenu des images. En particulier, ils ne peuvent pas discerner parmi plusieurs événements simultanés, ceux devant ou non déclencher une alerte.
En conséquence, un second type de systèmes a été proposé dont l'objet est d'identifier un ou plusieurs événements prédéfinis. Ces systèmes se basent sur des algorithmes de traitement d'images connus comme notamment la détection de seuil ou de contraste, l'analyse des contours ou la reconnaissance de formes.
Ce second type de système permet une analyse et une interprétation des images.
En particulier, le document US 6 700 487 décrit un système de ce second type qui permet de sélectionner à partir d'une séquence enregistrée par une caméra de vidéosurveillance, une image particulièrement pertinente à envoyer à un poste de surveillance, en se basant sur des critère prédéfinis, lors du déclenchement d'une alarme par un capteur dédié. En particulier, cette sélection utilise un traitement permettant d'isoler une zone d'intérêt par rapport à un fond, puis de caractériser sur ce fond une forme représentant un visage par exemple. Le choix de l'image est basé sur le maximum de surface de la zone d'intérêt dans l'image ou la qualité de la visualisation d'un visage, par repérage de caractéristiques de ce visage.
Le document WO 02/48982 décrit un système utilisant une capture vidéo complétant un système d'alarme utilisant un capteur conventionnel, les traitements effectués consistant en une comparaison de la trajectoire d'un individu avec une base de données de trajectoires autorisées, combinée avec un traitement de reconnaissance de l'individu, en particulier par son visage, avec une base de données d'individus autorisés.
Le document WO 01/57787 décrit un système opérant une classification de cibles identifiées dans les images sur des critères de forme (présente une tête, des bras, est grand/allongé) qui sont déterminés à partir du découpage d'un voisinage englobant cette cible et de la recherche de caractéristiques comparées dans ce découpage.
Les systèmes de ce second type se basent sur la recherche de modèles d'objets prédéterminés qui les empêche de s'adapter facilement aux conditions de chacune des installations. En conséquence, l'utilisation de ce second type de systèmes est limitée, et peu adapté à des utilisations extérieures.
Un troisième type de système a été proposé, basé sur une classification d'évènement relatifs à des objets de l'image, cette classification se basant sur des caractéristiques de forme générale de l'objet, sans reconnaissance d'un modèle de forme géométrique pré déterminé.
Le document WO 03/067360 décrit un système dans lequel des alarmes sont générées lorsqu'un enchaînement d'évènements particulier est 20. détecté, par exemple lorsqu'une personne laisse un bagage dans un endroit, ou lorsqu'un véhicule reste stationné à un endroit non prévu.
Les cas d'utilisation d'un tel système sont toutefois limités, car il ne permet qu'un paramétrage limité.
Certains de ces systèmes du troisième type intègrent une phase d'entraînement. Cette approche permet au système de diminuer les taux de fausses alertes. Il permet aussi de différencier entre plusieurs événements ceux qui doivent ou non déclencher une alerte.
Ainsi, le document EP 1 087 351 décrit un système dans lequel, des ensembles de points présentant une quantité de mouvement supérieure à un seuil donné sont rassemblés sous forme d'amas, ces amas étant ensuite rassemblés sous forme de région.
De chaque région, représentant un objet sont extraits des caractéristiques, un vecteur de caractéristique étant formé, chaque composante de ce vecteur correspondant à la valeur de la caractéristique pour une région donnée. Par la suite, la décision d'une alarme est prise si ce vecteur, dont toutes les composantes sont positives, est compris ou non à l'intérieur d'une surface de niveau situé autour de l'origine de l'espace considéré, cette surface de niveau représentant un niveau de vraisemblance choisi par avance.
Le traitement des alarmes est donc basé sur une classification par 5 rapport à une surface de niveau. Ce dispositif utilise de plus une phase d'apprentissage afin de calibrer les surfaces de niveau.
Le document US 2003/0058340 décrit un système permettant de caractériser des événements, après une phase d'apprentissage, en utilisant un algorithme du type modèle de Markov caché (HMM).
Les documents cités décrivant des systèmes du troisième type se basent sur des outils mathématiques complexes, comme le HMM, ce qui implique une phase de calibration par apprentissage délicate longue, et rend le réglage difficilement compréhensible par des intervenants humains, car les règles de classification générées ne sont pas interprétable facilement. D'autre part, la complexité des calculs mathématiques à effectuer lors des opérations courante nuit à leur utilisation en temps réel.
Le but de la présente invention est de fournir un procédé ainsi qu'un système pouvant être adapté à l'environnement à surveiller et aux types d'événements à détecter, en utilisant une classification des évènements basée sur des méthodes de prédiction par apprentissage supervisé basé sur un nombre limité d'étapes d'apprentissage, dont les règles de classification générées sont simples, ce qui garantit d'une part une performance compatible avec une utilisation temps réel et une interprétation par des opérateurs humains permettant de modifier le réglage du système.
Cette invention se propose de plus d'utiliser, en plus de la vidéo, le son qui lui est associé, cette information complémentaire permettant de mieux identifier certains types d'événements.
A cette fin, la présente invention a pour objet un procédé de détection d'évènements prédéfinis par vidéosurveillance, comprenant les 30 étapes consistant à : - capturer un flux vidéo d'un lieu à surveiller, - traiter le flux audio/vidéo de façon à isoler des objets en mouvement par rapport au fond des images du flux, - déterminer pour chaque objet extrait un ensemble de 35 caractéristiques extraites du flux audio/vidéo, - classer chaque objet dans une catégorie prédéfinie en utilisant un modèle de prédiction dont les règles de classement portent sur les valeurs des caractéristiques de l'objet, - déclencher une alerte dans le cas ou un objet est classé dans une 5 catégorie correspondant à une situation d'alerte, la construction du modèle de prédiction étant réalisée lors d'une phase amont d'apprentissage lors de laquelle un opérateur indique, dans au moins une séquence de flux audio/vidéo lui étant présentée, dans quelle catégorie doit être classé un objet présent dans la séquence.
Avantageusement, la phase d'apprentissage comprend les étapes consistant à : - capturer au moins une séquence de flux audio/vidéo comprenant des objets à détecter sur le lieu où la surveillance est réalisée - constituer une base de donnée avec les ensembles de caractéristiques correspondant aux objets O extraits des séquences capturées.
- réaliser, sur une partie de la base, une étape d'apprentissage supervisée, dans laquelle un opérateur classe les objets dans des catégories, - construire un modèle de prédiction dont les règles de classement portent sur les valeurs des caractéristiques de l'objet, en utilisant la 20. classification réalisée par l'opérateur.
Selon un mode de mise en oeuvre, la phase d'apprentissage comprend de plus les étapes consistant à : - valider le modèle de prédiction sur l'ensemble de la base, en comparant les classifications d'objet réalisées par l'opérateur et par le modèle 25 de prédiction, - et répéter les étapes d'apprentissage supervisé, de génération du modèle de prédiction et de validation du modèle de prédiction tant que les classifications ne sont pas identiques.
Avantageusement, le modèle de prédiction est du type arbre de 30 décision.
Selon un mode de mise en oeuvre, la construction de l'arbre de décision dans la phase d'apprentissage est réalisée de façon à choisir une partition pour chaque noeud de l'arbre selon un critère relatif à la réduction d'une valeur déduite de l'entropie.
Avantageusement, l'algorithme de construction de l'arbre est du type C4.5 Selon un mode de mise en oeuvre, lors de la phase d'apprentissage, un nombre de caractéristiques utilisé pour classer les objets lors de la phase de surveillance est choisi à partir d'un ensemble de caractéristiques plus étendu.
Avantageusement, l'ensemble des caractéristiques d'un objet comprend au moins une caractéristique de type géométrique.
Selon un mode de mise en oeuvre, l'ensemble des caractéristiques d'un objet comprend au moins une caractéristique de type moment statique et/ou dynamique.
Avantageusement, l'ensemble des caractéristiques d'un objet comprend au moins une caractéristique provenant de la piste audio du flux audio/vidéo.
Avantageusement, l'ensemble des caractéristiques d'un objet comprend au moins une caractéristique de type relatif à la couleur de l'objet.
Avantageusement, l'ensemble des caractéristiques d'un objet comprend au moins une caractéristique de type relatif à la texture de l'objet.
Selon un mode de mise en oeuvre, le procédé comporte au moins une étape consistant à détecter si un changement significatif entre deux images successives du flux audio/vidéo est intervenu, les étapes consistant à 20. traiter le flux audio/vidéo de façon à isoler des objets en mouvement par rapport au fond des images du flux, ainsi que les étapes ultérieures n'étant effectuées que si un changement significatif est intervenu dans l'une des P images précédentes, P étant un nombre entier positif.
Avantageusement, la détection d'un changement significatif entre 25 deux images successives comporte les étapes consistant à : - calculer une image de différence correspondant à la différence en valeur absolue pixel par pixel d'une seconde image par rapport à une première image, - segmenter l'image en secteurs élémentaires - calculer la moyenne arithmétique de la valeur des pixels de chaque secteur.
- calculer l'écart type des valeurs moyennes des secteurs élémentaires.
- comparer la valeur de l'écart type à une valeur seuil déterminée. 35 Selon un mode de mise en oeuvre, le procédé comporte une étape préalable consistant à définir des zones d'exclusion dans les images du flux audio/vidéo, c'est à dire des zones de l'image où aucun traitement ne sera effectué.
Avantageusement, la définition des zones d'exclusion est réalisée par une sélection d'ensembles de secteurs rectangulaires de l'image.
Selon un mode de mise en oeuvre, le traitement le flux audio/vidéo de façon à isoler des objets en mouvement par rapport au fond des images du flux comporte les étapes consistant à : - sélectionner une image de fond, - calculer une image de différence correspondant à la différence en 10 valeur absolue pixel par pixel de l'image courante du flux audio/vidéo (B') par rapport à l'image de fond (F'), - extraire les contours fermés des objets présents dans l'image de différence.
Avantageusement, l'image de fond est rafraîchie de façon 15 automatique.
Selon un mode de mise en oeuvre, le rafraîchissement de l'image de fond est réalisé en utilisant une image de fond dont les pixels ont une valeur correspondant à une moyenne flottante de la valeur des pixels sur un ensemble d'images de référence prises à intervalle régulier.
Avantageusement, le procédé comporte, avant le calcul de l'image de différence, un prétraitement sur l'image courante et sur l'image de fond consistant à filtrer le bruit des images et de convertir les couleurs en nuance de gris.
Selon un mode de mise en oeuvre, le procédé comprend, préalablement à l'extraction des contours fermés des objets présents dans l'image de différence, une étape consistant à supprimer les contours d'une taille inférieure à un seuil déterminé.
Avantageusement, le procédé comprend de plus, préalablement à l'extraction des contours fermés des objets présent dans l'image de différence, une étape consistant à fusionner les contours proches constituant un même objet.
La présente invention a également pour objet un système permettant de mettre en oeuvre un procédé tel que décrit précédemment. Avantageusement, le système comporte: - des moyens de capture d'image et/ou des moyens de capture de son, - des moyens de traitement et d'analyse du flux audio/vidéo, - des moyens de communication du flux audio/vidéo capturé par les moyens de capture d'image et/ou des moyens de capture de son vers les moyens de traitement et d'analyse du flux audio/vidéo, et - des moyens de stockage et de visualisation et de contrôle associés aux moyens de traitement et d'analyse du flux audio/vidéo.
De toute façon, l'invention sera bien comprise à l'aide de la description qui suit, en référence au dessin schématique annexé, représentant à titre d'exemple non limitatif, une forme de réalisation d'un système selon l'invention.
La figure 1 en est une vue schématique d'ensemble.
La figure 2 représente la division de l'image en secteurs élémentaires et la définition de zones d'exclusion.
La figure 3 représente un organigramme de l'analyse conduisant 15 éventuellement au déclenchement d'une alerte de l'opérateur.
La figure 4 représente un organigramme du traitement permettant de déterminer la présence d'une préalerte.
La figure 5 représente un organigramme du traitement permettant d'obtenir les contours des objets en mouvement.
20. La figure 6 représente un exemple de règles obtenues grâce à l'algorithme d'arbre de décision.
La figure 7 représente un organigramme de la phase d'apprentissage.
La figure 8 représentant illustrant les paramètres d'une matrice de 25 cooccurrence.
Un système de détection selon l'invention comprend des moyens 2 de capture d'image et/ou des moyens 3 de capture de son, constitués par des caméras complétées par des micros. Les caméras présentent des moyens de communication 4 du flux audio/vidéo capturé à des moyens de traitement et d'analyse 5 du flux audio/vidéo.
Les caméras utilisées peuvent être selon deux variantes de type analogique ou numérique.
Les moyens de communications 4 sont constitués par des interfaces de connexion ainsi qu'un réseau informatique.
En variante, le réseau informatique peut indifféremment être constitué par un réseau filaire, un réseau sans fil, ou un réseau utilisant la technologie courant porteur. Les images sont transmises soit en continu, soit suite à une détection de mouvements dans le champ de la caméra.
Les moyens de traitement et d'analyse 5 du flux audio/vidéo sont associés à des moyens de stockage 6 et de visualisation et de contrôle 7.
En variante, si les moyens de capture 2 sont constitués par des caméras de type analogique, les moyens de traitement et d'analyse comprennent des moyens de numérisation.
Les moyens de traitement et d'analyse 5 peuvent réaliser les traitements sur le flux audio/vidéo par des algorithmes stockés dans une mémoire permettant la configuration d'un processeur. En variante, ces traitement peuvent être implémenté au sein d'un circuit intégré ou d'un composant similaire comme les circuits logiques programmables (PLC).
En variante, les moyens de traitement peuvent être séparé en éléments situés sur plusieurs localisations géographiques, reliées par un réseau informatique.
Les moyens de traitement et d'analyse 5 fournissent, par l'intermédiaire des moyens de visualisation et de contrôle 7 des informations et des alertes à des opérateurs du système.
Sur la figure 1, les moyens de visualisation et de contrôle sont représentés sous forme d'une station de travail. Ces moyens peuvent, en variante, évidemment être constitués de plusieurs micro-ordinateurs, ou station de travail.
Le système comporte trois phases distinctes d'utilisation: une phase d'apprentissage, une phase de réglage et une phase de surveillance.
La phase d'apprentissage à réaliser avant l'utilisation en phase de surveillance du système sera décrite plus en détails par la suite.
Le flux audio/vidéo parvenant aux moyens de traitement apparaît sous forme d'image et de son sur les moyens de visualisation et de contrôle 7.
Lors de la phase préalable de réglage, et comme illustré à la figure 3 l'image est découpée par une grille de N x M secteurs rectangulaires 8 de taille identique placés les uns à coté des autres sans espace et répartie en N colonnes et M lignes.
L'opérateur en charge de cette phase définit le nombre de ligne N et le nombre de colonne M, puis défini des zones d'exclusion 9, c'est à dire des 35 zones de l'image où aucun traitement ne sera effectué, par la sélection d'ensembles de secteurs rectangulaires 8.
Cette disposition permet de diminuer les temps de calcul dans le cas de capture d'un flux audio/vidéo par une caméra 2 fixe, car les parties des images du flux audio/vidéo capturé comprises dans les zones d'exclusion ne sont pas traitées.
Dans l'exemple représenté à la figure 2, la grille est composée de 20 colonnes et de 10 lignes soit 200 secteurs élémentaires 8. Les secteurs 8 apparaissant hachurés correspondent aux zones d'exclusion 9 non traitées.
Lors de la phase de surveillance, les moyens d'analyse et de traitement 5 du flux audio/vidéo réalisent la détection et l'identification d'objets en mouvement dans une séquence du flux et déclenchent éventuellement une alerte à l'intention des opérateurs humains.
L'analyse conduisant éventuellement au déclenchement d'une alerte de l'opérateur est représentée de façon schématique sur l'organigramme de figure 3.
Dans une première étape El d'initialisation, une variable i de test, de type entier, est initialisée à zéro.
Dans une seconde étape E2, l'acquisition d'une première image A est réalisée à partir du flux vidéo transmis par les moyens de capture 2.
Dans une troisième étape E3, l'acquisition d'une seconde image B, postérieure à l'image A, est réalisée à partir du flux vidéo transmis par les moyens de capture 2.
Dans une quatrième étape E4, un premier traitement T1 est effectué.
Ce premier traitement T1 réalise un calcul d'une image C correspondant à la différence en valeur absolue pixel par pixel de l'image B par rapport à l'image A, ce qui peut être symbolisé par la formule suivante: C = 1B AI. L'image C est ensuite segmentée en N x M secteurs élémentaires 8 et la moyenne arithmétique m de la valeur des pixels de chaque secteur, à l'exception des secteurs situés dans les zones d'exclusion 9, est calculée. Le traitement TI comprend ensuite un calcul de l'écart type u des valeurs moyennes m des secteurs 8.
L'écart type u ainsi calculé permet de représenter les modifications de l'image correspondant en particulier à un mouvement.
Dans une cinquième étape E5, la valeur de l'écart type u est 35 comparée à une valeur seuil us choisie par un opérateur.
Si la valeur de l'écart type ainsi calculé est supérieure au seuil défini par l'opérateur, une préalerte est détectée.
Les dispositions des étapes E4 et E5, qui consistent à détecter un changement significatif entre deux images successives sont réalisées par traitement rapide qui évite dans le cas où aucun changement n'est détecter, de réaliser l'ensemble des traitements ultérieurs nécessitant plus de ressources de calcul.
Dans le cas ou une préalerte est détectée, l'étape E6 est effectuée.
Dans cette étape, la variable i de test est fixée à une valeur P, valeur entière 10 supérieure strictement à zéro, qui peut être définie par un opérateur lors de la phase de réglage.
La valeur P impose de réaliser l'ensemble des étapes suivantes pour les P acquisitions d'image suivant une pré alerte, quel que soit le résultat du traitement T1 pour cette acquisition.
Dans le cas ou une préalerte n'est pas détectée, l'étape E7 est effectuée, qui consiste en une décrémentation de la variable de test i.
Après les étapes E6 ou E7, une étape de test E8 est effectuée sur la variable i, pour déterminer si celle-ci est strictement supérieure à zéro.
Si la variable i est nulle ou négative, cela signifie qu'aucune pré alerte n'a été détectée ni lors du traitement T1 correspondant à la dernière acquisition, ni dans le traitement correspondant à au moins P acquisitions précédentes. En conséquence, les traitements suivants ne sont pas effectués. L'étape E15 est effectuée, qui consiste à remplacer la première image A par la seconde image B. L'analyse revient ensuite en boucle au niveau de l'étape E3 pour analyser une prochaine acquisition.
Dans le cas ou la variable i est strictement positive, cela signifie qu'une pré alerte a été détectée lors du traitement T1 correspondant à la dernière acquisition, ou lors du traitement Ti correspondant à au moins l'une des P acquisitions précédentes. En conséquence, les traitements suivants doivent être effectués.
Dans l'étape E9, une image de fond F est sélectionnée. Cette image de fond F est rafraîchie de façon automatique pour correspondre aux modifications de l'environnement surveillé comme les modifications de luminosité au cours de la journée et de la nuit ou des changements du fond de l'image, correspondant par exemple à une voiture stationnée qui quitte son emplacement, à des éléments du décor rajoutés ou supprimés, ou encore à des modifications lentes du décor comme les changements de végétation entre l'hiver et l'été.
Ces modifications peuvent être prise en compte par exemple en utilisant une image de fond F dont les pixels ont une valeur correspondant à une moyenne flottante de la valeur des pixels sur un ensemble d'images de référence prises à intervalle régulier et ne présentant pas de cas de pré alerte. Dans l'étape E10 est réalisé le traitement T2.
De façon préféré, et de façon à obtenir un résultat optimal, le traitement T2 comprend un prétraitement sur l'image courante B et sur l'image de fond F. Ce prétraitement consiste à filtrer le bruit des images et de convertir les couleurs en nuance de gris. Les images B' et F' sont respectivement obtenues suite à ce pré traitement.
Une image D est ensuite calculée à partir des images prétraitées B' et F', correspondant à la différence en valeur absolue pixel par pixel de 15 l'image B' par rapport à l'image F', ce qui peut être symbolisé par la formule suivante: D = lB' FI.
L'image D comprend alors des ensembles de points, délimités par des contours, ayant été modifié dans B' par rapport à F'.
Le traitement T2 réalise, ensuite, par des moyens connus en eux- mêmes, par exemple de morphologie mathématique, une suppression des contours d'une taille inférieur à un seuil déterminé, ces contours trop petit ne devant pas être pris en compte, puis une fusion des contours proches constituant un même objet O, pour obtenir une image D'.
Dans une onzième étape El1 est réalisée une extraction des 25 contours fermés des objets O présents dans l'image D' fournie par le traitement T2.
Pour chaque objet O, un ensemble de caractéristiques V relatives à la couleur, à dés moments statiques et dynamiques, à la texture, et géométriques peut être calculé à partir du contour extrait.
Les caractéristiques Vk sur la couleur sont calculées à partir des valeurs originelles de chaque pixel de l'image, elles n'expriment pas l'interaction entre les valeurs des pixels voisins. Ce sont des caractéristiques statistiques de premier ordre qui ne donnent pas d'indication sur la répartition des couleurs dans une image.
Pour extraire les caractéristiques Vk sur la couleur, l'objet est considéré comme une matrice de pixels P;i=1, Diml, j=1, DimJ où Diml et 2872326 13 DimJ sont les dimensions de l'objet, en nombre de lignes et de colonnes et chaque pixel, à l'intersection d'une ligne et d'une colonne, est un triplet Pu-(p1i,1, p2i.i, p3i,i) où chaque composante pk;j correspond à un canal de couleur.
Comme l'extraction des caractéristiques numériques d'une image applique la même formule sur chaque canal, nous pourrons considérer à partir demaintenant que P;i désigne la valeur d'un pixel sur un canal.
Les trois canaux correspondent à des modèles de trois couleurs comme par exemple rouge/vert/bleu ou RGB. Les images monochromes ou en 10 niveaux de gris ont la même valeur sur les trois canaux.
Les caractéristiques sur la couleur, appelées également normes utilisées sont présentées ci-dessous, avec leur interprétation et la formule permettant de les définir: La norme NC représentant la plus grande valeur absolue des valeurs de pixels, autrement dit la couleur maximale , définie par: NC = Max,,i P.i La norme NL1 représentant la somme des valeurs absolues des pixels et définie par: NL1=EP.i La norme NL1n normalisée représentant la somme des valeurs absolues des pixels normalisés, ou la moyenne des valeurs des pixels ou encore la couleur moyenne définie par: NLIn = P.i Diml * DimJ La norme NL2 représentant le radical de la somme des carrés des valeurs des pixels définie par: NL2=P,. i 12)1/2 La norme NL2n représentant le radical de la somme des carrés des valeurs des pixels normalisé définie par: l2 NL2n = P Di ml * DimJ 20 30 20 30 La norme NC donne la valeur maximale pour chaque canal de couleur. Les normes NL1 et NL2 peuvent être utilisées comme indication de la similarité de deux objets.
Une autre caractéristique extraite donne la couleur dominante .
Elle indique le niveau de couleur le plus représenté dans un histogramme.
Un autre type de caractéristique correspond aux moments de l'image représentant l'objet O extrait. Il s'agit de caractéristiques statistiques de premier ordre d'une image, calculées à partir des valeurs des pixels et de leur position dans l'image. Soit:
x,, y; les coordonnées de chaque pixel m, n des exposants entiers de puissance; la somme des exposants m+n s'appelle l'ordre du moment (0≤m+ n≤3) xo, yo les coordonnées du centre de gravité : xo = MU(1,0)/MU(0,0) yo = MU(0,1)/MU(0, 0) Alors les moments de l'image sont définis cidessous: Le moment spatial MU(m,n) est défini par: MU(m,n) = E xJ m.yinPÏ Le moment central UU(m,n) est défini par: UU(m,n) = E (xJ x)xmyi nPJ Le moment spatial normalisé MUn(m,n) est défini par: MUn(m,n) = MU(m, n) iml * DimJ Le moment central normalisé UUn(m,n) est défini par: UUn(m,n) UU(m, n)/ iml * DimJ Certains moments ont des interprétations géométriques précises, comme par exemple: MU(0,0) représente la superficie d'une région, MU(1,0)/MU(0,0) et MU(0,1)IMU(0,0) donnent les coordonnées du centre de gravité d'une région, MU(2,0), MU(1,1) et MU(0,0) permettent de calculer l'élongation d'une région et les orientations de ses axes majeurs.
Une autre caractéristique numérique représentant l'uniformité d'une image est calculée en déterminant pour chaque pixel de l'image, la somme des valeurs absolues des différences entre la valeur du pixel courant et les valeurs des huit pixels se trouvant dans le voisinage. S'il s'agit d'une image contenant des pixels ayant la même valeur, alors cette caractéristique prend la valeur 1.
Les caractéristiques Vk de texture sont des valeurs statistiques de deuxième ordre, basées sur la matrice de co-occurrences des pixels et représentant la variation spatiale des intensités des pixels.
La texture représente les détails de surface des objets O, 10 fournissant donc des informations sur la répartition des couleurs dans une image d'un tel objet.
Les caractéristiques Vk de texture mesurent la probabilité d'apparition des paires de valeurs de pixels situées à une certaine distance dans l'image. Les matrices de co-occurrences prennent en compte deux paramètres: une distance d qui est généralement prise égale à 1 et et une direction angulaire, en particulier 0, 45, 90 et 135 degrés.
Les plus proches voisins d'un pixel donné, ce sont les deux pixels qui l'encadrent à la distance d et dans la direction angulaire considérée. Par exemple, comme représenté sur la figure 8, les plus proches voisins du pixel x de distance d=1 et dans la direction angulaire de 45 degrés, sont les pixels 2 et 6.
Les plus proches voisins de pixel x dans les quatre directions angulaires considérées Ce type de caractérisation est justifié par des expériences qui ont été réalisées sur la perception visuelle humaine des textures.
Les quatre matrices de co-occurrence sont calculées pour chaque angle, mais dans le calcul des caractéristiques la moyenne des quatre valeurs est utilisée ce qui rend la matrice de co-occurrences invariante à la rotation.
Les caractéristiques de texture calculées à partir des matrices de cooccurrence sont en particulier: l'énergie ou moment angulaire second ASM qui 35 fournit une mesure de l'homogénéité de l'image d'un objet O, le contraste qui fournit une mesure de la variation locale des niveaux d'une couleur dans l'image d'un objet O, la corrélation qui fournit une mesure des 5 dépendances linéaires entre les valeurs des pixels, la valeur de la corrélation étant plus important lorsque les valeurs sont uniformément distribuées, la variance qui fournit une mesure du contraste dans l'image de l'objet O, et dont la valeur est élevée si les variations des niveaux de gris ou des couleurs sont importantes, le moment de différence inverse, qui présente des variations inverse au contraste, sa valeur étant élevée lorsque la texture possède des régions homogènes, l'entropie, qui fournit une mesure de l'information présente dans l'image, autrement dit une mesure de l'aspect aléatoire de la distribution des couleurs dans l'image de l'objet O. Les caractéristiques Vk de texture présentent l'avantage d'être indépendantes de la taille de l'objet O puisqu'elles sont calculées à partir de la matrice de co-occurrences dont la taille correspond au nombre de niveaux de couleurs, par exemple 256.
Les caractéristiques Vk géométriques, issues de l'extraction du contour de l'objet O de l'image sont calculées à partir des contours ou de la forme des objets. Il s'agit en particulier du périmètre de l'objet O, de sa surface, de sa circularité, de son degré d'élongation, ainsi que des coordonnées x et y du point de l'objet dont la distance au coin haut à gauche de l'image est la plus courte.
La dimension initiale du vecteur V de caractéristiques Vk, si on 30 considère toutes les caractéristiques énumérées, peut être très important et approcher les 200.
Cependant pour améliorer les performances de calcul, ce vecteur est ramené dans la plupart des cas à un nombre de caractéristiques plus restreint. De façon pratique, la taille du vecteur V est de l'ordre d'une trentaine de caractéristiques Vk.
Dans un mode de mise en oeuvre préféré, les caractéristiques Vk suivantes ont été utilisées: Les 9 moments spatiaux suivants: M(0,0) ; M(1,0) ; M(0, 1) ; M(1,1) ; M(0,2) ; M(3,0) ; M(2,1) ; M(1,2) ; M(0,3) 5 Les 7 moments centraux suivants: U(2,0) ; U(1,1) ; U(0,2) ; U(3,0) ; U(2,1) ; U(1,2) ; U(0,3) Ainsi qu'une dizaine d'autres caractéristiques.
D'autre part, des caractéristiques provenant des pistes audio du 10 flux audio/vidéo peuvent avantageusement être ajoutées à l'ensemble de caractéristiques V. Pour obtenir ces informations, le flux audio est échantillonné sur un laps de temps paramétrable, par exemple de 40 ms, sur lequel les caractéristiques d'ordre temporel ou d'ordre fréquentiel sont calculées.
En particulier, les caractéristiques audio comprennent le volume, qui permet notamment de repérer les situations de silence, ainsi que des caractéristiques fréquentielles telles que les coefficients de la transformée de Fourrier du signal.
L'étape El 1 permet donc d'obtenir un ensemble d'objet O identifiés, chaque objet étant représenté, non plus par un ensemble de pixels, mais par un ensemble de caractéristiques V, pouvant être ordonné sous forme de vecteur, dont les k composantes Vk correspondent chacune à une caractéristique calculée pour l'objet O. Dans la douzième étape E12 est réalisé le troisième traitement T3.
Le traitement T3 consiste à identifier à quelle catégorie appartiennent les différents objets O identifiés en effectuant un processus de classification.
Les vecteurs V constitués sont utilisés pour réaliser cette classification des objets O en fonction d'un modèle de prédiction, c'est- à-dire en utilisant des règles préétablies, dans deux ou plusieurs catégories K. Les règles préétablies sont construites sous formes de tests, pendant la phase d'apprentissage comme il sera exposé par la suite.
La classification est réalisée par un arbre de décision a. Dans le mode de réalisation présenté, à chaque noeud n de l'arbre, un test est réalisé sur une des k composantes Vk du vecteur V, qui permet de déterminer la branche de l'arbre suivie, jusqu'à ce qu'une feuille f de l'arbre soit atteinte.
Les tests peuvent êtres définies par les catégories d'une variable qualitative ou des intervalles continus de valeurs pour une variable quantitative.
Chaque feuille f de l'arbre correspond à une catégorie d'objet déterminée, plusieurs feuilles pouvant correspondre à une même catégorie K. La figure 6 représente un exemple d'arbre de décision a permettant de classer les objets en deux catégories K: Bruit et Humain, des objets O, en réalisant des tests sur les composantes Vk du vecteur V correspondant aux caractéristiques y de position verticale dans l'image, d'excentricité, de surface et de périmètre.
Selon un autre exemple d'arbre de décision a, non représenté, un objet O sera classé dans l'une de trois catégories K: Bruit, Humain et Voiture.
Les tests opérés dans ce cas utilisent les caractéristiques représentées par les composantes du vecteur Vk de la façon suivante: - le contour d'un Humain présente une certaine surface et une forme lisse et allongé verticalement.
- Une Voiture présente un contour lisse mais une surface plus importante et une forme plus massive.
- Un Bruit présente un contour plus accidenté et une forme quelconque.
Il est à noter qu'en variante d'une classification par arbre de décision, d'autres méthodes de classification peuvent être utilisées, et en particulier la classification par les réseaux de neurones, la logique floue, ou les ondelettes.
Le traitement T3 réalisé dans l'étape E12 permet donc d'obtenir un 25 ensemble d'objet O, à chacun desquels est attribué une catégorie K, par exemple Bruit, Humain ou Voiture.
En conséquence, l'étape E13 réalise un test qui consiste à identifier si un objet est rattaché à une catégorie constituant une intrusion et devant déclencher une alerte. Les catégories constituant une intrusion et devant déclencher une alerte sont indiquées par un opérateur lors de la phase de réglage.
Si le test est positif, une alerte est déclenchée dans l'étape E14. Dans le cas contraire, aucune alerte n'est déclenchée.
Dans les deux cas, l'étape E15 est ensuite effectuée, qui consiste à 35 remplacer la première image A par la seconde image B. L'analyse revient ensuite en boucle au niveau de l'étape E3 pour analyser une prochaine acquisition.
La mise en oeuvre du procédé décrit par le système lors de la phase de surveillance permet d'utiliser des règles simples déterminées lors de 5 la phase d'apprentissage.
La phase d'apprentissage, dont l'organigramme est représenté sur la figure 7 comporte deux étapes principales: la constitution d'une base de donnée L2, et la construction L4 des règles prédéfinies utilisées par 10 l'algorithme de classification et constituant le modèle de prédiction.
Dans un première étape L1, une capture de séquences de flux audio/vidéo comprenant des objets O à détecter sur le lieu où la surveillance est réalisée par les moyens de capture 2, 3.
Les moyens d'analyse et de traitement 5 enregistrent dans les moyens de stockage 6 la ou les séquences de flux audio/vidéo, et constituent dans une étape L2 une base de donnée BD avec l'ensemble des vecteurs V de caractéristiques correspondant à des objets O extraites des séquences en réalisant des étapes d'analyse correspondant aux étapes E9 à El 1 de l'analyse effectué lors de la phase de surveillance.
Plusieurs séquences vidéo sont souhaitables afin de prendre en compte le plus de situations possible.
Lors d'une étape d'apprentissage supervisée L3, les connaissances d'un opérateur sont utilisées pour classer des objets O dans 25 des catégories K. Par exemple, dans le cas d'une utilisation pour la surveillance d'intrusion dans un parking, l'objectif est de déclencher une alerte si un piéton passe, sans la déclencher si une voiture entre.
L'opérateur, qui peut faire partie du personnel de sécurité d'une société pour laquelle un lieu doit être surveillé, va identifier sur l'image si l'objet O est une Voiture qui entre ou sort, ou si l'objet O est un Humain se déplaçant à pied.
Cette étape L3 d'apprentissage supervisé se réalise sur une partie de la base de données BD constituée.
Un algorithme de prédiction est utilisé dans l'étape L4 de construction pour construire les règles constituées par des tests sur les composantes Vk du vecteur V de chaque objet O, correspondant aux caractéristiques extraites du flux audio/vidéo pour chacun de ces objets.
Cet algorithme utilise les informations dites sémantiques fournies par l'opérateur sous forme du classement des objets O dans des catégories K opéré par celui-ci.
L'algorithme de prédiction utilisé est du type graphe d'induction. Cet algorithme construit une succession de partitions sur l'échantillon de données d'apprentissage constitué par une partie de la base de donnée BD.
Un critère de sélection permet de déterminer parmi les variables prédictives, ici les caractéristiques Vk, celle qui donne la meilleure partition en classes. Cette opération de partition est répétée pour chaque noeud obtenu sans se préoccuper des autres noeuds.
Un noeud est saturé s'il n'existe aucune variable prédictive qui permet de créer localement une partition qui améliore le critère utilisé.
L'algorithme s'arrête quand tous les noeuds sont saturés.
Le critère de sélection des variables est un gain informationnel calculé à partir de l'entropie: ne h(p, , p, ,..., Pne) _ E pi log(pi) r= où p; est le nombre d'individus du noeud courant n qui 20 appartiennent une classe i divisé par l'effectif du noeud. Le noeud n comprend ne classes.
L'incertitude H(n) sur un noeud n est une entropie conditionnelle moyenne calculée sur chaque noeud comme suit: e e H(n)=E h(P1,p2,...,Pn e où n est le noeud courant, e est l'effectif total et en est l'effectif du noeud. Le gain informationnel GI pour le passage d'un noeud nt à un noeud nt+, est calculé par: GI(n,+1)= H(n,) H(nr+l) En variante, d'autre moyens de calcul du gain informationnel 30 peuvent être utilisés, le principe général restant le même.
Le passage d'un noeud nt à un noeud nt+i est réalisé par segmentation au moyen d'une variable. Le gain information Gl peut être interprété comme étant la quantité d'information apportée par la variable prédictive ou caractéristique Vk utilisée. Le gain d'information est équivalent à la réduction d'entropie du au test sur la variable ou caractéristique Vk.
La condition d'arrêt de l'algorithme doit déterminer si une nouvelle partition améliore ou non le gain d'information.
En particulier, selon des variantes, cette condition peut être déterminée de la façon suivante: un seuil est fixé en dessous duquel le noeud n'est pas divisé, ou une contrainte d'admissibilité est ajoutée, consistant par exemple à ne pas créer de nouvelle partition si dans la nouvelle partition un nombre de noeuds donné possèdent un effectif inférieur à une valeur fixée par l'utilisateur, afin d'éviter les noeuds de très faible taille.
Le choix de la méthode de discrétisation des variables a également des conséquences importantes sur la qualité du modèle de prédiction. La discrétisation consiste à découper le domaine de la variable en un nombre fini d'intervalles, chacun identifié par un code différent.
Le modèle utilisé n'est pas un modèle prédéfini une fois pour toute, avec un choix restreint de caractéristiques Vk prédéterminé.
Lors la phase d'apprentissage, un nombre important de caractéristiques Vk est évalué, l'apprentissage supervisé permettra de distinguer les caractéristiques les plus pertinentes et ne garder qu'elles pour la réalisation du modèle de prédiction.
Le modèle n'utilise ainsi qu'un très petit nombre de caractéristiques Vk lors de la phase de surveillance.
Ce choix réalisé automatiquement lors de l'apprentissage supervisé permet au système de réellement s'adapter de façon extrêmement fine à chaque configuration. Ce choix tient également compte de la contrainte de temps imposé par un système dont l'objet est la détection d'évènement en temps réel.
Parmi les différents algorithmes de graphe d'induction, la méthode C4.5, adapté à ce procédé, a été choisie.
Pour produire des arbres de taille plus petite, la méthode C4.5 développe l'arbre au maximum et applique ensuite une procédure d'élagage qui vise à supprimer les sous arbres ne vérifiant pas une condition reposant sur le taux d'erreur.
Une fois l'arbre de décision a construit, une validation L5 est effectuée sur l'ensemble de la base BD, et les étapes L3 à L5 se répète tant que la prédiction ne donne pas sur l'ensemble des données de la base BD une classification en catégories K des objets O identique à celle réalisée par l'opérateur, les classifications étant comparées dans une étape L6.
Le modèle de prédiction, sous forme de l'arbre de décision a, ainsi construit, est ensuite intégré dans une étape L7 au système pour une utilisation en phase de surveillance.
II est à signaler que la représentation d'un modèle de prédiction constitué par un arbre de décision permet de réaliser des prévisions mais aussi de visualiser quelles sont les caractéristiques qui permettent de mieux discriminer les objets O. En effet, à chaque niveau de l'arbre a, le test porte sur la caractéristique permettant de mieux discriminer les objets O en catégories K. Le système décrit est un système évolutif qui au fur et à mesure de son usage de surveillance prend en compte les fausses alertes détectés sur le lieu de surveillance pour modifier et améliorer le modèle de prédiction utilisé pour diminuer le taux d'erreur.
Les applications de ce système sont nombreuses. Certaines de ces applications sont indiquées ci-dessous, de façon non limitative.
Le système selon l'invention peut être utilisé pour la vidéosurveillance d'un parking. En particulier, il permet de détecter les intrusions par des personnes entrant dans le parking par l'entrée voiture au même moment qu'une voiture entrant ou sortant.
Le système est capable de détecter un mouvement et si ce 25 mouvement est du à une voiture ou à un homme se déplaçant à pied, par son classement en catégories des objets détectés.
Le système fonctionne dans tous les cas de figure que l'homme soit petit ou gros, qu'il marche ou coure, qu'il soit debout ou courbé, car il se base sur des caractéristiques d'ensemble des objets d'une catégorie.
Le système fonctionne lorsqu'il y a simultanément le mouvement d'une voiture et d'une personne, car ceux-ci sont identifiés en tant qu'objets distincts.
La classification des objets ayant provoqué une détection de mouvement, permet de déclencher ou non une alerte, suivant les règles 35 établies.
Le système selon l'invention peut être utilisé dans une salle de mise à disposition des bagages d'un aéroport.
Le système permet la détection d'une personne réalisant une intrusion par l'ouverture destinée aux bagages d'un convoyeur de bagages.
Le système permet dans ce cas de différencier ce qui a provoqué le mouvement. II peut s'agir d'un bagage, ou d'une personne. Dans ce dernier cas il est nécessaire de déclencher une alarme.
Comme il va se soi, l'invention ne se limite pas aux formes de réalisation préférentielle décrite ci-dessus, à titre d'exemple non limitatif; elle en embrasse au contraire toutes les variantes de réalisation dans le cadre des revendications ci-après.