Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR COUNTING OBJECTS IN A PREDETERMINED SPATIAL AREA
Document Type and Number:
WIPO Patent Application WO/2016/151103
Kind Code:
A1
Abstract:
The invention relates to a method for counting objects in a predetermined spatial area, the method comprising: a first unsupervised learning stage, and a second stage of counting in the area, which includes the steps of: acquiring, by the detector (30), an image comprising the predetermined area, and estimating the spatial density of objects in the predetermined area by applying the law to the acquired image.

Inventors:
FAGETTE ANTOINE (SG)
CHAI KHEH CHEW STEPHEN (SG)
COURTY NICOLAS (FR)
CORPETTI THOMAS (FR)
Application Number:
PCT/EP2016/056630
Publication Date:
September 29, 2016
Filing Date:
March 24, 2016
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
THALES SA (FR)
UNIV BRETAGNE SUD (FR)
CENTRE NAT RECH SCIENT (FR)
International Classes:
G06K9/00
Foreign References:
EP2704060A22014-03-05
US20070031005A12007-02-08
Other References:
XINYU WU ET AL: "Crowd Density Estimation Using Texture Analysis and Learning", ROBOTICS AND BIOMIMETICS, 2006. ROBIO '06. IEEE INTERNATIONAL CON FERENCE ON, IEEE, PI, 1 December 2006 (2006-12-01), pages 214 - 219, XP031068788, ISBN: 978-1-4244-0570-1
BUNDESMINISTERIUM DER JUSTIZ ED - BUNDESMINISTERIUM DER JUSTIZ: "Handbuch der Rechtsförmlichkeit,Teil B: Allgemeine Empfehlungen für das Formulieren von Rechtsvorschriften; 1: Sprachliche Gestaltung von Gesetzen und Rechtsverordnungen", 1 January 2008 (2008-01-01), XP002686041, Retrieved from the Internet [retrieved on 20121025]
S. ALI ET AL: "Simulation and visual Analysis of Crowds", 1 January 2013, SPRINGER, pages: 377, XP002753590
GEOFFREY R TAYLOR ET AL: "OVVV: Using Virtual Worlds to Design and Evaluate Surveillance Systems", CVPR '07. IEEE CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION; 18-23 JUNE 2007; MINNEAPOLIS, MN, USA, IEEE, PISCATAWAY, NJ, USA, 1 June 2007 (2007-06-01), pages 1 - 8, XP031114748, ISBN: 978-1-4244-1179-5
PIERRE ALLAIN ET AL: "AGORASET: a dataset for crowd video analysis", 1ST ICPR INTERNATIONAL WORKSHOP ON PATTERN RECOGNITION AND CROWD ANALYSIS, 1 November 2012 (2012-11-01), pages 1 - 6, XP055245902, Retrieved from the Internet [retrieved on 20160129]
ANTOINE FAGETTE ET AL: "Particle Video for Crowd Flow Tracking Entry-Exit Area and Dynamic Occlusion Detection", INT. CONF. ON PATTERN RECOGNITION APPLICATION AND METHODS ICPRAM 2014, 6 March 2014 (2014-03-06), pages 1 - 8, XP055245915, Retrieved from the Internet [retrieved on 20160129]
Attorney, Agent or Firm:
BLOT, Philippe et al. (FR)
Download PDF:
Claims:
REVENDICATIONS

1 . - Procédé de dénombrement d'objets dans une zone spatiale prédéterminée (ZS), le procédé comportant :

- une première phase d'apprentissage non-supervisé comprenant les étapes de :

- choix d'une pluralité de densités spatiales distinctes d'objets dans la zone spatiale prédéterminée (ZS),

- fourniture de paramètres relatifs à un détecteur (30) propre à acquérir au moins une image, l'image comportant la zone spatiale prédéterminée (ZS), les paramètres fournis comprenant au moins un paramètre relatif à la focale du détecteur (30), un paramètre relatif à l'altitude du détecteur (30) et un paramètre relatif à l'inclinaison du détecteur (30) par rapport à la zone spatiale prédéterminée (ZS),

- génération d'une base de données comportant une pluralité d'images pour chaque densité spatiale choisie, l'étape de génération utilisant les paramètres fournis à l'étape de fourniture, et

- détermination d'une loi permettant d'estimer la densité spatiale dans la zone prédéterminée en utilisant la base d'apprentissage générée,

- une deuxième phase de dénombrement dans la zone spatiale prédéterminée (ZS) comprenant les étapes de :

- acquisition d'une image comportant la zone spatiale prédéterminée (ZS) par le détecteur (30), et

- estimation de la densité spatiale d'objet dans la zone spatiale prédéterminée (ZS) par application de la loi à l'image acquise.

2. - Procédé selon la revendication 1 , dans lequel l'étape de génération comporte une étape de correction du défaut de perspective lié au détecteur (30).

3. - Procédé selon la revendication 1 ou 2, dans lequel le procédé comporte une étape de segmentation d'une image pour déterminer les pixels contenant un objet.

4. - Procédé selon l'une quelconque des revendications 1 à 3, dans lequel l'étape de détermination est mise en œuvre par apprentissage, l'apprentissage comportant une extraction de caractéristiques, les caractéristiques extraites étant également utilisées à l'étape d'estimation.

5. - Procédé selon l'une quelconque des revendications 1 à 4, dans lequel l'étape de détermination est mise en œuvre en utilisant une régression à vecteur de support.

6. - Procédé selon l'une quelconque des revendications 1 à 5, dans lequel à l'étape de fourniture, un paramètre relatif au détecteur (30) est une caractéristique intrinsèque

( Pintrinsèque) au détecteur (30).

