Reconstrucție 3D din imagini

Reconstrucție 3D din imagini , bazate pe imagini de reconstrucție 3D în limba engleză, se referă la tehnica utilizată pentru a obține o reprezentare în trei dimensiuni ale unui obiect sau scenă dintr - un set de imagini luate diferite puncte de vedere a obiectului sau a scenei.

Mai general, problema numită reconstrucție 3D  (în) este următoarea: are una sau mai multe reprezentări 2D ale unui obiect și doriți să determinați coordonatele elementelor vizibile pe aceste reprezentări într-un cadru de spațiu 3D real.

În contextul mai specific al acestui articol în care reprezentările 2D sunt fotografii, este vorba de recuperarea adâncimii punctelor vizibile pe imagine, care se pierde în timpul procesului de proiecție care produce imaginea.

Principiu

Punctele vizibile pe imagini sunt proiecțiile punctelor reale care pot fi apoi localizate pe linii drepte. Dacă sunt luate două sau mai multe vederi ale obiectului, poziția în spațiu a punctelor reale poate fi obținută prin intersecția acestor linii: acesta este principiul fundamental al triangulației oricărei reconstrucții 3D din imagini.

Pentru a obține, după dorință, coordonatele punctelor scenei, totuși, trebuie rezolvat un anumit număr de probleme:

În plus, există o altă problemă: densitatea reconstrucției. Odată ce coordonatele unui anumit număr de puncte din spațiu au fost obținute, este necesar să se găsească suprafața căreia aparțin aceste puncte pentru a obține o plasă , un model dens. Altfel, în unele cazuri, când obținem o mulțime de puncte, norul de puncte s-a format suficient pentru a defini vizual forma obiectului, dar reconstrucția este atât de rară ( rară ).

În subsecțiunile următoare, vom explora fiecare dintre aceste dificultăți.

Calibrare

Parametrii intrinseci

Proiecția coordonatelor unui punct din spațiu pe imagine în conformitate cu modelul cu orificiu este ilustrată opus.

Astfel, coordonatele punctului de imagine al lui P în cadrul camerei sunt:

În informatică, coordonatele punctelor dintr-o imagine sunt exprimate în general din colțul din stânga sus. Prin urmare, avem coordonatele centrului optic de pe imagine ca parametri suplimentari care urmează să fie determinați.

Relațiile sunt scrise într - o matrice care implică K matrice, utilizată în mod obișnuit în literatura de specialitate, așa-numita calibrare internă: .

Parametrii extrinseci

Este pur și simplu un vector de poziție a camerei în sistemul de coordonate al scenei și de trei vectori care definesc orientarea acestuia. Cu acești parametri, putem apoi poziționa punctele de vedere ale obiectului în raport unul cu celălalt.

Este obișnuit ca pozițiile și orientările camerelor să fie date în raport cu prima cameră.

Metode de obținere

Pentru parametrii intrinseci, este în general posibil să se facă o estimare în amonte a parametrilor (care sunt caracteristici invariante ale camerei utilizate) prin implementarea unei tehnici de calibrare care constă în fotografierea unui obiect bine cunoscut (de exemplu, o tablă de șah). Cu toate acestea, tehnicile de reconstrucție recente știu cum să estimeze automat parametrii fără informații a priori de pe cameră.

Pentru parametrii extrinseci, se poate fie să-i estimați prin calcul din asociațiile de puncte, fie să cunoască exact poziția camerelor realizând, de exemplu, un ansamblu specific. Aceasta este ceea ce propun Thomas T. Lu și Tien-Hsin Chao, cu un montaj folosind o singură cameră și două puncte de vedere simulate de două oglinzi și o prismă.

Fiecare jumătate a imaginii rezultate oferă un punct de vedere diferit al obiectului datorită oglinzilor și prismei. Avem astfel avantajul de a avea un ansamblu relativ simplu de produs și care necesită doar o singură cameră. În plus, în principiu, parametrii de calibrare extrinseci sunt cunoscuți și foarte precis, fără estimare, de unde interesul metodei.

Asociere

Asocierea punctelor de imagine ale aceluiași punct al scenei pe diferite fotografii este punctul cheie al reconstrucției 3D. Aceasta este ceea ce permite determinarea coordonatelor 3D ale punctelor scenei prin triangulare și, de asemenea, pentru metodele recente, calibrarea camerelor.

