FR2889608A1 - Procede et systeme embarque de reconstruction panoramique automatique - Google Patents

Procede et systeme embarque de reconstruction panoramique automatique Download PDF

Info

Publication number
FR2889608A1
FR2889608A1 FR0508250A FR0508250A FR2889608A1 FR 2889608 A1 FR2889608 A1 FR 2889608A1 FR 0508250 A FR0508250 A FR 0508250A FR 0508250 A FR0508250 A FR 0508250A FR 2889608 A1 FR2889608 A1 FR 2889608A1
Authority
FR
France
Prior art keywords
pixels
matrix
image
significant
transformation
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
FR0508250A
Other languages
English (en)
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.)
Sagemcom Broadband SAS
Original Assignee
Sagem Communications 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 Sagem Communications SAS filed Critical Sagem Communications SAS
Priority to FR0508250A priority Critical patent/FR2889608A1/fr
Priority to FR0508583A priority patent/FR2889609B1/fr
Priority to EP06291255.5A priority patent/EP1750227B1/fr
Publication of FR2889608A1 publication Critical patent/FR2889608A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4038Image mosaicing, e.g. composing plane images from plane sub-images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/37Determination of transform parameters for the alignment of images, i.e. image registration using transform domain methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Processing (AREA)

Abstract

Le procédé de reconstruction panoramique automatique permet d'abord de détecter et apparier les points significatifs d'une zone de recouvrement de deux images, la zone commune (20) étant identifiée (51) à l'aide d'un algorithme de calcul de décalage utilisant le domaine de Fourier.Après une détection (500) de points significatifs sur l'image de référence et une détermination des points correspondants sur l'autre image, le procédé comprend ensuite une étape (550) de transformation des images et de détermination de la focale en vue du recollement. Une matrice de transformation (méthode à 3 paramètres) est déterminée à l'aide des points appariés et la focale est déterminée. Une étape (56) de correction de la perspective avec ajout d'un quatrième paramètre représentant la profondeur est alors réalisée.Un recollage cylindrique et une correction des erreurs de transition (luminance,...) permettent de finaliser la reconstruction. Les éventuelles imperfections sont corrigées, notamment par un lissage partiel.

Description