7. - Procédé selon l'une quelconque des revendications 1 à 6, dans lequel à l'étape de fourniture, il est fourni un paramètre relatif à la position (PpoSition) du détecteur (30) et/ou un paramètre d'orientation (Porientation) du détecteur (30).

8. - Produit programme d'ordinateur comportant des instructions logicielles, les instructions logicielles mettant en œuvre un procédé selon l'une quelconque des revendications 1 à 7, lorsque les instructions logicielles sont exécutées par un ordinateur.

9. - Support d'informations sur lequel est mémorisé un produit programme d'ordinateur selon la revendication 8.

10. - Dispositif de surveillance propre à dénombrer les objets dans une zone spatiale prédéterminée (ZS) comprenant :

- un détecteur (30) propre à acquérir au moins une image, l'image comportant la zone spatiale prédéterminée (ZS), le détecteur (30) présentant des paramètres, un paramètre étant relatif à la focale du détecteur (30), un paramètre étant relatif à l'altitude du détecteur (30) et un paramètre étant relatif à l'inclinaison du détecteur (30) par rapport à la zone spatiale prédéterminée (ZS), et

- un module de traitement (10) adapté à dénombrer les objets dans la zone spatiale prédéterminée (ZS),

le module de traitement (10) étant apte à :

- choisir une pluralité de densité spatiale distincte dans la zone spatiale prédéterminée (ZS),

- recevoir des paramètres relatifs au détecteur (30), les paramètres reçus comprenant au moins le paramètre relatif à la focale du détecteur (30), le paramètre relatif à l'altitude du détecteur (30), le paramètre relatif à l'inclinaison du détecteur (30) par rapport à la zone spatiale prédéterminée (ZS), - générer une pluralité d'images pour chaque densité spatiale choisie en utilisant les paramètres reçus,

- déterminer une loi permettant d'estimer la densité spatiale dans la zone spatiale prédéterminée (ZS) en utilisant comme base d'apprentissage la base d'apprentissage générée, et

- estimer la densité spatiale d'objet dans la zone spatiale prédéterminée (ZS) par application de la loi à l'image acquise.

Description:
Procédé de dénombrement d'objets dans une zone spatiale prédéterminée

La présente invention concerne un procédé de dénombrement d'objets dans une zone spatiale prédéterminée. La présente invention se rapporte aussi à un produit programme d'ordinateur et à un support d'informations associé. La présente invention concerne aussi un dispositif de détection propre à mettre en œuvre le procédé de dénombrement.

Avec l'utilisation croissante de la vidéo-surveillance dans les lieux publics pour améliorer la sécurité, de nombreuses techniques d'analyse des vidéos fournies par des caméras ont été développées.

Il est notamment connu du document EP 2 704 060 A2 un procédé d'estimation de la taille d'une foule à partir d'une image, le procédé comprenant les étapes de détermination d'un candidat pour obtenir le point de données le plus informatif par utilisation d'un algorithme d'apprentissage actif. Le procédé comporte également une étape de réception d'une annotation de la part d'un utilisateur identifiant les données du point de données le plus informatif. Le procédé comporte aussi une étape d'application d'une fonction de régression au point le plus informatif déterminé ainsi qu'à la notation associée pour minimiser une perte sur la donnée annotée. Le procédé comprend, enfin, une étape de construction d'un modèle de régression en utilisant les données annotées par l'utilisateur et les données annotées déduites.

Le document US 2007/0031005 A1 décrit un système optique comprenant une caméra et un processeur comportant un logiciel d'analyse vidéo. Le logiciel est adapté pour estimer un cadre de fond de référence représentatif d'un fond, estimer des paramètres géométriques pour représenter une échelle de variation d'objet dans le cadre donné, obtenir une carte de détection de changement pour distinguer le fond à partir d'objet dans le cadre donné et combiner la carte de détection de changement avec les paramètres géométriques pour obtenir une mesure de la congestion dans le cadre donné.

Toutefois, lorsque la densité spatiale d'objets augmente, les procédés précités procurent des résultats peu fiables pour déterminer la densité spatiale d'objets dans l'image fournie.

Il existe donc un besoin pour un procédé de détermination d'objet dans une zone spatiale prédéterminée permettant d'obtenir des estimations plus fiables, notamment lorsque la densité spatiale d'objets est grande.

Pour cela, il est proposé un procédé de dénombrement d'objets dans une zone spatiale prédéterminée. Le procédé comporte une première phase d'apprentissage non- supervisé comprenant les étapes de choix d'une pluralité de densités spatiales distinctes d'objets dans la zone spatiale prédéterminée, de fourniture de paramètres relatifs à un détecteur propre à acquérir au moins une image, l'image comportant la zone spatiale prédéterminée, les paramètres fournis comprenant au moins un paramètre relatif à la focale du détecteur, un paramètre relatif à l'altitude du détecteur et un paramètre relatif à l'inclinaison du détecteur par rapport à la zone spatiale prédéterminée, de génération d'une base de données comportant une pluralité d'images pour chaque densité spatiale choisie, l'étape de génération utilisant les paramètres fournis à l'étape de fourniture, et de détermination d'une loi permettant d'estimer la densité spatiale dans la zone spatiale prédéterminée en utilisant la base d'apprentissage générée. Le procédé comporte aussi une deuxième phase de dénombrement dans la zone spatiale prédéterminée comprenant les étapes d'acquisition d'une image comportant la zone spatiale prédéterminée par le détecteur, et estimation de la densité spatiale d'objet dans la zone spatiale prédéterminée par application de la loi à l'image acquise.

