FR3035251A1 - Procede et dispositif de generation d'une representation multi-resolutions d'une image et application a la detection d'objet - Google Patents

Procede et dispositif de generation d'une representation multi-resolutions d'une image et application a la detection d'objet Download PDF

Info

Publication number
FR3035251A1
FR3035251A1 FR1553461A FR1553461A FR3035251A1 FR 3035251 A1 FR3035251 A1 FR 3035251A1 FR 1553461 A FR1553461 A FR 1553461A FR 1553461 A FR1553461 A FR 1553461A FR 3035251 A1 FR3035251 A1 FR 3035251A1
Authority
FR
France
Prior art keywords
image
representation
main
detection window
resolution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR1553461A
Other languages
English (en)
Inventor
Jacques Talayssat
Sebastien Cleyet-Merle
Costa Vitor Schwambach
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
STMicroelectronics Rousset SAS
STMicroelectronics Grenoble 2 SAS
Original Assignee
STMicroelectronics Rousset SAS
STMicroelectronics Grenoble 2 SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by STMicroelectronics Rousset SAS, STMicroelectronics Grenoble 2 SAS filed Critical STMicroelectronics Rousset SAS
Priority to FR1553461A priority Critical patent/FR3035251A1/fr
Priority to US14/929,129 priority patent/US10306248B2/en
Publication of FR3035251A1 publication Critical patent/FR3035251A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/217Validation; Performance evaluation; Active pattern learning techniques
    • G06F18/2178Validation; Performance evaluation; Active pattern learning techniques based on feedback of a supervisor
    • G06F18/2185Validation; Performance evaluation; Active pattern learning techniques based on feedback of a supervisor the supervisor being an automated module, e.g. intelligent oracle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/245Classification techniques relating to the decision surface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • G06V10/443Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
    • G06V10/446Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering using Haar-like filters, e.g. using integral image techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/144Image acquisition using a slot moved over the image; using discrete sensing elements at predetermined points; using automatic curve following means
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • H04N19/426Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

Dispositif (4) de génération en temps réel d'une représentation multi-résolution d'une image numérique, comprenant une mémoire principale (6) apte à stocker une succession de représentations principales (A, B, C) de l'image à des résolutions principales différentes, une mémoire locale (7) couplée à la mémoire principale (6) via un bus (8) et apte à stocker une représentation principale (A, B, C) courante, et un traitement configuré pour, pour au moins une représentation principale (A, B, C) : a) charger au moins une partie de ladite représentation principale (A, B, C) courante dans la mémoire locale (7), b) faire parcourir ladite représentation principale (A, B, C) courante par une fenêtre de détection (F) rectangulaire, c) optionnellement, selon la nature du classifieur utilisé, et à chaque position (Fi) du parcours, calculer une image intégrale de ladite fenêtre (F), d) déterminer au moins une représentation intermédiaire (A-1, A-2, B-1, B-2) de l'image ayant une résolution intermédiaire comprise entre la résolution de la représentation principale (A, B) courante et la résolution de la représentation principale suivante (B, C), faire parcourir ladite représentation intermédiaire (A-1, A-2, B-1, B-2) par la fenêtre (F) rectangulaire, et optionnellement, selon la nature du classifieur utilisé, et à chaque position (Fi) du parcours, calculer une image intégrale de ladite fenêtre (F)..

Description

