FR2890472A1 - Object detecting method for use in e.g. animating avatar, involves defining association by association parameter, between one of set of continuous parts of pixels of image and another continuous part of pixels or one of other parts of set - Google Patents

Object detecting method for use in e.g. animating avatar, involves defining association by association parameter, between one of set of continuous parts of pixels of image and another continuous part of pixels or one of other parts of set Download PDF

Info

Publication number
FR2890472A1
FR2890472A1 FR0509146A FR0509146A FR2890472A1 FR 2890472 A1 FR2890472 A1 FR 2890472A1 FR 0509146 A FR0509146 A FR 0509146A FR 0509146 A FR0509146 A FR 0509146A FR 2890472 A1 FR2890472 A1 FR 2890472A1
Authority
FR
France
Prior art keywords
image
mask
pixels
parts
association
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
FR0509146A
Other languages
French (fr)
Inventor
Benedicte Bascle
Olivier Bernier
Philippe Noriega
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.)
Orange SA
Original Assignee
France Telecom SA
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 France Telecom SA filed Critical France Telecom SA
Priority to FR0509146A priority Critical patent/FR2890472A1/en
Publication of FR2890472A1 publication Critical patent/FR2890472A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/36Applying a local operator, i.e. means to operate on image points situated in the vicinity of a given point; Non-linear local filtering operations, e.g. median filtering
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Nonlinear Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

The method involves convoluting a digital image (I) with a bi-directional filter mask that contains a continuous part of pixels of the image, where the part is defined by a predetermined discrete value of parameters of a filter model. The mask has another set of continuous parts of pixels of the image, where one latter part is defined by another predetermined discrete value of an association parameter of the model. The parameter defines an association between the latter part and the former part or between the latter part and one of the other latter parts of the mask. An independent claim is also included for a computer program stored on an information medium, comprising instructions implementing an object detecting method.

Description

La présente invention concerne un procédé de détection d'objets dans uneThe present invention relates to a method for detecting objects in a

image numérique et un programme d'ordinateur mettant en oeuvre ledit procédé.  digital image and a computer program implementing said method.

La détection d'objets dans une image numérique est un domaine d'activité aux applications nombreuses telles que par exemple la détection de corps humains dans des images numériques, la reconnaissance de leur pose et leur reconstruction tridimensionnelle, l'animation d'avatars, l'indexation d'images par leur contenu, les applications de surveillance ou d'aide aux diagnostics médicaux, etc...  The detection of objects in a digital image is a field of activity with many applications such as, for example, the detection of human bodies in digital images, the recognition of their pose and their three-dimensional reconstruction, the animation of avatars, the indexing of images by their content, monitoring applications or aid for medical diagnostics, etc ...

Parmi les techniques de détection d'objets dans une image numérique, les techniques basées sur la convolution d'une image par des filtres font partie des techniques les plus répandues. L'image utilisée par ce type de technique n'est pas, en général, une image originale mais plutôt une image pré-traitée par une technique, par exemple, de suppression du fond de l'image ou par une technique de traitement qui détermine, en chacun des pixels de l'image originale, la probabilité de présence d'un objet.  Among the techniques for detecting objects in a digital image, techniques based on the convolution of an image by filters are among the most widespread techniques. The image used by this type of technique is not, in general, an original image but rather an image pre-processed by a technique, for example, suppression of the background of the image or by a treatment technique that determines , in each of the pixels of the original image, the probability of presence of an object.

En regard avec la Fig. 1, la détection d'objets dans une image I (prétraitée ou pas) de I1 colonnes et I2 lignes par convolution de l'image par des filtres Fi (j=l,...M) dont la représentation bi-dimensionnelle de chacun de ces filtres FJ sur un plan P parallèle au support de l'image I est appelée masque de filtre MAi, consiste à calculer la convolution de l'image I par chacun de ces M masques. Pour cela, le centre de gravité de chaque masque de filtre MAS étant positionné sur chacun des pixels (x,y) de l'image I, la convolution de l'image I, notée CAI,x,y) avec le masque de filtre MAS est la somme de la valeur d'au moins une composante de chacun des pixels de l'image I se situant à l'intérieur du maque MAS. Plus précisément, la convolution de l'image I CJ(I,x,y) est donnée par l'équation suivante: Ci (1, x, y) = 1 s(u, v).MAj (u,v) 0su511-1OSv<121 avec s(u,v) la valeur d'au moins une composante d'un pixel (u,v) de l'image I et MAJ(u,v) une valeur entière égale à 0, si le pixel (u,v) n'appartient pas au masque MAS, et, égale à 1 dans le cas où le pixel (u, v) appartient au masque MAi. Selon l'exemple de la Fig. 1, MAJ(u=ul,v=vl) est égale à 0 et MAj(u=u2,v=v2) est égale à 1. Le temps de calcul de la convolution d'une image avec un masque MAj est très long du fait de nombreux calculs de somme de valeurs de pixels qui sont faits plusieurs fois. Afin de réduire ce temps de calcul, il a été démontré (voir P. Viola et M. J. Jones intitulé Robust Real-Time Object Detection', Second International Workshop on Statistical and Comutational Theories of Vision Modeling, Learning, Computing, and Sampling, Vancouver, Canada, 13 Juillet 2001) que l'équation précédente peut être calculée très rapidement en pré-calculant une image dite image intégrale à partir de l'image I. Une fois que les convolutions de l'image I Cj(I,x,y) (j=1,..., M, 0<x<I1, 0<y<I2) avec chacun des M masques MAS positionnés en chacune des positions (x,y) (0<x<I1 et 0<y<I2) possibles de l'image sont calculées, les résultats de ces convolutions, exprimés par exemple sous forme d'une valeur de probabilité de la présence d'un objet ou au moins d'une partie d'un objet dans chaque masque MAS positionné sur chaque pixel (x,y), sont comparés entre eux ou à une valeur de seuil prédéterminée afin de déterminer un ou plusieurs masques qui contiennent un (ou plusieurs) objet(s) ou au moins une partie de cet ou de ces objets.  With reference to FIG. 1, the detection of objects in an image I (pretreated or not) of I1 columns and I2 lines by convolution of the image by filters Fi (j = l, ... M) whose two-dimensional representation of each of these filters FJ on a plane P parallel to the support of the image I is called filter mask MAi, consists in calculating the convolution of the image I by each of these M masks. For this, the center of gravity of each filter mask MAS being positioned on each of the pixels (x, y) of the image I, the convolution of the image I, denoted by CAI, x, y) with the filter mask MAS is the sum of the value of at least one component of each of the pixels of the image I lying inside the MAS. More precisely, the convolution of the image I CJ (I, x, y) is given by the following equation: Ci (1, x, y) = 1 s (u, v) .MAj (u, v) 0su511 -1OSv <121 with s (u, v) the value of at least one component of a pixel (u, v) of the image I and MAJ (u, v) an integer value equal to 0, if the pixel (u, v) does not belong to the mask MAS, and, equal to 1 in the case where the pixel (u, v) belongs to the mask MAi. According to the example of FIG. 1, MAJ (u = ul, v = vl) is equal to 0 and MAj (u = u2, v = v2) is equal to 1. The computation time of the convolution of an image with a mask MAj is very long because of numerous calculations of sum of pixel values that are made several times. In order to reduce this computation time, it has been demonstrated (see P. Viola and MJ Jones entitled Robust Real-Time Object Detection, Second International Workshop on Statistical and Comutational Theories of Vision Modeling, Learning, Computing, and Sampling, Vancouver, Canada, July 13, 2001) that the preceding equation can be calculated very quickly by pre-calculating an image called an integral image from the image I. Once the convolutions of the image I Cj (I, x, y ) (j = 1, ..., M, 0 <x <I1, 0 <y <I2) with each of the M MAS masks positioned in each of the positions (x, y) (0 <x <I1 and 0 <y <I2) possible of the image are calculated, the results of these convolutions, expressed for example in the form of a probability value of the presence of an object or at least a part of an object in each mask MAS positioned on each pixel (x, y), are compared with each other or at a predetermined threshold value to determine one or more masks that contain one (or more) object (s) or at least a part of this or these objects.