Suivant des modes de réalisation particuliers, le procédé de dénombrement comprend une ou plusieurs des caractéristiques suivantes, prise(s) isolément ou suivant toutes les combinaisons techniquement possibles :

- l'étape de génération comporte une étape de correction du défaut de perspective lié au détecteur.

- le procédé comporte une étape de segmentation d'une image pour déterminer les pixels contenant un objet.

- l'étape de détermination est mise en œuvre par apprentissage, l'apprentissage comportant une extraction de caractéristiques, les caractéristiques extraites étant également utilisées à l'étape d'estimation.

- l'étape de détermination est mise en œuvre en utilisant une régression à vecteur de support.

- à l'étape de fourniture, un paramètre relatif au détecteur est une caractéristique intrinsèque au détecteur.

- à l'étape de fourniture, il est fourni un paramètre relatif à la position du détecteur et/ou un paramètre d'orientation du détecteur.

Il est aussi décrit un produit programme d'ordinateur comportant des instructions logicielles, les instructions logicielles mettant en œuvre un procédé tel que décrit précédemment, lorsque les instructions logicielles sont exécutées par un ordinateur.

Il est également proposé un support d'informations sur lequel est mémorisé un produit programme d'ordinateur tel que décrit précédemment. Il est aussi proposé un dispositif de surveillance propre à dénombrer les objets dans une zone spatiale prédéterminée comprenant un détecteur propre à acquérir au moins une image, l'image comportant la zone spatiale prédéterminée, le détecteur présentant des paramètres, un paramètre étant relatif à la focale du détecteur, un paramètre étant relatif à l'altitude du détecteur et un paramètre étant relatif à l'inclinaison du détecteur par rapport à la zone spatiale prédéterminée. Le dispositif comporte un module de traitement adapté à dénombrer les objets dans la zone spatiale prédéterminée. Le module de traitement est apte à choisir une pluralité de densité spatiale distincte dans la zone spatiale prédéterminée, recevoir des paramètres relatifs au détecteur, les paramètres reçus comprenant au moins un paramètre relatif à la focale du détecteur, un paramètre relatif à l'altitude du détecteur et un paramètre relatif à l'inclinaison du détecteur par rapport à la zone spatiale prédéterminée, générer une pluralité d'images pour chaque densité spatiale choisie en utilisant les paramètres reçus, déterminer une loi permettant d'estimer la densité spatiale dans la zone spatiale prédéterminée en utilisant comme base d'apprentissage la base d'apprentissage générée et estimer la densité spatiale d'objet dans la zone prédéterminée par application de la loi à l'image acquise.

D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description qui suit de modes de réalisation de l'invention, donnée à titre d'exemple uniquement et en référence aux dessins qui sont :

- figure 1 , une vue schématique d'un exemple de module de traitement permettant la mise en œuvre d'un procédé de dénombrement d'objets dans une zone spatiale prédéterminée,

- figure 2, un exemple d'image générée pour constituer une base d'apprentissage, et

- figure 3, un ordinogramme d'un exemple de mise en œuvre d'un procédé de dénombrement d'objets.

Un module de traitement 10 et un produit programme d'ordinateur 12 sont représentés à la figure 1 .

L'interaction du produit programme d'ordinateur 12 avec le module de traitement 10 permet de mettre en œuvre un procédé de dénombrement d'objets dans une zone spatiale prédéterminée.

Le module de traitement 10 est, de préférence, un ordinateur.

Plus généralement, le module de traitement 10 est un calculateur électronique propre à manipuler et/ou transformer des données représentées comme des quantités électroniques ou physiques dans des registres du module de traitement 10 et/ou des mémoires en d'autres données similaires correspondant à des données physiques dans les mémoires, des registres ou d'autres types de dispositif d'affichage, de transmission ou de mémorisation.

Le module de traitement 10 comporte un processeur 14 comprenant une unité de traitement de données 16, des mémoires 18 et un lecteur 20 de support d'informations. Le module de traitement 10 comprend également un clavier 22 et une unité d'affichage 24.

Le produit programme d'ordinateur 12 comporte un support d'informations 20. Le support d'informations 20 est un support lisible. Un support d'informations 20 est un support lisible par le module de traitement 10, usuellement par l'unité de traitement de données 14. Le support d'informations 20 est un médium adapté à mémoriser des instructions électroniques et capable d'être couplé à un bus d'un système informatique.

A titre d'exemple, le support d'informations 20 est une disquette ou disque souple (de la dénomination anglaise de « floppy dise » ), un disque optique, un CD-ROM un disque magnéto-optique, une mémoire ROM, une mémoire RAM, une mémoire EPROM, une mémoire EEPROM, une carte magnétique ou une carte optique.

Sur le support d'informations 20 est mémorisé un programme d'ordinateur comprenant des instructions de programme.

Le programme d'ordinateur est chargeable sur l'unité de traitement de données 14 et est adapté pour être entraîner la mise en œuvre du procédé de dénombrement d'objets dans la zone spatiale prédéterminée lorsque le programme d'ordinateur est mis en œuvre sur le module de traitement 10.

Le fonctionnement du module de traitement 10 en interaction avec le produit programme d'ordinateur 12 est maintenant décrit en référence aux figures 2 et 3 qui illustrent schématiquement un exemple de mise en œuvre du procédé de dénombrement d'objets.

Par le terme « objet », il est entendu un élément dénombrable. Dans le cadre de l'invention, l'objet est observable, c'est-à-dire qu'un détecteur 30 tel que représenté à la figure 3 est propre à observer l'objet dans la zone prédéterminée.

Un tel détecteur 30 est, à titre d'illustration, une caméra 30.