1 Procédé et dispositif de génération d'une représentation multi- résolutions d'une image et application à la détection d'objet Des modes de mise en oeuvre et de réalisation de l'invention concernent la génération en temps réel d'une représentation multi- résolution d'une image numérique et son application à la détection d'objet dans une image numérique, en particulier par des méthodes de détection de type « fenêtre glissante » (« scan-window »), tels que la méthode de Viola et Jones.
La méthode de Viola et Jones est une méthode connue de détection d'objet dans une image numérique. Elle fait partie des méthodes capables de détecter efficacement et en temps réel des objets dans une image par moyen d'une fenêtre de détection glissante. Elle est utilisée généralement pour détecter des visages et des personnes mais peut aussi être utilisée pour la détection d'autres objets tels que des voitures ou des avions. La méthode de Viola et Jones est basée sur un procédé d'apprentissage supervisé. Elle nécessite par conséquent de quelques centaines à plusieurs milliers d'exemples de l'objet que l'on souhaite détecter, pour entraîner un classifieur. Une fois son apprentissage réalisé, ce classifieur est utilisé pour détecter la présence éventuelle de l'objet dans une image en parcourant celle-ci de manière exhaustive, à toutes les positions et dans toutes les tailles et toutes les échelles possibles.
La méthode, en tant que méthode d'apprentissage supervisé, est divisée en deux étapes : une étape d'apprentissage du classifieur basé sur un grand nombre d'exemples positifs, c'est-à-dire les objets d'intérêt comme par exemple des visages, et d'exemples négatifs, comme par exemple des images indiquées comme ne représentant pas des visages, et une phase de détection par application de ce classifieur à des images inconnues. La méthode de Viola et Jones est une approche basée sur l'apparence, qui consiste à parcourir par moyen d'une « fenêtre glissante » (« scan-window ») l'ensemble de l'image en calculant un 3035251 2 certain nombre de caractéristiques dans des zones, ou fenêtres de détection, rectangulaires qui se chevauchent. Elle a la particularité d'utiliser des caractéristiques très simples mais très nombreuses. Les caractéristiques sont une représentation synthétique et 5 informative, calculée à partir des valeurs des pixels. Les caractéristiques pseudo-Haar, qui sont utilisées par la méthode de Viola et Jones, sont calculées par des opérations arithmétiques sur les valeurs des sommes de pixels d'un ou plusieurs zones rectangulaires. Pour calculer rapidement et efficacement ces caractéristiques 10 sur une image, la méthode de Viola et Jones utilise des images intégrales. Une image intégrale, ou « summed area table » en anglais, est une représentation sous la forme d'une image numérique, de même taille que l'image d'origine, qui en chacun de ses points contient la 15 somme des pixels x et y situés au-dessus et à gauche de ce point. Plus formellement, l'image intégrale ii est définie à partir de l'image i par : ii (x, y) = i (x', y') x' 5x,y15y Grâce à cette représentation sous forme de table de correspondance, la somme des valeurs dans une zone rectangulaire 20 peut être calculée en seulement quatre accès à l'image intégrale, et même en seulement six accès pour deux zones rectangulaires contiguës, et donc en temps constant quelle que soit la taille de la zone. En phase de détection, l'ensemble de l'image est parcouru en 25 déplaçant la fenêtre de détection d'un certain pas dans le sens horizontal et/ou vertical. La méthode de Viola Jones est implémentée en utilisant une pyramide pour chaque image à analyser. En traitement d'images, la pyramide est une représentation multi-résolution d'une image. Elle 30 permet de modéliser l'image à différentes résolutions, depuis l'image initiale à une image très grossière. La pyramide d'images permet au procédé de détection mettant en oeuvre la méthode de Viola Jones de 3035251 3 travailler depuis les détails jusqu'au "grossier" et ainsi de permettre la détection des objets de tailles différentes et à plusieurs distances. Un inconvénient de la méthode de Viola et Jones est lié à la bande passante nécessaire sur le bus d'interconnexion couplant une 5 mémoire stockant les représentations aux différentes résolutions d'une image après avoir réalisé la représentation multi-résolution de l'image aux moyens de traitement permettant notamment de calculer les images intégrales pour chacune des résolutions. Selon un mode de mise en oeuvre, il est proposé un procédé de 10 détection par méthode de Viola Jones utilisant un procédé de génération en temps réel d'une représentation multi-résolution d'une image numérique permettant de réduire la bande-passante utilisée sur un bus de transfert et ainsi permettre la détection en temps réel des images.
15 Selon un aspect, il est propose un procédé de génération en temps réel d'une représentation multi-résolution d'une image numérique, comprenant un stockage dans une mémoire principale d'une succession de représentations principales de l'image à des résolutions principales successives différentes et un traitement 20 comportant, pour au moins une représentation principale courante : a) un chargement d'au moins une partie de ladite représentation principale courante dans une mémoire locale via un bus, b) optionnellement, un parcours de ladite au moins une partie 25 chargée de la représentation principale courante par une fenêtre de détection rectangulaire, c) optionnellement selon la nature du classifieur utilisé, chaque position du parcours, un calcul d'une image intégrale de la portion d'image contenue dans ladite fenêtre de détection, 30 d) une détermination d'au moins une partie correspondante d'au moins une représentation intermédiaire de l'image ayant une résolution intermédiaire comprise entre la résolution de la représentation principale courante et la résolution de la représentation principale suivante, optionnellement un parcours 3035251 4 d'au moins une partie correspondante de la ladite représentation intermédiaire par la fenêtre de détection rectangulaire, et optionnellement, selon la nature du classifieur utilisé, à chaque position du parcours, un calcul d'une image 5 intégrale de la portion d'image contenue dans ladite fenêtre de détection, e) une répétition des étapes a) à d) avec les différentes parties de la représentation principale courante jusqu'à ce que toute les parties de la représentation principale courante aient été 10 successivement chargées et traitées, et une répétition éventuelle des étapes a) à e) pour au moins une représentation principale suivante. La présence de la mémoire locale permet de ne stocker dans la mémoire principale qu'un nombre limité de représentations principales 15 de l'image à différentes résolutions principales. Le nombre de représentations principales à charger de la mémoire principale vers la mémoire locale via le bus de transfert étant réduit, la bande-passante du bus de transfert est réduite. La mémoire locale permet ensuite de construire les 20 représentations intermédiaires de l'image à des résolutions intermédiaires à partir d'une des représentations principales ou de les construire partie par partie à partir de partie de représentations principales successivement chargées dans la mémoire locale. Les représentations intermédiaires obtenues permettent avec les 25 représentations principales de construire une pyramide d'images comprenant des représentations de l'image à chacune des résolutions utilisées pour la détection d'un objet sur l'image. Selon le nombre de représentations à résolutions différentes souhaitées, l'unité de traitement peut répéter les étapes a) à e) pour au 30 moins une autre représentation principale stockée dans la mémoire principale, éventuellement jusqu'à l'avant dernière ou la dernière. Les caractéristiques optionnelles mentionnées ci-avant pourraient être effectuées par le classifieur d'un dispositif de détection 3035251 5 d'objets, ou bien lors du traitement ci-dessus concernant ladite au moins une représentation principale courante. Avantageusement, le procédé peut comprendre, pour chaque itération des étapes a) à d), au moins une répétition des étapes c) et d) 5 pour déterminer au moins une partie correspondante d'au moins une nouvelle représentation intermédiaire de l'image ayant une résolution intermédiaire comprise entre la résolution intermédiaire de la représentation intermédiaire précédente et la résolution principale de la représentation principale suivante et optionnellement faire parcourir 10 ladite au moins une partie correspondante de la nouvelle représentation intermédiaire par une fenêtre de détection rectangulaire, et optionnellement, selon la nature du détecteur utilisé, et à chaque position du parcours, calculer une image intégrale de la portion d'image contenue dans ladite fenêtre de détection.
15 Selon la finesse de détection souhaitée, c'est-à-dire le nombre de résolutions différentes étudiées pour une même image, une pluralité de représentations intermédiaires supplémentaires peut être générée en cascade à partir de la représentation intermédiaire générée précédemment et ayant des résolutions de plus en plus petites mais 20 toujours supérieures à la résolution principale de la représentation principale suivante. De préférence, le déplacement entre deux positions de la fenêtre de détection est inférieur à la dimension de la fenêtre de manière à ce qu'au moins une partie de la fenêtre de détection 25 chevauche la fenêtre de détection dans sa position précédente. Le pas de déplacement de la fenêtre permet de réduire le nombre de positions à évaluer et donc améliorer les performances d'exécution. L'efficacité de détection est augmentée par la réduction du pas car la finesse de recherche est plus grande.
30 De préférence, la fenêtre de détection est déplacée dans une première direction de l'image, de préférence horizontale, et décalée dans une seconde direction de l'image, de préférence verticale, orthogonale à la première direction à chaque fois que la fenêtre de détection a atteint une extrémité de l'image selon la première 3035251 6 direction, le déplacement de la fenêtre de détection selon la première direction étant effectué d'une extrémité de l'image à l'extrémité opposée. Un tel déplacement permet ainsi de systématiser le calcul en 5 s'assurant que toute la surface de l'image est couverte. Selon un autre aspect, il est proposé un procédé de détection en temps réel par une méthode de type fenêtre glissante de détection, par exemple une méthode de Viola-Jones, d'au moins un objet dans une image numérique, comprenant une génération d'une succession de 10 représentations principales de l'image à des résolutions principales successives différentes, un procédé de génération en temps réel d'une représentation multi-résolution de ladite image numérique tel que défini ci-dessus et appliqué auxdites représentations principales de l'image, et un traitement des images intégrales calculées par des 15 classifieurs mettant en oeuvre la méthode de Viola-Jones. Selon encore un autre aspect, il est proposé un dispositif de génération en temps réel d'une représentation multi-résolution d'une image numérique, comprenant une mémoire principale apte à stocker une succession de représentations principales de l'image à des 20 résolutions principales différentes, une mémoire locale couplée à la mémoire principale via un bus et apte à stocker au moins une partie d'une représentation principale courante, et une unité de traitement configurée pour, pour au moins une représentation principale courante : 25 a) charger au moins une partie de ladite représentation principale courante dans la mémoire locale, b) optionnellement, faire parcourir ladite au moins une partie chargée de la représentation principale courante par une fenêtre de détection rectangulaire, 30 c) optionnellement, selon la nature du classifieur utilisé, et à chaque position du parcours, calculer une image intégrale de la portion d'image contenue dans ladite fenêtre de détection, d) déterminer au moins une partie correspondante d'au moins une représentation intermédiaire de l'image ayant une 3035251 7 résolution intermédiaire comprise entre la résolution de la représentation principale courante et la résolution de la représentation principale suivante, optionnellement faire parcourir au moins une partie correspondante de la ladite 5 représentation intermédiaire par la fenêtre de détection rectangulaire, et optionnellement, selon la nature du classifieur utilisé, calculer à chaque position du parcours une image intégrale de la portion d'image contenue dans ladite fenêtre de détection, 10 e) répéter les étapes a) à d) avec les différentes parties de la représentation principale courante jusqu'à ce que toute les parties de la représentation principale courante aient été successivement chargées et traitées, l'unité de traitement étant configurée en outre pour éventuellement 15 répéter les étapes a) à e) pour au moins une représentation principale suivante. Avantageusement, l'unité de traitement peut en outre être configurée pour réitérer, pour chaque itération des étapes a) à d), au moins une fois l'étape d) afin de déterminer au moins une partie 20 correspondante d'au moins une nouvelle représentation intermédiaire de l'image ayant une résolution intermédiaire comprise entre la résolution intermédiaire de la représentation intermédiaire précédente et la résolution de la résolution principale de la représentation principale suivante, optionnellement faire parcourir ladite au moins 25 une partie correspondante de la nouvelle représentation intermédiaire par une fenêtre de détection rectangulaire, et optionnellement calculer à chaque position du parcours une image intégrale de la portion d'image contenue dans ladite fenêtre de détection. De préférence, l'unité de traitement est configurée pour 30 commander le déplacement de la fenêtre de détection entre deux positions successives pour qu'au moins une partie de la fenêtre de détection chevauche la fenêtre de détection dans sa position précédente.
3035251 8 L'unité de traitement est préférentiellement configurée pour déplacer la fenêtre dans une première direction de l'image, de préférence horizontale, et la décaler dans une seconde direction de l'image, de préférence verticale, orthogonale à la première direction à 5 chaque fois que la fenêtre de détection a atteint une extrémité de l'image selon la première direction, le déplacement de la fenêtre de détection selon la première direction étant effectué d'une extrémité de l'image à l'extrémité opposée. Selon un autre aspect, il est proposé, un dispositif de détection 10 en temps réel par une méthode de type fenêtre de détection, par exemple une méthode de Viola-Jones d'au moins un objet dans une image numérique, comprenant des moyens de génération d'une succession de représentations principales de l'image à des résolutions principales différentes, un dispositif de génération en temps réel d'une 15 représentation multi-résolution de ladite image numérique telle que défini ci-avant, et des moyens de traitement des images intégrales calculées mettant en oeuvre la méthode de Viola-Jones. Selon encore un autre aspect, il est proposé un appareil électronique comprenant un dispositif de détection tel que défini ci- 20 dessus. D' autres avantages et caractéristiques de l' invention apparaîtront à l'examen de la description détaillée d'un mode de réalisation de l'invention, nullement limitatifs, et des dessins annexés, sur lesquels : 25 la figure 1 représente, de manière schématique, un appareil électronique comprenant un dispositif de détection en temps réel par méthode de Viola-Jones d'au moins un objet dans une image numérique selon un mode de réalisation de l'invention ; 30 la figure 2 présente de manière schématique des représentations principales et intermédiaires d'une pyramide d'images générées selon un mode de réalisation de l'invention.
3035251 9 Sur la figure 1 est représenté de manière schématique un appareil électronique comprenant un dispositif de détection en temps réel par méthode de Viola-Jones d'au moins un objet dans une image numérique selon un mode de réalisation de l'invention.
5 L'appareil électronique APP comprend par exemple un dispositif 1 de prise de vue tel qu'un appareil photographique numérique ou bien une caméra vidéographique, et un dispositif de détection 2 auquel le dispositif 1 de prise de vue est couplé. Le dispositif de détection 2, destiné à détecter en temps réel 10 par méthode de Viola-Jones au moins un objet dans une image numérique, comprend des moyens 3 de génération en temps réel d'une pyramide de représentations principales à des résolutions principales différentes successives de chaque image reçue. Ces moyens 3 sont couplés au dispositif de prise de vue 1 et sont aptes à générer une 15 succession de représentations principales de l'image à des résolutions principales différentes. Le dispositif de détection 2 comprend en outre un dispositif de génération 4 en temps réel d'une représentation multi-résolution de chaque image numérique reçue du dispositif de prise de vue 1 par le 20 dispositif de détection 2, et des classifieurs 5 pour la mise en oeuvre de la méthode de Viola-Jones. Ces classifieurs sont destinés à recevoir les images intégrales et les représentations principales et intermédiaires délivrées par le dispositif de génération 4, notamment à chaque déplacement horizontal ou vertical de la fenêtre de détection.
25 Le dispositif 4 comprend une mémoire principale 6, par exemple une mémoire DRAM, couplée à la sortie des moyens 3 de génération d'une pyramide de représentations principales et apte à stocker en mémoire pour chaque image les représentations principales de l'image aux différentes résolutions principales.
30 Le dispositif 4 comprend en outre une mémoire locale 7, par exemple une mémoire SRAM, couplée via un bus de transfert 8 à la mémoire principale 6. La mémoire locale 7, de taille plus petite que celle de la mémoire principale 6. Selon le mode de réalisation, la mémoire locale 7 est configurée pour stocker une représentation 3035251 10 principale de l'image à la fois, ou bien une partie, ou bande, à la fois d'une représentation principale de l'image, pour réaliser plusieurs sous-échantillonnages de la représentation principale et des calculs d'images intégrales pour chacun des sous-échantillonnages.
5 Pour simplifier au mieux la génération d'une représentation multi-résolution, on peut stocker effectivement une image complète dans la mémoire locale 7. Cependant, le stockage de seulement une bande d'une représentation principale, par exemple mise à jour ligne à ligne, 10 permet de générer les résolutions intermédiaires entre deux résolutions principales pour cette bande d'image. La taille de la bande d'image et le choix du facteur de sous échantillonnage entre deux résolutions principales permettant d'établir toutes les résolutions intermédiaires possible entre ces deux résolutions principales.
15 Le dispositif 4 comprend en outre une unité de traitement 9 configurée pour générer une fenêtre de détection F rectangulaire et la déplacer sur toute l'image et apte à calculer une image intégrale de la fenêtre de détection à chacune de ses positions. Sur la figure 2 est représenté de manière schématique des 20 représentations principales et intermédiaires d'une pyramide d'images générées selon un mode de réalisation de l'invention. Les représentations principales A, B et C de l'image sont représentées en traits pleins. Les représentations principales A, B et C sont des représentations de l'image traitée générées par les moyens de 25 génération 3. Ces représentations principales A, B et C possèdent des résolutions principales différentes comme par exemple les résolutions 1, 1/4, 1/16, 1/64, etc. La résolution 1/4 correspond à une résolution 1/2 en horizontal et 1/2 en vertical. Ces représentations principales A, B et C sont stockées dans la mémoire principale 7.
30 Le dispositif 4 de génération charge tour à tour une des représentations principales A, B puis C dans sa mémoire locale 7. Lorsqu'une des représentations principales A, B ou C est chargée dans la mémoire locale 7, la représentation principale ou intermédiaire précédente en mémoire, est écrasée.
3035251 11 Dans l'exemple illustré sur la figure 2, la représentation principale A, par exemple de résolution principale 1, est chargée en premier dans la mémoire locale 7 via le bus de transfert 8. L'unité de traitement 9 génère alors une fenêtre de détection F 5 rectangulaire, par exemple de 48 par 48 pixels, et calcule à chaque position Fi de la fenêtre de détection F, l'image intégrale correspondante. Les différentes fonctions de l'unité de traitement 9, qui vont maintenant être décrites, peuvent être réalisées par des modules 10 logiciels au sein d'un microprocesseur. L'unité de traitement 9 comporte un module logiciel de positionnement 10 apte à commander le déplacement de la fenêtre de détection F entre deux positions successives Fi_i et Fi. La fenêtre de détection F est déplacée d'une position précédente Fi_i à une position 15 suivante Fi d'une longueur inférieure à celle de la fenêtre de détection dans la direction de son déplacement de manière à obtenir un chevauchement d'au moins une partie de la fenêtre de détection dans la position suivante F avec la fenêtre de détection F dans sa position précédente 20 Comme cela est illustré par les flèches, la fenêtre de détection F est déplacée dans une direction horizontale de la représentation principale A, puis dans une direction verticale de la représentation principale A. La fenêtre de détection F est ainsi déplacée de ligne en ligne de haut en bas. Dans le mode de réalisation illustré, à chaque 25 fois que la fenêtre de détection F est déplacée dans la direction verticale, elle est repositionnée en début de ligne de manière à chevaucher partiellement la position de la fenêtre de détection en début de la ligne précédente, correspondant ici à la position notée Fi-1. L'unité de traitement 9 est en outre configurée pour effectuer 30 un sous-échantillonnage du contenu de la mémoire locale 7. Plus précisément, l'unité de traitement 9 est configurée pour déterminer au moins une représentation intermédiaire A_1, A-2, B-1, B-2 de l'image, en l'occurrence deux dans l'exemple illustré sur la figure 2, ayant une résolution intermédiaire comprise entre la résolution de la 3035251 12 représentation principale courante, A ou B dans l'exemple illustré, et la résolution de la représentation principale suivante, respectivement B ou C dans l'exemple illustré. Dans l'exemple illustré, la résolution intermédiaire A_1 est 5 donc comprise entre 1 et 1/4. Une fois la représentation intermédiaire A_1 déterminée, l'unité de traitement 9 est configurée pour faire parcourir la représentation intermédiaire A_1 par la fenêtre de détection F rectangulaire, et optionnellement, selon la nature du classifier utilisé, et à chaque 10 position Fi du parcours, calculer une image intégrale de ladite fenêtre de détection F. Il est possible de déterminer tout d'abord la représentation A_1 et de la stocker dans la mémoire locale 7 avant de calculer les images intégrales, ou bien de déterminer au fur et à mesure la représentation 15 A_1 et de calculer au fur et à mesure l'image intégrale de chaque fenêtre. A l'issue de la détermination de la première représentation intermédiaire A_1, la seconde représentation intermédiaire A-2 est calculée directement à partir de la représentation principale A stockée 20 dans la mémoire locale 7. Le nombre de bandes de résolution intermédiaires A_1, A-2 ... Ai pouvant être générées pour cette bande de résolution principale avant un incrément vertical de n lignes dépend du nombre de lignes d'image que la mémoire locale 7 peut stocker.
25 En variante, cette représentation intermédiaire A_1 pourrait être par exemple stockée intégralement ou partiellement dans la mémoire locale 7 pour être traitée par l'unité de traitement 9 pour construire au moins une partie de la seconde représentation intermédiaire A-2 et déterminer les images intégrales pour cette seconde représentation 30 intermédiaire A-2. La résolution intermédiaire de la représentation intermédiaire A-2 est comprise entre la résolution intermédiaire de la représentation intermédiaire précédente A_1 et la résolution principale de la représentation principale suivante B. Le calcul des images intégrales 3035251 13 de la représentation A-2 est identique à celui effectué pour la représentation A-1. A l'issue de ce traitement, dans l'exemple illustré sur la figure 2, le dispositif 4 de génération charge la deuxième représentation 5 principale B dans la mémoire locale 7 en vu de son traitement par l'unité de traitement 9 pour calculer les images intégrales de la représentation principale B et des deux représentations intermédiaires et B-2 et construire les représentations intermédiaires et B-2 en elles-mêmes.
10 Puis, dans l'exemple illustré sur la figure 2, le dispositif 4 de génération charge une troisième représentation principale C dans la mémoire locale 7 en vu de son traitement par l'unité de traitement 9 pour calculer les images intégrales de la représentation principale C. Les fenêtres d'images, ou d'image intégrales, calculées pour 15 chaque représentation principale A, B, C et intermédiaire A_1, A-2, B-1, B-2 sont délivrées au classifieur 5 du dispositif de détection 2, de même que les représentations principales A, B, C ou intermédiaires A_ 1, A-2, B-1, B-2 pour réaliser la détection d'objet aux différentes résolutions de l'image.
20 Le système et le procédé de détection par méthode de Viola Jones, utilisant un procédé de génération en temps réel d'une représentation multi-résolution d'une image numérique basé sur la génération de résolutions intermédiaires à partir de résolutions principales, permettent de réduire la bande-passante utilisée sur un bus 25 de transfert ce qui offre la possibilité de réaliser de la détection d'objet sur images numériques en temps réel.