La détection d'objets dans une image I est fonction de la forme géométrique des masques MAS et donc du gabarit de filtre à partir duquel ces masques sont issus.  The detection of objects in an image I is a function of the geometrical shape of the masks MAS and thus of the filter mask from which these masks are derived.

L'exemple de la Fig. 1 représente un gabarit de filtres de l'état de la technique et plus précisément un exemple de gabarit de filtres décrit par l'article de P. Viola et M. J. Jones intitulé Robust Real-Time Object Detection', Second International Workshop on Statistical and Comutational Theories of Vision Modeling, Learning, Computing, and Sampling, Vancouver, Canada, 13 Juillet 2001, et par l'article de R. Lienhart et J. Maydt intitulé An Extended Set of Haar-like Geatures for Rapid Objet Detection', International Conference on Image Processing 2002. Selon ces articles, le gabarit de filtre G est de forme rectangulaire dont le périmètre est défini par deux paramètres, appelés paramètres de dimension W et L, et par un paramètre, appelé paramètre d'orientation 0 défini par un angle entre un axe Ax du gabarit de filtre G et une référence du plan P, en l'occurrence l'axe X d'un repère d'axes orthogonaux X et Y du plan P. Les valeurs des paramètres W, L et O sont des valeurs discrètes issues d'ensembles de valeurs prédéterminées. Ainsi, le nombre de filtres Fj (et donc de masques MAS) différents pouvant être issus du gabarit de filtre G est égal au produit du cardinal de chacun de ces ensembles de valeurs discrètes. Ce nombre de filtres peut être très important si aucun a priori sur les dimensions ou les orientations de l'objet n'est fait. Par contre, ce nombre peut être considérablement réduit si les dimensions et/ou l'orientation approximatives des objets à détecter sont connues a priori. Selon l'exemple de la Fig. 1, le masque MA1 est défini par les valeurs W1, L1 et O1 respectivement des paramètres W,L et O, le masque MAj est défini par les valeurs W2, L1 et 02, et le masque MAM est défini par les valeurs W2, L1 et 03.  The example of FIG. 1 represents a filter template of the state of the art and more specifically an example of a filter template described by the article by P. Viola and MJ Jones entitled Robust Real-Time Object Detection, Second International Workshop on Statistical and Comutational Theories of Vision Modeling, Learning, Computing, and Sampling, Vancouver, Canada, July 13, 2001, and the article by R. Lienhart and J. Maydt entitled An Extended Set of Haar-like Geatures for Rapid Object Detection, International Conference on Image Processing 2002. According to these articles, the filter template G is of rectangular shape whose perimeter is defined by two parameters, called parameters of dimension W and L, and by a parameter, called parameter of orientation 0 defined by an angle between an axis Ax of the filter template G and a reference of the plane P, in this case the X axis of a coordinate system of orthogonal axes X and Y of the plane P. The values of the parameters W, L and O are discrete values from sets of predetermined values. Thus, the number of filters Fj (and therefore MAS masks) different from the filter template G is equal to the cardinal product of each of these sets of discrete values. This number of filters can be very important if no priori on the dimensions or orientations of the object is made. On the other hand, this number can be considerably reduced if the approximate dimensions and / or orientation of the objects to be detected are known a priori. According to the example of FIG. 1, the mask MA1 is defined by the values W1, L1 and O1 respectively of the parameters W, L and O, the mask MAj is defined by the values W2, L1 and 02, and the mask MAM is defined by the values W2, L1 and 03.