Une telle caméra 30 est caractérisée par des paramètres P.

Le détecteur 30 présente ainsi des paramètres intrinsèques P in trinsèque, c'est-à-dire ne dépendant pas de l'environnement, comme la focale du détecteur 30 ou la taille de l'image acquise par le détecteur 30.

Les paramètres intrinsèques P in tnnsèque sont des paramètres propres à la caméra 30. Le détecteur 30 présente également des paramètres extrinsèques P extrinsèque- A titre d'exemple, un paramètre relatif à la position P poS ition de la caméra 30 dépendant de l'environnement considéré est un paramètre extrinsèque Pextnnsèque-

De préférence, un paramètre de position P poS ition de la caméra 30 est l'altitude de la caméra 30.

Selon un autre exemple, un paramètre de position P poS ition de la caméra 30 est la distance de la caméra 30 par rapport à la zone spatiale prédéterminée.

De manière usuelle, la distance de la caméra 30 à la zone spatiale prédéterminée est définie comme la distance entre le plan des détecteurs de la caméra 30 et le point de la zone spatiale prédéterminée qui est le plus proche de la caméra 30.

Selon encore un autre exemple, en supposant qu'il soit défini un repère orthonormé (X, Y, Z) pour l'espace à surveiller, d'autres paramètres de position P position de la caméra 30 sont la position selon l'axe X et la position selon l'axe Y.

De même, un paramètre lié à l'orientation Porientation de la caméra 30 et dépendant du système mécanique tenant la caméra 30 est un paramètre extrinsèque Pextnnsèque-

De préférence, le paramètre d'orientation Porientation de la caméra 30 est l'angle d'inclinaison de l'axe de vue de la caméra 30 par rapport à l'horizontale. Un tel angle est généralement appelé angle de tangage.

En complément, d'autres paramètres d'orientation Porientation sont pris en compte. Un autre paramètre d'orientation Porientation de la caméra 30 est, par exemple, l'orientation angulaire de la direction de l'axe optique de la caméra 30 par rapport à un référentiel absolu. La direction de l'axe optique de la caméra 30 est usuellement appelée angle de cap.

L'inclinaison de la caméra 30 autour de son axe de vue, aussi appelé angle de roulis, est un autre exemple de paramètre d'orientation Porientation de la caméra 30.

Il est à noter que les paramètres d'orientation Porientation de la caméra 30 sont également exprimables sous la forme d'angles d'Euler, à savoir les angles de précession, de nutation et de rotation propre. L'angle de nutation est le paramètre généralement privilégié.

Dans la suite, il est considéré que les objets sont des personnes et que le détecteur 30 est une caméra de vidéosurveillance. Dans un tel cas, la zone spatiale prédéterminée est un espace à surveiller.

Selon un autre exemple, les objets sont des objets d'intérêts biologiques observés à l'aide d'un détecteur 30 et d'une optique réalisant une fonction de microscope.

Selon encore un autre exemple, les objets sont des nanotubes de carbones et le détecteur est dans ce cas un microscope électronique. De manière plus générale, il est possible d'appliquer le procédé considéré à tout type d'objets dont le comportement est simulable de manière réaliste.

La zone spatiale prédéterminée ZS dépend généralement de l'objet.

A titre d'illustration, lorsque l'objet considéré est un objet d'intérêt biologique, la zone spatiale prédéterminée ZS est une partie de l'échantillon observé à l'aide du microscope.

Dans le cadre de l'exemple décrit, lorsque l'objet est une personne, la zone spatiale prédéterminée ZS est une partie de l'environnement, par exemple, une portion de rue. Cela apparaît clairement dans l'image de la figure 2.

Dans un tel cas, la caméra 30 est propre à acquérir une image de la zone spatiale prédéterminée ZS, typiquement la caméra 30 est propre à acquérir une image de la rue. En outre, le procédé de dénombrement est un procédé de dénombrement de la foule dans un environnement.

Comme schématiquement représenté à la figure 3, le procédé comporte deux phases successives P1 et P2. La première phase P1 correspond à la partie supérieure de la figure 3 (délimitée par les traits 32 en pointillés) tandis que la deuxième phase P2 correspond à la partie inférieure de la figure 3. La première phase P1 est une phase d'apprentissage non-supervisé tandis que la deuxième phase P2 est une phase de dénombrement dans la zone spatiale prédéterminée ZS.

La première phase P1 d'apprentissage non-supervisé vise à obtenir une loi permettant d'estimer la densité spatiale de personnes dans la zone prédéterminée.

Par l'expression « apprentissage non-supervisé », il est entendu que les données d'apprentissages sont générées automatiquement.

Dans un tel contexte, la loi est un lien entre des caractéristiques d'une image et une valeur de la densité spatiale de personnes dans la zone spatiale prédéterminée ZS.

La loi permet ainsi de déterminer des caractéristiques impliquées dans l'augmentation de la densité spatiale de personnes.

Lors de la première phase P1 d'apprentissage, des paramètres du détecteur 30 sont utilisés pour générer une base d'apprentissage de manière automatique et, à partir de la base d'apprentissage, un modèle de régression est appris par le module de traitement 10.

La deuxième phase P2 de dénombrement dans la zone spatiale prédéterminée ZS cherche à appliquer la loi à des cas réels.

Par l'expression « cas réel », il est entendu des images acquises par la caméra 30 et non générées automatiquement comme dans le cas de la première phase P1 d'apprentissage non-supervisé. Plus précisément, le flux vidéo issu de la caméra 30 est collecté, puis des caractéristiques sont extraites du flux vidéo pour obtenir la densité spatiale sur l'ensemble de l'image grâce au modèle de régression appris lors de la mise en œuvre de la première phase P1 d'apprentissage.