Pentru a face acest lucru, este mai întâi necesar să alegeți bine punctele de pe imagini, acesta este pasul extragerii punctelor de interes ( puncte caracteristice ). De exemplu, acestea pot fi colțuri pe imagine, ușor de localizat. Apoi, datele caracteristice ale acestor puncte de interes trebuie calculate pentru a le putea identifica de la o imagine la alta.

Alegerea și asocierea punctelor de interes se poate face manual, dar este mai eficient să automatizați procedura. Algoritmi relativ recenți, precum SIFT și SURF , excelează în acest domeniu și au permis o eficiență reală în achiziția 3D din fotografii.

Geometria epipolară

Când se cunoaște poziția relativă a camerelor ( adică parametrii de calibrare extrinseci), este posibil să căutați corespondențele punctelor numai pe liniile epipolare .

În figura opusă sunt reprezentate două vederi ale unui punct X. Punctele și respectiv sunt proiecțiile centrului camerei din dreapta pe imaginea din stânga și ale centrului camerei din stânga pe imaginea din dreapta. Aceste două puncte se numesc epipoli. Vedem că dacă este imaginea punctului X din imaginea din stânga, atunci setul de puncte posibile ale imaginii din imaginea din dreapta este o linie dreaptă care trece prin numită linie epipolară. Căutarea potrivirilor este apoi simplificată într-o căutare pe un set 1D atunci când geometria epipolară este cunoscută. Când axele camerelor sunt paralele, liniile epipolare sunt orizontale și, prin urmare, asociațiile se găsesc pe aceleași numere de linie ale imaginilor.

Reconstrucţie

Reconstrucție cu calibrare

Obținerea coordonatelor punctelor din spațiu este aproape imediată dacă parametrii de calibrare sunt cunoscuți. Dacă observăm:

  • coordonatele punctului scenei din sistemul absolut de coordonate,
  • (resp. ) coordonatele punctului din imaginea 1 (resp. 2),
  • (resp. ) coordonatele punctului din cadrul camerei 1 (resp. 2),
  • (resp. ) matricea internă de calibrare a camerei 1 (resp. 2),
  • și (resp. și ) orientarea și poziția camerei 1 (resp. 2) în cadrul absolut,

atunci noi avem:

și

Astfel, rezolvarea acestor ecuații face posibilă găsirea .

Structura din algoritmul Motion

Această tehnică are ca scop atât crearea reconstrucției ( Structură ), cât și estimarea mișcării camerei între fotografii ( Mișcare ). Principiul metodei este după cum urmează:

În primul rând, sunt selectate două imagini din diferitele vederi ale obiectului și este definită o marcă de scenă inițială. Apoi, poziția și orientarea camerelor la originea celorlalte imagini sunt determinate în acest cadru datorită asocierilor de puncte. Punctele 3D noi sunt apoi adăugate la reconstrucție. În fiecare etapă, reconstrucția este rafinată și îmbogățită. Odată ce reconstrucția s-a făcut și s-a găsit poziția relativă a camerelor, se pot face ajustări.

Datorită acestei metode, obținem o reconstrucție și poziția camerelor în raport cu aceasta, fără nicio presupunere prealabilă. Toate acestea sunt valabile pentru viață, cu excepția unui factor de scară .

Densitate

Odată ce punctele izolate sunt obținute prin reconstrucție, putem fie să păstrăm doar punctele, dacă sunt suficiente pentru a defini forma obiectului, fie dorim o reconstrucție densă, asociată cu o plasă .

Densificare asistată de utilizator

După cum sa sugerat aici, odată ce punctele au fost reconstituite, un algoritm poate fi folosit pentru a găsi formele primitive (plan, sferă, cilindru, suprafața Bézier etc.) care se potrivesc cel mai bine cu forma locală a obiectului. Utilizatorul poate selecta apoi o zonă a obiectului și poate cere algoritmului să găsească, de exemplu, planul care se adaptează cel mai bine la puncte. Acest lucru se poate face pur și simplu prin minimizarea distanței de la puncte la suprafața căutată.

Metoda Visual Hulls

Metoda Visual Hulls , care poate fi tradusă prin siluete vizuale , este o metodă de reconstrucție care permite, din imagini calibrate, obținerea unui model solid dens al obiectului.

Principiul său este total diferit de principiul general al reconstrucției prezentat anterior. Aici sunt studiate siluetele aparente ale obiectului de pe fiecare dintre punctele de vedere.

Prima lucrare constă în izolarea conturului obiectului în fiecare imagine pentru a deduce conul de vedere și, prin intersecție, silueta obiectului. Multe lucrări suplimentare, pe care nu le vom detalia aici, vor fi apoi efectuate pentru a rafina modelul obiectului.