Les pixels de l'image se trouvant à l'intérieur de chaque masque MAS ainsi défini sont déterminés sur le plan P par des techniques de tracé de ligne et/ou de polygone telles que par exemple la technique de J. E. Bresenham décrite dans l'article intitulé Seminal Graphics: Pioneering efforts that shaped the Field', Rosalee Wolfe ed., ACM SIGGRAPH, ACM order no. 435985, ISBN 1-58113-052-X, 1998. Ce type de technique permet d'obtenir à partir d'une grille GR définie sur le plan P une approximation plus ou moins grossière de chaque masque par un ensemble de rectangles comme on le verra lors de la description de la Fig. 2.  The pixels of the image lying inside each MAS mask thus defined are determined on the plane P by line drawing and / or polygon techniques such as, for example, the JE Bresenham technique described in the article. titled Seminal Graphics: Pioneering Efforts That Shaped The Field ', Rosalee Wolfe ed., ACM SIGGRAPH, ACM order no. 435985, ISBN 1-58113-052-X, 1998. This type of technique makes it possible to obtain from a grid GR defined on the plane P a more or less rough approximation of each mask by a set of rectangles as it is will see in the description of FIG. 2.

La détection d'objets dans une image numérique pouvant être calculée très rapidement (notamment en utilisant une image intégrale comme on l'a vu précédemment), le nombre de masques obtenus à partir d'un gabarit de filtre, c'est-à-dire le nombre de valeurs des ensembles de valeurs discrètes de chacun des paramètres du gabarit de filtre, peut donc être important sans pour cela que le temps de calcul de la convolution d'une image par l'ensemble de ces masques ne soit exorbitant. Cependant, cela ne sous-entend pas que tout objet d'une image peut-être détecté par les masques issus d'un gabarit de filtre G de l'état de la technique. En effet, chacun de ces masques ne couvrant qu'une seule partie continue de pixels d'une image, chacun des éléments d'un objet composé et éventuellement articulé peut-être détecté par un de ces masques. Cependant, ces masques ne permettent pas de déterminer que les éléments détectés appartiennent à un même objet.  The detection of objects in a digital image that can be calculated very quickly (in particular by using an integral image as seen previously), the number of masks obtained from a filter template, that is to say to say the number of values of the sets of discrete values of each of the parameters of the filter mask, can therefore be important without that the computation time of the convolution of an image by all of these masks is exorbitant. However, this does not imply that any object of an image can be detected by the masks from a filter template G of the state of the art. Indeed, each of these masks covering only one continuous portion of pixels of an image, each of the elements of a compound and possibly articulated object can be detected by one of these masks. However, these masks do not make it possible to determine that the detected elements belong to the same object.

Le but de la présente invention est donc de résoudre le problème soulevé ci-dessus de manière à pouvoir détecter des objets composés et éventuellement articulés d'une image numérique.  The object of the present invention is therefore to solve the problem raised above so as to detect compound and possibly articulated objects of a digital image.

Pour ce faire, la présente invention prévoit un procédé de détection d'objets dans une image numérique par convolution de ladite image avec au moins un masque bidimensionnel de filtre, ledit au moins un masque comportant une première partie continue de pixels de ladite image, ladite première partie étant définie par une valeur discrète prédéterminée des paramètres d'un gabarit de filtre. Ledit procédé est caractérisé en ce que ledit au moins un masque comporte au moins une deuxième partie continue de pixels de ladite image, ladite au moins une deuxième partie étant définie par une valeur discrète prédéterminée d'au moins un des paramètres dudit gabarit de filtre, ledit au moins un paramètre définissant une association entre ladite au moins une deuxième partie et ladite première partie ou entre au moins une deuxième partie et l'une desdites autres deuxièmes parties dudit au moins un masque.  To do this, the present invention provides a method for detecting objects in a digital image by convolution of said image with at least one two-dimensional filter mask, said at least one mask comprising a first continuous portion of pixels of said image, said first part being defined by a predetermined discrete value of the parameters of a filter mask. Said method is characterized in that said at least one mask comprises at least a second continuous portion of pixels of said image, said at least one second part being defined by a predetermined discrete value of at least one of the parameters of said filter mask, said at least one parameter defining an association between said at least one second portion and said first portion or between at least a second portion and one of said other second portions of said at least one mask.

Selon un autre mode de réalisation de la présente invention, un axe étant défini pour chacune desdites parties dudit au moins un masque par au moins deux pixels appartenant à ladite partie, ledit au moins un paramètre définissant l'association entre deux parties dudit au moins un masque est un angle entre les axes de ces deux parties.  According to another embodiment of the present invention, an axis being defined for each of said parts of said at least one mask by at least two pixels belonging to said part, said at least one parameter defining the association between two parts of said at least one mask is an angle between the axes of these two parts.

Ce mode de réalisation est particulièrement avantageux car il permet de détecter des objets composés dont les parties sont articulées les unes par rapport aux autres.  This embodiment is particularly advantageous because it makes it possible to detect compound objects whose parts are articulated with respect to each other.

Selon un mode de réalisation de la présente invention, chacune desdites parties étant représentée par un ensemble de rectangles adjacents deux à deux, chacun desdits axes est défini par la droite joignant les centres de gravité de deux desdits rectangles.  According to an embodiment of the present invention, each of said parts being represented by a set of rectangles adjacent two by two, each of said axes is defined by the line joining the centers of gravity of two of said rectangles.

Ce mode de réalisation est particulièrement avantageux car la définition de chacun de ces axes est très rapide.  This embodiment is particularly advantageous because the definition of each of these axes is very fast.

Selon un mode de réalisation de la présente invention, la valeur discrète de chacun des paramètres dudit gabarit de filtre étant choisie parmi un ensemble de valeurs discrètes prédéterminées, ledit au moins un masque est déterminé pour chacune des valeurs discrètes de chacun desdits ensembles de valeurs discrètes.  According to an embodiment of the present invention, the discrete value of each of the parameters of said filter mask being chosen from a set of predetermined discrete values, said at least one mask is determined for each of the discrete values of each of said sets of discrete values .