La mise en œuvre du procédé permet donc d'obtenir le dénombrement de personnes dans la zone spatiale prédéterminée ZS.

La première phase P1 d'apprentissage non-supervisé comporte quatre étapes : une étape de choix S100, une étape de fourniture S102, une étape de génération S104 et une étape de détermination S106.

A l'étape de choix S100, une pluralité de densité spatiale distincte de personnes dans la zone spatiale prédéterminée ZS est choisie.

Selon un mode de réalisation, chaque densité spatiale est équirépartie entre une densité spatiale nulle et une densité spatiale élevée.

De manière générale, une densité spatiale est considérée comme élevée selon le contexte et en particulier les conditions de la prise de vue.

Usuellement, une densité spatiale supérieure ou égale à 50 personnes dans la zone prédéterminée est considérée comme une densité spatiale élevée.

A l'issue de l'étape de choix S100, un ensemble de densité spatiale a donc été obtenu.

Selon un mode de réalisation, l'étape de choix S100 est mise en œuvre pour plusieurs zones distinctes de l'image.

A l'étape de fourniture S102, il est fourni des paramètres relatifs à la caméra 30. Les paramètres fournis comprennent au moins un paramètre relatif à la focale du détecteur 30, un paramètre relatif à l'altitude du détecteur 30, un paramètre relatif à l'inclinaison du détecteur 30 par rapport à la zone spatiale prédéterminée ZS et un paramètre relatif à la position du point principal.

Un paramètre relatif à la position du point principal est, par exemple, la position du centre optique par rapport au centre de l'image.

Selon un exemple, un paramètre relatif à la caméra 30 est un paramètre intrinsèque P in trinsèque-

A titre d'exemple, la focale de la caméra 30 ou le nombre de pixels de la caméra 30 est fourni.

Selon un autre exemple, le paramètre relatif à la caméra 30 est au moins l'un du groupe constitué d'un paramètre de position P position et d'un paramètre d'orientation Porientation de la caméra 30 par rapport à l'environnement. A l'issue de l'étape de fourniture S102, il est obtenu des paramètres relatifs à la caméra 30. Parmi ces paramètres, il se trouve au moins un paramètre relatif à la focale du détecteur 30, un paramètre relatif à l'altitude du détecteur 30, un paramètre relatif à l'inclinaison du détecteur 30 par rapport à la zone spatiale prédéterminée ZS et un paramètre relatif à la position du point principal.

A l'étape de génération S104, il est généré une base d'apprentissage.

Pour cela, à l'étape de génération S104, il est à la fois généré une pluralité d'images et un élément d'annotation correspond à la vérité de terrain. Le terme « vérité terrain » est plus souvent désigné sous le terme anglais de « ground-truth ».

La pluralité d'images est générée pour chaque densité spatiale choisie à l'étape de choix S100.

Par « génération », il est à entendre que le module de traitement 10 génère des images synthétiques en utilisant le paramètre relatif à la caméra 30. Les images synthétiques ne sont pas des images issues de la caméra 30. Ce sont des images générées comme si elles étaient prises par la caméra 30 mais qui sont des images synthétiques.

De préférence, les positions des piétons comportant les images synthétiques sont calculées pour correspondre à un champ de densité spatiale dans un environnement tridimensionnel compris dans une zone comprenant le champ de vision de la caméra 30 et son voisinage immédiat pour éviter les effets de bord.

A titre d'exemple, pour paramétrer le champ de densité spatiale, il est créé un gradient de densité spatiale allant d'une densité spatiale maximale à une densité spatiale minimale à travers l'image. Le gradient est orienté selon des lignes de profondeur constante dans l'image, de sorte que pour une profondeur donnée, les intervalles de densité spatiale sont de très denses à très rares. Cela correspond à l'hypothèse que pour une profondeur donnée, l'apparence de la foule à densité spatiale constante est à peu près la même le long d'une ligne de profondeur constante.

En variante, il est utilisé un mélange de fonctions gaussiennes positionnées de manière aléatoire dans la zone spatiale prédéterminée ZS avec un écart type aléatoire. Un tel mélange permet de générer une image proche des foules obtenues dans la réalité.

Une approche permettant de mettre en œuvre le calcul de la vérité terrain est de définir une fonction de densité spatiale de réalité terrain, dite fonction F. Pour calculer la fonction F pour chaque pixel d'une image générée, la fonction de densité spatiale de réalité terrain F est définie par l'équation suivante : où :

- P est la liste des positions dans l'image où se trouvent des piétons,

- N(p, P, σ 2 ) est un noyau gaussien bidimensionnel évalué au pixel p avec comme position moyenne P, et

- σ est un coefficient.

La position P d'un piéton dans l'image est calculée en utilisant un paramètre de la caméra 30 en projetant dans l'image un point situé à la position du piéton considéré et à l'altitude correspondant à la moitié de la hauteur d'un être humain. Typiquement, il est considéré que la hauteur moyenne d'un être humain est de 1 ,70 mètre (m).

Similairement, le coefficient σ est calculé comme un tiers de la moitié de la hauteur apparente d'un être humain à la position P dans l'image. Par conséquent, la valeur prise par le coefficient σ pour le piéton P dépend de son emplacement dans l'image. Usuellement, le coefficient a est de l'ordre de quelques pixels.

Le calcul de la vérité terrain est mis en œuvre automatiquement et évite l'annotation par un être humain. Une telle opération est donc plus précise puisque l'opération est effectuée automatiquement.