Claims (11)

  1. REVENDICATIONS1. Procédé de génération en temps réel d'une représentation multi-résolution d'une image numérique, comprenant un stockage dans une mémoire principale (6) d'une succession de représentations principales (A, B, C) de l'image à des résolutions principales successives différentes, et un traitement comportant, pour au moins une représentation principale (A, B, C) courante : a) un chargement d'au moins une partie de ladite représentation principale (A, B, C) courante dans une mémoire locale (7) via un bus (8), b) optionnellement un parcours de ladite au moins une partie chargée de la représentation principale (A, B, C) courante par une fenêtre de détection (F) rectangulaire, c) optionnellement, selon la nature du classifieur utilisé, et chaque position (Fi) du parcours, un calcul d'une image intégrale de la portion d'image contenue dans ladite fenêtre de détection (F), d) une détermination d'au moins une partie correspondante d'au moins une représentation intermédiaire (A_1, A-2, B-1, B-2) de l'image ayant une résolution intermédiaire comprise entre la résolution de la représentation principale (A, B) courante et la résolution de la représentation principale suivante (B, C), optionnellement un parcours de ladite au moins une partie correspondante de la représentation intermédiaire (A_1, A-2, 13_ i, B-2) par la fenêtre de détection (F) rectangulaire, et optionnellement selon la nature du classifieur utilisé, un calcul, à chaque position (Fi) du parcours, d'une image intégrale de la portion d'image contenue dans ladite fenêtre de détection (F), e) une répétition des étapes a) à d) avec les différentes parties de la représentation principale (A, B, C) courante jusqu'à ce que toute les parties de la représentation principale (A, B, C) courante aient été successivement chargées et traitées, et 3035251 15 une répétition éventuelle des étapes a) à e) pour au moins une représentation principale suivante (B, C).
  2. 2. Procédé selon la revendication 1, comprenant, pour chaque itération des étapes a) à d), au moins une répétition de l'étape d) pour 5 déterminer au moins une partie correspondante d'au moins une nouvelle représentation intermédiaire (A-2, 13_2) de l'image ayant une résolution intermédiaire comprise entre la résolution intermédiaire de la représentation intermédiaire précédente (A_1, B_1) et la résolution principale de la représentation principale suivante (B, C), 10 optionnellement faire parcourir ladite au moins une partie correspondante de la nouvelle représentation intermédiaire (A-2, B-2) par la fenêtre de détection (F) rectangulaire, et optionnellement, selon la nature du classifieur utilisé, et à chaque position (Fi) du parcours, calculer une image intégrale de la portion d'image contenue dans 15 ladite fenêtre de détection (F).
  3. 3. Procédé selon l'une des revendications 1 ou 2, dans lequel le déplacement entre deux positions (Fi) de la fenêtre de détection (F) est inférieur à la dimension de la fenêtre (F) de manière à ce qu'au moins une partie de la fenêtre de détection (F) chevauche la fenêtre de 20 détection (F) dans sa position précédente (F1-0.
  4. 4. Procédé selon l'une des revendications 1 à 3, dans lequel la fenêtre de détection (F) est déplacée dans une première direction de l'image, de préférence horizontale, et décalée dans une seconde direction de l'image, de préférence verticale, orthogonale à la 25 première direction à chaque fois que la fenêtre de détection (F) a atteint une extrémité de l'image selon la première direction, le déplacement de la fenêtre de détection (F) selon la première direction étant effectué d'une extrémité de l'image à l'extrémité opposée.
  5. 5. Procédé de détection en temps réel par une méthode de type 30 fenêtre de détection glissante, par exemple une méthode de Viola- Jones d'au moins un objet dans une image numérique, comprenant une génération d'une succession de représentations principales (A, B, C) de l'image à des résolutions principales successives différentes, un procédé de génération en temps réel d'une représentation multi- 3035251 16 résolution de ladite image numérique selon l'une des revendications 1 à 4 appliqué auxdites représentations principales (A, B, C) de l'image, et un traitement des images intégrales calculées par des classifieurs (5) mettant en oeuvre la méthode de Viola-Jones. 5
  6. 6. Dispositif (4) de génération en temps réel d'une représentation multi-résolutions d'une image numérique, comprenant une mémoire principale (6) apte à stocker une succession de représentations principales (A, B, C) de l'image à des résolutions principales différentes, une mémoire locale (7) couplée à la mémoire 10 principale (6) via un bus (8) et apte à stocker au moins une partie d'une représentation principale (A, B, C) courante, et une unité de traitement (9) configurée pour, pour au moins une représentation principale (A, B, C) courante : a) charger au moins une partie de ladite représentation 15 principale (A, B, C) courante dans la mémoire locale (7), b) optionnellement faire parcourir ladite au moins une partie chargée de la représentation principale (A, B, C) courante par une fenêtre de détection (F) rectangulaire, c) optionnellement, selon la nature du classifieur utilisé, 20 calculer à chaque position (Fi) du parcours une image intégrale de la portion d'image contenue dans ladite fenêtre de détection (F), d) déterminer au moins une partie correspondante d'au moins une représentation intermédiaire (A-1, A-2, B-1, B-2) de 25 l'image ayant une résolution intermédiaire comprise entre la résolution de la représentation principale (A, B) courante et la résolution de la représentation principale suivante (B, C), optionnellement faire parcourir au moins une partie correspondante de la ladite représentation intermédiaire (A-1, 30 A-2, B-1, B-2) par la fenêtre de détection (F) rectangulaire, et optionnellement, selon la nature du classifieur utilisé, calculer à chaque position (Fi) du parcours une image intégrale de la portion d'image contenue dans ladite fenêtre de détection (F), 3035251 17 e) répéter les étapes a) à d) avec les différentes parties de la représentation principale (A, B, C) courante jusqu'à ce que toute les parties de la représentation principale (A, B, C) courante aient été successivement chargées et traitée, 5 l'unité de traitement (9) étant configurée en outre pour répéter les étapes a) à e) pour au moins une représentation principale suivante (B, C).
  7. 7. Dispositif selon la revendication 6, dans lequel l'unité de traitement (9) est configurée en outre pour répéter, pour chaque 10 itération des étapes a) à d), au moins une fois l'étape d) afin de déterminer au moins une partie correspondante d'au moins une nouvelle représentation intermédiaire (A-2, 13_2) de l'image ayant une résolution intermédiaire comprise entre la résolution intermédiaire de la représentation intermédiaire précédente (A_1, 13_1,) et la résolution 15 principale de la représentation principale suivante (B, C), optionnellement faire parcourir ladite au moins une partie correspondante de la nouvelle représentation intermédiaire (A-2, B-2) par une fenêtre de détection (F) rectangulaire, et optionnellement, selon la nature du classifieur utilisé, calculer à chaque position (Fi) du 20 parcours une image intégrale de la portion d'image contenue dans ladite fenêtre de détection (F).
  8. 8. Dispositif selon l'une des revendications 6 ou 7, dans lequel l'unité de traitement (9) est également configurée pour commander le déplacement de la fenêtre de détection (F) entre deux 25 positions successives (Fi_i, Fi) pour qu'au moins une partie de la fenêtre de détection (F) chevauche la fenêtre de détection (F) dans sa position précédente (F1-0.
  9. 9. Dispositif selon la revendication 8, dans lequel l'unité de traitement (9) est configurée pour déplacer la fenêtre de détection (F) 30 dans une première direction de l'image, de préférence horizontale, et la décaler dans une seconde direction de l'image, de préférence verticale, orthogonale à la première direction à chaque fois que la fenêtre de détection (F) a atteint une extrémité de l'image selon la première direction, le déplacement de la fenêtre de détection (F) selon 3035251 18 la première direction étant effectué d'une extrémité de l'image à l'extrémité opposée.
  10. 10. Dispositif (2) de détection en temps réel par une méthode de type fenêtre glissante de détection, par exemple une méthode de 5 Viola-Jones d'au moins un objet dans une image numérique, comprenant des moyens (3) de génération d'une succession de représentations principales (A, B, C) de l'image à des résolutions principales différentes, un dispositif (4) de génération en temps réel d'une représentation multi-résolution de ladite image numérique selon 10 l'une des revendications 6 à 9, et des moyens (5) de traitement des images intégrales calculées mettant en oeuvre la méthode de Viola-Jones.
  11. 11. Appareil électronique (APP) comprenant un dispositif (2) de détection selon la revendication 10.