Ce mode de réalisation est avantageux car il permet de contrôler le nombre de filtres utilisés pour détecter un objet et ainsi limiter le temps de calcul nécessaire pour détecter cet objet. Par exemple, dans le cas où la détection d'objets doit être effectuée en temps réel, le nombre de filtres peut être restreint ou, dans le cas où les dimensions de l'objet à détecter sont estimées a priori, le nombre de valeurs discrètes des paramètres du gabarit de filtre définissant les dimensions de chaque masque de filtre est restreint à quelques valeurs voire à une seule si les dimensions de l'objet à détecter sont connues précisément. Dans ce cas les masques de filtre se différentient uniquement par l'orientation relative de leurs parties.  This embodiment is advantageous because it makes it possible to control the number of filters used to detect an object and thus limit the computation time necessary to detect this object. For example, in the case where the detection of objects must be carried out in real time, the number of filters can be restricted or, in the case where the dimensions of the object to be detected are estimated a priori, the number of discrete values parameters of the filter mask defining the dimensions of each filter mask is restricted to a few values or even to one if the dimensions of the object to be detected are known precisely. In this case the filter masks are differentiated only by the relative orientation of their parts.

Selon un mode de réalisation de la présente invention, chacune desdites parties dudit au moins un masque étant représentée par un ensemble de rectangles adjacents deux à deux, une image intégrale étant pré-calculée à partir de l'image numérique à convoluer, la convolution de ladite image numérique avec ledit au moins un masque est calculée en utilisant ladite image intégrale.  According to an embodiment of the present invention, each of said parts of said at least one mask being represented by a set of rectangles adjacent two by two, an integral image being pre-calculated from the digital image to be convoluted, the convolution of said digital image with said at least one mask is calculated using said integral image.

Ce mode de réalisation est avantageux car il permet de calculer rapidement la convolution d'une image numérique avec un masque dès lors que celui-ci est représenté par un ensemble de rectangles.  This embodiment is advantageous because it makes it possible to quickly calculate the convolution of a digital image with a mask since it is represented by a set of rectangles.

La présente invention concerne également un programme d'ordinateur stocké sur un support d'informations, caractérisé en ce qu'il comporte des instructions permettant de mettre en oeuvre le procédé selon l'un des modes de réalisation de la présente invention ci-dessus.  The present invention also relates to a computer program stored on an information carrier, characterized in that it comprises instructions for implementing the method according to one of the embodiments of the present invention above.

Les caractéristiques de l'invention mentionnées ci-dessus, ainsi que d'autres, apparaîtront plus clairement à la lecture de la description suivante d'un exemple de réalisation, ladite description étant faite en relation avec les dessins joints, parmi lesquels: La Fig. 1 représente un schéma d'exemples de gabarits de filtre selon l'état de la technique.  The characteristics of the invention mentioned above, as well as others, will emerge more clearly on reading the following description of an exemplary embodiment, said description being given in relation to the attached drawings, among which: FIG. . 1 represents a diagram of examples of filter templates according to the state of the art.

La Fig. 2 représente un schéma d'un exemple d'un gabarit de filtre selon la présente invention.  Fig. 2 is a diagram of an example of a filter template according to the present invention.

La Fig. 3a représente un schéma illustrant le calcul d'une image intégrale à partir d'une image numérique.  Fig. 3a is a diagram illustrating the computation of an integral image from a digital image.

La Fig. 3b représente un schéma illustrant le calcul de la convolution d'une image numérique avec un masque de filtre en utilisant une image intégrale.  Fig. 3b is a diagram illustrating the calculation of the convolution of a digital image with a filter mask using an integral image.

La Fig. 2 représente un schéma d'un exemple d'un gabarit de filtre H selon la présente invention. Le gabarit de filtre H définit M filtres dont les masques MHi (j=1,...M) couvrent au moins deux parties continues de pixels P, et Pa (a=2,...,A) d'une image I. Selon l'exemple de la Fig. 2, le gabarit de filtre H définit trois (A=3) parties P,, P2 et P3. Le nombre de parties continues constituant les masques issus du gabarit de filtre H est identique pour tous ces masques et est déterminé préalablement.  Fig. 2 is a diagram of an example of an H filter template according to the present invention. The filter template H defines M filters whose masks MHi (j = 1, ... M) cover at least two continuous portions of pixels P, and Pa (a = 2, ..., A) of an image I In the example of FIG. 2, the H filter template defines three (A = 3) parts P ,, P2 and P3. The number of continuous parts constituting the masks from the H filter template is identical for all these masks and is determined beforehand.

Le gabarit de filtre H comporte N paramètres de dimensions Da (a=1,...,A et n=1,...,N), en l'occurrence N=2 selon l'exemple de la Fig. 2, un paramètre d'orientation Co, et (A-1) paramètres appelés par la suite paramètres d'association s y (o=2,...,A et q=l,...,A et o q). Ces paramètres sont définis à partir d'un plan P parallèle au support de l'image I et muni d'un repère formé par des axes orthogonaux X et Y. Les dimensions géométriques de la partie P, sont déterminées par les paramètres de dimensions D11 et D12 et l'orientation de cette partie P, qui est par exemple un angle O entre un axe Al de la partie P, et une référence du plan P, en l'occurrence l'axe X. Les dimensions géométriques de la partie P2 sont déterminées par les paramètres de dimensions D21 et D22 et par un paramètre d'association 12,. Enfin, les dimensions géométriques de la partie P3 sont déterminées par les paramètres de dimensions D3, et D32 et par un paramètre d'association 4)32.  The filter template H has N parameters of dimensions Da (a = 1, ..., A and n = 1, ..., N), in this case N = 2 according to the example of FIG. 2, an orientation parameter Co, and (A-1) parameters subsequently called association parameters s y (o = 2, ..., A and q = 1, ..., A and o q). These parameters are defined from a plane P parallel to the support of the image I and provided with a reference formed by orthogonal axes X and Y. The geometrical dimensions of the part P, are determined by the dimension parameters D11 and D12 and the orientation of this part P, which is for example an angle O between an axis Al of the part P, and a reference of the plane P, in this case the axis X. The geometric dimensions of the part P2 are determined by the dimension parameters D21 and D22 and by an association parameter 12 ,. Finally, the geometrical dimensions of the part P3 are determined by the dimension parameters D3, and D32 and by an association parameter 4) 32.