A l'issue de l'étape de génération S104, il est donc obtenu une base de données pouvant servir de base de données d'apprentissage. La base de données comporte un ensemble d'images synthétiques à laquelle, pour chaque image, est associée une vérité terrain.

A l'étape de détermination S106, une loi est déterminée.

La loi permet d'estimer la densité spatiale dans la zone spatiale prédéterminée ZS.

Pour cela, il est utilisé comme base d'apprentissage la base d'apprentissage générée à l'étape de génération S104. Comme expliqué précédemment, il est à noter que la base d'apprentissage est générée sans mettre en œuvre une annotation manuelle par un opérateur.

Selon l'exemple de la figure 3, l'étape de détermination S106 est mise en œuvre par quatre étapes successives : une étape de correction S106a de la perspective, une étape de segmentation S106b de la foule, une étape d'extraction S106c des caractéristiques et une étape d'apprentissage S106d.

A l'étape de correction S106a, il est pris en compte le fait que dans une image, les objets proches du détecteur 30 apparaissent plus grands que les objets qui sont plus loin. Un tel effet de perspective est en prendre en compte lors de l'analyse des caractéristiques à extraire de l'image du fait qu'une caractéristique extraite d'un objet du premier plan représente une portion de l'objet plus petite qu'une caractéristique extraite qui est extraite plus loin dans l'image. A l'étape de correction S1 06a, il est mis en œuvre deux étapes successives, à savoir une étape de normalisation des caractéristiques en utilisant une carte de normalisation de la perspective et une étape de division de l'image en bandes de profondeur quasi-constante.

La normalisation des caractéristiques est mise en œuvre en utilisant une carte de normalisation de perspective dans lequel un poids de pixel est lié à la profondeur prévue pour l'objet qui a généré le pixel. Une pondération des poids est appliquée pour les objets lointains. La pondération augmente le poids considéré si l'objet est plus loin qu'un objet du premier plan.

La carte de normalisation de perspective est générée en utilisant les paramètres de caméra 30.

Plus précisément, le facteur de correction est obtenu par orthorectification. Ainsi, au lieu d'utiliser des paramètres bidimensionnels comme la hauteur ou la largeur, il est préférable de prendre en compte la nature tridimensionnelle d'un être humain. Pour cela, la variation d'apparence du volume tridimensionnel occupé par le piéton. Il en est déduit un facteur de correction de la perspective W(p) pour le pixel p.

A titre d'exemple, le facteur de correction de la perspective W(p) est obtenu à l'aide de la formule suivante :

max(A 1 ( ) + A 2 (p))

W(p) = OÙ:

• l'être humain est modélisé par un cylindre à base circulaire,

• Ai (p) est l'aire apparente de l'aire latérale, et

• A 2 (p) est l'aire apparente de la base circulaire supérieure.

La carte ainsi obtenue est utilisée pour normaliser les caractéristiques par application des poids calculés à chacun des pixels qui sont dans la zone spatiale prédéterminée ZS si la caractéristique est une caractéristique de type surface et par application de la racine carrée des poids sur les caractéristiques liées aux effets de bord si la caractéristique est une caractéristique de type contour.

Pour la segmentation en bandes de profondeur constante dans l'image, l'angle visuel selon lequel est vu le piéton est matérialisé par un cylindre de hauteur h et de rayon r pour une caméra 30 qui est positionnée à une hauteur H.

Il apparaît que cet angle varie selon la position du piéton dans l'image. La bande considérée de l'image est considérée comme des valeurs extrêmes qui ne sont pas trop loin l'une de l'autre. Pour cela, il est fixé une variation angulaire maximale dans la bande correspondant à un pixel. A titre d'illustration, deux bandes B1 et B2 sont représentées dans la figure 2, les deux bandes B1 et B2 étant relatives à la zone spatiale prédéterminée ZS.

A l'issue de l'étape de correction S106a, les défauts liés à la prise de vue particulière de la caméra 30 ont été pris en compte dans l'analyse des images synthétiques.

A l'étape de segmentation S106b de la foule, il est déterminé dans toute l'image, les pixels appartenant à la foule. Pour cela, dans la base d'apprentissage, il est utilisé des données de vérité terrain.

A l'étape d'extraction S106c, les caractéristiques sont extraites.

Les caractéristiques sont reliées à un pixel p particulier, le pixel p est un pixel segmenté à l'étape de segmentation S106b. Cela assure que le pixel p est relié à la présence d'une foule.

La caractéristique attachée à un pixel p est calculée sur une fenêtre glissante W P TO de rayon r w centrée sur le pixel p.

Les caractéristiques extraites sont de deux types, les caractéristiques de contour et des caractéristiques de texture.

A titre d'exemple, les caractéristiques de contour sont obtenues en utilisant un détecteur de contour de Canny, plus souvent désigné sous la terminologie anglaise de « Canny edge detector ».

Les caractéristiques de contour sont, par exemple, l'orientation des contours, ou leur longueur.

En variante, l'étape d'extraction S106c des caractéristiques de contour est mise en œuvre en utilisant une dimension fractale de Minkowski. Une telle technique est aussi notée selon l'acronyme MFD pour l'anglais Minkowski Fatal Dimension.

L'étape d'extraction S106c des caractéristiques de texture est, par exemple, mise en œuvre en utilisant des matrices de dépendance en niveaux de gris. De telles matrices sont usuellement appelées selon l'acronyme GLDM pour « Gray Level Dependency Matrix ».

L'étape d'extraction S106c comporte également une étape de présentation des caractéristiques extraites sous la forme d'un vecteur présentant une pluralité de dimensions par différenciation des valeurs de rayon r w .