Procédé et système embarqué de reconstruction panoramique
automatique DOMAINE TECHNIQUE DE L'INVENTION La présente invention s'applique au domaine du traitement électronique de données représentatives d'une image pour permettre un recouvrement de plusieurs photos prises à la main à l'aide d'un appareil numérique. La présente invention concerne plus particulièrement un procédé et un système embarqué de reconstruction panoramique automatique.
ARRIERE-PLAN TECHNOLOGIQUE DE L'INVENTION lo II est connu dans l'art antérieur d'assembler des images correspondant à des photographies numériques prises d'un même lieu dans différentes directions. Toutefois les méthodes utilisées requièrent la plupart du temps une intervention de l'utilisateur. D'autres solutions utilisent des algorithmes particulièrement complexes devant déterminer la manière de combiner les images deux à deux. Le temps de recherche des zones de recouvrement est particulièrement long (de l'ordre d'une minute) lorsqu'il faut réaliser un panoramique à 360 . De plus, cela nécessite la puissance de calcul d'un PC. Il existe donc un besoin pour simplifier les calculs pour la reconstruction panoramique à partir de plusieurs images.
Le document US 6 018 349 enseigne une méthode de construction de grandes mosaïques d'image de façon automatique utilisant un algorithme d'alignement d'un jeu d'images se recouvrant partiellement. Cependant, la méthode utilise des calculs complexes, ce qui représente un inconvénient pour implémenter à moindre coût une fonctionnalité de reconstruction panoramique dans un appareil numérique portatif, par exemple sur une puce électronique de type DSP (Digital Signal Processing).
Le document US 6 044 181 décrit une méthode de détermination de focale consistant à assembler des images se recouvrant partiellement dans une mosaïque par alignement sur un plan. Des transformations entre les zones de recouvrement d'une image à l'autre sont d'abord calculées et une focale de chaque image est calculée. Une détermination de focale entre deux images peut être déduite et une rotation reliant deux images peut être calculée. Une combinaison de la rotation calculée et de la détermination de focale permet alors de relier chaque image à un système de coordonnées 3D. Ce type de méthode exige des calculs longs, de sorte qu'elle est également difficile à implémenter dans un appareil numérique portatif.
Il est également connu dans l'art antérieur, par le document US 6 785 427, une méthode utilisant des pyramides de résolution multi-couches pour assembler à une première image une seconde image recouvrant partiellement la première image. Toutefois, ce type de méthode utilise un mode d'ajustement qui ne prend pas en compte la notion de perspective dans l'image, de sorte que des erreurs de transformation dues à la perspective sont observées dans l'image panoramique obtenue par reconstruction.
Des produits comme Autostich et Panorama maker (Arcsoft) sont également connus pour réaliser sur PC des assemblages de type panorama ou mosaïque à partir d'images numériques. Lors d'une réalisation automatique de l'assemblage, les points d'ancrage choisi dans les zones de recouvrement peuvent être inappropriés avec ce type de produits. Un autre reproche couramment fait à propos de ces produits est le fait que le panorama résultant perd généralement le piqué initial des photos sources: il est toujours plus flou. Ces produits ne prennent pas en compte les défauts de perspective ou en tout cas n'assurent pas un traitement automatique efficace de ces défauts.
Il existe donc un besoin pour obtenir des panoramas ou des mosaïques à partir de photos prises par un appareil portatif, par un calcul qui soit le plus simple possible pour pouvoir être embarqué sur l'appareil portatif, tout en restant extrêmement efficace: en particulier, il faut éviter lors de la 3o reconstruction panoramique d'introduire des erreurs de perspective et de recollage.
DESCRIPTION GENERALE DE L'INVENTION
La présente invention a pour but de pallier certains inconvénients de l'art antérieur en proposant un procédé de reconstruction panoramique automatique qui résout notamment les problèmes de prise en compte de la perspective et permet l'obtention rapide d'une image panoramique très fidèle à la réalité, sans apparition de défaut visuel.
A cet effet, l'invention concerne un procédé de reconstruction panoramique automatique d'une image de sortie composée de pixels à partir d'au moins deux images d'entrée numériques se recouvrant au moins io partiellement, mis en oeuvre par un système de reconstruction panoramique automatique incluant un module d'appariement d'images numériques et un circuit de traitement pour transformer des données représentatives d'images d'entrée et fabriquer des données représentatives d'images de sortie, comportant une étape de sélection d'une zone commune de recouvrement 1s entre deux images d'entrée, l'étape de sélection utilisant le module d'appariement d'images numériques pour sélectionner, parmi des données représentatives des deux images d'entrée, deux séries de données de travail représentatives des zones respectives de recouvrement, caractérisé en ce qu'il comprend une étape de détermination dans la zone commune de paires de pixels significatifs en correspondance sur chacune des deux images d'entrée, les pixels d'une paire de coordonnées de position respectives xl, yl et xk, yk représentant un même détail visuel dans la zone commune, et une étape de calcul utilisant le circuit de traitement pour: - dans un premier temps, déterminer au moins une transformation de type matricielle entre les deux images d'entrée et déterminer une focale en vue du recollement, le circuit de traitement utilisant lesdites coordonnées de position respectives xl, yl et xk, yk pour déterminer la transformation de type matricielle; - dans un second temps, réaliser une correction d'erreurs de 30 perspective en prenant en compte une composante de profondeur pour chacune des paires de pixels significatifs et en déterminant à nouveau ladite transformation de type matricielle; le procédé comprenant également une étape d'assemblage par un recollage de type cylindrique après récupération d'un ensemble de pixels représentatifs d'une superposition des images d'entrée, ladite superposition étant déduite de la transformation de type matricielle déterminée lors de ladite étape de calcul, une étape de corrections d'erreurs de transition étant réalisée notamment dans la zone commune par le circuit de traitement.
Selon une autre particularité, l'étape de calcul utilise le circuit de lo traitement pour déterminer notamment une première matrice de transformation à appliquer au moins à la zone commune, l'étape de calcul comportant: - a) une étape préalable de détermination d'une focale; - b) une étape de détermination, à partir de coordonnées de position xl, yl et xk, yk des pixels significatifs appariés et de la focale, d'une matrice intermédiaire solution du système d'équations: xl xk yl =M yk 1 1 où M = Vk Rk RI-1V1-1, Rk et RI étant des matrices de rotation 3*3 dépendant de 3 angles de rotation et V dépendant de la focale; - c) une étape d'estimation d'un critère d'erreur représentatif de différences calculées pour les pixels significatifs appariés entre des coordonnées déduites à l'aide de la matrice intermédiaire et des coordonnées du pixel apparié ; d) une étape de modification de la rotation par incrémentation de Rk RI-1; - e) une étape d'itération des étapes b), c) et d) jusqu'à ce que le critère d'erreur soit minimisé pour obtenir une matrice intermédiaire optimisée; l'étape de calcul comprenant ensuite une étape de correction de perspective.
Selon une autre particularité, l'étape de correction de perspective utilise le circuit de traitement pour ajouter à chacun des pixels significatifs appariés une composante additionnelle de profondeur zk, zl, l'étape de correction de perspective comprenant: - i) une étape de détermination préalable d'une valeur de composante zk, zl pour chacun des pixels significatifs appariés qui minimise ledit critère d'erreur en utilisant la matrice intermédiaire optimisée; - ii) une étape de détermination, à partir de coordonnées de position xl, yl, zl et xk, yk, zl des pixels significatifs appariés et de la focale, d'une io seconde matrice intermédiaire Mpsolution du système d'équations: xk = Mp yk zk où la seconde matrice intermédiaire est du même type que la matrice intermédiaire; - iii) une étape d'estimation dudit critère d'erreur; - iv) une étape de modification de la rotation; - v) une étape d'itération des étapes i), ii), iii) et iv) jusqu'à ce que le critère d'erreur soit minimisé pour obtenir une matrice optimisée, formant une première matrice de transformation, ainsi que des indications de profondeurs zk, zl; le procédé comprenant en outre une étape d'assemblage incluant une projection, sur une portion d'un cylindre, de pixels obtenus par utilisation de la première matrice de transformation.
Ainsi, l'invention permet d'obtenir une précision plus grande sur les pixels grâce à la correction de perspective, tout en minimisant les étapes de 25 calcul complexes par des calculs matriciels.
Selon une autre particularité, l'étape de calcul utilise le circuit de traitement pour déterminer une seconde matrice de transformation à appliquer au moins au reste des images d'entrée, l'étape de correction de perspective comprenant: - une étape de détermination dans la zone commune d'un arrière-plan dans lequel les pixels ont des valeurs supérieures à 1 pour la composante additionnelle de profondeur zk, zl; - une étape d'itération des étapes ii) à v) en utilisant les valeurs de composante zk, zl obtenues à l'étape v) uniquement pour les pixels significatifs appariés dudit arrière-plan, pour obtenir la seconde matrice de transformation.
L'invention permet donc avantageusement de déceler les différents plans et les erreurs de transformation dues à la perspective peuvent être io efficacement limitées.
Un autre but de l'invention est de proposer un système automatique de reconstruction panoramique qui résout notamment les problèmes de prise en compte de la perspective et permet de réduire la complexité des calculs, tout en produisant une image panoramique très fidèle à la réalité, sans apparition de défaut visuel.
Ce but est atteint par un système de reconstruction panoramique automatique incluant un module d'appariement d'images numériques et un circuit de traitement pour transformer des données représentatives d'images d'entrée et fabriquer des données représentatives d'images de sortie, caractérisé en ce que le module d'appariement comprend des moyens de sélection d'images d'entrée et des moyens de sélection de zones d'image, le circuit de traitement comportant: - des moyens pour déterminer dans la zone commune des paires de pixels significatifs en correspondance sur chacune des deux images d'entrée, les pixels d'une paire de coordonnées de position respectives xl, yl et xk, yk représentant un même détail visuel dans la zone commune; - un premier module de calcul pour déterminer notamment une première matrice de transformation à appliquer au moins à la zone commune, le premier module de calcul étant doté de moyens logiciels pour: o a) déterminer une focale; o b) déterminer, à partir de coordonnées de position xl, yl et xk, yk des pixels significatifs appariés et de la focale, une première matrice intermédiaire solution du système d'équations:
M
xk yk 1 où M = Vk Rk R,"' Vi-1, Rk et R, étant des matrices de rotation 3*3 dépendant de 3 angles de rotation et V dépendant de la focale; o c) estimer un critère d'erreur représentatif de différences calculées pour les pixels significatifs appariés entre des io coordonnées déduites à l'aide de la matrice intermédiaire et des coordonnées du pixel apparié ; o d) modifier la rotation par incrémentation de Rk; o e) itérer les traitements b), c) et d) jusqu'à ce que le critère d'erreur soit minimisé pour obtenir une matrice intermédiaire optimisée; - un second module de calcul en liaison avec le premier module de calcul pour traiter des données de correction de perspective en ajoutant à chacun des pixels significatifs appariés une composante additionnelle de profondeur zk, zl, le second module de calcul étant doté de moyens logiciels pour: o i) déterminer préalablement une valeur de composante zk, zl pour chacun des pixels significatifs appariés qui minimise ledit critère d'erreur en utilisant la matrice intermédiaire optimisée; o ii) déterminer, à partir de coordonnées de position xl, yl, zl et xk, yk, zl des pixels significatifs appariés et de la focale, une seconde matrice intermédiaire solution du système d'équations: xl xk yl = Mp yk zl zk où la seconde matrice intermédiaire est du même type que la première matrice intermédiaire; o iii) estimer ledit critère d'erreur; o iv) modifier la rotation; o v) itérer les traitements ii), iii) et iv) jusqu'à ce que le critère d'erreur soit minimisé pour obtenir une matrice optimisée, formant une première matrice de transformation, ainsi que des indications de profondeurs zk, zI; io - des moyens d'assemblage pour calculer une projection sur une portion d'un cylindre, de pixels obtenus par utilisation de la première matrice de transformation.
BREVE DESCRIPTION DES DESSINS
D'autres particularités et avantages de la présente invention is apparaîtront plus clairement à la lecture de la description ci-après, faite en référence aux dessins annexés, dans lesquels: - la figure 1 représente un logigramme de déroulement des étapes du processus selon un mode de réalisation l'invention; - la figure 2 représente un exemple de mode de réalisation d'un 20 système de reconstruction panoramique automatique pour la mise en oeuvre du procédé de l'invention; - la figure 3 illustre, après la correction de perspective, la correction des défauts de transition apportée grâce à l'invention; - la figure 4 illustre une reconstruction de type mosaïque permise par 25 le procédé de l'invention; - la figure 5 montre des zones à disparité de traitement pour la correction de perspective; - les figures 6A et 6B illustrent respectivement une image sans correction de perspective et une image avec correction de perspective selon l'invention.
DESCRIPTION DES MODES DE REALISATION PREFERES DE 5 L'INVENTION L'invention propose un procédé se déroulant en plusieurs phases: - détermination de la zone commune; - détection et appariement de points ou pixels significatifs; - transformation des images et détermination de la focale en vue du io recollement; - correction des erreurs de perspective; recollage cylindrique et corrections des erreurs de transition (luminance,..).
Le procédé de reconstruction panoramique automatique permet is d'abord de détecter et apparier les points significatifs d'une zone de recouvrement de deux images, la zone commune (20) pouvant être identifiée par comparaison, par exemple à l'aide d'un algorithme de calcul de décalage entre les images (P1, P2) utilisant le domaine de Fourier ou méthode analogue.
Le procédé vise à produire automatiquement une image panoramique de reconstruction établie à partir d'au moins deux images d'entrée (P1, P2). L'image de sortie composée de pixels est obtenue à partir d'au moins deux images d'entrée numériques (P1, P2) se recouvrant au moins partiellement. L'une ou l'autre, voire les deux images d'entrée (P1, P2) peuvent être elles- mêmes définies par des pixels transformés qui ont été obtenus lors d'un traitement incluant selon l'invention une étape (56) de correction de perspective. Comme illustré à la figure 4, le procédé selon l'invention est adaptable à la reconstruction mosaïque. En référence à la figure 2, le procédé selon l'invention est mis en oeuvre par un système (1) de reconstruction panoramique automatique. Ce système (1) comprend un lo module (10) d'appariement d'images numériques permettant de sélectionner des images d'entrée et des zones d'image. Le système (1) est également pourvu d'un circuit de traitement (12) pour transformer des données représentatives d'images d'entrée (21, 22) et fabriquer des données représentatives d'images de sortie (3).
Dans le mode de réalisation de la figure 2, le circuit de traitement (12) comprend des moyens pour déterminer dans la zone commune (20) des paires de pixels significatifs en correspondance sur chacune des deux images d'entrée (P1, P2). Les pixels d'une paire de coordonnées de position io respectives xl, yl et xk, yk représentent un même détail visuel dans la zone commune (20). Le circuit de traitement (12) reçoit des données en provenance du module d'appariement (10), notamment des données de travail (211, 212) correspondant aux zones de recouvrement. Ces données de travail (211, 212) sont stockées dans une mémoire (15) à la disposition du circuit de traitement (12). Le module d'appariement (10) est relié à des moyens de stockage d'entrée (71) qui mémorisent des données (21, 22) représentatives des deux images d'entrée (P1, P2). Le circuit de traitement (12) est relié à des moyens de stockage de sortie (72) permettant de mémoriser des données (3) représentatives de la reconstruction panoramique.
Comme illustré à la figure 2, le circuit de traitement (12) est doté d'un premier module de calcul (121) pour déterminer notamment une première matrice (M1) de transformation à appliquer au moins à la zone commune (20) . Un second module de calcul (122) du circuit de traitement (12), en liaison avec le premier module de calcul (121), permet de traiter des données de correction de perspective en ajoutant à chacun des pixels significatifs appariés obtenus une composante additionnelle de profondeur zk, zl. Dans un mode de réalisation préféré de l'invention, la composante additionnelle de profondeur zk, zl est déterminée autour d'une valeur de référence égale à 1.
Le circuit de traitement (12) est doté en outre de moyens (125) d'assemblage pour calculer une projection, sur une portion d'un cylindre, de pixels obtenus par utilisation de la première matrice (M1) de transformation. Il
Le premier module de calcul (121) peut être agencé pour déterminer une seconde matrice (M2) de transformation à appliquer au moins au reste des images d'entrée (P1, P2). Ce second module de calcul (122) comprend par exemple des moyens pour déterminer dans la zone commune (20) un s arrièreplan (AP) dans lequel les pixels ont des valeurs supérieures à 1 pour la composante additionnelle de profondeur zk, zI.
En référence avec la figure 1, le procédé selon l'invention comprend une étape (50) de sélection d'images à traiter comme des images d'entrée (P1, P2) permettant une reconstruction d'un panoramique. Ces images ont io par exemple une zone de recouvrement correspondant à au moins 25% de l'image totale, de sorte qu'il est possible d'effectuer un assemblage d'images deux à deux. Une mosaïque peut être reconstituée en assemblant deux à deux les images voisines et en prenant un plan de référence.
Le procédé peut comporter une étape (51) de sélection d'une zone commune (20) de recouvrement entre deux images d'entrée (P1, P2). Cette étape de sélection (51) utilise le module (10) d'appariement d'images numériques pour sélectionner, parmi les données (21, 22) représentatives des images d'entrée (P1, P2), deux séries de données de travail (211, 212) représentatives des zones respectives de recouvrement. Le procédé comporte ensuite une étape (500) de détermination dans la zone commune (20) de paires de pixels significatifs en correspondance sur chacune des deux images d'entrée (P1, P2). Après l'étape de détermination (500) de paires de pixels significatifs, par détection préalable de pixels significatifs sur l'image de référence et une détermination des points correspondants sur l'autre image, le procédé se poursuit avec une étape (550) de calcul pour transformer des images et déterminer la focale en vue du recollement. Une matrice de transformation (méthode à 3 paramètres) est déterminée à l'aide des pixels appariés et la focale est déterminée. Puis une étape (56) de correction de la perspective est réalisée avec ajout d'un quatrième paramètre représentant la profondeur. Enfin, une étape (6) d'assemblage incluant une projection, sur une portion d'un cylindre, permet un recollage cylindrique. Ce recollage cylindrique, complété par une correction des erreurs de transition (luminance,...) permet de finaliser la reconstruction. Les éventuelles imperfections sont corrigées, notamment par un lissage partiel.
Dans un mode de réalisation de l'invention, une détermination du décalage général entre contours est réalisée pour estimer la zone commune où les contours associés aux mêmes objets coïncident. Chaque pixel d'une image est repéré par ses coordonnées (x, y) dans un repère xOy lié à l'image et dont l'origine est au centre du premier pixel analysé dans cette image. La luminance du pixel de coordonnées (x, y) est prise en compte et mémorisée.
Une étape (510) de calcul d'une information de décalage entre les deux images d'entrée (P1, P2) est réalisée par le circuit de traitement (12) après l'étape de sélection (51). Cette étape (510) de calcul peut consister à appliquer la transformation de Fourier discrète, à deux dimensions, à la zone commune (20) issue de la première image (P1) de référence et à la zone correspondante de la seconde image (P2). Cette seconde image (P2) a par 1s exemple été traitée lors de l'étape (51) de sélection pour coïncider en partie avec la première image sur une zone commune (20) aux deux images d'entrée (P1, P2).
Dans un mode de réalisation préféré de l'invention, l'étape (510) de calcul de l'information de décalage comprend une méthode de corrélation de phase incluant un traitement des premières et secondes séries de données de travail (211, 212) par un passage dans le domaine de Fourier pour déterminer une matrice de corrélation puis un retour dans le domaine spatial des images pour déterminer un pic de corrélation. Pour une zone commune (20) de dimensions N*M pixels, un calcul d'un coefficient transformé, noté F (u,v), est effectué suivant une équation du type: N-1 M-1 F(u,v)=. f(x,y).exp[-2j.rr.(x.u/N + y.v/M)] x=o y=o Le graphe de la transformée de Fourier d'une image qui est 3o représentée par N.M valeurs de luminance comporte N.M coefficients transformés F(u,v) et il peut être représenté par une surface ayant deux dimensions correspondant aux fréquences u et v, et ayant une troisième dimension correspondant au module des coefficients F(u,v). Pour visualiser ce graphe, il est possible de représenter au moins une courbe de niveau projetée sur le plan des fréquences (u, v). On se reportera par exemple, pour ce type de méthodologie, aux nombreux documents de référence notamment s R.N. Bracewell, The Fourier Transforms and Its Applications, McGraw-Hill, New York, 1965.
L'étape (510) de calcul de l'information de décalage peut comprendre les étapes suivantes, effectuées par le circuit de traitement (12) : - une première transformation de Fourier réalisée pour des données de pixels de la première série de données de travail (211) correspondant à la première image d'entrée (P1) ; - une seconde transformation de Fourier, identique à la première transformation de Fourier, réalisée pour des données de pixels de la seconde série de données de travail (212) correspondant à la seconde 1s image d'entrée (P1) ; - un calcul de corrélation de phase pour déterminer des nombres complexes correspondant chacun à une position de pixel dans la zone commune (20) et obtenus par utilisation deux à deux des coefficients de Fourier obtenus lors desdites première et seconde transformations de Fourier; - une harmonisation de tous les modules des nombres complexes obtenus à une même valeur déterminée; - une transformation de Fourier inverse à partir des nombres complexes ayant leur module harmonisé pour obtenir un tableau de nombres réels; - une détection du nombre réel le plus élevé pour déterminer, à partir de coordonnées de position associées à ce nombre, le décalage entre les zones de recouvrement des images d'entrée (P1, P2).
L'obtention du décalage entre les images, sur les coordonnées x et y, 3o fournit la translation à effectuer pour passer d'une zone de la première image (P1) à une zone correspondante de la seconde image (P2). Une fois la zone commune (20) identifié et le décalage estimé entre les zones de recouvrement, il faut chercher les poins significatifs les plus aisés à apparier. Dans l'exemple de la figure 1, l'étape 500) de détermination de paires de pixels significatifs comprend une première étape (53) de détection sur la première image (P1), dans la zone commune (20), d'une première série de pixels significatifs. Une étape (52) de répartition de la zone commune (20) en sous-zones (4) complémentaires peut aussi être effectuée par un traitement de la première série de données de travail (211). Cette étape (52) de répartition en sous-zones (4) comporte par exemple un traitement de la première série de données de travail (211) par le circuit de traitement (12) pour répartir des sous-groupes de données de travail représentatifs des sous-zones (4) de la zone commune (20).
La sélection pendant la première étape (53) de détection des pixels significatifs peut s'effectuer grâce à une étape (530) de comparaison réalisée par le circuit de traitement (12). Une matrice de calcul 2*2, représentative de 1s caractéristiques d'intensité lumineuse au voisinage d'un pixel et tenant compte d'une éventuelle convolution par un filtre gaussien, est utilisée dans cette étape de comparaison (530) pour permettre de déterminer si la matrice de calcul possède deux valeurs propres supérieures chacune à un seuil déterminé.
Sur la première image d'entrée (P1), les pixels significatifs sont par exemple détectés, lors de la première étape (53) de détection, via une sélection dans plusieurs sous-groupe de données de travail, de données caractéristiques d'un pixel significatif. Ces données caractéristiques peuvent être identifiées en fonction de résultats fournis par un module détecteur de Harris du type agencé pour estimer un gradient d'intensité lumineuse au voisinage d'un pixel d'une image numérique.
L'opération de détection peut être décrite par la formule suivante: E.r.Y = vv 11,1'IS+ll,l'+Y -111,1' où wu,v représente un filtre gaussien et I une grandeur représentant l'intensité lumineuse.
I x+u,y+v peut se comprendre comme le carré du gradient (al ax) al al \ ax ay al al ' al 2 ax ay ay, de l'intensité lumineuse, puis s'écrire: En tenant compte de la convolution par le filtre gaussien w, il est possible de réécrire l'opération de détection comme suit: E.t.r = (x,Y)
A C C B
T avec B=w al al
C=w -- ax ay s On peut donc travailler sur les valeurs propres de cette nouvelle matrice, ces valeurs propres étant notées a et (3. Lorsque le pixel traité est dans une région lumineuse peu caractéristique, il y aura peu de variations et les valeurs de a et [3 seront faibles. Si on rencontre une ligne, alors l'une seulement des valeurs propres sera importante. Si on rencontre un coin, cela io se traduira par une forte variation dans toutes les directions, de sorte que les deux valeurs propres a et (3 seront élevées. En appelant Det le déterminant de la nouvelle matrice et Tr la trace de la nouvelle matrice, il est permis de détecter des pixels significatifs (coins) dans la zone commune (20) de la première image (P1) en calculant le facteur R comme suit: R = Det k. Tr2 R=a3-k(a+(3)2 avec par exemple Nk =0,4 A=w Les pixels retenuscorrespondent alors à un summum du facteur R. Les pixels retenus sont répartis dans les sous-zones (4). Au moins un pixel significatif est détecté par exemple pour chaque sous-zone (4). Chacune des valeurs propres peut être comparée à un seuil déterminé permettant une détection, uniquement si les deux valeurs a et 13 dépassent les seuils.
En référence à la figure 1, l'étape (500) de détermination de paires de pixels significatifs comprend une étape (54) de détection sur la seconde image (P2) d'une seconde série de pixels significatifs en correspondance avec ladite première série de pixels détectés sur la première image (P1).
o Dans un mode de réalisation de l'invention, la seconde étape (54) de détection comporte une localisation par le circuit de traitement (12) de sous-zones de la seconde image (P2) par utilisation de l'information de décalage. La seconde étape (54) de détection comprend ensuite, pour chaque pixel significatif à apparier, au moins une étape de re- détermination du décalage 1s via une méthode de corrélation de phase (par exemple analogue à la méthode susmentionnée utilisant le domaine de Fourier: algorithme dit de Shift Fourier) pour estimer une localisation du pixel à apparier dans une fenêtre rectangulaire (8) de dimensions inférieures à celles de la sous-zone correspondante. La fenêtre rectangulaire (8) de dimensions réduites est recentrée autour d'un pixel déduit à l'aide du décalage re-déterminé. L'étape de re-détermination du décalage est alors répétée jusqu'à l'obtention d'une stabilité du décalage permettant de déterminer la position du pixel à apparier.
Un critère de seuillage permet de corriger d'éventuelles imprécisions et d'éliminer les pixels présélectionnés dans la première d'image d'entrée qui ne s'apparient pas. Par exemple un pixel significatif détecté lors de la première étape (53) de détection est éliminé si une étape de redétermination du décalage relève une variation de décalage supérieur à un seuil de décalage pendant la seconde étape (54) de détection. Ce seuil de décalage est par exemple de un ou deux pixels (décalage selon les coordonnées x ou 3o y). L'avantage de la méthode de détection de paires de pixels significatifs est qu'elle est très précise et évite de se soucier des éventuels problèmes liés à une distorsion ou à une rotation (méthode plus rapide). L'élimination d'un pixel significatif détecté lors de la première étape (53) de détection peut être aussi prévue lorsqu'un critère de similitude ente les fenêtres montre que les différences sont trop importantes.
Une fois les pixels significatifs détectés, appariés et stockés dans une mémoire (15) à la disposition du circuit de traitement (12), ceux-ci peuvent servir à déterminer une première matrice (M1) de transformation permettant de déduire une zone de la seconde image (P2) d'une zone correspondante de la première image (P1). Cette première matrice (M1) de transformation est de type homographie plane et tient compte de la focale (distance entre le io centre optique de l'objectif et l'image d'un objet situé à l'infini).
En référence à la figure 1, après l'étape (500) de détermination des paires de pixels significatifs, le procédé comporte une étape (550) de calcul utilisant le circuit de traitement (12) pour déterminer notamment la première matrice (M1) de transformation à appliquer au moins à la zone commune (20). Dans un mode de réalisation de l'invention, l'étape de calcul (550) comporte: - a) une étape préalable de détermination d'une focale; - b) une étape de détermination, à partir de coordonnées de position xl, yl et xk, yk des pixels significatifs appariés et de la focale, d'une matrice 20 intermédiaire (M) solution du système d'équations: xi xk yl = M yk 1 1 où M = Vk Rk RI-1V("1, Rk et R, étant des matrices de rotation 3*3 dépendant de 3 angles de rotation et V dépendant de la focale; - c) une étape d'estimation d'un critère d'erreur représentatif de différences calculées pour les pixels significatifs appariés entre des coordonnées déduites à l'aide de la matrice intermédiaire (M) et des coordonnées du pixel apparié ; - d) une étape de modification de la rotation par incrémentation de Rk RI-1; e) une étape d'itération des étapes b), c) et d) jusqu'à ce que le critère d'erreur soit minimisé pour obtenir une matrice intermédiaire optimisée (M').
L'étape a) préalable de détermination de la focale débute en fixant la focale à une valeur initiale puis la matrice M = Vk Rk Ri-'V1"1 est déterminée. Ce processus est itéré en faisant varier la focale et on choisit la focale qui minimise le critère d'erreur. Cette focale est exprimée en nombre de pixels.
Le critère d'erreur estimé lors de l'étape c) d'estimation est par exemple de type quadratique et peut s'écrire comme suit: iO IJ X 1k d OkII Z avec x" et x représentant les positions respectives d'un pixel obtenu par transformation avec la première matrice intermédiaire (M) et d'un pixel de 15 coordonnées idéales correspondant au pixel apparié.
Dans un mode de réalisation de l'invention, l'incrémentation pour parvenir à déterminer la matrice intermédiaire optimisée (M') peut être du type: M=(I+D0)M avec représente l'angle de rotation de la transformation. Dn=
où Ç)= wx wy wz En référence à la figure 1, l'étape de calcul (550) comprend, après l'obtention de la matrice intermédiaire optimisée (M'), une étape (56) de correction de perspective utilisant le circuit de traitement (12) pour ajouter à chacun des pixels significatifs appariés une composante additionnelle de profondeur zk, zl. L'étape (56) de correction de perspective comporte en particulier: - i) une étape de détermination préalable d'une valeur de composante zk, zl pour chacun des pixels significatifs appariés qui minimise ledit critère d'erreur en utilisant la matrice intermédiaire optimisée (M') ; - ii) une étape de détermination, à partir de coordonnées de position xl, yl, zl et xk, yk, zl des pixels significatifs appariés et de la focale, d'une nouvelle matrice intermédiaire (deuxième matrice intermédiaire) solution du système d'équations: xl xk yl = Mp yk zl zk où la deuxième matrice intermédiaire est du même type que la première lo matrice intermédiaire (M) ; - iii) une étape d'estimation dudit critère d'erreur; - iv) une étape de modification de la rotation; - v) une étape d'itération des étapes ii), iii) et iv) jusqu'à ce que le critère d'erreur soit minimisé pour obtenir une matrice optimisée, formant une 1s première matrice (M1) de transformation, ainsi que des indications de profondeur zk, zl.
Ainsi, un quatrième paramètre qui représente la profondeur est introduit pour la détermination de la transformation. Chaque composante de profondeur ajoutée est normée autour de 1. L'intérêt de ce type de calcul pour obtenir des matrices (M1, M2) de transformation est d'utiliser uniquement un nombre restreint de pixels (les pixels significatifs appariés) pour déterminer le passage d'une image à l'autre, et ceci sans connaissances a priori des caractéristiques de l'image.
Dans l'exemple de la figure 1, l'étape (550) de calcul utilise le circuit de traitement (12) pour déterminer une seconde matrice (M2) de transformation à appliquer au moins au reste des images d'entrée (P1, P2). L'étape (56) de correction de perspective comprend alors: - une étape (561) de détermination dans la zone commune (20), d'un arrière-plan (AP) dans lequel les pixels ont des valeurs supérieures à 1 pour 30 la composante additionnelle de profondeur zk, zl; et - une étape (562) d'itération des étapes ii) à v) en utilisant les valeurs de composante zk, zl obtenues à l'étape v) uniquement pour les pixels significatifs appariés dudit arrière-plan (AP), pour obtenir la seconde matrice (M2) de transformation.
s - On récupère ainsi les matrices de transformation suivantes: -la première matrice Ml(z) que l'on applique à l'intersection des deux images d'entrée (P1, P2) ; - une matrice supplémentaire M(z=arrière-plan) que l'on applique sur l'extrémité de l'image, cette matrice supplémentaire donnant l'angle wz; io - la seconde matrice M2(wz fixé) qui corrige l'effet de perspective.
Une transition douce doit en outre être effectuées pour l'utilisation de ces deux matrices de transformation (Ml, M2). L'apport de la correction de perspective par rapport à l'art antérieur est de permettre un bon alignement des lignes de fuite reconstituées à partir de plusieurs images. Ainsi les déformations, visibles notamment dans les panoramiques représentant des monuments, sont supprimées. La comparaison entre les figures 6A et 6B permet de montrer l'amélioration apportée pour une image traitée avec la correction de perspective (figure 6B) par rapport à une image non traitée (figure 6A). En outre, les défauts (D) de transition sont corrigés comme l'illustre la figure 3.
En référence à la figure 1, l'étape (6) d'assemblage comporte une projection, sur une portion d'un cylindre constituée d'un nombre déterminé de pixels, de trois ensembles distincts de pixels: - un premier ensemble de pixels de la première image (P1) distinct de la zone commune (20), les pixels du premier ensemble étant par exemple obtenus par utilisation d'une transformation antérieure (ou le cas échéant par une matrice Identité) ; -un deuxième ensemble de pixels correspondant à la zone commune (20) respectivement de la première image (P1) et de la seconde image (P2), les pixels du deuxième ensemble étant obtenus par utilisation de la première matrice (M1) de transformation; et - un troisième ensemble de pixels de la seconde image (P2) distinct de la zone commune (20), les pixels du troisième ensemble étant obtenus par utilisation de la seconde matrice (M2) de transformation.
La projection sur une portion de cylindre est une transformation simple qui donne l'illusion du panorama. L'étape d'assemblage (6) permet un recollage de type cylindrique après récupération d'un ensemble de pixels représentatifs d'une superposition des images d'entrée, ladite superposition étant déduite de la transformation de type matricielle déterminée lors de l'étape de calcul (550).
lo Une seule rotation (sur l'axe du cylindre qui est centré sur le photographe au moment de la prise des clichés) est utilisée pour cette projection connue en soi. Les détails de réalisation ne seront donc pas décrit ici de façon exhaustive puisque la projection elle-même est une opération arrivant à un stade ultérieur par rapport au traitement inédit de l'invention utilisé pour corriger les défauts de perspective. La portion de cylindre représentant le panorama est décrite pixel par pixel à l'aide de l'information de décalage entre les mages d'entrée (P1, P2), de la taille des images (P1, P2) et de la focale.
Dans l'exemple de la figure 2, une étape de lissage (60) est réalisée lors de l'étape (6) d'assemblage, pour atténuer la transition. Pour cela, le circuit de traitement (12) effectue, entre les limites opposées de la zone commune (20), une somme des pixels de chacune des images d'entrée (P1, P2). Lors de cette étape, une première pondération en arctangente, fonction de l'éloignement à la bordure de la zone commune sur la première image d'entrée (P1), est appliquée à la moitié du second ensemble de pixels qui est issue de la première image (P1). Une seconde pondération en arctangente, de croissance inversée par rapport à la première pondération, et fonction de l'éloignement à la bordure de la zone commune sur la seconde image d'entrée (P2), est appliquée à la moitié du second ensemble de pixels qui est issue de la seconde image (P1).
Une correction de la luminance par spécification d'histogramme (RGB) peut être utilisée conformément à une des méthodes connues. L'étape (6) d'assemblage comporte par exemple: - une étape de calcul, pour chacune des zones de recouvrement de 5 la première image d'entrée (P1) et de la seconde image d'entrée (P1), d'un opérateur d'égalisation d'histogramme respectif Ti, T2; - une étape de correction d'un paramètre de luminance des pixels dans la seconde image (P2), en appliquant à un histogramme associé à la seconde image (P2) la transformation T1-1 o T2.
lo L'utilisation des matrices de transformation peut être réalisée dans le cas de la reconstruction d'une mosaïque, à partir de deux images ou plus, comme représenté dans l'exemple de la figure 4, avec 5 images d'entrée. De manière cumulative, le traitement est effectué avec des images prises par paire. L'image centrale peut servir de plan de référence (c'est le cas de la troisième image dans l'exemple de la figure 4).
L'un des avantages de l'invention est de simplifier les calculs pour obtenir de façon automatique une image panoramique et de permettre d'intégrer le système (1) de reconstruction panoramique automatique dans un appareil numérique compact tel qu'un terminal radio mobile de format de poche.
II doit être évident pour les personnes versées dans l'art que la présente invention permet des modes de réalisation sous de nombreuses autres formes spécifiques sans l'éloigner du domaine d'application de l'invention comme revendiqué. Par conséquent, les présents modes de réalisation doivent être considérés à titre d'illustration, mais peuvent être modifiés dans le domaine défini par la portée des revendications jointes, et l'invention ne doit pas être limitée aux détails donnés ci- dessus.

Claims (23)

REVENDICATIONS
1. Procédé de reconstruction panoramique automatique d'une image de sortie composée de pixels à partir d'au moins deux images d'entrée numériques (P1, P2) se recouvrant au moins partiellement, mis en oeuvre par s un système (1) de reconstruction panoramique automatique incluant un module (10) d'appariement d'images numériques et un circuit de traitement (12) pour transformer des données représentatives d'images d'entrée (21, 22) et fabriquer des données représentatives d'images de sortie (3), comportant une étape (51) de sélection d'une zone commune (20) de io recouvrement entre deux images d'entrée (P1, P2), l'étape de sélection (51) utilisant le module (10) d'appariement d'images numériques pour sélectionner, parmi des données (21, 22) représentatives des deux images d'entrée (P1, P2), deux séries de données de travail (211, 212) représentatives des zones respectives de recouvrement, caractérisé en ce qu'il comprend une étape (500) de détermination dans la zone commune (20) de paires de pixels significatifs en correspondance sur chacune des deux images d'entrée (P1, P2), les pixels d'une paire de coordonnées de position respectives xl, yl et xk, yk représentant un même détail visuel dans la zone commune (20), et une étape (550) de calcul utilisant le circuit de traitement (12) pour: dans un premier temps, déterminer au moins une transformation de type matricielle entre les deux images d'entrée (P1, P2) et déterminer une focale en vue du recollement, le circuit de traitement (12) utilisant lesdites coordonnées de position respectives xl, yl et xk, yk pour déterminer la transformation de type matricielle; - dans un second temps, réaliser une correction d'erreurs de perspective en prenant en compte une composante de profondeur pour chacune des paires de pixels significatifs et en déterminant à nouveau ladite transformation de type matricielle; le procédé comprenant également une étape d'assemblage (6) par un recollage de type cylindrique après récupération d'un ensemble de pixels représentatifs d'une superposition des images d'entrée, ladite superposition étant déduite de la transformation de type matricielle déterminée lors de ladite étape de calcul (550).
2. Procédé selon la revendication 1, dans lequel une étape de 5 corrections d'erreurs de transition est réalisée notamment dans la zone commune (20) par le circuit de traitement (12).
3. Procédé selon la revendication 1 ou 2, dans lequel l'étape de calcul (550) utilise le circuit de traitement (12) pour déterminer notamment une première matrice (Ml) de transformation à appliquer au moins à la zone o commune (20), l'étape de calcul (550) comportant: - a) une étape préalable de détermination d'une focale; - b) une étape de détermination, à partir de coordonnées de position xl, yl et xk, yk des pixels significatifs appariés et de la focale, d'une première matrice intermédiaire (M) solution du système d'équations: xl xk' yl = M yk 1 1 \ , \ où M = Vk Rk R,-' V,-' , Rk et RI étant des matrices de rotation 3*3 dépendant de 3 angles de rotation et V dépendant de la focale; - c) une étape d'estimation d'un critère d'erreur représentatif de différences calculées pour les pixels significatifs appariés entre des coordonnées déduites à l'aide de la matrice intermédiaire (M) et des coordonnées du pixel apparié ; - d) une étape de modification de la rotation par incrémentation de Rk RI-1; - e) une étape d'itération des étapes b), c) et d) jusqu'à ce que le 25 critère d'erreur soit minimisé pour obtenir une matrice intermédiaire optimisée (M') ; l'étape de calcul (550) comprenant ensuite une étape (56) de correction de perspective.
4. Procédé selon la revendication 3, dans lequel l'étape de correction de perspective utilise le circuit de traitement (12) pour ajouter à chacun des pixels significatifs appariés une composante additionnelle de profondeur zk, zl, l'étape (56) de correction de perspective comprenant: i) une étape de détermination préalable d'une valeur de composante zk, zl pour chacun des pixels significatifs appariés qui minimise ledit critère d'erreur en utilisant la matrice intermédiaire optimisée (M') ; - ii) une étape de détermination, à partir de coordonnées de position xl, yl, zl et xk, yk, zl des pixels significatifs appariés et de la focale, d'une io seconde matrice intermédiaire Mp solution du système d'équations: xk = Mp yk zk où la seconde matrice intermédiaire est du même type que la première matrice intermédiaire (M) ; - iii) une étape d'estimation dudit critère d'erreur; - iv) une étape de modification de la rotation; - v) une étape d'itération des étapes ii), iii) et iv) jusqu'à ce que le critère d'erreur soit minimisé pour obtenir une matrice optimisée, formant une première matrice (M1) de transformation, ainsi que des indications de profondeurs zk, zl; le procédé comprenant en outre une étape (6) d'assemblage incluant une projection, sur une portion d'un cylindre, de pixels obtenus par utilisation de la première matrice (M1) de transformation.
5. Procédé selon la revendication 4, dans lequel la composante additionnelle de profondeur zk, zl est déterminée autour d'une valeur de 25 référence égale à 1 lors de l'étape (56) de correction de perspective.
6. Procédé selon la revendication 4 ou 5, dans lequel l'étape (550) de calcul utilise le circuit de traitement (12) pour déterminer une seconde matrice (M2) de transformation à appliquer au moins au reste des images d'entrée (P1, P2), l'étape (56) de correction de perspective comprenant: une étape (561) de détermination dans la zone commune (20) d'un arrièreplan (AP) dans lequel les pixels ont des valeurs supérieures à 1 pour la composante additionnelle de profondeur zk, zl; - une étape (562) d'itération des étapes ii) à v) en utilisant les valeurs de composante zk, zl obtenues à l'étape v) uniquement pour les pixels significatifs appariés dudit arrière-plan (AP), pour obtenir la seconde matrice (M2) de transformation.
7. Procédé selon une des revendications 1 à 6, comprenant une étape (510) de calcul d'une information de décalage entre les deux images d'entrée io (P1, P2) réalisée par le circuit de traitement (12) après l'étape de sélection (51), ladite étape (500) de détermination de paires de pixels significatifs comprenant: - une étape (52) de répartition de la zone commune (20) en sous-zones (4) complémentaires par un traitement de la première série de is données de travail (211) ; - une première étape (53) de détection sur la première image (P1), dans la zone commune (20), d'une première série de pixels significatifs répartis dans les sous-zones (4) et une seconde étape (54) de détection sur la seconde image (P2) d'une seconde série de pixels significatifs en correspondance avec ladite première série, la seconde étape (54) de détection incluant une localisation par le circuit de traitement (12) de sous-zones de la seconde image (P2) par utilisation de l'information de décalage.
8. Procédé selon la revendication 7, dans lequel l'étape (52) de répartition en sous-zones (4) comporte un traitement de la première série de données de travail (211) par le circuit de traitement (12) pour répartir des sous-groupes de données de travail représentatifs des souszones (4) de la zone commune (20).
9. Procédé selon la revendication 8, dans lequel la première étape (53) de détection comprend une sélection, dans chaque sous-groupe de données de travail, de données caractéristiques d'un pixel significatif, en fonction de résultats fournis par un module détecteur de Harris du type agencé pour estimer un gradient d'intensité lumineuse au voisinage d'un pixel d'une image numérique.
10. Procédé selon une des revendications 3 à 9, dans lequel le critère d'erreur estimé lors de l'étape c) d'estimation est de type quadratique.
11. Procédé selon une des revendications 7 à 10, dans lequel l'étape (510) de calcul d'une information de décalage comprend une méthode de corrélation de phase incluant un traitement des premières et secondes séries de données de travail (211, 212) par un passage dans le domaine de Fourier pour déterminer une matrice de corrélation puis un retour dans le domaine io spatial des images pour déterminer un pic de corrélation.
12. Procédé selon la revendication 11, dans lequel l'étape (510) de calcul d'une information de décalage comprend les étapes suivantes effectuées par le circuit de traitement (12) : - une première transformation de Fourier réalisée pour des données 15 de pixels de la première série de données de travail (211) correspondant à la première image d'entrée (P1) ; - une seconde transformation de Fourier, identique à la première transformation de Fourier, réalisée pour des données de pixels de la seconde série de données de travail (212) correspondant à la seconde image d'entrée (P1) ; - un calcul de corrélation de phase pour déterminer des nombres complexes correspondant chacun à une position de pixel dans la zone commune (20) et obtenus par utilisation deux à deux des coefficients de Fourier obtenus lors desdites première et seconde transformations de Fourier; - une harmonisation de tous les modules des nombres complexes obtenus à une même valeur déterminée; - une transformation de Fourier inverse à partir des nombres complexes ayant leur module harmonisé pour obtenir un tableau de nombres 3o réels; - une détection du nombre réel le plus élevé pour déterminer, à partir de coordonnées de position associées à ce nombre, le décalage entre les zones de recouvrement des images d'entrée (P1, P2).
13. Procédé selon une des revendications 7 à 12, dans lequel des s pixels significatifs sont sélectionnées pendant la première étape (53) de détection lors d'une étape (530) de comparaison réalisée par le circuit de traitement (12) et utilisant une matrice de calcul 2*2, représentative de caractéristiques d'intensité lumineuse au voisinage d'un pixel et tenant compte d'une éventuelle convolution par un filtre gaussien, l'étape de io comparaison (530) permettant de déterminer si la matrice de calcul possède deux valeurs propres supérieures chacune à un seuil déterminé.
14. Procédé selon la revendication 13, dans lequel la seconde étape (54) de détection comprend, après la localisation des sous-zones de la seconde image (P2), pour chaque pixel significatif à apparier, au moins une is étape de re-détermination du décalage via une méthode de corrélation de phase pour estimer une localisation du pixel à apparier dans une fenêtre rectangulaire (8) de dimensions inférieures à celles de la sous-zone correspondante et recentrée autour d'un pixel déduit à l'aide du décalage redéterminé, l'étape de re-détermination du décalage étant répétée jusqu'à l'obtention d'une stabilité du décalage permettant de déterminer la position du pixel à apparier.
15. Procédé selon la revendication 14, dans lequel un pixel significatif détecté lors de la première étape (53) de détection est éliminé si une étape de re-détermination du décalage relève une variation de décalage supérieur à un seuil de décalage pendant la seconde étape (54) de détection.
16. Procédé selon une des revendications 3 à 15, dans lequel l'étape a) préalable de détermination de la focale comprend: - une étape de fixation de la focale à une valeur initiale; - une étape de détermination de la matrice M = Vk Rk RI-1 VI-1; - un itération des deux étapes précédentes en faisant varier la focale jusqu'à minimiser le critère d'erreur.
17. Procédé selon une des revendications 1 à 13, dans lequel l'étape (6) d'assemblage comporte une projection, sur une portion d'un cylindre constituée d'un nombre déterminé de pixels, de trois ensembles de pixels: - un premier ensemble de pixels de la première image (P1) distinct de la zone commune (20) ; - un deuxième ensemble de pixels correspondant à la zone commune (20) respectivement de la première image (P1) et de la seconde io image (P2), les pixels du deuxième ensemble étant obtenus par utilisation de la première matrice (M1) de transformation; et - un troisième ensemble de pixels de la seconde image (P2) distinct de la zone commune (20), les pixels du troisième ensemble étant obtenus par utilisation de la seconde matrice (M2) de transformation.
is
18. Procédé selon la revendication 14, comprenant une étape de lissage (60) utilisant le circuit de traitement (12) pour effectuer, entre les limites opposées de la zone commune (20), une somme des pixels de chacune des images d'entrée (P1, P2) dans laquelle: - une première pondération en arctangente, fonction de l'éloignement à la bordure de la zone commune sur la première image d'entrée (P1), est appliquée à la moitié du second ensemble de pixels qui est issue de la première image (P1) ; - une seconde pondération en arctangente, de croissance inversée par rapport à la première pondération, et fonction de l'éloignement à la bordure de la zone commune sur la seconde image d'entrée (P2), est appliquée à la moitié du second ensemble de pixels qui est issue de la seconde image (P1) .
19. Procédé selon une des revendications 1 à 18, dans lequel l'étape (6) d'assemblage comporte: - une étape de calcul, pour chacune des zones de recouvrement de la première image d'entrée (P1) et de la seconde image d'entrée (P1), d'un opérateur d'égalisation d'histogramme respectif Ti, T2; - une étape de correction d'un paramètre de luminance des pixels dans la seconde image (P2), en appliquant à un histogramme associé à la seconde image (P2) la transformation T1-1 o T2.
20. Procédé selon une des revendications 3 à 19, dans lequel au moins une desdites première et seconde images d'entrée (P1, P2) est elle-même définie par des pixels transformés obtenus lors d'une étape (56) de io correction de perspective ayant permis de traiter deux images se recouvrant partiellement.
21. Procédé selon une des revendications 1 à 20, dans lequel le système (1) de reconstruction panoramique automatique est intégré dans un terminal radio mobile de format de poche.
22. Système (1) de reconstruction panoramique automatique incluant un module (10) d'appariement d'images numériques et un circuit de traitement (12) pour transformer des données représentatives d'images d'entrée (21, 22) et fabriquer des données représentatives d'images de sortie (3), caractérisé en ce que le module (10) d'appariement comprend des moyens de sélection d'images d'entrée et des moyens de sélection de zones d'image, le circuit de traitement (12) comportant: - des moyens pour déterminer dans la zone commune (20) des paires de pixels significatifs en correspondance sur chacune des deux images d'entrée (P1, P2), les pixels d'une paire de coordonnées de position respectives xl, yl et xk, yk représentant un même détail visuel dans la zone commune; - un premier module de calcul (121) pour déterminer notamment une première matrice (Ml) de transformation à appliquer au moins à la zone commune (20), le premier module de calcul (121) étant doté de moyens 3o logiciels pour: o a) déterminer une focale; o b) déterminer, à partir de coordonnées de position xl, yl et xk, yk des pixels significatifs appariés et de la focale, une première matrice intermédiaire (M) solution du système d'équations: xk = M yk 1 où M = Vk Rk R,-1 Vi-1, Rk et R, étant des matrices de rotation 3*3 dépendant de 3 angles de rotation et V dépendant de la focale; o c) estimer un critère d'erreur représentatif de différences calculées pour les pixels significatifs appariés entre des io coordonnées déduites à l'aide de la première matrice intermédiaire (M) et des coordonnées du pixel apparié ; o d) modifier la rotation par incrémentation de Rk R,-1; o e) itérer les traitements b), c) et d) jusqu'à ce que le critère d'erreur soit minimisé pour obtenir une matrice intermédiaire 15 optimisée (M') ; un second module de calcul (122) en liaison avec le premier module de calcul (121) pour traiter des données de correction de perspective en ajoutant à chacun des pixels significatifs appariés une composante additionnelle de profondeur zk, zl, le second module de calcul (122) étant doté de moyens logiciels pour: o i) déterminer préalablement une valeur de composante zk, zl pour chacun des pixels significatifs appariés qui minimise ledit critère d'erreur en utilisant la matrice intermédiaire optimisée (M') ; o ii) déterminer, à partir de coordonnées de position xl, yl, zl et xk, yk, zl des pixels significatifs appariés et de la focale, une seconde matrice intermédiaire Mp solution du système d'équations: xl yl 1 xl xk yl = Mp yk zl zk où la seconde matrice intermédiaire est du même type que la première matrice intermédiaire (M) ; o iii) estimer ledit critère d'erreur; o iv) modifier la rotation; o v) itérer les traitements ii), iii) et iv) jusqu'à ce que le critère d'erreur soit minimisé pour obtenir une matrice optimisée, formant une première matrice (M1) de transformation, ainsi que des indications de profondeurs zk, zl; io - des moyens (125) d'assemblage pour calculer une projection sur une portion d'un cylindre, de pixels obtenus par utilisation de la première matrice (M1) de transformation.
23. Système (1) de reconstruction panoramique automatique selon la revendication 22, dans lequel le premier module de calcul (121) est agencé is pour déterminer une seconde matrice (M2) de transformation à appliquer au moins au reste des images d'entrée (P1, P2), le second module de calcul (122) comprenant: - des moyens pour déterminer dans la zone commune (20) un arrière-plan (AP) dans lequel les pixels ont des valeurs supérieures à 1 pour la composante additionnelle de profondeur zk, zl; - des moyens d'itération des traitements ii) à v) en utilisant les valeurs de composante zk, zl obtenues au traitement v) uniquement pour les pixels significatifs appariés dudit arrière-plan (AP), pour obtenir la seconde matrice (M2) de transformation.
FR0508250A 2005-08-02 2005-08-02 Procede et systeme embarque de reconstruction panoramique automatique Pending FR2889608A1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
FR0508250A FR2889608A1 (fr) 2005-08-02 2005-08-02 Procede et systeme embarque de reconstruction panoramique automatique
FR0508583A FR2889609B1 (fr) 2005-08-02 2005-08-17 Procede et systeme embarque de reconstruction panoramique automatique
EP06291255.5A EP1750227B1 (fr) 2005-08-02 2006-08-02 Procédé et système embarqué de reconstruction panoramique automatique

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0508250A FR2889608A1 (fr) 2005-08-02 2005-08-02 Procede et systeme embarque de reconstruction panoramique automatique