Le ou chaque paramètre d'association t q est associé à chaque partie P (o=2,...,A) du gabarit de filtre H, et définit une association entre deux parties continues P (o=2,...A) et Pq (q=1,...,A) avec o q.  The or each association parameter tq is associated with each portion P (o = 2, ..., A) of the filter mask H, and defines an association between two continuous portions P (o = 2, ... A) and Pq (q = 1, ..., A) with o q.

Selon un mode de réalisation de la présente invention, le paramètre d'association 0 q est un angle défini entre un axe d'une partie continue P et un axe d'une autre partie Pq. Selon l'exemple de la Fig. 2, le paramètre d'association 021 associé à la partie P2 est un angle orienté défini entre un axe A2 de la partie P2 et un axe Al de la partie P,, et le paramètre d'association 032 associé à la partie P3 est un angle orienté entre un axe A3 de la partie P3 et l'axe A2. Le lecteur comprendra aisément, au travers de cet exemple, que l'orientation de la partie P2 peut également être déterminée par rapport à l'axe A3 et que l'orientation de la partie P3 peut également être déterminée par rapport à l'axe Al.  According to one embodiment of the present invention, the association parameter 0 q is an angle defined between an axis of a continuous portion P and an axis of another part Pq. According to the example of FIG. 2, the association parameter 021 associated with the part P2 is an oriented angle defined between an axis A2 of the part P2 and an axis A1 of the part P ,, and the association parameter 032 associated with the part P3 is a angle oriented between an axis A3 of the portion P3 and the axis A2. The reader will readily understand, through this example, that the orientation of the part P2 can also be determined with respect to the axis A3 and that the orientation of the part P3 can also be determined with respect to the axis Al .

De manière générale, deux parties P et Pq peuvent être associées autrement que par leur orientation relative. Par exemple, ces parties peuvent être associées par un paramètre décrivant une translation de la partie P par rapport à la partie Pq ou être associées par deux paramètres, l'un décrivant leur orientation relative et l'autre une translation de la partie P par rapport à la partie Pq.  In general, two parts P and Pq can be associated other than by their relative orientation. For example, these parts may be associated by a parameter describing a translation of the part P with respect to the part Pq or be associated by two parameters, one describing their relative orientation and the other a translation of the part P with respect to in the part Pq.

Ainsi, le gabarit de filtre H permet d'obtenir des masques de filtre qui permettent de détecter des objets composés de A parties qui peuvent être articulées 20 l'une par rapport à l'autre.  Thus, filter template H provides filter masks which detect composite objects of parts which can be hinged to each other.

Pour chacun des paramètres du gabarit de filtre H (Dan, O, q), soit les neuf paramètres D'1, D'2, O, D21, D22, 021, D31, D32, C32 selon l'exemple de la Fig. 2, est déterminé un ensemble de valeurs discrètes. Ainsi, en choisissant pour chacun de ces paramètres une valeur discrète parmi les valeurs discrètes de l'ensemble de valeurs discrètes qui lui est associé, un filtre FHJ est ainsi obtenu à partir du gabarit de filtre H dont le masque MHH est utilisé pour la convolution de l'image I avec ce filtre. Par exemple, l'ensemble des valeurs discrètes correspondant au paramètre d'orientation O est défini par N valeurs O(n) = N n = 0,...,(N -1) avec N désignant une valeur entière prédéterminée, et l'ensemble des valeurs discrètes correspondant à chaque 30 paramètre d'association 0 q est défini par M valeurs cq (m) = m r, m = 0,..., (Mo -1) avec M désignant une valeur entière prédéterminée.  For each of the parameters of the H (Dan, O, q) filter mask, ie the nine parameters D'1, D'2, O, D21, D22, 021, D31, D32, C32 according to the example of FIG. 2, a set of discrete values is determined. Thus, by choosing for each of these parameters a discrete value from the discrete values of the set of discrete values associated with it, an FHJ filter is thus obtained from the filter template H whose mask MHH is used for the convolution of image I with this filter. For example, the set of discrete values corresponding to the orientation parameter O is defined by N values O (n) = N n = 0, ..., (N -1) with N denoting a predetermined integer value, and the set of discrete values corresponding to each association parameter 0 q is defined by M values cq (m) = mr, m = 0, ..., (Mo -1) with M denoting a predetermined integer value.