Plus précisément, il est considéré une valeur de référence pour le rayon r w correspondant à un tiers de la moitié de la hauteur moyenne apparente à l'image d'un être humain comme cela décrit précédemment pour le coefficient σ. De telles valeurs de référence notées r ref sont utilisées pour obtenir six valeurs différentes de rayon r w qui sont, selon l'exemple de la figure 3 : 1/4. r ref , 1 /2. r ref , r ref , 3/2. r ref , 2. r ref et 3. r ref .

De ce fait, selon une mise en œuvre par la demanderesse, pour chaque pixel de l'image, il est obtenu un vecteur de caractéristiques de dimensions 1 * 144.

A l'étape d'apprentissage S106d, il est utilisé, selon l'exemple illustré, une régression à vecteur de support. Une telle régression est aussi notée SVR, acronyme de l'anglais Support Vector Régression. Une telle régression permet de lier le vecteur de caractéristiques avec les valeurs prises par la densité spatiale dans la fonction de densité F.

Les performances de la technique SVR dépendent profondément d'un bon réglage de paramètres qui sont choisis à la fois dans le noyau et la technique elle-même.

Dans l'exemple illustré, le noyau utilisé est un noyau gaussien RBF, RBF étant l'acronyme anglais de « Radial Basis Function », ce qui signifie « fonction à base radiale ». Pour la suite, le noyau est noté noyau k.

Pour caractériser un tel noyau, trois paramètres doivent être caractérisés : un paramètre du noyau γ, un paramètre de pénalité du terme d'erreur C et un paramètre de fonction de perte ε.

Le paramètre de noyau γ est choisi de sorte que le noyau k vérifie l'équation suivante : k(x p , x q ) = exp (—γ. ||x p - x q || 2 )

Où x p est x q sont les p-ième et q-ième vecteurs de caractéristiques.

L'optimisation du choix des trois paramètres permet d'obtenir de bonnes performances. Une méthode usuelle pour obtenir de bons paramètres est divisée une validation croisée avec l'ensemble d'apprentissage.

Comme une validation croisée est coûteuse en terme de temps, les contraintes suivantes ont été utilisées pour le paramètre de pénalité de C et le paramètre de la fonction de perte ε.

Jlogn

n

OÙ :

- y est la valeur moyenne des valeurs de vérité terrain,

- o y est l'écart type des valeurs de vérité de terrain,

- o b est l'écart type du bruit des valeurs de vérité terrain,

- n est le nombre de données d'apprentissage, et - τ est une valeur constante.

Il a été choisi, par la demanderesse, de fixer la valeur constante r à trois et pour le paramètre de noyau γ de mettre le paramètre à la valeur de la médiane de la liste de toutes les valeurs des carrées de la norme entre x p et x q pour tous les p et q possibles.

A l'issue de l'étape d'apprentissage S106d, il est obtenu la loi permettant d'estimer la densité spatiale dans la zone prédéterminée.

Dans le cas particulier présenté, la loi est un modèle de régression puisque la technique d'apprentissage utilisée est une technique SVR.

La deuxième phase P2 de dénombrement dans la zone comporte trois étapes ; une étape d'acquisition S202, une étape d'obtention S204 et une étape d'estimation S206.

A l'étape d'acquisition S202, une image est acquise par le détecteur 30.

L'image comporte au moins la zone spatiale prédéterminée ZS.

A l'étape d'obtention S204, les caractéristiques déterminées à l'étape d'extraction S106c sont obtenues pour l'image fournie à l'étape d'acquisition S202.

L'étape d'obtention S204 comporte une étape de segmentation S204a et une étape d'extraction S204b.

L'étape de segmentation S204a s'effectue grâce à l'utilisation d'un algorithme de détection de la foule dans l'image.

L'opération de segmentation permet d'extraire les caractéristiques qui sont relatives à la foule et pas les caractéristiques relatives à des endroits où il n'y a pas de foule. L'amélioration de la segmentation augmente la performance globale du procédé de dénombrement.

L'étape d'extraction S204b est similaire à l'étape d'extraction S106c décrite pour la première phase P1 .

Comme l'extraction n'est effectuée que pour les pixels pour lesquels une foule a été détectée, à l'issue de l'étape d'obtention S204, les vecteurs de caractéristiques sont obtenus en chaque pixel de l'image pour lesquels une foule a été détectée.

A l'étape d'estimation S206, il est estimé la densité spatiale d'objets dans la zone prédéterminée. Pour cela, il est appliqué la loi obtenue à l'issue de la première phase P1 à l'image acquise. Ce lien est manifesté par la flèche 50 sur la figure 3.

Plus précisément, il est appliqué le modèle de régression obtenu à l'issue de la première phase P1 pour obtenir une valeur de densité spatiale. Autrement formulé, il est appliqué le modèle à chaque vecteur de caractéristiques pour en déduire une estimation de la valeur prise par la fonction F au pixel p correspondant. De plus, l'estimation n'étant effectuée que dans les zones segmentées et la fonction F étant le résultat d'une convolution gaussienne, il se peut que la fonction F prenne dans certains cas des valeurs non négligeables également en-dehors de la zone segmentée.

Pour estimer les valeurs prises par la fonction F en-dehors de la zone segmentée, les valeurs de densité spatiale obtenues sont extrapolées en utilisant une convolution d'images en utilisant un noyau normalisé K tel que :

(/ - u 0 ) 2 + (k 2 - v 0 ) 2

V (/ , /^), ^ ! , /^) = exp( - ) avec

- la constante u 0 définie par l'équation u 0 = u c - β. (k t - c );

- la constante v 0 est définie par l'équation v 0 = v c - β. (k 2 - v c ), et