FR1553461A 2015-04-17 2015-04-17 Procede et dispositif de generation d'une representation multi-resolutions d'une image et application a la detection d'objet Pending FR3035251A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR1553461A FR3035251A1 (fr) 2015-04-17 2015-04-17 Procede et dispositif de generation d'une representation multi-resolutions d'une image et application a la detection d'objet
US14/929,129 US10306248B2 (en) 2015-04-17 2015-10-30 Method and device for generation of a representation of a digital image

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR1553461A FR3035251A1 (fr) 2015-04-17 2015-04-17 Procede et dispositif de generation d'une representation multi-resolutions d'une image et application a la detection d'objet

Publications (1)

Publication Number Publication Date
FR3035251A1 true FR3035251A1 (fr) 2016-10-21

Family

ID=53366170

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1553461A Pending FR3035251A1 (fr) 2015-04-17 2015-04-17 Procede et dispositif de generation d'une representation multi-resolutions d'une image et application a la detection d'objet

Country Status (2)

Country Link
US (1) US10306248B2 (fr)
FR (1) FR3035251A1 (fr)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110211233A1 (en) * 2010-03-01 2011-09-01 Sony Corporation Image processing device, image processing method and computer program
US20110243438A1 (en) * 2010-04-05 2011-10-06 Microsoft Corporation Generation of multi-resolution image pyramids

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5917935A (en) * 1995-06-13 1999-06-29 Photon Dynamics, Inc. Mura detection apparatus and method
US6041143A (en) * 1998-04-14 2000-03-21 Teralogic Incorporated Multiresolution compressed image management system and method
US7031499B2 (en) 2002-07-22 2006-04-18 Mitsubishi Electric Research Laboratories, Inc. Object recognition system
US7315631B1 (en) * 2006-08-11 2008-01-01 Fotonation Vision Limited Real-time face tracking in a digital image acquisition device
US7853072B2 (en) 2006-07-20 2010-12-14 Sarnoff Corporation System and method for detecting still objects in images
US8697239B2 (en) * 2009-07-24 2014-04-15 Rohm And Haas Electronic Materials Cmp Holdings, Inc. Multi-functional polishing pad
JP5662670B2 (ja) 2009-10-27 2015-02-04 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
US8547389B2 (en) * 2010-04-05 2013-10-01 Microsoft Corporation Capturing image structure detail from a first image and color from a second image
US8687700B1 (en) 2010-06-18 2014-04-01 Ambarella, Inc. Method and/or apparatus for object detection utilizing cached and compressed classifier information
JP2012113621A (ja) * 2010-11-26 2012-06-14 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
WO2013086734A1 (fr) 2011-12-16 2013-06-20 Intel Corporation Qualité d'image réduite pour des zones d'arrière-plan de données vidéo
US9401001B2 (en) * 2014-01-02 2016-07-26 Digimarc Corporation Full-color visibility model using CSF which varies spatially with local luminance
GB2516512B (en) * 2013-10-23 2015-10-14 Imagination Tech Ltd Face detection

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110211233A1 (en) * 2010-03-01 2011-09-01 Sony Corporation Image processing device, image processing method and computer program
US20110243438A1 (en) * 2010-04-05 2011-10-06 Microsoft Corporation Generation of multi-resolution image pyramids

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
VIOLA P ET AL: "Robust Real-Time Object Detection", WORKSHOP ON STATISTICAL AND COMPUTATIONAL THEORIES OF VISION SCTV, XX, XX, 13 July 2001 (2001-07-13), pages 1 - 26, XP002391053 *

