Analyse et Synthèse d`Images Formation des Images
Transcription
Analyse et Synthèse d`Images Formation des Images
Analyse et Synthèse d'Images James L. Crowley DEA ISC 1999/00 Séance 1 : 12 octobre 1999 Plan de la Séance : Représentation et Formation d'Images Formation des Images..................................... 2 La perception visuelle humaine.............................................2 La Rétine Humaine ..............................................................2 L'Horopteur :......................................................................4 Version et Vergence .......................................................5 Modèle de la Caméra ...........................................................6 Format Binaire (Bit Map et Pix Map)...................................7 La trame entrelaçais.............................................................8 Représentation en mémoire des images ..................................9 Modèle Mathématique de la Formation d'Image.....10 Les Repères ...................................................................... 10 Transformation rétine->image............................................ 11 Les coordonnées homogènes............................................... 12 Translation ....................................................................13 Rotation.........................................................................14 Usage des Coordonnées Homogènes en Robotique..............15 Description des transformations scène -> image.................... 16 Transformations scène -> rétine: le modèle Sténopé.............. 16 Resumé : Les transformations............................................. 20 Exercise ........................................................................... 23 Calibrage des caméras ...................................24 Calibrage par moindre de carrée......................................... 24 Calibrage à la référence scène............................................. 25 Détermination de la distorsion induit par la perspective......... 27 Représentation et Formation d'Images Séance 1 Formation des Images La perception visuelle humaine Fovéa αmin = 1 minute Cornéa L'oeil Humain est une sphere pilotable en θ, ϕ, et ψ. L'image est detecté par les recepteurs dans le fovéa. À une distance de 30 cm, 1 min d'arc est environ 0.0075 cm (0.003 inchs) Ça correspond à un point ("dot") d'une imprimante à 300 ppp. (dots per inch). La perception visuelle est une fonction logarithmique du contraste. Si I o est le contraste minimale perceptible, le contraste apparente est I1 L = log(I ). o L'acuité minimum de l'oeil humain est environ 1 minute d'arc. Ça dépend du contraste. La Rétine Humaine Nerf Optique Fovéa (cônes) Fovéa Cornéa Périphéríe (bâtonnets) Spectre de la lumière visible pour l'homme : Le système humain est composé de bâtonnets et de cônes. 1-2 Représentation et Formation d'Images Séance 1 Les bâtonnets sont responsables de la perception achromatique et des lumières atténuées. Ils sont formés d'une pigmentation, la rhodopsine, sensible à tout le spectre, avec une sensibilité maximum de 510 nm (vert). Ils sont dans la périphérie de la rétine, et donnent une perception de plus faible résolution. Les cônes sont responsables de notre vision chromatique. Ils sont concentrés dans une zone appelée la fovéa. Il y a trois sortes de cônes, distingués par leurs pigments : cyanolabe α (445 nm), chlorolabe β (535 nm), et erythrolabe γ (570 nm) 1 Reponse Relative β γ 0.5 α λ 300 400 500 600 700 800 nm La transformation entre stimuli de cônes et perception de couleur est un phénomène de la perception humaine qui n'est pas encore bien modélisée. 1-3 Représentation et Formation d'Images Séance 1 L'Horopteur : ∆ = +σ Point de Fixation ∆ =0 ∆ =–σ B CD Horopteur : B C D La locus des points dans la scène pour lesquels la disparité est (proche de) zéro. L'Horopteur est une sorte de Filtre. Il limite l'information traité. Horopteur Géometrique : F Fixation Point P Interest point 2µ Primary Line of Sight Corresponding Visual Rays αl Left Retina ηr ηl αr Right Retina Fixation Center Surface de disparité null: ηl = ηr 1-4 Représentation et Formation d'Images Le cercle Vief - Muller : Séance 1 Z 2η η η αr αl x Version et Vergence Z Z 2η ∆αl ∆αl ∆αr αc Version: ∆α l = ∆α r ∆αr αc x Vergence X ∆α L ≠ ∆α R Le système de perception visuel humain est un système actif qui intégre motricité, réaction et déliberation. 1-5 Représentation et Formation d'Images Séance 1 Modèle de la Caméra Modèle de la Caméra Géométrie Physique Y j • X Z Axe Optique • i F Objective Rétine Modèle Mathématique: Projection Centrale Les coordonnées de l'image sont main gauche. Y i P = (X , Ys , Z s) s s Pc = (X c, Y c , Z c) F X • • Z Image Objective Axe Optique Pi = (i, j) => (x r, y r, 0) j Affichage d'une image Image Ecran 1-6 Représentation et Formation d'Images Séance 1 Format Binaire (Bit Map et Pix Map) Pixel = Picture Element. Une image est un tableau de pixels: O 0 NCols-1 0 NRows-1 Question : Est-ce-que les pixels sont "carrés"? Réponse : non. (Ça dépend de l'affichage). Le nombre de pixels de l'image dépend de la matérielle. Silicon Graphics : 768 colonnes x 576 lignes VGA : 640 x 480 1-7 Représentation et Formation d'Images Séance 1 La trame entrelaçais A fin de minimisé les effets d'affichage, les images sont souvent affichées (et acquises) en trame entrelaçais. Lignes "paires". • •• 0 2 4 NRows-2 Lignes "impaires". • •• 1 3 5 NRows-1 Ceci peut avoir les effets néfastes pour la perception du mouvement. 1-8 Représentation et Formation d'Images Séance 1 Représentation en mémoire des images En mémoire, l'image est un tableau 1-D 0 1 2 ••• NRows-1 ptr Le vecteur est créé par unsigned char *image; image = (unsigned char *) malloc(nRows * nCols * sizeof(char)); L'adresse d'un pixel à colone i, ligne j est : ptr = (pixel *) sizeof(pixel) * (j . nCols + i); Deux façons d'aceder au pixel à colone i, ligne j. for(j=0; j < nRows; j++) for(i=0; i < nCols; i++) image[ptr++] = getPixel(i, j, image2, nCols, nRows); Il est current de définir une procédure d'access "getPixel". Par exemple : unsigned char getpixel( int i; int j; unsigned char *image; int nCols; int nRows; ) { int ptr; ptr = j * nCols + i; if (ptr > nCols * nRows) return (Err); else return( image[ptr]); } 1-9 Représentation et Formation d'Images Séance 1 Modèle Mathématique de la Formation d'Image Modèle de la Caméra Géométrie Physique Y j • X Z Axe Optique • i F Objective Rétine Modèle Mathématique: Projection Centrale Les coordonnées de l'image sont main gauche. Y i P = (X , Y , Z s) s s s P = (X c, Yc , Z ) c c F X • • Z Image Objective Axe Optique Pi = (i, j) => (x r, y r, 0) j Les Repères Coordonnées de la Scène : s Point Scène : P = (xs, y s, z s) Coordonnées de la Caméra : c Point Caméra : P = (xc, y c, z c ) r Point Rétine : P = (xr , y r ) Coordonnées de l'Image : i Point Image : P = (i, j) 1-10 Représentation et Formation d'Images Séance 1 Une image, rendu par une numériseur, est un tableau de pixels: O NCols-1 0 0 NRows-1 Transformation rétine->image Échantillonnage et Numérisation : E t Les Paramètre Intrinsèque de la Caméra : F : Distance Focale Ci, C j: Centre Optique de l'Image (en pixels) Di, D j : Taille Physique d'un Pixel dans la Rétine (pixel/mm) xr = i – Ci Di yr = – j – Cj Dj i = xr Di (mm . pixel/mm) + Ci (pixel) j = –yr Dj (mm . pixel/mm) + Cj (pixel) 1-11 Représentation et Formation d'Images Transformation entre repère de l'image et repère de la rétine : i P= i rC Séance 1 r P i D i 0 C i xr j = 0 –D j C j yr 1 0 0 1 1 ou bien: w iP = i rC w RP wi D i 0 C i wxr wj = 0 –D j C j wyr w 0 0 1 w Qu’est-ce que “w” ? Les coordonnées homogènes Problème : Représenter les transformations entre des systèmes de coordonnées avec une notation uniforme Technique : Coordonnées Homogènes Outil de base en : Principe : Vision par Ordinateur Graphisme 3-D Robotique Représentation d'une transformation d'ordre N avec une Matrice de dimension N+1. Coordonnées Cartésiennes Coordonnées Homogènes (x, y, z) (x = wx/a, y = wy/a, z = wz/a) (x, y, z, 1) (wx, wy, wz, w) avec w = a w est le paramètre d' "échelle". w sert à rendre linéaires les transformations qui contiennent des divisions. Dans les coordonnées homogènes, les translations, rotations, transformées affines et perspectives sont représentées par les produits des matrices. 1-12 Représentation et Formation d'Images Séance 1 Translation Addition en espace cartésien Multiplications en Coordonnées Homogènes y1 (Tx, Ty) 01 x1 y2 x2 02 T est un vecteur (vecteur de translation) de P1 vers P2 i.e. x2 = x1 + Tx y2 = y1 + Ty z2 = z1 + Tz 1 = 1 donc 2 P = 12T 1P ou x2 y2 = z2 1 Notation : 2 1T 1 0 0 0 0 1 0 0 0 0 1 0 T x T y T z 1 x1 y1 z1 1 = Transformation de repère 1 vers repère 2. 1-13 Représentation et Formation d'Images Rotation Séance 1 y φ θ γ x z Au tour de l'axe X : Rx(θ) 10 = 0 0 0 0 0 Cos(θ) -Sin(θ) 0 Sin(θ) Cos(θ) 0 0 0 1 l'axe Y : Ry(φ ) ) 0 Cos(φ 0 1 = -Sin(φ ) 0 0 0 S i n (φ ) 0 Cos(φ ) 0 0 0 0 1 l'axe Z : Rz(γ) Cos(γ) -Sin(γ) 0 Sin(γ) Cos(γ) 0 = 0 0 1 0 0 0 0 0 0 1 En Générale : T = R 0 0 0 Tx Ty Tz 1 1-14 Représentation et Formation d'Images Usage des Coordonnées Homogènes en Robotique 3T 2 2 Séance 1 4 T3 Tr R Les articulations sont nommées 1 à 6. Chaque articulation et modélisée par une rotation et une translation. Expression d'un point dans la scène rX par rapport au pince eX e X= e 5 4 3 2 1 r 5T 4 T 3 T 2 T 1 T r T X ou plus généralement: e X= e r rT X (Repère "e" pour effecteur) Transformer une point X r par rapport au base à une point X e par rapport au effecteur Pour la vision : Paramètre Externe de la Caméra: ( csT ) Transformation entre les repère Caméra et les repère Scène 1-15 Représentation et Formation d'Images Séance 1 Description des transformations scène -> image w iP = But : i s sM P Paramètres Extrinsèques de la Caméra : Transformation entre repère Camera et repère Scène : c P = c s sT P w iP = ir C rc P cP Paramètres Intrinsèques de la Caméra : Matrice de Projection rc P du repère Caméra vers le repère Rétine w RP = R c cP P Transformation entre repère image et repère caméra w iP = i RC w RP Composition : w iP = ir C rc P csT sP = i s sM P Transformations scène -> rétine: le modèle Sténopé Projection des Points de la Scène vers la Rétine (Dans le repère de la Rétine) X (xr) • • F Zc (xc , zc) Z Dans le repère de la caméra : (xc, y c, z c) : Point dans la scène (xr , y r , 0) : Point dans la rétine 1-16 Représentation et Formation d'Images Avec l’origine dans la rétine, par triangles semblables : xr Xc = F (F + Z c) => Séance 1 Xc F xr = ( F + Z ) c Équations de perspective: (centre dans la rétine) Xc F xr = (F+Z ) c Yc F yr = (F+Z ) c zr = 0 Remarque : la présence de zc est nécessaire. (profondeur du point dans la scène) Simplification : placer l’origine au point de projection : xr Xc F = Zc => xr = Xc F Zc yr Yc F = Zc => yr = Yc F Zc zr = F 1-17 Représentation et Formation d'Images Équations de Perspective en Coordonnées Homogènes (avec l’origine au point de projection ) : w x r = Xc w y r = Yc w zr = Z c Zc w= F Séance 1 (mais on peut exclure zr) et donc w RP = [wxr , wy r , w ] T La transformation du repère Caméra vers le repère Rétine est : w RP = r c cP P wxr 0 wyr = w 0 et donc : r cP 1 0 0 0 xc 1 0 0 yc 1 z 0 F 0 c 1 = 1 0 0 0 0 1 0 0 1 0 0 F 0 Noter que rc P n'est pas réversible . 1-18 Représentation et Formation d'Images Projection d'un point de la scène vers un point de l'image => w iP = ir C rc P csT sP = Séance 1 i s sM P Paramètres Extrinsèques de la Caméra: ( csT ) Transformation entre repère Camera et repère Scène : c P = c s sT P Paramètres Intrinsèques de la Caméra : Transformation entre repère image et repère caméra r cP du repère Caméra vers le repère Rétine et i r C : du repère Rétine vers le repère Image w iP = ir C w RP w RP = et r c cP P => w iP = ir C rc P cP P = c s sT P => w iP = ir C rc P csT sP = i s sM P Dans le repère de la scène : c Projection inverse, du repère image vers le repère scène : s P= c -1 sT r -1 cP i -1 rC w iP Cependant, l'inversion de la transformation perspective rc P -1 implique la connaissance de la profondeur, Zc, pour chaque pixel. 1-19 Représentation et Formation d'Images Séance 1 Resumé : Les transformations 1) Transformation entre le repère Scène et le repère Caméra. (Paramètre Externe de la Caméra ) c c s sT P P = c sT = R 0 0 0 Tx Ty Tz 1 2) La transformation du repère Caméra vers le repère Rétine est : w RP = r cP = r c cP P 1 0 0 0 0 1 0 0 1 0 0 F 0 3) Transformation entre repère de l'image et repère de la rétine : Les Paramètre Intrinsèque de la Caméra : F : Distance Focale Ci, C j: Centre Optique de l'Image (en pixels) Di, D j : Taille Physique d'un Pixel dans la Rétine (pixel/mm) i P= i rC r P i D i 0 C i xr j = 0 D j C j yr 1 0 0 1 1 4) Projection d'un Point de la scène vers un point de l'image w iP = ir C rc P csT sP = i s sM P 1-20