Comme on l'a vu précédemment, le masque MHJ d'un filtre est entièrement défini lorsque les pixels de l'image situés à l'intérieur de chacune des parties du masque sont déterminés par une technique de tracé de ligne et/ou de polygone. Dans le cas où une grille GR fixe et régulière est définie sur le plan P de la Fig. 2, grille qui peut contenir l'ensemble des pixels de l'image I ou seulement un sous-ensemble de ces pixels, chacune des parties P1, P2 et P3 est représentée respectivement par un ensemble de rectangles R1 rectangles R1,1,... R1,R1(R1=7 selon l'exemple de la Fig. 2), un ensemble de R2 rectangles R2,1,... R2,R2 (R2=4 selon l'exemple de la Fig. 2), et par un ensemble de R3 rectangles R3,1,... R2, R3 (R3=4 selon l'exemple de la Fig. 2).  As has been seen previously, the MHJ mask of a filter is entirely defined when the pixels of the image located inside each of the parts of the mask are determined by a line drawing and / or polygon technique. . In the case where a fixed and regular GR gate is defined on the plane P of FIG. 2, which can contain all the pixels of the image I or only a subset of these pixels, each of the parts P1, P2 and P3 is respectively represented by a set of rectangles R1 rectangles R1,1, .. R1, R1 (R1 = 7 according to the example of Fig. 2), a set of R2 rectangles R2,1, ... R2, R2 (R2 = 4 according to the example of Fig. 2), and by a set of R3 rectangles R3,1, ... R2, R3 (R3 = 4 according to the example of Fig. 2).

Chaque côté de chacun de ces rectangles est parallèle soit avec l'axe X soit avec l'axe Y dans le cas, par exemple où ces rectangles sont obtenus par une technique de tracé de polygone du type de la technique de Bresenham. De plus, chacun de ces rectangles est défini par quatre sommets qui correspondent à quatre points de la grille GR.  Each side of each of these rectangles is parallel either with the X axis or with the Y axis in the case, for example where these rectangles are obtained by a technique of polygon drawing of the type of the Bresenham technique. In addition, each of these rectangles is defined by four vertices that correspond to four points of the GR grid.

L'axe Al est alors défini, par exemple, par une droite reliant les centres de gravité B1 et B2 d'au moins deux des rectangles R1,1,... R1,R1, l'axe A2 est défini par une droite reliant les centres de gravité B3 et B4 d'au moins deux des rectangles R2,1,... R2,R2 et l'axe A3 est défini par une droite reliant les centres de gravité B5 et B6 d'au moins deux des rectangles R3,1,... R3,R3.  The axis Al is then defined, for example, by a line connecting the centers of gravity B1 and B2 of at least two of the rectangles R1,1, ... R1, R1, the axis A2 is defined by a straight line connecting the centers of gravity B3 and B4 of at least two of the rectangles R2,1, ... R2, R2 and the axis A3 is defined by a straight line connecting the centers of gravity B5 and B6 of at least two of the rectangles R3 , 1, ... R3, R3.

La convolution de l'image I par un masque issu du gabarit de filtre H, consiste alors à calculer la somme des pixels de l'image situés dans chacun des rectangles de chaque partie Pa(a=1,2,3), et à effectuer la somme de chacune des sommes ainsi calculées. Selon la complexité de la forme géométrique d'une partie Pa et selon la granularité de la grille GR, il peut arriver qu'un grand nombre de rectangles soit nécessaire afin de représenter précisément une partie Pa. De manière à réduire ce nombre de rectangles et par suite le calcul de la convolution de l'image I par un masque qui serait défini par une telle partie Pa, une technique de simplification de polygone peut être appliquée sur cette partie afin de diminuer ce nombre de rectangles et ainsi obtenir une représentation plus grossière de la partie Pa.  The convolution of the image I by a mask from the filter template H, then consists in calculating the sum of the pixels of the image situated in each of the rectangles of each part Pa (a = 1,2,3), and make the sum of each sum thus calculated. Depending on the complexity of the geometrical shape of a part Pa and the granularity of the grid GR, it may happen that a large number of rectangles are necessary in order to represent a part Pa precisely so as to reduce this number of rectangles and hence the computation of the convolution of the image I by a mask which would be defined by such a part Pa, a technique of simplification of polygon can be applied on this part in order to reduce this number of rectangles and thus to obtain a coarser representation from the Pa part.

Selon un mode de réalisation de la présente invention, une image intégrale est pré-calculée à partir de l'image I. Cette image intégrale est utilisée pour le calcul de la convolution de l'image I avec au moins un des masques MHj. La valeur v(x,y) de l'image intégrale à une position (x,y) de l'image I est obtenue par sommation des valeurs s(u',v') de l'image I (u'<u et v'<v), c'est-à-dire la sommation des valeurs de l'image I se situant dans un rectangle délimité par le coin haut et gauche de coordonnées (0,0) du plan P de l'image I et par le pixel de coordonnées (x,y) tel qu'illustré sur la Fig. 2a. Une fois calculée, chaque valeur v(x,y) est mémorisée dans un tableau. Ainsi, en définissant une grille rectangulaire GR sur le plan P, à chaque intersection de la grille (xi,yi) est associée une valeur v(xi,yi) de l'image intégrale.  According to an embodiment of the present invention, an integral image is pre-calculated from the image I. This integral image is used for the calculation of the convolution of the image I with at least one of the masks MHj. The value v (x, y) of the integral image at a position (x, y) of the image I is obtained by summing the values s (u ', v') of the image I (u '<u and v '<v), that is to say the summation of the values of the image I lying in a rectangle delimited by the top and left corner of coordinates (0,0) of the plane P of the image I and by the coordinate pixel (x, y) as shown in FIG. 2a. Once calculated, each value v (x, y) is stored in a table. Thus, by defining a rectangular grid GR on the plane P, at each intersection of the grid (xi, yi) is associated a value v (xi, yi) of the integral image.

Ces valeurs sont calculées préalablement au calcul de la convolution de l'image I avec un masque et mémorisées dans une mémoire. Le calcul de la convolution de l'image I par un masque MHj dont chaque partie est représentée par un ensemble de rectangles définis à partir de la grille rectangulaire GR consistant en grande partie à calculer des sommations des valeurs de pixels de l'image I sur ces rectangles, il est alors possible de calculer chacune de ces sommes par quatre opérations élémentaires (deux additions et deux soustractions). Selon l'exemple de la Fig. 2b, admettons que lors du calcul de la convolution de l'image I par un masque de filtre, la somme des pixels situés dans le rectangle R doive être calculée. En obtenant les valeurs mémorisées de l'image intégrale v(x 1,y 1), v(x l,y2), v(x2,yl) et v(x2,y2) situées au quatre coins de ce rectangle R, la somme des valeurs s(u,v) de l'image I (x15xx2, yl5y<y2) est calculée, en regard avec la Fig. 2b, par quatre opérations élémentaires (deux additions et deux soustractions), c'est-à- dire selon l'exemple de la Fig. 2a par v(x2,y2)+v(x 1,y 1)-(v(x 1,y2)- v(x2,y 1).  These values are calculated before calculating the convolution of the image I with a mask and stored in a memory. The calculation of the convolution of the image I by a mask MHj each part of which is represented by a set of rectangles defined from the rectangular grid GR consisting largely of calculating summations of the pixel values of the image I on these rectangles, it is then possible to calculate each of these sums by four elementary operations (two additions and two subtractions). According to the example of FIG. 2b, assume that when calculating the convolution of the image I by a filter mask, the sum of the pixels in the rectangle R must be calculated. By obtaining the stored values of the integral image v (x 1, y 1), v (x 1, y 2), v (x 2, y 1) and v (x 2, y 2) located at the four corners of this rectangle R, the sum values s (u, v) of the image I (x15xx2, yl5y <y2) is calculated, with reference to FIG. 2b, by four elementary operations (two additions and two subtractions), that is to say according to the example of FIG. 2a by v (x2, y2) + v (x1, y1) - (v (x1, y2) - v (x2, y1).

Claims (6)

REVENDICATIONS 1) Procédé de détection d'objets dans une image numérique par convolution de ladite image avec au moins un masque bi-dimensionnel de filtre, ledit au moins un masque comportant une première partie continue de pixels de ladite image, ladite première partie étant définie par une valeur discrète prédéterminée des paramètres d'un gabarit de filtre, caractérisé en ce que ledit au moins un masque comporte au moins une deuxième partie continue de pixels de ladite image, ladite au moins une deuxième partie étant définie par une valeur discrète prédéterminée d'au moins un des paramètres dudit gabarit de filtre, ledit au moins un paramètre définissant une association entre ladite au moins une deuxième partie et ladite première partie ou entre ladite au moins une deuxième partie et l'une desdites autres deuxièmes parties dudit au moins un masque.  1) A method for detecting objects in a digital image by convolving said image with at least one two-dimensional filter mask, said at least one mask comprising a first continuous portion of pixels of said image, said first part being defined by a predetermined discrete value of the parameters of a filter mask, characterized in that said at least one mask comprises at least a second continuous portion of pixels of said image, said at least one second portion being defined by a predetermined discrete value of at least one of the parameters of said filter mask, said at least one parameter defining an association between said at least one second part and said first part or between said at least one second part and one of said other second parts of said at least one mask . 2) Procédé de détection d'objets dans une image numérique selon la revendication 1, un axe étant défini pour chacune desdites parties dudit au moins un masque par au moins deux pixels appartenant à ladite partie, caractérisé en ce que ledit au moins un paramètre définissant l'association entre deux parties dudit au moins un masque est un angle entre les axes de ces deux parties.  2) A method of detecting objects in a digital image according to claim 1, an axis being defined for each of said portions of said at least one mask by at least two pixels belonging to said part, characterized in that said at least one parameter defining the association between two parts of said at least one mask is an angle between the axes of these two parts. 3) Procédé de détection d'objets dans une image numérique selon la revendication 2, chacune desdites parties étant représentée par un ensemble de rectangles adjacents deux à deux, caractérisé en ce que chacun desdits axes est défini par la droite joignant les centre de gravité de deux desdits rectangles.  3) A method of detecting objects in a digital image according to claim 2, each of said portions being represented by a set of rectangles adjacent two by two, characterized in that each of said axes is defined by the line joining the center of gravity of two of said rectangles. 4) Procédé de détection d'objets dans une image numérique selon l'une des revendications précédentes, la valeur discrète de chacun des paramètres dudit gabarit de filtre étant choisie parmi un ensemble de valeurs discrètes prédéterminées, caractérisé en ce que ledit au moins un masque est déterminé pour chacune des valeurs discrètes de chacun desdits ensembles de valeurs discrètes.  4) Method for detecting objects in a digital image according to one of the preceding claims, the discrete value of each of the parameters of said filter mask being chosen from a set of predetermined discrete values, characterized in that said at least one mask is determined for each of the discrete values of each of said sets of discrete values. 5) Procédé de détection d'objets dans une image numérique selon l'une des revendications précédentes, chacune desdites parties étant représentée par un ensemble de rectangles adjacents deux à deux, une image intégrale étant pré-calculée à partir de ladite image numérique, caractérisé en ce que la convolution de ladite image numérique avec ledit au moins un masque est calculée en utilisant ladite image intégrale.  5) A method of detecting objects in a digital image according to one of the preceding claims, each of said parts being represented by a set of rectangles adjacent two by two, an integral image being pre-calculated from said digital image, characterized in that the convolution of said digital image with said at least one mask is calculated using said integral image. 6) Programme d'ordinateur stocké sur un support d'informations, caractérisé en ce qu'il comporte des instructions permettant de mettre en oeuvre le procédé selon l'une des revendications 1 à 5, lorsqu'il est chargé et exécuté par un dispositif d'exécution d'actions sur des images numériques.  6) Computer program stored on an information medium, characterized in that it comprises instructions for implementing the method according to one of claims 1 to 5, when it is loaded and executed by a device performing actions on digital images.
FR0509146A 2005-09-07 2005-09-07 Object detecting method for use in e.g. animating avatar, involves defining association by association parameter, between one of set of continuous parts of pixels of image and another continuous part of pixels or one of other parts of set Pending FR2890472A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR0509146A FR2890472A1 (en) 2005-09-07 2005-09-07 Object detecting method for use in e.g. animating avatar, involves defining association by association parameter, between one of set of continuous parts of pixels of image and another continuous part of pixels or one of other parts of set

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0509146A FR2890472A1 (en) 2005-09-07 2005-09-07 Object detecting method for use in e.g. animating avatar, involves defining association by association parameter, between one of set of continuous parts of pixels of image and another continuous part of pixels or one of other parts of set