Also Published As

Publication number Publication date
US20160309176A1 (en) 2016-10-20
US10306248B2 (en) 2019-05-28

Similar Documents

Publication Publication Date Title
US11100402B2 (en) Image quality assessment using similar scenes as reference
US8750596B2 (en) System and method for identifying defects in a material
EP2930659B1 (fr) Procédé de détection de points d'intérêt dans une image numérique
EP3271869B1 (fr) Procédé de traitement d'un signal asynchrone
EP3663987B1 (fr) Procédé et dispositif de détermination de la taille mémoire globale d'une zone mémoire globale allouée aux données d'un réseau de neurones
CA2047811A1 (fr) Procede et dispositif de localisation en temps reel de contours rectilignes dans une image numerisee, notamment pour la reconnaissance de formes dans un traitement d'analyse de scene
EP3633552B1 (fr) Procédés d'apprentissage de paramètres d'un réseau de neurones à convolution et de détection d'éléments d'intérêt visibles dans une image
WO2020065177A1 (fr) Procede, programme d'ordinateur et systeme de detection et localisation d'objet dans une scene tridimensionnelle
EP3633544B1 (fr) Procede d'association d'elements d'interet visibles dans une video
FR3027144A1 (fr) Procede et dispositif de determination de mouvement entre des images video successives
EP1746486A1 (fr) Procédé de détection de déplacement d'une entité pourvue d'un capteur d'images et dispositif pour le mettre en oeuvre
EP3633545A1 (fr) Procedes d'apprentissage de parametres d'un reseau de neurones a convolution, de detection d'elements d'interet visibles dans une image et d'association d'elements d'interet visibles dans une image
FR3071124B1 (fr) Dispositif de capture d'une image hyperspectrale
EP3195259A1 (fr) Procédé d'identification de l'anisotropie de la texture d'une image numérique
FR3035251A1 (fr) Procede et dispositif de generation d'une representation multi-resolutions d'une image et application a la detection d'objet
EP3073441B1 (fr) Procédé de correction d'une image d'au moins un objet présenté à distance devant un imageur et éclairé par un système d'éclairage et système de prise de vues pour la mise en oeuvre dudit procédé
EP3216213B1 (fr) Procédé de détection de pixels défectueux
EP3712775A1 (fr) Procédé et dispositif de détermination de la taille mémoire globale d'une zone mémoire globale allouée aux données d'un réseau de neurones compte tenu de sa topologie
US8891870B2 (en) Substance subtraction in a scene based on hyperspectral characteristics
EP3948654A1 (fr) Procédé, programme d'ordinateur et système pour l'identification d'une instance d'objet dans une scène tridimensionnelle
EP1746487A1 (fr) Procede et dispositif de detection de deplacement d'une entite pourvue d'un capteur d'images
FR3011339A1 (fr) Procedes et systemes pour la construction d'un plan d'acquisitions pour satellite
BE1021013B1 (fr) Procede et systeme pour ameliorer la qualite d'images en couleur.
FR3060794A1 (fr) Procede de determination de l'etat d'un systeme, procede de determination d'une methode de projection optimale et dispositif mettant en œuvre lesdits procedes
EP4002264A1 (fr) Solution d'aide à la visualisation pour simuler un processus d'auto-exposition

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20161021