ABONAMENTE VIDEO REDACȚIA
RO
EN
NOU
Numărul 150
Numărul 149 Numărul 148 Numărul 147 Numărul 146 Numărul 145 Numărul 144 Numărul 143 Numărul 142 Numărul 141 Numărul 140 Numărul 139 Numărul 138 Numărul 137 Numărul 136 Numărul 135 Numărul 134 Numărul 133 Numărul 132 Numărul 131 Numărul 130 Numărul 129 Numărul 128 Numărul 127 Numărul 126 Numărul 125 Numărul 124 Numărul 123 Numărul 122 Numărul 121 Numărul 120 Numărul 119 Numărul 118 Numărul 117 Numărul 116 Numărul 115 Numărul 114 Numărul 113 Numărul 112 Numărul 111 Numărul 110 Numărul 109 Numărul 108 Numărul 107 Numărul 106 Numărul 105 Numărul 104 Numărul 103 Numărul 102 Numărul 101 Numărul 100 Numărul 99 Numărul 98 Numărul 97 Numărul 96 Numărul 95 Numărul 94 Numărul 93 Numărul 92 Numărul 91 Numărul 90 Numărul 89 Numărul 88 Numărul 87 Numărul 86 Numărul 85 Numărul 84 Numărul 83 Numărul 82 Numărul 81 Numărul 80 Numărul 79 Numărul 78 Numărul 77 Numărul 76 Numărul 75 Numărul 74 Numărul 73 Numărul 72 Numărul 71 Numărul 70 Numărul 69 Numărul 68 Numărul 67 Numărul 66 Numărul 65 Numărul 64 Numărul 63 Numărul 62 Numărul 61 Numărul 60 Numărul 59 Numărul 58 Numărul 57 Numărul 56 Numărul 55 Numărul 54 Numărul 53 Numărul 52 Numărul 51 Numărul 50 Numărul 49 Numărul 48 Numărul 47 Numărul 46 Numărul 45 Numărul 44 Numărul 43 Numărul 42 Numărul 41 Numărul 40 Numărul 39 Numărul 38 Numărul 37 Numărul 36 Numărul 35 Numărul 34 Numărul 33 Numărul 32 Numărul 31 Numărul 30 Numărul 29 Numărul 28 Numărul 27 Numărul 26 Numărul 25 Numărul 24 Numărul 23 Numărul 22 Numărul 21 Numărul 20 Numărul 19 Numărul 18 Numărul 17 Numărul 16 Numărul 15 Numărul 14 Numărul 13 Numărul 12 Numărul 11 Numărul 10 Numărul 9 Numărul 8 Numărul 7 Numărul 6 Numărul 5 Numărul 4 Numărul 3 Numărul 2 Numărul 1
×
▼ LISTĂ EDIȚII ▼
Numărul 72
Abonament PDF

Gauss-Newton, Terra și aerosolii (ca la iarbă verde)

Petruț Cobârzan
Software Developer @ Catalysts Romania



DIVERSE

Vă aduceți cu siguranță aminte de cursurile lungi de Calcul Numeric din primele/ultimele semestre de facultate, în cadrul cărora domnul profesor Ivan (UTCN) și domnul profesor Trâmbițas (UBB) ne povesteau despre metoda Gauss-Newton și cum apreciam cu toții, mai mult sau mai puțin întemeiat, că “asta nu o să ne prea ajute”. Deși am luat 10 la examenul de Calcul Numeric (prin 2008, toamna), până acum doi ani nu am avut ocazia să mă lovesc de Gauss-Newton niciodată în practică. Prin 2015 (tot toamna), m-am angajat la compania la care lucrez și azi. Mi-au promis că mă lasă să mă joc cu date satelitare și că îmi arată ei cum să folosesc Gauss-Newton ca să deduc concentrații de tot felul de aerosoli de prin atmosferă și că, dacă fac treabă bună, mă lasă să văd “adevărata” culoare a Pământului. Am acceptat, pentru că suna a ceva ce nu mai auzisem pe nimeni să facă și iată-mă, după doi ani, tot aici, băgând încă un satelit în Gauss-Newton și văzând-o pe Terra încă o dată, goală.

Procesarea de date satelitare implică la diferitele sale nivele cunoștințe de fizică, matematică și, într-o ultimă fază, de "computer science" (aceasta pentru că sună mai inginerește decât informatica). La fel ca în multe alte domenii, când începi să pui totul pe foaie, vei simți nevoia să abstractizezi -și atunci o cam dai în teorie. Nici acest domeniu nu e diferit. Aștepți să se prindă fizicienii cum merge atmosfera, încerci să modelezi geometric o soluție pe care s-o implementezi, îți dai seama că double-float precission nu îi în avantajul tău, doar că nici nu îți permiți mai mult (pentru că vrei și performanță) și apoi implementezi ce ți-a rămas.

Datele

Așa cum probabil unii cititori știu, datele satelitare (numite deseori produse) sunt organizate în patru nivele:

Nivelul 1 este la rândul lui împărțit în trei sub-nivele: 1A, 1B și 1C, diferența constând în modul mai mult sau mai puțin standardizat în care sunt aranjate imaginile mai sus menționate.