Publications (1)

Publication Number Publication Date
FR2890472A1 true FR2890472A1 (en) 2007-03-09

Family

ID=36649519

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0509146A Pending FR2890472A1 (en) 2005-09-07 2005-09-07 Object detecting method for use in e.g. animating avatar, involves defining association by association parameter, between one of set of continuous parts of pixels of image and another continuous part of pixels or one of other parts of set

Country Status (1)

Country Link
FR (1) FR2890472A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5930379A (en) * 1997-06-16 1999-07-27 Digital Equipment Corporation Method for detecting human body motion in frames of a video sequence

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5930379A (en) * 1997-06-16 1999-07-27 Digital Equipment Corporation Method for detecting human body motion in frames of a video sequence

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
BENJAMIN LAXTON: "parts-based person detector", December 2005 (2005-12-01), XP002391052, Retrieved from the Internet <URL:http://www.cse.ucsd.edu/classes/fa05/cse252c/projects/blaxton.pdf> [retrieved on 20060718] *
JU S X ET AL: "Cardboard people: a parameterized model of articulated image motion", AUTOMATIC FACE AND GESTURE RECOGNITION, 1996., PROCEEDINGS OF THE SECOND INTERNATIONAL CONFERENCE ON KILLINGTON, VT, USA 14-16 OCT. 1996, LOS ALAMITOS, CA, USA,IEEE COMPUT. SOC, US, 14 October 1996 (1996-10-14), pages 38 - 44, XP010200397, ISBN: 0-8186-7713-9 *
KRAHNSTOEVER N., YEASIN M. AND SHARMA R.: "Automatic Acquisition and Initialization of Aticulated Models", MACHINE VISION AND APPLICATIONS, vol. 14, 2003, pages 218 - 228, XP002391054 *
LIENHART R ET AL: "An extended set of Haar-like features for rapid object detection", PROCEEDINGS 2002 INTERNATIONAL CONFERENCE ON IMAGE PROCESSING. ICIP 2002. ROCHESTER, NY, SEPT. 22 - 25, 2002, INTERNATIONAL CONFERENCE ON IMAGE PROCESSING, NEW YORK, NY : IEEE, US, vol. VOL. 2 OF 3, 22 September 2002 (2002-09-22), pages 900 - 903, XP010607470, ISBN: 0-7803-7622-6 *
PEDRO F. FELZENSZWALB AND DANIEL P. HUTTENLOCHER: "Pictorial Structures for Object Recognition", INTERNATIONAL JOURNAL OF COMPUTER VISION, vol. 61, no. 1, January 2005 (2005-01-01), pages 55 - 79, XP002391051 *
VIOLA P. AND JONES M.: "Robust Real-Time Object Detection", SECOND INTERNATIONAL WORKSHOP ON STATISTICAL AND COMPUTATIONAL THEORIES OF VISION - MODELING, LEARNING, COMPUTING AND SAMPLING, 13 July 2001 (2001-07-13), vancouver, canada, XP002391053 *