Soluții complete disponibile

ARC3D

ARC3D este o soluție de reconstrucție 3D din fotografii dezvoltate de academicieni de la Universitatea din Louvain.

Face posibilă obținerea unei reconstrucții cvasi-dense, adică compusă dintr-un număr mare de puncte, pe care este posibil să le plaseze. Fiecare punct are o valoare de culoare asociată. Reconstrucțiile produse sunt, prin urmare, fidele realității. Nu este necesară o calibrare prealabilă pentru a utiliza ARC3D.

În principiu, procesul de reconstrucție al ARC3D seamănă cu cel al structurii din mișcare  : se bazează pe asocieri de puncte, dar de data aceasta pe mai mult de două imagini la un moment dat. Asocierile triple permit estimarea pozițiilor camerelor într-un cadru de referință definit inițial în scenă, ceea ce face posibilă obținerea unui model 3D până la un factor de scală fără calibrare.

ARC3D este utilizabil gratuit prin intermediul site-ului web, dar lucrul se face pe mașinile ARC3D. Într-adevăr, este necesar să îi trimiteți fotografiile și să recuperați un timp mai târziu reconstrucția pentru a o deschide într-un software de manipulare 3D.

2d3

2d3 Sensing oferă instrumente avansate de reconstrucție 3D din imagini.

Printre acestea, instrumentul TopoMap face posibilă obținerea unui model dens ( mesh ) texturat dintr-un videoclip al obiectului, fără nici o calibrare prealabilă a camerei.

TopoMap analizează fiecare dintre imaginile fluxului și extrage puncte caracteristice care vor fi utilizate pentru reconstrucție. Acest lucru se face prin intermediul unui algoritm de tip Structură din mișcare care permite atât reconstrucția, cât și determinarea mișcării camerei în timpul înregistrării.

Apoi, reconstrucția este densificată prin crearea automată a unei rețele (acest lucru trebuie să fie posibil datorită numărului mare de puncte reconstituite în primul rând). O textură rezultată din una dintre imagini (cea mai potrivită pentru aceasta este determinată) este apoi aplicată fiecărui triunghi al rețelei. Se obține astfel o excelentă reprezentare computerizată a obiectului, care poate fi apoi ușor de manipulat în software-ul 3D.

Dacă datele GPS sunt asociate cu mișcarea camerei, este chiar posibil să le utilizați pentru a avea un model scalat și geo-poziționat (coordonatele GPS ale fiecărui punct al mesh-ului sunt apoi puse la dispoziție).

Acute3D

Compania Acute3D publică Smart3DCapture, o soluție software pentru reconstrucția automată a modelelor 3D complexe din fotografii, deja adoptată de Autodesk (6 milioane de utilizatori pentru 123D Catch), Blom, InterAtlas / Ubick, Pasco, Pictometrie etc. pentru a produce modele 3D de înaltă rezoluție, precum și orașe întregi.

Gama de software Smart3DCapture include 3 ediții:

  • Smart3DCapture Advanced: dedicată în principal, dar nu exclusiv operatorilor de drone, ediția Advanced permite producerea de modele 3D de înaltă rezoluție pentru clădiri, cariere, zone de construcție etc. și produce în mod nativ ortofotografii adevărate, precum și modele digitale de suprafață, cu un import de date de intrare limitat la 10GPix.
  • Smart3DCapture Expert: Permițând un import de 30 GPix în datele de intrare, această ediție permite reconstrucția clădirilor, districtelor etc.
  • Smart3DCapture Ultimate: ediție dedicată reconstrucției 3D automate a orașelor întregi cu import nelimitat de date.

Note și referințe

Note

  1. Cu toate acestea, unele metode recente încearcă să determine și acești parametri.
  2. Acesta este cazul ARC3D prezentat mai târziu
  3. Ce fac Structute din Motion și ARC3D, discutate mai târziu.

Referințe

  1. Marc Pollefeys, „  Modelare 3D vizuală din imagini  ” ,2002
  2. (în) Thomas T. Lu și Tien-Hsin Chao , Un sistem de imagistică 3D de înaltă rezoluție și viteză și implementarea sa este ATR.
  3. (în) Yasutaka Furukawa Brian Curless , Steven M. Seitz și Richard Szeliski , Towards Web-Scale Multi-view Stereo.
  4. „  Reconstrucția obiectelor 3D  ”
  5. (în) Yasutaka Furukawa și Jean Ponce , Carved Visual Hulls for Image-Based Modeling.