La capitolul rezoluție, în general un pixel e echivalentul unei suprafețe reale aproximativ dreptunghiulare cu laturile măsurând câteva sute de metri (mai rar, zeci de metri sau zeci de kilometri).

Workflow-ul tipic

Ca orice alt membru de rând al comunității, descărcăm la greu date (câțiva PB buni) la nivelul 1 (A sau B). Apoi, pentru a nu ne bate capul prea mult la pașii următori, aliniem totul pe bunul plac în niște produse intermediare de nivel 1C, un proces care ar putea să pară ușor (comparat cu ce implică pașii ce urmează), dar care uneori necesită o groază de geometrie și calcul numeric, depinzând de calitatea produselor de nivel 1A și/sau B. Procesul implică uneori chiar reîntoarcerea la ceva care seamănă mai mult a date de nivel 0 și refacerea totală a procesului de aliniere, localizarea precisă a satelitului prin triangulare etc. . Alteori, preluam date de la toți sateliții cu care lucrăm, fiecare cu standardul lui de aliniere și creăm cuburi de date, perfect aliniate. Tot la nivelul 1, aplicăm și o serie de corecții, unele pur geometrice, altele de ordin fizic (e.g. ortorectificare, corecții topografice, eliminări de nori, corecții atmosferice). După ce am terminat cu alinierea, interpolările de coordonate și alte măsurători geometrice și cu aplicarea de corecții ajungem la partea importantă: procesarea datelor de nivel 1 pentru a crea produse de nivelul 2. Aici intervine GRASP-ul (i.e. Generalized Retrieval of Aerosols and Surface Properties algorithm) si Gauss-Newton. În linii mari, fără a intra în detalii prea tehnice (ca să nu pierdem audiența), vorbim cu fizicienii de la LOA (Laboratoire d’Optique Atmospherique, Université de Lille, France), ei ne spun cum să modelăm atmosfera ca o funcție primind ca date de intrare concentrația diferitelor gaze și alți aerosoli (vreo 50 la număr), culoarea suprafeței terestre, tot felul de unghiuri și unghiușoare (cum bate soarele, cum observă instrumentul satelitar) și alte geometrii și oferind ca date de ieșire ce măsoară/ar trebui să măsoare satelitul în astfel de condiții (de obicei vreo 5-10 valori pe pixel, numite radianțe). Și aici vine partea interesantă, pentru care merită să fim atenți la orele de Calcul Numeric. Noi avem outputul funcției, pentru că aceasta a măsurat satelitul (i.e. imaginile pe care le-am tot reorganizat mai sus) și dacă știm aproximativ cum arată funcția (cu excepția unor parametri pe care am vrea să-i învățăm), folosind Gauss-Newton, o putem “inversa” și afla parametrii funcției ghicind în final inputul care ar produce outputul măsurat de satelit.

Pe lângă acest element de magie, totul se paralelizează printr-un centru de procesare, referit de team lead-ul meu (tata la proiectele cu sateliți, mein Geschäftsführer, Michael Aspetsberger), drept Arsenalul și accelerăm totul, începând de la optimizări low-level până la nivel de observație matematică. De fapt, secretul GRASP-ului, apreciat drept cel mai rapid din clasa lui de algoritmi, constă în principal în diferite observații matematice și fizice despre ce se poate aproxima ușor și ce nu, și cât de precis.

Trecut și viitor: santinelele europene

Până acum am lucrat în principal cu date venite de la instrumentele instalate pe sateliții din cadrul programelor Columbus (AATSR, MERIS) și Copernicus (misiunile Sentinel). Chiar acum e pe masă Sentinel3 cu două instrumente de interes: OLCI și SLSTR. Facem cu ocazia aceasta și un proiect de precizie: estimăm nivelul de zăpadă la sol pentru toată Europa.

Atât de impresionați au fost băieții de la ESA de unele din rezultatele noastre anterioare, încât ne lasă tot pe noi (LOA și Catalysts, printre mulți alții) să procesăm datele ce urmează să fie achiziționate de un satelit ce va fi lansat în orbită prin 2023 (Sentinel4). Momentan, facem planurile și scriem documentație.

La final

Adevărul e că Terra, goală sau în see-through-ul ei de zi cu zi, nu arătă foarte diferit. Cu ochiul liber ai zice ca nici măcar n-ai dat nimic jos. Poate dacă improvizezi un GIF dintr-o succesiune rapidă de săgeată-stânga săgeată-dreapta, vei vedea o ușoară diferență, însă efectele atmosferei, cu tot ce conține ea, nu sunt foarte puternice.

.jpg)

Produs agregat (Nivel 3) pentru întregul an 2008 (10km), reprezentând albedo-ul terestru la 560nm, obținut din date achiziționate de Envisat MERIS (MEdium Resolution Imaging Spectrometer).

NUMĂRUL 149 - Development with AI

Sponsori

  • Accenture
  • BT Code Crafters
  • Accesa
  • Bosch
  • Betfair
  • MHP
  • BoatyardX
  • .msg systems
  • P3 group
  • Ing Hubs
  • Cognizant Softvision
  • Colors in projects