Similar Documents

Publication Publication Date Title
EP2491532B1 (en) Method, computer program and device for real-time hybrid tracking of object representations in an image sequence
Nakagaki et al. A VQ-based blind image restoration algorithm
US10169676B2 (en) Shape-based registration for non-rigid objects with large holes
CN110766632A (en) Image denoising method based on channel attention mechanism and characteristic pyramid
EP0473476A1 (en) Straight edge real-time localisation device and process in a numerical image, especially for pattern recognition in a scene analysis process
FR2999325A1 (en) ITERATIVE METHOD OF DETERMINING A TWO-DIMENSIONAL OR THREE-DIMENSIONAL IMAGE FROM X-RAY TOMOGRAPHY SIGNALS
EP3221841A1 (en) Method and device for the real-time adaptive filtering of noisy depth or disparity images
US20150262362A1 (en) Image Processor Comprising Gesture Recognition System with Hand Pose Matching Based on Contour Features
WO2014133584A1 (en) Image processor with multi-channel interface between preprocessing layer and one or more higher layers
Syed et al. Addressing image and Poisson noise deconvolution problem using deep learning approaches
Khan et al. Multi‐scale GAN with residual image learning for removing heterogeneous blur
EP1387232A1 (en) Method for determining a value to be allocated to different parameters of a system
EP4202770A1 (en) Neural network with on-the-fly generation of network parameters
FR2890472A1 (en) Object detecting method for use in e.g. animating avatar, involves defining association by association parameter, between one of set of continuous parts of pixels of image and another continuous part of pixels or one of other parts of set
EP2856424A1 (en) Method of three-dimensional measurements by stereo-correlation using a parametric representation of the measured object
EP2266101B1 (en) Method and device for contact simulation using layered depth images
Chang et al. Depth upsampling methods for high resolution depth map
Tanaka et al. Latent common origin of bilateral filter and non-local means filter
FR3065097A1 (en) AUTOMATED METHOD FOR RECOGNIZING AN OBJECT
Engineer et al. Parameterizable FPGA framework for particle filter based object tracking in video
Narasimharao et al. Advanced Techniques for Color Image Blind Deconvolution to Restore Blurred Images
Grigoryan et al. Asymmetric and symmetric gradient operators with application in face recognition in Renaissance portrait art
WO2023241276A1 (en) Image editing method and related device
EP1095358B1 (en) Method for modelling three-dimensional objects or scenes
CN117391990A (en) Noise suppression method and device based on three-dimensional reconstruction of nerve radiation field and electronic equipment