Brevet FR2864874A1 — publié le 20050708

L'invention concerne un dispositif et une méthode de détection de l'orientation d'une image dans un ensemble d'images. L'invention concerne plus généralement la détection automatique de l'orientation d'une image, pouvant éventuellement contenir également du texte. Les appareils photo numériques, de même que les scanners génèrent des photos qui sont souvent visualisées sur un écran, tel un écran d'ordinateur. Ces images peuvent être visualisées correctement, c'est-àdire dans la bonne orientation ou alors dans un sens qui ne permet pas à l'utilisateur de les visualiser sans avoir à tourner la tête à gauche ou à droite, voire même à avoir la tête en bas. En effet, les appareils de capture tels les appareils photos numériques ou les caméras, peuvent saisir des images dans plusieurs sens, et notamment il n'est pas rare qu'un utilisateur prenne certaines de ses photos en mode portrait et d'autres en mode paysage. Les photos ainsi prises sont ensuite transférées vers un ordinateur et visualisées toutes dans le même sens. Certaines seront donc correctement visualisées alors que d'autres nécessiteront une rotation de 90, 180 ou 270 degrés pour être visualisées correctement. Certains dispositifs de capture et notamment certains appareils photo numériques, possèdent des capteurs d'orientation qui détectent une rotation de l'objectif et transmettent une information de rotation obtenue du capteur avec l'image. Ceci permet au dispositif de visualisation, grâce à l'information de rotation, d'effectuer automatiquement une rotation de l'image pour qu'elle apparaisse dans le bon sens. D'autres dispositifs utilisent des procédés d'extraction des caractéristiques bas niveau ou haut niveau de l'image. Ceci permet d'analyser le contenu de l'image en terme de couleur, texture et également en terme de contenu sémantique. Cependant de tels dispositifs ne sont pas robustes pour tous les types d'images. L'invention concerne plus particulièrement la rotation automatique d'images dans des dispositifs de visualisation ne recevant pas d'information d'orientation du dispositif de capture et se basant sur l'orientation d'autres images. A cet effet, l'invention concerne un procédé de détection de l'orientation d'une image dans un ensemble d'images comportant les étapes 10 de: - choix d'une image de référence parmi l'ensemble d'images, - détection de l'orientation de ladite image en fonction de l'orientation de ladite image de référence. Il est fréquent qu'un utilisateur prenne plusieurs images représentant la même scène, certaines images étant prises en mode portrait et d'autres en mode paysage. La détection d'une image de référence parmi ces images peut permettre de détecter l'orientation des autres images représentatives d'une même scène ou d'une scène proche en contenu. Ceci est particulièrement fréquent pour des images représentant un personnage dans un paysage, l'utilisateur voulant sur certaines images photographier le paysage et sur d'autres mettre en avant le personnage en faisant un gros plan. L'invention sera mieux comprise et illustrée au moyen d'exemples de 25 modes de réalisation et de mise en oeuvre avantageux, nullement limitatifs, en référence aux figures annexées sur lesquelles: les figures la et lb représentent des exemples de décomposition en sous-images, la figure 2 représente une décomposition des sous-images en blocs. Comme indiqué en figure la et lb, dans l'image cible dont on cherche l'orientation est positionnée une sous-image ainsi que dans une sousimage de référence. Selon les figures la et lb, les sous-images sont de taille inférieure à l'image dans laquelle elle est positionnée. 11 est également possible que les sous-images soient identiques aux images. Les deux sous-images ont la même taille relative par rapport à l'image dans laquelle elles sont positionnées. Les deux sous-images ont le même rapport largeur-hauteur. Dans le cas où une ou les deux sous-images sont plus petites que l'image respective dans laquelle elles se trouvent, la sous-image est positionnée de façon à obtenir une distance minimale entre la sous-image de l'image de référence et la sous-image de l'image cible dont on veut détecter l'orientation. A cette fin, on teste plusieurs positions des sous-images et l'on conserve la meilleure position. Dans un autre mode de réalisation, la sous-image est positionnée au centre de l'image pour l'image de référence et pour l'image cible. Dans un autre mode de réalisation, la sous-image est positionnée selon une règle fixe dépendant de la classe de l'image. Ceci suppose que l'image est classée préalablement selon un type qui peut être par exemple le type de scène (ville, paysage, scène intérieure, personnage,....). Il est possible de définir une règle comme suit: pour des scènes de paysage et d'intérieur, la sous-image est placée dans le centre de l'image; pour des scènes de ville, la sous-image est placée en bas de l'image. Dans encore un autre mode de réalisation, la sous-image est placée selon une règle fixe dépendant de la présence et de la position d'objets dans l'image. Ceci implique la détection préalable d'objets dans l'image. Par objet on peut également sous-entendre visage. La règle pouvant être alors de centrer la sous-image sur l'objet. Lorsque les sous-images sont positionnées dans l'image de référence et dans l'image cible, quatre mesures de distance visuelle sont effectuées. Les quatre mesures sont effectuées: - -entre la sous-image de l'image cible et la sous-image de l'image de référence, - entre la sous-image de l'image cible et la sous-image de l'image de référence ayant subie une rotation de 90 degrés, - entre la sous-image de l'image cible et la sous-image de l'image de référence ayant subie une rotation de 180 degrés, - entre la sous-image de l'image cible et la sous-image de l'image de référence ayant subie une rotation de 270 degrés, Pour ce faire, les sousimages de l'image de référence et de l'image cible sont découpées en blocs A*B, A verticalement et B horizontalement. La figure 2 illustre un exemple du découpage en blocs, où A et B valent 2. Ce découpage a pour but de respecter la non-stationarité des images traitées (les différentes zones de l'images présentent des contenus très différents). Plus le nombre de blocs est élevé, plus cet effet sera pris en compte. Le nombre A*B ne doit cependant pas dépasser un certain seuil dépendant de la résolution des images pour contenir assez d'information. Les quatre mesures de distance D entre l'image cible et l'image de référence sont calculées ainsi: (A*l D= w; D; =o Les distances D; représentent les quatre distances DO, Dl, D2, D3 entre les quatre blocs des images comme indiqué en figure 2. Un facteur de pondération w; est appliqué pour chaque bloc. La pondération peut dépendre soit d'une classification des blocs selon leur importance soit d'une mesure de confiance pour le calcul des distances. Chaque distance D; est calculée à partir de M distances particulières dm selon la formule suivante: m-1 D; = Evn,dn, ni=o m représentant le nombre de descripteurs utilisés pour le calcul d'une distance. Les descripteurs pouvant être la couleur, la texture par exemple. Le calcul de la distance dm est réalisé en utilisant des méthodes connues de l'homme du métier. Il est possible d'effectuer des différences d'histogramme de couleur, des différences d'histogramme de contour, la différence d'énergies de sous-bandes, la différence de réponses de filtres directionnels afin de mesurer ces distances. Un facteur de pondération vm est appliqué pour chaque distance dm afin de prendre en compte la confiance de calcul des m distances. Les images de référence sont des images dont l'orientation est connue à priori. L'orientation de ces images peut être obtenue par différents procédés, et notamment en détectant par exemple des objets dans ces images ou des visages, mais il est également possible de les indexer manuellement par l'utilisateur. Il est également possible d'utiliser des procédés différents du procédé proposé par la présente invention permettant de détecter l'orientation d'une image et ces procédés peuvent être utilisés pour détecter l'orientation de l'image de référence. Un tel procédé est par exemple décrit dans la demande de brevet Européen 1107182 déposée au nom de la société Eastman Kodak Company le 17 novembre 2000 et intitulée determining orientation of images containing blue sky . Lorsque plusieurs images de référence sont à la disposition du procédé, le choix de l'image de référence est effectué en faisant un calcul de J distances Ei entre l'image donnée et les images de référence à la disposition du procédé. Chaque distance Ej est calculée à partir de L distances particulières el selon la formule suivante: Ej = q, =o Un facteur de pondération cil est appliqué à chaque distance e, calculée. Chaque distance el calculée est calculée selon des méthodes connues comme indiquée précédemment pour les distances dm. L'image de référence pour laquelle la distance avec l'image cible est la plus petite est alors choisie. Ensuite les mesures de distances D; telles qu'indiquées précédemment sont calculées ainsi que D. D est donc calculée entre l'image cible et l'image de référence dans quatre positions (tournée de 0,90,180 ou 270 degrés). La plus petite distance indique la rotation que doit subir l'image cible pour être visualisée dans le bon sens. Par exemple, si la plus petite distance est celle entre l'image cible et l'image de référence tournée de 270 degrés, alors l'image cible doit être tournée de 207 degrés pour être visualisée dans le bon sens. Revendications 1. Procédé de détection de l'orientation d'une image dans un ensemble d'images caractérisé en ce qu'il comporte les étapes de: - choix d'une image de référence parmi l'ensemble d'images, - détection de l'orientation de ladite image en fonction de l'orientation de ladite image de référence. 2. Procédé selon la revendication 1 caractérisé en ce qu'il comporte une étape de calcul de distance visuelle (D) entre l'image de référence et ladite image. 3. Procédé selon la revendication 2 caractérisé en ce qu'il comporte une étape de calcul de distance visuelle (D) entre - ladite image et l'image de référence, - ladite image et l'image de référence ayant subie une rotation de 90 degrés, - ladite image et l'image de référence ayant subie une rotation de 180 degrés, - ladite image et l'image de référence ayant subie une rotation de 270 degrés. 4. Procédé selon la revendication 3 caractérisé en ce qu'il comporte une étape de détermination d'une sous-image dans l'image de référence et d'une sous-image dans ladite image, le calcul de la distance visuelle (D) entre ladite image et l'image de référence étant effectué sur les sous- images respectives. 5. Procédé selon la revendication 4 caractérisé en ce que lesdites sousimages ont la même taille relative par rapport à l'image dans laquelle chacune est positionnée. 6. Procédé selon la revendication 4 caractérisé en ce que lesdites sousimages sont centrées par rapport à l'image dans lesquelles elles sont positionnées. 7. Procédé selon la revendication 4 caractérisé en ce que lesdites sousimages sont positionnées de manière à ce que la distance visuelle entre les dites sous-images soient minimales. 8. Procédé selon l'une quelconque des revendications précédentes caractérisé en ce qu'il comporte en outre une étape de sélection de ladite image de référence en fonction de la distance entre cette image de référence et l'image cible. 9. Dispositif de détection de l'orientation d'une image dans un ensemble d'images caractérisé en ce qu'il comporte des moyens pour: -choisir une image de référence parmi l'ensemble d'images, -détecter l'orientation de ladite image en fonction de l'orientation de ladite image de référence.