320 likes | 397 Views
Calibrare - Extragerea automată a punctelor - Februarie, 200 3. Vilmos Zsombori ( v.zsombori@gold.ac.uk ). cuprins. Parametrii de calibrare modelul camerei matricea de proiecţie distorsiuni Algoritmi de calibrare Zhang Bouget Automatizarea extragerii punctelor de control
E N D
Calibrare- Extragerea automată a punctelor -Februarie, 2003 Vilmos Zsombori (v.zsombori@gold.ac.uk)
cuprins • Parametrii de calibrare • modelul camerei • matricea de proiecţie • distorsiuni • Algoritmi de calibrare • Zhang • Bouget • Automatizarea extragerii punctelor de control • pouncte de control AICON • tabela de şah • Referinţe
param. de calibrare – modelul camerei • Model simplu: Pinhole • Plan Imagine Z=1 (f=1) • Proiecţie: • Reprezentare prin coordonate omogene:
param. de calibrare – matricea de proiecţie intrinseci K proiecţie extrinseci • P: matrice 3x4, matricea de proiecţie • intrinseci: 5 (fx, fy, cx, cy, s) • extrinseci: 6 (R, T) • simplificări la iniţializare: • (cx, cy) centru • s 0 (pixeli rectangulari)
r param. de calibrare – distorsiuni K1,K2 – schimbare în funcţie de distanţa focală:
algoritmi de calibrare – Zhang • algoritmul lui Zhang: • listăm un şablon pe care fixăm pe o suprafaţă plană • facem câteva poze despre modelul plan, având orientări diferite, mişcând sau camera sau şablonul • detectăm puntele de control pe imagini • estimăm cei cinci param. intrinseci şi param. extrinseci, urmat de o optimizare neliniară • estimarea coeficienţilor de distorsiune radială • fecem o optimizare a tuturor parametrilor prin minimizare neliniară
algoritmi de calibrare – Zhang – homography • corespondenţă: <-> • Z = 0: • homography:, • R – matrice de rotaţie (ortogonal):
algoritmi de calibrare – Zhang ctd. • soluţie iniţială: • fie: • cu restricţii: • sistem supradeterminat 2n x 6; avem soluţie unică pentru n mai mare sau egal de 3 • pseudosuluţie în sensul celor mai mici pătrate
algoritmi de calibrare – Zhang ctd. • optimizare maximum-likelihood: • reproiectare – punctul Mj – imaginea i • minimizarea funcţionalei se face prin metoda Levenberg-Marquardt, fiind o minimizare neliniară • estimarea distorsiunilor radiale: • având n imagini cu câte m puncte – sistem cu 2mn ecuaţii • se rezolvă în sencul celor mai mici pătrate: • optimizare globală neliniară
algoritmi de calibrare – Zhang ctd. • caz degenerat: • o imagine se obţine din celălalt numai prin translaţie • nu adaugă constrângeri la sistemul iniţial, constrângerile fiind bazate pe propr. matricii de rotaţie • alte probleme care se mai pun: • estimarea iniţială a matricii H (homography) • minimizare neliniară • extragerea parametrilor intrinseci din matricea B • aproximarea lui R printr-o matrice de rotaţie • datorită erorilor, matricea R obţinut prin calcule nu va fi o matrice de rotaţie • aproximarea se face în sensul celei mai mici norme Frobenius a difetenţei • soluţie: singular value decomposition
algoritmi de calibrare – Bouget • algoritmul lui Bouget: • detectarea punctelor de control pe imaginile de calibrare (punctele de control fiind colţurile unei tabele de şah) • calcularea matricilor H (homohraphy) pentru fiecare imagine folosind algoritmul Levenberg-Marquardt pentru minimizare • estimarea param. extrinseci (neglijând distorsiunile) • optimizarea param. intrinseci • recalcularea param. extrinseci pentru fiecare imagine • optimizare globală luând în considerare şi distorsiunile
automatizarea extragerii punctelor de control • puncte de control tip AICON: • avantaj: • posibilitatea de identificare unică prin histogramă radială • dezavantaj: • proiecţie – elipse • ellipse detection/fitting – costisitor • tabela de şah: • avantaj: • mai uşor de detectat prin funcţii de potenţial şi operatori diferenţiali • dezavantaj: • corespondenţă
puncte de control AICON ctd. • algoritm stabil (numeric) de ellipse-fitting: • ecuaţia: , • puncte, restricţii: • sistemul de ecuaţii: , • ideea: se separă termenii pătratici de cele liniari
tabela de şah • puncte de control – colţuri
tabela de şah • detectarea colţurilor, eliminarea regiunii irelevante • câmp de forţe: • energie de potenţial: • proprietate: • implementare: nucleu de convoluţie
tabela de şah • obs.: • potenţial (intensităţi) –> câmp scalar • energie –> câmp scalar • câmpul de forţe –> câmp vectorial • un punct iniţializat, care se mişcă numai sub influenţa câmpului, satisface sistemul simetric
tabela de şah • proprietăţi relevante în cazul nostru: • magnitudinea câmpului se anulează în colţuri şi sunt izolate complet de magnitudini mari • zonele cu intensităţi relativ apropiate dispar • aceste proprietăţi sunt independente de orientarea şablonului • probleme care apar: • magnitudinea poate să se anuleze şi în alte puncte (ex. mijlocul unei zone circulare) • imagini saturate
tabela de şah • operatori diferenţiali: Fx Fx2 Fy2 Fy Fyy Fxx |grad(Fy)| |grad(Fx)| Fx2Fyy – 2FxFyFyx + Fy2Fxx Fx2Fyy – 2FxFyFxy + Fy2Fxx
tabela de şah • soluţie • determinăm alinierea punctelor • eliminăm pe cele care nu respectă alinierea • interpolăm pe cele care n-a prins câmpul • iarăşi probleme: • dreptele se proiectează ca şi drepte, deci alinierea pe diagonală se păstrează • colţurile nu se aliniază exact din cauza distorsiunilor • iarăşi soluţii: • validare de direcţii • după orientarea gradientului • gradul de suprapunere a dreptelor cu muchii • dreptele se determină în sensul celor mai mici pătrate
tabela de şah • algoritm • determin câmpul de potenţial • determin câmpul de forţe –> magnitudinea • stretching, binarizare, imaginea negativă • etichetare –> puncte de control nominalizate • pentru fiecare pereche de puncte nominalizate • determin dereapta, determin proiecţia tuturor celorlalte puncte • pentru punctele extreme • determin combinaţia convexă –> segmentul de dreaptă • în funcţie de gradul de suprapunere cu imaginea muchii • validez sau nu dreapta, etichetez acesta cu orientarea • determin histograma de orientări, reetichetez dreptele • validez punctele • interpolez punctele lipsă
tabela de şah • rezultate
tabela de şah • parametri • vecinătatea limită a câmpului –> viteză, saturaţie • aria maximă a punctelor izolate –> numărul punctelor considerate a fi colţ iniţial • distanţa maximă a puntelor de drepte –> distorsiuni • numărul minim de puncte pentru o dreaptă • gradul de suprapunere a combinaţiilor convexe cu muchii –> distorsiuni
completări • determinarea dreptunghiului maxim • identificarea unică a punctelor pentru stereo-calibrare