- la constante β est définie par l'équation β = a. , °

^(k 1 -u c ) 2 Hk 2 -Vc) 2

- u c , v c sont les coordonnées du centre du noyau, ces coordonnées étant réglables par le module de traitement 10.

Le paramètre a est déterminé en utilisant les images obtenues par le paramètre d'apprentissage.

Le paramètre a est, par exemple, trouvé par une technique de dichotomie.

A l'issue de l'étape d'estimation S206, une estimation de la densité spatiale du nombre de piétons dans la zone spatiale prédéterminée ZS est obtenue.

Optionnellement, la deuxième phase P2 comporte une étape de déduction durant laquelle il est déduit le nombre de piétons à partir de la densité spatiale estimée à l'étape d'estimation.

Par exemple, le nombre de piétons dans la zone prédéterminée est obtenu par intégration sur l'ensemble de la zone prédéterminée. Le procédé permet à la fois d'obtenir des éléments d'analyse et se comporte comme un système d'autoapprentissage.

Par rapport au procédé de l'état de la technique, le procédé proposé utilise une méthode par apprentissage impliquant, en effet, une base de données plus facile à obtenir.

De fait, dans les procédés de l'état de la technique, la méthode par apprentissage se fait à l'aide de données réelles, ce qui implique une annotation manuelle par un opérateur des données pour obtenir une base d'apprentissage.

De plus, la base d'apprentissage du procédé proposé présente une meilleure qualité que la base d'apprentissage du procédé de l'état de la technique. En effet, la variabilité et la représentativité des données d'apprentissage sont discutables pour les procédés de l'état de la technique. En particulier, en pratique, dans les bases de l'état de la technique, les situations extrêmes à savoir une densité spatiale supérieure à 50 personnes dans la zone sont rarement présentes dans les données réelles car la situation se présente trop rarement en pratique. De plus, l'annotation de l'opérateur est en réalité peu fiable notamment lorsque la foule est très dense ou que la résolution est limitée, ces problèmes pouvant se cumuler. A contrario, la base est générée pour être représentative des cas d'utilisation futur du détecteur 30, c'est-à-dire que les différentes images générées permettent de balayer des densités spatiales très différentes allant de peu denses à très denses.

En outre, le procédé présente l'avantage d'être robuste au changement de position et/ou d'orientation du détecteur. En effet, les paramètres de prise de vue sont respectés. Les données d'apprentissage sont virtuellement crées avec la même caméra 30 que celle qui sera utilisée ensuite. Pour cela, il est fourni des données relatives à la caméra 30 comme des caractéristiques intrinsèques P in tnnsèque de focale ou de taille d'image ou extrinsèques de position P position et d'orientation P or ientation- Grâce aux paramètres donnés par la caméra 30, la base de données d'apprentissage est construite automatiquement de manière fidèle et statistiquement représentative.

La robustesse est également assurée par le fait qu'un changement opéré sur la caméra 30 suppose seulement de remettre en œuvre la première phase P1 sans acquérir des images de terrain ce qui seraient indispensable dans un procédé de l'état de la technique.

Le procédé est également avantageux en ce que la vérité terrain est immédiatement disponible puisque l'annotation est automatique et que tout changement de caméra 30 peut être immédiatement pris en compte via l'apprentissage d'un modèle de régression ne supposant pas la fourniture d'un nouveau jeu d'apprentissage.

Le procédé s'applique notamment à la supervision des foules par le biais de la vidéosurveillance dans une perspective sécurité ou transport. Dans une telle application, le procédé permet d'estimer la densité spatiale d'une foule et de dénombrer le nombre de piéton dans la foule.

Fréquemment, dans une telle situation, l'étape d'acquisition se fait en continu de sorte qu'il peut être considéré que la deuxième phase P2 est réalisée itérativement sur un flux vidéo continu.

Le procédé proposé est relatif à de la vision assistée par ordinateur, l'ordinateur mettant en œuvre l'apprentissage. Le procédé peut donc être mis en œuvre à l'aide d'un ordinateur quelconque ou tout autre dispositif. De multiples systèmes peuvent être utilisés avec des programmes mettant en œuvre le procédé précédent mais il est également envisageable d'utiliser des appareils dédiés à la mise en œuvre du procédé précédent, ceux-ci pouvant s'insérer dans des dispositifs propres à mesurer les données fournies. Notamment, le procédé peut être mis en œuvre par un dispositif de surveillance propre à dénombrer les objets dans une zone spatiale prédéterminée ZS comprenant un détecteur 30 propre à acquérir au moins une image, l'image comportant la zone spatiale prédéterminée ZS et un module de traitement 10. Le module de traitement 10 est adapté à dénombrer des objets dans la zone spatiale prédéterminée ZS et est apte à mettre en œuvre les étapes de choix, de fourniture S102, de génération S104, de détermination S106, d'obtention S204 et d'estimation S206. Le module de traitement 10 est aussi adapté pour recevoir des paramètres relatifs au détecteur 30, les paramètres reçus comprenant au moins un paramètre étant relatif à la focale du détecteur 30, un paramètre étant relatif à l'altitude du détecteur 30, un paramètre étant relatif à l'inclinaison du détecteur 30 par rapport à la zone spatiale prédéterminée ZS.

De plus, les modes de réalisation proposés ne sont pas reliés à un langage de programmation particulier. Incidemment, cela implique que des multiples langages de programmation peuvent être utilisés pour mettre en œuvre le procédé précédemment détaillé.

Le procédé et les modes de réalisation décrits ci-dessous sont aptes à être combinés les uns aux autres, totalement ou partiellement, pour donner lieu à d'autres modes de réalisation de l'invention.