FR 2810830 A1 20011228 FR 0008076 A 20000623 PROCEDE ET DISPOSITIF DE CALIBRATION DE CAMERA L'invention concerne les optiques pour caméra ayant des caractéristiques optiques (zoom et mise au point) réglables pendant l'utilisation et destinées à être montées sur une caméra-dite "appareillée" ayant ellemême des capteurs fournissant des signaux représentatifs de l'orientation de la caméra par rapport à un pied. Elle trouve une application particulièrement importante, bien que non exclusive, dans les optiques destinées à être utilisées sur des caméras incorporées à des installations capable de remplacer, dans l'image fournie par la caméra, une zone cible, occupant une position fixe dans l'espace vu par la caméra, par un modèle mémorisé, figé ou animé, après mise à l'échelle de ce modèle. La position et la surface de la zone fixe sont mémorisées dans l'installation qui comporte des moyens de calcul et de synthèse d'image capables de calculer la déformation ou " warping " à faire subir au modèle et de l'incruster. Les capteurs utilisés sont en général des codeurs numériques qui ont l'intérêt d'être sans dérive et d'avoir une sortie directement utilisable par un appareil de traitement de données. Il existe déjà des installations du type ci-dessus. Leur mise en oeuvre exige, pour obtenir une précision satisfaisante, une phase préalable longue et pénible de calibrage sur le site, au cours de laquelle un cadreur vise successivement différentes parties de tout l'espace susceptible d'être balayé, avec différents degrés de zoom et plusieurs mises au point et les différents capteurs sont calibrés à partir des visées en prenant comme référence des points caractéristiques fixes, proches et lointains, de la scène observée. Ces méthodes limitent le domaine de fonctionnement. Les inventeurs ont pris conscience du fait que certaines des caractéristiques et des fonctions de transfert à identifier sont intrinsèques à l'optique elle-même alors que d'autres dépendent de l'interface entre l'optique et la caméra et peuvent être qualifiés d'extrinsèques. En particulier le même objectif ne se trouve pas strictement dans la même position par rapport au plan focal de la caméra, occupé par la matrice de sites photosensibles, du fait des tolérances inévitables (usure), des conditions de montage et des standards d'image. L'invention vise, à partir de ces constatations, à simplifier considérablement les opérations à effectuer sur site à chaque utilisation sur une nouvelle caméra ou à un nouvel emplacement. Pour cela l'invention propose notamment un procédé de calibration ou calibrage suivant lequel: - On effectue, une fois pour toutes, une calibration fournissant les caractéristiques intrinsèques de l'optique et on constitue un fichier informatique contenant ces caractéristiques, et sur site, on effectue une calibration de l'ensemble caméra - optique permettant de définir les fonctions de transfert entre signaux provenant des capteurs d'orientation de la caméra et des capteurs de l'optique et les caractéristiques réelles à partir des signaux obtenus par visée de points caractéristiques de la scène à observer et du dit fichier. Suivant un autre aspect, il est proposé un procédé de calibrage permettant de déterminer une table de correspondance entre d'une part au moins des signaux de sortie de capteurs de zoom Z et de mise au point F placés sur un objectif de caméra et constitués par des codeurs numériques et d'autre part des valeurs réelles de focale et de déformations géométriques, comprenant: (a) une étape, effectuée une fois pour toutes, de détermination de caractéristiques intrinsèques de l'objectif (b) une étape sur site après montage de l'objectif sur une caméra destinée à une exploitation, au cours de laquelle on effectue le recalage d'origines On simplifie ainsi énormément les opérations sur site puisqu'elles se réduisent à quelques visées, pouvant être effectuées en quelques minutes par un opérateur formé mais non spécialiste, toutes les caractéristiques intrinsèques de l'optique étant déjà disponibles. On sélectionne simplement le fichier de calibration de l'objectif, on donne les constantes du système (type de tête de caméra, position de la caméra sur la tête) et on effectue les visées nécessaires. De plus cette méthode permet une grande précision car la calibration intrinsèque a été faite en dehors des contraintes opérationnelles. L'invention propose également un ensemble utilisable en vue de la mise en oeuvre d'un objectif de caméra, constituant la dite optique, l'ensemble comprenant l'objectif lui- même et un fichier (fichier ROM, mémoire flash, disque) qui l'accompagne et est chargeable dans un calculateur utilisé lors de la partie sur site du calibrage. Elle propose également un logiciel exécutable sur un calculateur et comportant une base de données contenant les caractéristiques intrinsèques d'une optique et un programme de détermination, à partir de la base de données et de mesures effectuées sur site alors que l'optique est montée sur une caméra, des caractéristiques extrinsèques et de la fonction de transfert 2D complète entre la scène vue par la caméra et l'image restituée. Suivant un autre aspect de l'invention, il est proposé un procédé de calibrage permettant de déterminer une table de correspondance entre d'une part au moins des signaux de sortie de capteurs de zoom Z et de mise au point F placés sur un objectif de caméra et constitués par des codeurs numériques et d'autre part des valeurs réelles de focale et de déformations géométriques de l'objectif sur laquelle est montée l'optique, comprenant: (a) une étape, effectuée une fois pour toutes, de détermination de caractéristiques intrinsèques de l'objectif, effectuée après montage de l'objectif sur une caméra, au cours de laquelle: - on effectue plusieurs prises de vue avec des orientations différentes de la caméra en azimut (ou panoramique) et en élévation (ou inclinaison) et des valeurs différentes du zoom et de la mise au point (cette dernière influant sur la distance focale), - à chaque prise de vue on relève les signaux de sortie des codeurs et la position dans l'image d'au moins 2 points, I'un proche, I'autre lointain, dans la scène observée selon la prises de vue, et - à partir de comparaisons entre les valeurs des signaux et la position des points dans l'image fournie par la caméra on détermine une table de calibrage intrinsèque, et (b) une étape sur site après montage de l'objectif sur une caméra destinée à une exploitation, au cours de laquelle: - on précise les conditions opérationnelles (par exemple: standard PAL, NTSC.... taille d'image 4/3,16/9,Haute Définition,...; position de la caméra sur la tête de caméra après équilibrage, etc.). - on répète un nombre réduit des opérations effectuées en (a) uniquement dans la mesure nécessaire au recalage d'origines et à la détermination de paramètres dont l'aspect ratio du pixel. Le point proche observé au cours de l'étape (a) pourra être matérialisé par une source ponctuelle telle qu'une diode électroluminescente ou une diode laser placée à une distance légèrement supérieure à la distance minimale de mise au point. Le point lointain doit simuler une vision à l'infini et de préférence au moins 100m. 0o En général toutes les mesures de l'étape (a) seront effectuées avant les calculs qui sont ensuite réalisés de façon globale sur site ou à distance. Ces mesures peuvent pa exemple être effectuées suivant un programme bien défini en plusieurs étapes, chaque étape étant avec le même réglage de zoom, avec plusieurs degrés de mise au point différents. L'indépendance des caractéristiques de zoom et de mise au point permet ensuite une représentation de l'objectif par un modèle mathématique sous forme de deux tables représentatives de deux familles de fonction à une seule variable d'entrée alors qu'une approche sans séparation aurait requis une table à double entrée qui rend l'interpolation difficile. En d'autres termes, on représente l'objectif par un modèle mathématique utilisant uniquement des fonctions à une seule variable d'entrée. Un avantage supplémentaire du procédé est qu'il permet la calibration à distance donc de ne pas divulguer le logiciel de calibration ce qui serait impossible sans la séparation des deux dernières étapes de la phase (a). Un serveur d'application peut être prévu sur le protocole SMTP, sous réserve de connecter la machine de calibration à l'internet de façon temporaire. A la faveur d'une connexion Internet les données obtenues par les " snaps " mentionnés plus loin sont adressées à un serveur qui répond en envoyant un fichier de calibration éventuellement crypte. La caméra portant l'objectif peut être complétée par au moins un capteur à gyromètre qui complète la mesure angulaire fournie par les capteurs de la tête de caméra lorsque celle-ci est soumise à des vibrations (par exemple sur un stade).Ce gyromètre est destiné à une mesure en inclinaison, pour laquelle le balourd induit des erreurs de mesure. En effet la caméra est équilibrée de façon statique mais non dynamique: sans mouvement elle est en équilibre, mais sous l'effet d'une excitation (majoritaire selon l'axe vertical si la structure est bien construite) la translation induit une rotation en " tilt ". Sur une structure aux modes propres plus inquiétants tel qu'une translation horizontale, on peut envisager un second capteur à gyromètre en panoramique ou " pan ". Les données provenant des capteurs représentant l'état de la caméra instrumentée peuvent être utilisées directement de façon classique ou être converties en un signal audio, ce qui permet d'utiliser l'environnement audio-visuel habituel pour le transport et/ou l'enregistrement. Les caractéristiques ci-dessus, ainsi que d'autres, apparaîtront mieux à la lecture de la description qui suit d'un mode particulier de réalisation, donné à titre d'exemple non limitatif. La description se réfère aux dessins qui l'accompagnent, dans lesquels: - La figure 1 est un schéma destiné à illustrer le rôle des différents capteurs portés par l'objectif et la tête d'une caméra appareillée destinée à la substitution d'une zone cible; - La figure 2 montre un montage courant de la tête d'une caméra, avec mouvement en inclinaison ou " tilt " s'ajoutant à un mouvement panoramique (s'opposant à un montage dit équatorial); - Les figures 3A et 3B montrent les types de déformation qui interviennent dans la formation d'une image; - La figure 4 montre les emplacements o est amené dans l'image un même repère de la scène en vue du calibrage intrinsèque, puis du calibrage extrinsèque; - La figure 5 est un synoptique simplifié montrant une mise en oeuvre possible du modèle mathématique. La caméra schématisée en figure 1 comporte un pied 10 sur lequel un support de tête 12 peut tourner autour d'un axe de panoramique 14. La tête 16 peut tourner sur le support 12 autour d'un axe d'élévation18. Sur la tête de caméra est monté un objectif 20 portant en général une bague de mise au point 22 et une bague de zoom 24. Ces deux bagues sont munies de codeurs angulaires absolus à résolution élevée. L'angle d'élévation 4 sur le support est fourni par un capteur 26. L'angle autour d'un axe de panoramique 0 est fourni par un capteur 30. Tous ces capteurs sont reliés à une électronique d'acquisition 32 qui convertit les données des capteurs sous forme de signal série (RS232, RS422) ou de modulation audio. Pour qu'une incrustation puisse être effectuée de façon précise, il est nécessaire de déterminer, à partir des signaux des capteurs, o se trouve exactement, dans l'image, la zone à remplacer qui est immuable dans la scène, et cela quel que soient le degré de zoom, la mise au point et l'orientation de la caméra. Or les transformations d'image lors des enchaînements de ces paramètres sont bien loin d'être de simples homothéties et d'être les mêmes pour tous les objectifs d'un même type. La calibration est un procédé déterministe qui permet de stocker le comportement de l'objectif dans toutes les positions de Zoom et de mise au point (Focus). On décrira maintenant et successivement: - la calibration intrinsèque: elle génère un fichier contenant les caractéristiques géométriques intrinsèques de l'objectif; I'objectif est alors répertorié dans une base de donnée d'objectifs calibrés; la calibration est a faire pour chaque objectif, même pour un même modèle dans une même marque mais une fois pour toutes. - la calibration extrinsèque ou Lens Camera Setting (en abrégé LCS): elle prend en charge les contraintes d'exploitation liées aux montage et démontage de l'objectif sur la caméra qui produisent des différences d'alignement sur une même caméra et sur des caméras différentes (format d'image). Le LCS est refait à chaque remontage de l'objectif et de la caméra, même si le même objectif est monté sur la même caméra (tolérances mécaniques). Une fois toutes ces opérations effectuées, le comportement de la caméra utilisée pour les prises de vue aura été mémorisé pour toute une série de valeurs capteur du zoom Z et de la mise au point F, cela permettant une interpolation. Le calibrage intrinsèque, transposable d'une caméra à une autre L'objectif est modélisé en déterminant plusieurs paramètres variables en fonction de la focale f au moins: - la distance focale absolue pour deux valeurs de la distance connue du point visé, l'une à l'infini P1,l'autre P2 à proximité (entre 5 et 15m suivant le type d'objectif); - le coefficient K de déformation géométrique dans le sens radial; - la correction de focale liée au Focus et des paramètres globaux indépendants du zoom - la position de l'oeil; - le rapport d'aspect (rapport entre hauteur et largeur des pixels de la matrice de sites photosensibles); - I'inclinaison lors d'une visée à l'horizontale, due au fait que le codeur d'inclinaison ne donne pas une valeur nulle pour une telle visée (lacune actuelle). La position de l'oeil est le point de l'axe optique tel que si on le fait coïincider avec l'axe vertical de pan, aucune parallaxe n'est visible dans l'image lors d'un panoramique entre un point proche (matérialisé par exemple sur une vitre) et un point à l'infini. Initialisation - plan large et plan serré L'opération commence par l'entrée en mémoire de l'identification de l'objectif P1 et P2 étant les points choisis, F1 et F2 étant les valeurs de mise au point en plein zoom Zn (grandissement maximum ou zoom in) choisies pour P1 et P2, F3 étant une valeur de mise au point choisie arbitrairement entre 1,1 F2 et la valeur de F à la distance minimale de mise au point, Zl,.... Zi,....,Zn étant les valeurs de zoom de référence, H, B,G,D,C,HG, BD,HD, BG étant les 9 positions que l'on fait prendre à un même point dans l' image en manipulant la caméra (figure 4), l'opérateur effectue tout d'abord six opérations d'initialisation. Au cours de chacune d'elles, qu'on peut qualifier de " snap ", il déplace la caméra pour faire venir le point observé à l'une des 9 positions ci-dessus et clique sur lui. Chaque fois les valeurs fournies par les codeurs et la distance entre le point dans la scène et la caméra sont mémorisés: P1, F1, Zn, C P1, F1, Zi, C P1, FI, Z1, G P1, F1, Zl, D P2, F2, Zn, C P1, F1, Z1, B Aucun calcul n'est effectué à l'issue de cette phase; I'opérateur passe ensuite à des mesures en plan large (zoom out) Zl et en plan serré (zoom in) Zn. Plans larqe et serré, correspondant à des focales différentes, avec les mises au point F1,F2 et F3 L'opérateur effectue 5 " snaps " pour définir le plan large P1, F1, Zi, H P1, F1, Zl, HG P2, F1, Zl, H P2, F2, Z1, H P2, F3, Zl, H Puis 5 " snaps " en plan serré Pi1, F1, Zn, H P1, F1, Zn, HG P2, F1, Zn, H P2, F2, Zn, H P2, F3, Zn, H A la fin de cette phase, le logiciel lance une première série de calculs en affectant initialement des valeurs par défaut aux paramètres globaux: FAIRE { DETERMINER PARAMETRES ZOOM Z1 A PARTIR DES 5 SNAPS Z1 DETERMINER PARAMETRES ZOOM Zn A PARTIR DES 5 SNAPS Zn DETERMINER PARAMETRES GLOBAUX A PARTIR DES 6 SNAPS D INITIALISATION} JUSQU' A CONVERGENCE S'il n'y a pas convergence, le logiciel est prévu pour demander à l'opérateur de vérifier les " snaps >" ou de les recommencer. Les résultats de tous ces " snaps " et des suivants sont conservés en mémoire du calculateur pour permettre à l'opérateur de revenir sur la position d'un point s'ilm le souhaite. Un " snap " peut par exemple provoquer l'exploration d'une fenêtre de 200 x 150 pixels dans l'image entière, soit environ 60k. Zooms intermédiaires Les mesures sont effectuées pour plusieurs degrés intermédiaires de zoom Z2, Z3..... Zn-1. Pour chaque zoom de référence l'opérateur effectue encore 5 " snaps ": P1, F1, Zi, H P1, F1, Zi, HG P2, F1, Zi, H P2, F2, Zi, H P2, F3, Zi, H A la fin de cette étape le logiciel calcule les paramètres liés au zoom pour chacune des valeurs Zi. Le logiciel peut être prévu pour demander à l'opérateur de vérifier les " snaps " ou de les recommencer en cas de non convergence. Le paramètre le plus important est la focale, variable en fonction du Zoom et, à un moindre degré, de la mise au point. La focale permet la conversion entre des points de lI'image et des coordonnées dans l'espace 3D. Chaque étape du calcul permet de déterminer un paramètre de l'objectif grâce à un déroulement o: * seuls les paramètres antérieurs sont nécessaires * les paramètres encore inconnus sont invariants. Ces étapes sont successivement: 1. La détermination du centre optique de coordonnées (Cx, Cy) sur la matrice, due au décalage e; 2. Le rapport d'aspect= Ypixel / Xpixel de la caméra de référence; 3. La distance focale absolue, fonction du degré de zoom à mise au point constante; 4. La correction de mise au point ou " focus ", de la forme 1 +E(Focus) avec s (Focus) = A*Focus2+B*Focus+C; 5. Le coefficient K de distorsion radiale intervenant dans une formule de la forme r'= r+ Kr3 O r est la distance au centre optique et K est une fonction uniquement de la focale et est positif pour une déformation en barillet et négatif pour une déformation en coussinet. On différencie: * les paramètres constants - Position du centre optique Rapport d'aspect ou " Pixel ratio " - Echelle focale absolue * les paramètres fonction du Zoom - Focale K Correction de Focus Position de l'oeil Dans l'ordre on détermine: * les paramètres fixes les courbes: Focale (Zoom) à Focus constant - K ( Focale) à Focus constant - Position de l'oeil (Focale) à Focus constant - Correction Focus (Focale) Les expressions analytiques trouvées expérimentalement sont logarithmiques par morceaux pour le Zoom sur chaque intervalle entre deux valeurs Zi et polynomiales de degré 2 pour la correction de Focus. Elles sont mémorisées sous forme de valeurs particulières des paramètres d'un modèle mathématique. A l'issue du calibrage intrinsèque, les résultats des traitements effectués localement ou sur le serveur distant sont mémorisés sous forme de fichier en mémoire morte ou flash, ou disque dur. On dispose alors d'un fichier qui contient des paramètres de calibration se rapprochant au mieux des caractéristiques réelles de l'objectif. Calibrage extrinsèque Lors du montage sur une caméra autre que celle, de référence, sur laquelle ont été déterminées les caractéristiques intrinsèques, le centre optique change légèrement, ce qui induit des erreurs. L'équilibrage de la caméra déplace la " position de l'oeil " et induit un effet de parallaxe (la rotation de la caméra induit une légère translation de signe inconnu) d'autant plus gênant que l'objet est proche. Enfin le capteur d' image peut avoir des géométries et des tailles différentes selon le standard d'image. Le calibrage extrinsèque, qu'on peut qualifier de " lens camera setting " ou LCS est un ajustement des données de calibration. Il ne recalcule que les paramètres constants liés à l'installation de la caméra, comportent des paramètres ayant deux sources: * couplage objectif - caméra: - Centre optique (Cx, Cy) - Pixel ratio (Ypixel / Xpixel = aspect ratio des pixels) - Ajustement de l'échelle des focales (focale absolue) - Ajustement de l'offet de la semelle (base de la position de l'oeil) - Ajustement échelle focale absolue * éventuellement couplage caméra - tête (avec de multiples origines pour chaque paramètre) - roulis ou " roll ": I'axe horizontal de la matrice fait un angle avec l'axe d'élévation ajustement du décalage de la semelle de la caméra sur le pied. - " Tilt zéro ": I valeur du codeur d'inclinaison lorsque l'axe optique est rigoureusement orthogonal à l'axe de panoramique ou pan. Cette liste est non limitative, d'autres paramètres pourront être intégrés: - Pan zéro (axe optique non rigoureusement parrallèle à l'axe de tilt) - Focus zéro (butée non fiable sur certain objectifs) - Zoom zéro (butée non fiable sur certain objectifs) Pour fournir, au calculateur associé à la caméra et à un système d'insertion ultérieure d'un modèle virtuel à la place d'une cible les éléments qui lui permettront d'indiquer l'emplacement exact de l'image o doit se faire l'insertion, I'opérateur sur site répète les opération 1 et 2 ci-dessus destinées à repérer le centre optique et le rapport d'aspect ainsi qu'à déterminer la focale absolue. Le calculateur dans lequel est chargé le programme associé à l'objectif recale les paramètres constants fournis par le fichier associé à l'objectif. On arrive ainsi à un modèle mathématique du genre montré en figure 5. En d'autres termes, les indications fournies par les capteurs sont corrigées de façon à permettre de déterminer la position exacte, dans l'image telle qu'elle est restituée, de la cible et de permettre son remplacement par le modèle après mise à l'échelle correcte de celui-ci (et éventuellement déformation due à la perspective ou même aux aberrations géométriques de l'objectif), ou l'adjonction du modèle sur la cible, sous forme semi-transparente, après mise à l'échelle. REVENDICATIONS 1. Procédé de calibration d' optique de caméra, suivant lequel: (a) on effectue, une fois pour toutes, un calibrage fournissant les caractéristiques intrinsèques de l'optique et on constitue un fichier informatique contenant ces caractéristiques, et (b) sur site, on effectue un calibrage de l'ensemble caméra - optique permettant de définir les fonctions de transfert entre signaux provenant des capteurs d'orientation de la caméra et des capteurs de l'optique et les caractéristiques réelles à partir des signaux obtenus par visée de points caractéristiques de la scène à observer et du dit fichier. 2. Procédé de calibration permettant de déterminer une table de correspondance entre d'une part au moins des signaux de sortie de capteurs de zoom Z et de mise au point F placés sur un objectif de caméra et constitués par des codeurs numériques et d'autre part des valeurs réelles de focale et de déformations géométriques de la caméra sur laquelle est montée l'optique, comprenant: (a) une étape, effectuée une fois pour toutes, de détermination de caractéristiques intrinsèques de l'objectif, effectuée après montage de l'objectif sur une caméra, au cours de laquelle: - on effectue plusieurs prises de vue avec des orientations différentes de la caméra en azimut (ou panoramique) et en élévation (ou inclinaison) et des valeurs différentes du zoom et de la mise au point (cette dernière influant sur la distance focale), - à chaque prise de vue on relève les signaux de sortie des codeurs et la position dans l'image d'au moins deux points, l'un proche, I'autre lointain, dans la scène observée selon la prise de vue, et - à partir de comparaisons entre les valeurs des signaux et la position des points dans l'image fournie par la caméra on détermine une table de calibrage intrinsèque, et (b) une étape sur site après montage de l'objectif sur une caméra destinée à une exploitation, au cours de laquelle: - on précise les conditions opérationnelles - on répète un nombre réduit des opérations effectuées en (a) uniquement dans la mesure nécessaire au recalage d'origine. 3. Procédé selon la revendication 1 ou 2, caractérisé en ce que le point proche observé au cours de l'étape (a) est une source ponctuelle telle qu'une diode laser placée à une distance légèrement supérieure à la distance minimale de mise au point. 4. Procédé selon la revendication 1 ou 2, caractérisé en ce que toutes les mesures de l'étape (a) sont effectuées avant les calculs qui sont ensuite réalisés de façon globale. 5. Procédé selon l'une quelconque des revendications 2 à 4, caractérisé en ce que l'on représente l'objectif par un modèle mathématique utilisant uniquement des fonctions à une seule variable d'entrée. 6. Procédé selon l'une quelconque des revendications 2 à 5, caractérisé en ce que l'ensemble des données capteur représentant l'état de la caméra instrumentée est converti en un signal audio et en ce que d'utiliser l'environnement audio-visuel est utilisé pour le transport et l'enregistrement.