Publications (1)

Publication Number Publication Date
FR2889608A1 true FR2889608A1 (fr) 2007-02-09

Family

ID=36143694

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0508250A Pending FR2889608A1 (fr) 2005-08-02 2005-08-02 Procede et systeme embarque de reconstruction panoramique automatique

Country Status (1)

Country Link
FR (1) FR2889608A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10724199B2 (en) 2015-10-06 2020-07-28 Soletanche Freyssinet Wharf constituted by arched walls and plane ties

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10724199B2 (en) 2015-10-06 2020-07-28 Soletanche Freyssinet Wharf constituted by arched walls and plane ties

Similar Documents

Publication Publication Date Title
Kalantari et al. Deep HDR video from sequences with alternating exposures
EP2715662B1 (fr) Procede de localisation d'une camera et de reconstruction 3d dans un environnement partiellement connu
EP1523730B1 (fr) Procede et systeme pour calculer une image transformee a partir d'une image numerique
EP2180714A2 (fr) Capteur de caméra composé et procédé correspondant pour le traitement d'images numériques
EP1694058A1 (fr) Procédé et dispositif de capture d'images comprenant une mesure de mouvements locaux
WO2015166176A1 (fr) Procédé de suivi de forme dans une scène observée par un capteur asynchrone de lumière
EP3072108A1 (fr) Procede d'estimation de la vitesse de deplacement d'une camera
FR3073311A1 (fr) Procede d'estimation de pose d'une camera dans le referentiel d'une scene tridimensionnelle, dispositif, systeme de realite augmentee et programme d'ordinateur associe
Lamba et al. Harnessing multi-view perspective of light fields for low-light imaging
WO2014076402A1 (fr) Procede et dispositif de capture et de construction d'un flux d'images panoramiques ou stereoscopiques
FR2775813A1 (fr) Procede et dispositif de remplacement de panneaux cibles dans une sequence video
CN110462679B (zh) 快速多光谱光场成像方法和系统
WO2015071458A1 (fr) Procede d'estimation de la vitesse de deplacement d'une camera
Zhu et al. Image guided depth enhancement via deep fusion and local linear regularizaron
WO2017077217A1 (fr) Calibration 3d d'un systeme de mapping video
FR3088755A1 (fr) Procede de defloutage d’une image
Diamant et al. Overcoming visual reverberations
EP4162448A1 (fr) Procédé et dispositif de reconstruction tridimensionnelle d'un visage avec partie dentée à partir d'une seule image
EP1750227B1 (fr) Procédé et système embarqué de reconstruction panoramique automatique
FR2889608A1 (fr) Procede et systeme embarque de reconstruction panoramique automatique
WO2020237366A1 (fr) Système et procédé de suppression de la réflexion au moyen d'un capteur à deux pixels
Jose et al. Least square based image deblurring
FR3073068A1 (fr) Procede de restauration d'images
EP2943935A1 (fr) Estimation de mouvement d'une image
WO2021245290A1 (fr) Génération de modèles 3d à l'échelle à partir d'images 2d produites par un dispositif d'imagerie monoculaire