[SCRÂTÂND] [FOȘIT] [CLIC] PROFESOR: Recuperarea formelor obiectelor utilizând măsurătorile luminozității imaginii. Și am vorbit oarecum despre stereo fotometric, care a fost o metodă care ne aduce rezultatul. Dar este oarecum nefiresc prin faptul că necesită expuneri multiple. Și suntem pe cale să trecem la formă de la umbrire, care este o metodă de a face acest lucru cu o singură imagine. Și am vorbit deja despre câteva tipuri diferite de materiale de suprafață și proprietățile lor reflectorizante. În special, am vorbit despre suprafețele Lambertiene și am început să vorbim puțin despre Hapke, care este un model pentru reflectarea planetelor stâncoase. Și vreau să introduc un al treilea, care are legătură cu microscopia. Deci, acesta este un microscop electronic cu scanare. Dar mai întâi, pentru comparație, iată câteva imagini cu microscoape electronice cu transmisie. După cum probabil știți, ele vă permit să obțineți o mărire uriașă, mult mai mare decât în ​​cazul luminii vizibile, deoarece sunteți limitat de lungimea de undă a luminii. Și lungimea de undă a electronilor la energii kilovolt este mult mai scurtă, permițându-vă potențial să imaginiți molecule mari. Și încă nu și-au atins limita. Teoretic, ar fi capabili să rezolve molecule și atomi individuali și, în unele cazuri, o fac. Oricum, dacă faci o căutare, transmisie electronică, microscop electronic, dai clic pe Imagini, obții toate aceste imagini cu aceste tipuri de microscoape. Și apoi, în cele din urmă, obțineți niște imagini cu lucruri care ar fi putut fi fotografiate cu un microscop electronic, ca acest lucru din dreapta. Și aceasta este o celulă cu un nucleu și niște vacuole și așa mai departe. Și este o tehnică extrem de utilă pentru a vedea detaliile fine, dar are limitările sale în ceea ce privește interpretarea. Deci, te uiți la... ei bine, ceea ce vom face în acest moment este să ne uităm la comparația cu alte tipuri de microscopie. Deci, să vedem. Voiam să dau clic pe chestia asta. Deci, cred că poți înțelege, dar este o felie foarte subțire de ceva și ar trebui să știi detaliile despre ce este asta. Acum, dacă în comparație, facem o căutare pe microscoapele electronice de scanare și facem clic pe Imagini, obținem asta. Și trebuie să derulați în jos înainte de a obține o fotografie a unui microscop. De ce este asta? Ei bine, pentru că microscoapele electronice cu scanare fac aceste imagini grozave pe care oamenii le plac. Microscopul electronic cu transmisie realizează imagini grozave pe care oamenii de știință implicați în cercetare le plac, dar nu sunt ușor de interpretat, în timp ce aceste imagini cu microscopul electronic de scanare sunt foarte populare. Sunt doar fabuloase. Adică, uită-te la asta. Adică, poți vedea imediat capul acestui păianjen săritor și este șase din cei opt ochi și așa mai departe. De ce, mă rog? Imagini frumoase care ni se par foarte usor de interpretat, stiu exact ce este. Și aceasta este o suprafață a cine știe ce. Dar puteți spune imediat forma și unde sunt crăpăturile și așa mai departe. Deci, ideea este că aceste microscoape electronice cu scanare produc imagini pe care ni se pare ușor de interpretat. Deci nu stiu. Vă puteți gândi la un motiv pentru care nu ni se pare că imaginile cu microscopul electronic de transmisie sunt atât de ușor de interpretat, dar acestea le putem oferi unde ne aflăm în curs? Ei bine, dacă te uiți la aceste imagini, vezi că există o variație de luminozitate. Deci asta e destul de evident. Dar este o variație oarecum specială. Pe măsură ce te apropii de margini, lucrurile devin mai strălucitoare, în timp ce dacă te uiți la suprafața frontală, acestea devin mai întunecate. Deci, există o variație a luminozității în funcție de orientarea suprafeței. Ta-da, despre asta vorbim. Deci, motivul pentru care ni se pare că aceste imagini sunt atât de atrăgătoare și ușor de interpretat este pentru că au umbrire. Au o dependență de luminozitate de orientarea suprafeței. Și deci acesta este, evident, capul unei molii. Puteți vedea ochii compuși. Puteți vedea schnozzle-ul acolo, totul suflat. Deci este atât de ușor să vezi ce se întâmplă. Există o aterizare extraterestră pe... și singurul lucru care este puțin ciudat este dacă te uiți la aceste forme, deci aceasta este, evident, o formă ovoidă asemănătoare fotbalului, este cel mai întunecat în mijloc și devine strălucitor spre margini. Deci este un fel de anti-lambertian. Cu Lambertian, obținem cea mai strălucitoare reflexie a suprafeței acolo unde suprafața este perpendiculară pe lumina incidentă. Și așa ne așteptăm ca pe măsură ce te apropii de conturul de ocluzie, acesta se întunecă. Deci, dacă ne uităm la izofotele de pe, să zicem, imaginea unei sfere, vor fi curbe concentrice care vor coborî spre margine. Și astea merg pe cealaltă direcție. Și, deci, este destul de interesant pentru că dacă am crește într-o lume în care majoritatea lucrurilor ar fi un fel de Lambertian, ne-am pricepe foarte bine la interpretarea formei lucrurilor care au acest tip de suprafață. Și totuși suntem capabili să interpretăm foarte bine forma acestuia. Și la un moment dat, am avut un UROP să facă o grămadă din aceste poze și să inverseze contrastul pentru că ar trebui să fie mult mai ușor de interpretat. De ce nu s-a gândit nimeni la asta? Și ei bine, nu a fost o sarcină UROP foarte reușită pentru că cu contrastul invers, imaginile nu arătau mai bine. De fapt, au fost puțin mai greu de interpretat și am avut câteva explicații pentru asta. Deci arată câteva lucruri. În primul rând, această modalitate de imagistică microscopică este foarte drăguță din punctul nostru de vedere pentru că putem înțelege aceste imagini. Nu avem nevoie de un calcul complicat. Și celălalt este că sistemul vizual uman se pare că poate face acest lucru și nu este programat să avem o idee anume despre ce este materialul de suprafață. Se poate adapta și face față... Adică, putem vedea că aceasta nu este o suprafață lambertiană. În același timp, putem avea o idee destul de bună despre care este forma. Adică, poate că nu este metric precis, dar asta e altă poveste. OK, deci despre asta vom vorbi în continuare. Așa că lasă-mă să scap de asta. Cum facem asta? Cum implementăm acest lucru? Da, vreau să închid. Deci, mai întâi, o mică notă despre cum funcționează aceste microscoape electronice cu scanare . Probabil că sunteți prea tineri pentru a vă aminti tuburile cu raze catodice, dar oamenii obișnuiau să creeze imagini prin devierea fasciculelor de electroni și făcându-le să afecteze fosforul, care apoi ar străluci. Și acele dispozitive aveau o sursă de electroni. Practic, faci un fel de fierbere de electroni de pe o suprafață. Deci este o mică bobină încălzită. Deci aceasta este sursa de electroni. Și au un fel de bule de pe suprafață. Și apoi le accelerezi având un electrod, pe care îl vom numi anod. Și, ei bine, mulți electroni ajung acolo. Dar alți electroni sunt accelerați. Și apoi avem lentile. Și acestea sunt de obicei magnetice. Și pot fi, de asemenea, lentile electrostatice. Și ideea este că vom concentra acest fascicul pe un obiect. Așa că faceți puțin spațiu pentru un obiect aici jos. Deci, cu inteligența potrivită și destui bani, puteți concentra acel fascicul până la un punct foarte mic. Și atunci ce faci? Ei bine, electronii lovesc acel obiect, iar unii dintre ei sară. Deci avem retrodifuzare, retrodifuzare a electronilor. Dar majoritatea pătrund. Și în acest proces, ei pierd energie și creează electroni secundari. Așa că poți să te gândești la ele ca se lovesc de molecule și pierd ceva energie și creează-- elimină electroni de pe obiecte ionizante. Și unii dintre acești electroni secundari ies din obiect și sunt adunați de un fel de electrod, care este, de asemenea, și alte efecte. De exemplu, va exista o oarecare fluorescență la energiile de raze X. Deci unii oameni măsoară razele X care ies. Și poate exista și lumină vizibilă și așa mai departe. Dar ne vom concentra pe electronii secundari pentru că asta este folosit în imagistica și crearea acelor imagini pe care vi le-am arătat. Deci, de ce curentul de electroni secundari , pe care îl măsurăm aici, variază în funcție de suprafață? Ei bine, în primul rând, modul în care l-am desenat, nu este foarte folositor pentru că obținem doar o măsurătoare. Deci, ceea ce vrem cu adevărat să facem este să scanăm asta. Deci unii dintre acești electrozi... de obicei, se fac magnetic. După cum știți, electronii dintr-un câmp magnetic se vor întoarce. Prin urmare, folosind două câmpuri magnetice ortogonale pe care le puteți controla de la computer, puteți direcționa acel fascicul oriunde doriți și puteți scana obiectul într-o manieră raster, de exemplu. Așa că asta îmi amintește întotdeauna de dl Farnborough, care are... pretenția sa la faimă este că are un drum de pământ numit după el, la câteva mile de unde locuiesc. El este tipul care a inventat televiziunea. Nimeni nu-i acordă vreun credit pentru asta, și asta pentru că era o persoană foarte deșteaptă, dar nu un bun om de afaceri, și a fost înșelat de oamenii care conduceau RCA, etc. Oricum, probabil că n-am auzit niciodată de el. Dar când a fost întrebat de un reporter, știi, cum ți-a venit ideea asta... Adică, pentru noi acum, totul pare destul de evident. Dar la momentul respectiv, ce era disponibil? Ei bine, a existat telegraful, începuturile telefonului, iar marea întrebare era audio este un semnal unidimensional. Deci înțelegem cum să măsurăm asta, cum să o transmitem, cum să o reproducem. Dar această imagine este 2D. Cum faci asta? Și au existat tot felul de scheme nebune și nebunești. Și se presupune că inspirația lui au fost brazdele din ferma tatălui său pentru că bănuiesc că trebuia să meargă în spatele boilor și să țină plugul. Și a decis că, ei bine, așa cum pot să arat toată această zonă transformând-o într-o problemă 1D, pot face același lucru cu imaginile. Sincer să fiu, cred că aceasta este o explicație pe care a venit cu el atunci când un reporter a întrebat pentru că de multe ori oamenii au nevoie de o modalitate de a înțelege cum ai ajuns vreodată la soluție. Și atunci trebuie să visezi un motiv. Deci, oricum, asta a făcut. Și asta se aplică aici. Așa că scanăm într-un mod raster. Și atunci ce facem? Folosim curentul măsurat aici pentru a modula un fascicul de lumină pe afișaj, fie un alt CRT, fie îl citim într-un computer și îl afișam pe un LCD. Și apoi puteți controla mărirea. Cum faci asta? Ei bine, tu controlezi doar devierea. Deci, dacă devii foarte mult fasciculul, nu obții prea multă mărire. Și pe măsură ce reduceți deviația, obțineți din ce în ce mai multă mărire. Și astfel puteți obține mii, zeci de mii în comparație cu microscopia optică, care ajunge la maxim sub 1.000 aproape în ciuda a tot felul de trucuri incredibil de inteligente. OK, de ce creăm imagini umbrite? Deci trebuie să ne uităm la modul în care suprafața interacționează cu fasciculul. Deci iată fasciculul care intră, electroni la câțiva electroni volți. Și au lovit acest material și încep să interacționeze. Se lovesc de lucruri și creează electroni secundari. Și își pierd energie pe măsură ce merg. Așa că primele câteva energie destul de ridicată, apoi obțin energie mai mică, iar tipii ăia se lovesc de lucruri. Și cei mai mulți dintre acești electroni pur și simplu dispar în acest obiect, dar unii dintre aceștia care sunt aproape de suprafață scapă și sunt măsurați de colectorul nostru secundar de electroni. Și, deci, practic, ceea ce afișăm este ce fracțiune din fasciculul de intrare o face de fapt înapoi din nou. Apropo, una dintre limitări este că acest lucru este mai bine să fie conductiv pentru că pompezi toți acești electroni. Nu este un curent mare, micro amplificator sau mai puțin. Dar totuși, această insectă este acolo și pui un micro amper de curent și, destul de curând, se va încărca până la o parte semnificativă de Coulomb și va exploda. Deci, pentru a face acest lucru, de obicei placați cu aur aceste obiecte, astfel încât să fie conductoare. De ce aur? Ei bine, pentru că nu eliberează gaze. Toată chestia asta trebuie făcută în vid. OK, deci asta avem în situația verticală. Acum imaginați-vă că avem un element de suprafață, fascicul foarte înclinat . Ei bine, acum mulți alți electroni vor scăpa pentru că sunt generați mai aproape de suprafață. Deci, asta înseamnă că momentul pe care îl măsurăm va fi mai mare atunci când avem de-a face cu o suprafață înclinată. Și așa este. Acesta este mecanismul pentru a transforma orientarea suprafeței în luminozitate. Și treaba noastră este să inversăm asta. Deci, o modalitate prin care putem înțelege acest lucru este să trasăm harta reflectanței, ceea ce am făcut deja pentru suprafețele Lambertian și suprafețele Hapke. Luminozitate versus orientare - deci, în acest caz, coborârea directă înseamnă că obținem o imagine relativ întunecată, deoarece mulți electroni secundari nu vor ieși niciodată de la suprafață. Apoi, pe măsură ce trecem la o înclinare mai mare a suprafeței, aceasta devine mai strălucitoare, deoarece mai mulți electroni secundari scapă. Și în aranjamente tipice, lucrul este simetric axial. Deci, indiferent dacă acești electroni ies în această direcție sau în acea direcție, dacă ies de pe suprafață, vor fi numărați. Și asta înseamnă că acest lucru va fi simetric. Și așa că, dacă reprezentăm izofotele, vom obține așa ceva. Pune numere pe ea. Unde devine mai mare, cu cât ajungem mai departe, cu atât suprafețele sunt mai înclinate. Și da, poți modifica asta. Puteți elimina unii dintre colectori sau puteți conecta acest colector la un alt senzor și așa mai departe și faceți acest lucru asimetric. Dar modul standard de utilizare este doar măsurarea curentului total de electroni secundari. Și asta ne oferă acel tip de hartă a reflectanței. OK, deci acum, dacă măsoară luminozitatea într-un anumit punct al imaginii, obțin panta suprafeței. Așa că pot traduce direct asta. Dacă este 0,7, atunci panta este oricare ar fi distanța de la origine. Dar nu înțeleg gradientul. Corect, ceea ce aș dori să știu este care este orientarea la suprafață. Și, ca de obicei, avem două necunoscute, p și q. Avem o singură constrângere. Măsurăm luminozitatea. Și deci da, am redus numărul de posibilități, dar mai avem un set infinit de posibilități unidimensionale. Deci, panta este considerată de obicei un scalar, în timp ce acesta este un vector. Deci este un pic ca viteza versus viteza. Adică, nu toată lumea este de acord cu aceste definiții. Dar pentru mine, viteza este o cantitate scalară care merge cu 50 de mile pe oră, în timp ce viteza este un vector direcționat. Deci bine. Deci ce să fac? Ei bine, este doar un alt exemplu al acestei forme de la problema umbririi. Vom avea o distribuție a unui model de luminozitate. Iar treaba noastră este să estimăm care este forma suprafeței și avem o hartă a reflectanței care ne ajută cu asta, deoarece ne permite să căutăm orice luminozitate anume pe care o măsurăm care este panta, din păcate nu și gradientul. Dacă ar fi gradientul, atunci am fi într-o formă mai bună. Și vom face asta pentru diverse cazuri speciale și apoi pentru cazul general, unde putem folosi orice hartă de reflectanță ne place. Și asta este important pentru că nu vrem ca acest lucru să funcționeze doar pentru, de exemplu, Lambertian, suprafețe sau suprafața lunară sau orice altceva. Deci bine. Așa că, când aveți ocazia, căutați imagini cu microscopul electronic de scanare și admirați-vă lumea minunată care există acolo și cum suntem capabili să o înțelegem atât de bine. Și, știi, puzzle-uri precum de ce, dacă inversezi contrastul, nu este mai ușor să interpretezi imaginea, ceea ce te-ai aștepta. Te-ai aștepta ca o suprafață care este cea mai strălucitoare în locul în care se confruntă cu tine ar fi mai ușor de înțeles asta decât una care este mai întunecată. Bine, așa că, ca pregătire pentru asta, vreau să vorbesc puțin despre cum să trec de la o diagramă a acului la formă. Acum, unde mergem cu asta este că mergem direct la o metodă care ne duce de la o singură imagine la o formă. Dar între timp, avem câteva instrumente și vreau să le exploatez. Deci, de exemplu, ce este o diagramă cu ac? Ei bine, este doar orientarea la suprafață la fiecare pixel. Și care sunt acele? Ei bine, vă puteți gândi la fiecare fațetă a suprafeței ca având o normală care iese în afară. Și te uiți de sus la acel normal. Acesta este acul. Și din punctul de vedere al acesteia, vă puteți aminti încă de la prima clasă, dacă priviți drept în jos perpendicular pe suprafață, atunci acel acul este doar un punct. Și dacă nu este, atunci va fi îndreptată într-o direcție. care vă spune care este direcția gradientului de suprafață. Și lungimea acestuia vă va spune cât de abruptă este suprafața. Deci de unde luăm astea? Ei bine, nu o să-i luăm de acolo. Deci mai este de lucru. Dar, de exemplu, obținem acest lucru din stereo fotometric. Deci, în stereo fotometric, nu calculăm z în funcție de x și y. Ceea ce obținem în schimb este p și q în funcție de x și y, bineînțeles amintindu-ne că p este dzdx și q este dzdy. Ei bine, este estimarea noastră bazată pe măsurătorile noastre de luminozitate a imaginii . OK, deci pare o problemă foarte simplă. De ce? Ei bine, în cazul discret, avem un număr de necunoscute egal cu numărul de pixeli. Încercăm să recuperăm z la fiecare pixel, să spunem. Deci sunt milioane de necunoscute. Dar la fiecare pixel avem și două informații - p și q. Deci, dacă avem o imagine de un milion de pixeli, avem 2 milioane de informații. Deci este supradeterminat. De fapt, avem mai multe informații decât avem nevoie. Și după cum am văzut, asta este întotdeauna la îndemână, deoarece asta înseamnă că am fi capabili să reducem zgomotul și să obținem un rezultat mai bun decât dacă nu ar fi supradeterminat. Deci, de fapt, avem de două ori mai multe constrângeri decât se cunosc. OK, deci ce putem face? Ei bine, un lucru pe care îl putem face este să presupunem că începem aici și doar integrăm p, care este dz dx de-a lungul acestei axe. Și ceea ce vom obține este schimbarea înălțimii. Deci z de x este z de, să spunem, 0. Să presupunem că începem de la origine plus de la 0 la x. Corect, pentru că dz dx este derivata. Voi integrați aici derivatul. Știi toate astea. Deci OK, ca să pot obține înălțimea oriunde de-a lungul axei x. Și, în mod similar, pot obține înălțimea oriunde de-a lungul axei y integrând celălalt lucru pe care îl cunosc. Deci, de acolo, le pot combina și pot merge parțial în sus pe axa y și transversal pe axa x. Așa că pot ajunge parțial pe x-- astfel încât să pot completa întreaga zonă în diferite moduri ca acesta. Și de fapt, aș putea face o curbă. Deci hai să luăm acea curbă. Și așa că de-a lungul acelei curbe, ceea ce ne uităm este o combinație. Corect, deci ce este asta? Ei bine, acesta este doar produsul scalar al gradientului pq dot dx dy. Deci asta îmi spune doar schimbarea în înălțime. Deci, acesta este de fapt delta z, dacă doriți. Aceasta este o schimbare a înălțimii dacă fac un pas mic în direcția x și apoi un pas mic în direcția y. Destul de evident. Și așa pot face asta pentru toate aceste puncte. Doar aleg contururi și integrez. Ei bine, dar dacă vine altcineva și spune, oh, nu-mi place conturul pe care l-ai ales? Am de gând să merg pe aici. Și ceea ce ați spera, desigur, este că vor primi același răspuns. Dar nu există nicio garanție pentru că aceste p și q sunt determinate experimental. Sunt supuse zgomotului de măsurare. Deci nu sunt perfecte. Ele nu sunt de fapt derivatele lui z față de x și derivatele lui z față de y. Sunt estimările noastre, care includ ceva zgomot. Deci, bine, bine, ceea ce am spera este că vor ieși la fel. Și ceea ce înseamnă că, de fapt, ceea ce sperăm este că, dacă ocolim bucla, dacă mergem pe aici, da da da, acolo sus, și apoi ne întoarcem, cu ce ar trebui să fie egal? STUDENT: Zero. PROFESORUL: Deci ar trebui să fie zero. Da multumesc. Și fiecare jogger știe că nu este adevărat. Dacă faci jogging în buclă, se pare că mergi în sus până la capăt. Bine, cred că nu avem mulți joggeri aici. Deci... oh, parcă... bine, bine. Deci asta ar trebui să fie adevărat. Deci nu există nicio garanție că atunci când măsurăm p și q experimental, le estimăm, că acest lucru va fi adevărat. Deci ce facem cu asta? Ei bine, un lucru la care ne putem gândi este să transformăm acest lucru într-un fel de condiție pe p și q. Adică, p și q trebuie să satisfacă o constrângere pentru ca aceasta să fie adevărată. Și acest lucru trebuie să fie valabil pentru orice buclă, nu doar pentru aceea. Și pot descompune o buclă mare ca aceea în bucle mici. Deci să presupunem că este adevărat pentru acea buclă. Ei bine, atunci pot pune o altă buclă lângă ea și o altă buclă. Și acum, în loc să ocolesc aceste patru bucle, pot elimina părțile interioare și se anulează reciproc. Vedeți, dacă mă duc de aici încolo și apoi mă duc de acolo în aici, mă întorc în același loc. Deci, acesta este un mod grosolan de a demonstra că, dacă este adevărat pentru o buclă mică, pentru orice buclă mică, pot descompune orice buclă mare în o mulțime de bucle mici. Și atunci va fi adevărat și pentru bucla mare. Deci OK, deci să vedem ce-- deci să avem un grup mic de dimensiunea delta x în această direcție și delta y în acea direcție. Și să presupunem că acesta este punctul xy. Și să vedem cum se schimbă înălțimea pe măsură ce ocolim această buclă. Începe de aici, să zicem. Ei bine, atunci trebuie să știm care este panta în direcția x. Deci asta e p. Și să luăm panta din centrul acestei întinderi, care va fi p de x și y minus delta y peste 2. Și aceasta este panta și mergem în delta x cu acea pantă. Așa că facem această buclă suficient de mică, astfel încât să putem folosi această aproximare liniară, încât panta este destul de constantă pe acea întindere. Apoi urcăm. OK, deci asta va fi... avem nevoie de panta în direcția y, care este q. Și vom lua panta și o vom estima pe baza centrului acestei linii. Deci este la x plus delta x peste 2 și delta y. Îmi pare rău. Și apoi trecem peste vârf, minus p xy plus delta y peste 2. Oh, aceasta este ori delta y. Și apoi coborâm. Deci acesta este minus q. Și ar trebui să fie 0. Ar trebui să fim înapoi la punctul zero. Deci ceea ce obținem aici este că dacă facem extinderea seriei Taylor a acesteia, obținem-- și aici jos, obținem p de x virgulă y plus termeni de ordin superior. Și apoi extindem asta. Obținem q de x virgulă y plus delta x peste 2qx-- să vedem-- plus. OK și, desigur, acești termeni se anulează. Așa că ajungem cu py delta x delta y minus qx delta x delta y este 0. Sau, cu alte cuvinte, acestea două sunt aceleași și anulează părțile laterale ale acestei mici casete. Și astfel obținem pi este qx. Deci, dacă acest lucru este valabil pentru zone foarte mici, atunci acea condiție trebuie să fie adevărată. Și asta are sens pentru că p trebuia să fie măsurarea noastră a dz dx și q trebuia să fie măsurarea noastră a dz dy. Și deci acesta este z sub x y și acesta este z sub y x. Acum este ușor confuz, deoarece acest lucru este, evident, adevărat pentru suprafața originală, atâta timp cât este suficient de netedă încât următoarele derivate parțiale să nu depind de ordine. Bine, deci dacă p și q ar fi într-adevăr derivatele suprafeței z a lui xy, atunci acest lucru ar fi adevărat. Dar le măsurăm din date experimentale. Deci, de obicei, acest lucru nu va fi adevărat și, dacă luăm această integrală, vom obține rezultate diferite în funcție de direcții diferite. Și așa este ca niște ecuații liniare supradeterminate . Nu există nicio soluție. Tot ce putem face este să găsim o aproximare a celor mai mici pătrate. La fel și aici - nu există nicio suprafață z a lui x,y care ne va oferi exact p și q pe care le- am măsurat din stereo fotometric sau altă metodă vizuală. OK, acum, de fapt, putem ajunge acolo într- un mod mai elegant, care este la îndemână pentru că îl vom folosi din nou mai târziu. Deci, ca multe teoreme importante, aceasta are multe nume. Bănuiesc că este atribuit lui Gauss și este un caz special de teoreme mai generale utilizate în dinamica fluidelor. Dar ceea ce face este că leagă integrala conturului cu o integrală a zonei în care-- să desenăm un fel de formă. Deci l este acest contur și D este acea zonă. Deci de ce ne pasă? Ei bine, în viziunea artificială, de multe ori avem calcule care ne iau peste toți pixelii. Și sunt o mulțime de pixeli. De fiecare dată când poți reduce acel calcul la un calcul despre limita unei regiuni, ai un câștig uriaș. Ai trecut de la milioane de calcule la mii de calcule. Deci, există mai multe locuri în viziunea artificială în care folosim un truc ca acesta pentru a transforma o integrală peste o zonă într-o integrală doar pe o curbă, cu un beneficiu imens. Desigur, este un lucru foarte specializat. Sunt doar atâtea lucruri care au proprietatea specială, și anume lucruri care pot fi scrise în această formă. Dar știi, să presupunem, de exemplu, că vrei să calculezi aria unui blob. Ei bine, poți număra pixelii. Puteți merge pur și simplu rând cu rând, să vedeți, OK, acest pixel este în blob, acela nu și așa mai departe. Sau puteți urmări doar conturul. Se pare că puteți calcula zona doar urmărind conturul. De fapt, a fost un instrument minunat, care este diabolic de greu de înțeles. Dar le-a permis oamenilor să calculeze integrale într-o manieră analogică. Ar trebui să cauți. Este un instrument care de multe ori a fost făcut din metale prețioase, deoarece era doar pentru oameni speciali, cum ar fi geodezii. Și practic ai ține o parte din ea și ai trasa conturul și ai calcula zona. Odată ce ați finalizat bucla, ați calculat aria. Îl poți citi de pe instrument. Și acesta este un exemplu în care transformăm o integrală de zonă, integrala lui 1 peste acea zonă, într-o integrală de contur. Pe măsură ce ocoliți marginea, există o roată mică care alunecă pe hârtie în mod corect și așa mai departe. Deci, acesta nu este doar ceva util în domeniul digital. A fost folosit și în lumea analogică. Deci, zona este un exemplu de ceva în care aceasta este o formulă utilă, deoarece putem calcula suprafața făcând ceva la graniță în loc să facem ceva în interior. Dar se dovedește că sunt multe alte lucruri pe care vrem să le facem. De exemplu, în viziune, de multe ori vrem să știm unde este ceva. Și în cazul simplu, este un blob, și unde este? Ei bine, centroidul este o modalitate foarte bună de a vorbi despre poziția unui blob într-o imagine. Și deci cum calculezi centroidul? Ei bine, din nou, puteți merge pixel cu pixel și cumulați de x ori ceva, aruncați- l în acumulator, iar când ați terminat, împărțiți și obțineți centroidul. Sau poți ocoli granița, care este mult mai rapid. Și continuând de-a lungul acestei linii de raționament, există lucruri numite momente în care calculul centrului este primul, iar calculul ariei este zero. Dar, în general, puteți calcula momentele doar ocolind granița. Iar momentele sunt utile în descrierea formelor. Până acum, am vorbit despre zonă și poziție, centroid. Dar s-ar putea să vrei și să poți spune ceva de genul, oh, este alungit. Și astfel aceste momente sunt utile pentru asta și toate pot fi calculate în acest mod inteligent. Deci, să aplicăm teorema lui Green. Există o versiune 3D a acesteia, transformând integrale 3D, integrale de volum, în integrale de suprafață. Dar, deoarece imaginile noastre sunt 2D, de obicei nu avem nevoie de asta. OK, așa că aplicăm acest lucru la problema noastră. Deci încercăm să potrivim ceva din această formulă cu ceea ce făceam și cred că am avut pdx plus qdy aici. Deci hai să încercăm asta. Să încercăm să folosim teorema lui Green. Deci m este q dq dx minus l este p. Și spunem că este zero, nu? Ocolim bucla. OK, și acest lucru trebuie să fie valabil pentru toți, nu doar pentru o anumită buclă, ci pentru orice buclă - buclă mică, buclă mare, orice. Și asta poate fi adevărat numai dacă qdx este egal cu dpdy, deoarece să presupunem că acea cantitate, acea interbrand, a fost diferită de zero la un moment dat. Tot ce trebuie să fac este să construiesc bucla care include acel punct și aș avea o contradicție. Deci asta confirmă din nou concluzia la care am ajuns dureros aici făcând un pătrat mic și apoi folosind seria Taylor. Acesta este un mod puțin mai elegant de a ajunge la același lucru. OK, deci ce să faci? p și q nu satisfac această constrângere. Deci am putea încerca să introducem asta ca o constrângere. Ați putea spune, OK, găsiți z-ul lui x și y care are aceste p și q drept derivate aproximativ și, de asemenea, satisface această constrângere. Ei bine, nu am vorbit despre cum să rezolvăm problemele de optimizare a constrângerilor. Este puțin mai greu decât cele mai mici pătrate pe care le-am făcut până acum. Deci haideți să încercăm o altă abordare. Deci, să facem practic doar cele mai mici pătrate cu forță brută. Deci încercăm să căutăm o suprafață z astfel încât aceasta să fie cea mai mică posibilă. Corect, deci, în mod ideal, dacă nu a existat nicio eroare de măsurare și am avut suprafața corectă, atunci a existat un z astfel încât derivata sa x se potrivea cu p pe care am calculat-o din imagine și derivata sa y se potrivea cu... îmi pare rău, p pe care l-am obținut din imagine și acesta se potrivea cu q pe care l-am obținut din imagine. Dar din cauza zgomotului de măsurare, ne așteptăm că acest lucru nu va fi posibil. Deci, să încercăm măcar să o facem cât mai mică posibil. OK, deci asta e problema celor mai mici pătrate pe scurt. Și ei bine, rezolvăm ca de obicei. Doar diferențiam în raport cu z. Da, putem face asta? Ce este z? Este z un parametru? Corect, așa că acum, din păcate, nu putem face asta. Dacă am avea un număr finit de butoane, am putea roti-- parametri, variabile. Apoi am putea diferenția în funcție de fiecare dintre ele și am seta rezultatul egal cu 0 și am terminat. Asta am tot făcut. Din păcate, z aici este o funcție. Și deci nu există niciun fel de sens al unui mod de a vorbi despre derivată în raport cu o funcție. Deci nu are un număr finit de grade de libertate. Are un număr infinit de grade de libertate. Și există o materie în matematică care se ocupă de asta... calculul variațiilor. Și se numește așa pentru că, practic, spui ceva de genul să presupunem că z este soluția. Apoi, dacă fac orice variație mică pe z, acea integrală ar trebui să crească. Și pe baza acestei idei foarte sensibile, puteți veni cu câteva ecuații pentru a rezolva această problemă. Dar vom rămâne în tranșee și vom lucra cu o versiune discretă pentru un moment pentru că... și această problemă este destul de simplă. Motivul pentru a-l rezolva în detaliu este că ascunde multe capcane în care ați putea întâlni atunci când rezolvați o problemă mai complicată. Bine, într-un caz discret, nu avem o funcție de x și y. Ceea ce avem este o grămadă de valori discrete pe o grilă, deci un număr finit de necunoscute - poate uriașe, poate un milion. Dar putem folosi calculul, calculul obișnuit. Doar diferențiați în funcție de fiecare dintre ele. Setați rezultatul egal cu 0. Deci adevărat, vom obține o mulțime de ecuații, dar metodele noastre se aplică. Nu trebuie să inventăm ceva nou. Deci, acesta este ceea ce căutăm și ceea ce ni se oferă este din nou un set de gradienți pe o grilă cu zgomot de măsurare în ei. Și încercăm să găsim o valoare a lui z la fiecare punct al grilei care va face eroarea cât mai mică posibil, acolo unde eroarea este echivalentul discret al acestui lucru. Deci, să ne uităm la asta. Deci i și j sunt numere de rând și de coloană. Așadar, o ușoară enervare aici pentru informaticieni și matematicieni, adică ați dori ca primul indice discret să corespundă lui x și al doilea indice discret să corespundă lui y. Și ca student, mi-a fost foarte greu cu asta. Dar, desigur, în matematică, numărăm rândurile în jos și coloanele și le scriem ij în cealaltă ordine și, de asemenea, cu I invers. OK, deci asta este... ce este asta? Încercăm să estimăm derivata în direcția x. Și de aceea am variat și mai degrabă decât eu, nu? Și deci aceasta este estimarea noastră a derivatei în direcția x. Și asta ar trebui să fie mic. Ar trebui să se potrivească cu ceea ce am observat din imagine. Și trebuie să adăugăm și celălalt termen. De asemenea, dorim să potrivim derivata în direcția y. Și acum, de obicei, nu există setul de valori ale lui z care să facă ambii termeni zero. Deci facem un fel de compromis. Vrem doar să le facem cât mai mici posibil. Deci vom minimiza acest lucru. Și ce putem minimiza? Ei bine, avem setul de zij-uri. OK, deci apoi diferențiem și setăm rezultatul egal cu 0 pentru toate valorile posibile ale lui ij. Deci, dacă imaginea are un milion de pixeli, există un milion de ecuații care provin din asta. Din fericire, pentru că am ales cele mai mici pătrate, ecuațiile vor fi toate liniare. Așadar, pe cât de multe sunt dezavantajele utilizării celor mai mici pătrate, cum ar fi faptul de a nu fi robust față de valori aberante, putem rezolva aceste ecuații pentru că vor fi doar ecuații liniare. OK, deci aici, fii atent. Problemă mare-- dacă diferențiezi în ceea ce privește zij, primești răspunsul greșit. De ce este asta? Ei bine, aici sus, acestea sunt variabile fictive. Dacă înlocuiesc ij cu alfa și beta, este aceeași sumă. Dar atunci, dacă faceți diferență în ceea ce privește zij, deci un alt mod de a gândi despre asta în termeni de limbaj de programare - știți, aveți o coliziune de identificare. Folosești i și j pentru a însemna un lucru aici, iar acum încerci să-l faci să însemne altceva. Deci aici avem o sumă a tuturor ij-urilor posibile, iar acum veți face diferența. Pe scurt, alegeți alte nume de identificare. Și s-ar putea să te gândești, OK, asta e cam evident. Da, dar au fost publicate lucrări care au greșit. Deci este posibil. Se poate intampla. Bine, deci, ei bine, asta sună cam dezordonat pentru că avem o sumă de peste un milion de termeni, iar acum vom face diferența. Dar lucrul bun este că, da, avem o mulțime de ecuații, dar toate sunt foarte rare pentru că dacă te gândești la, OK orice aici are legătură cu rândul 1.000, când diferențiezi față de z din rândul 990, este nu va avea niciun efect. Deci, toate aceste derivate sunt 0, cu excepția unui număr mic, numărul mic în care kl se potrivește cu un indice de aici, ij sau kl se potrivește cu ij plus 1 sau kl se potrivește plus 11j. Asta e, trei termeni. Deci, vom avea o mulțime de ecuații, fiecare dintre ele având trei termeni în acest caz. OK, deci hai să încercăm asta. Deci, să încercăm mai întâi unde potrivim kl este virgula j. Deci există un pătrat. Deci, diferențiați, obținem de 2 ori mai mare decât derivata obiectului din interior față de zkl, care va fi minus 1 peste epsilon. Corect, deci este un pătrat. Primim de două ori acel termen. Și apoi trebuie să diferențiem ceea ce este în interior față de zkl. Și am spus că se potrivește cu acest termen. Deci va fi minus 1 peste epsilon. Și îmi pare rău dacă trec peste asta într-un mod foarte pietonal, dar va trebui să faceți acest lucru într- un exemplu mai complicat și este ușor să nu o faceți corect. Deci OK, deci ăla este. Dar există și acest meci. Deci trebuie să adăugăm la aceasta de 2 ori acest termen. Așa că obținem de două ori acest termen și apoi diferențiem acesta în raport cu zkl, care se potrivește cu acesta. Deci asta îmi dă minus 1 peste epsilon din nou. Bine, deci asta e... există doi termeni. Atunci trebuie de asemenea să luăm în considerare unde kl este ij plus 1. Cu alte cuvinte, k este i. l este j plus 1, sau invers, j este l minus 1. Corect, deci am diferențiat în funcție de asta. Primim de 2 ori acest lucru OK, OK. Așa că obținem de două ori acel termen și trebuie să diferențiem ceea ce este înăuntru față de zkl, care se potrivește cu cel. Deci va fi plus 1 peste epsilon. Și aproape am terminat. Încă un termen. Acesta aici, acum avem k virgula l este i plus 1j. Sau, cu alte cuvinte, k se potrivește cu i plus 1, adică i este k minus 1. Și l este doar j. Deci îl primim pe acela. Acesta va fi zkl minus z. OK, i este k minus 1, l peste epsilon minus-- și plus 1 peste epsilon. Și toate acestea ar trebui să fie 0, nu? Aceasta este metoda celor mai mici pătrate. Și acest lucru va fi valabil pentru toate punctele din imagine. Din fericire, acest lucru se simplifică. Deci, în primul rând, desigur, le pot ignora pe cele două pentru că dacă de două ori ceva este 0, atunci ceva este 0. Așa că uită de 2. Aș putea anula și unul dintre epsilon, dar le voi păstra doar din motive pentru care va deveni evident. OK, deci acum voi aduna termenii. Permiteți-mi să adun mai întâi toți termenii de la p. Ei bine, sunt doar două dintre ele. Deci e destul de simplu. Așa că primesc pkl minus pkl minus 1 împărțit la epsilon - deci acești doi termeni. Și permiteți-mi să adun toți termenii din q. Deci primesc qkl minus qk minus 1l peste epsilon. Și apoi permiteți-mi să adun toți termenii din z. Ei bine, mai sunt o grămadă de ele. Și sunt 1 peste epsilon pătrat. Așa că lasă-mă să scriu asta în față. Deci vom avea minus zkl plus 1 minus zk plus 1l minus zkl minus 1 minus zk minus 1l. Și apoi zkl apare de patru ori. Ei bine, lasă-mă să păstrez epsilonul la pătrat. Și toate acestea ar trebui să fie 0. Deci care sunt acești termeni? Ei bine, asta seamănă îngrozitor cu derivata x a lui p, nu? Pentru că luăm valoarea lui p în poziții, o separăm în x și împărțim la epsilon. Deci ne putem gândi la asta ca p sub x. Și asta arată îngrozitor ca derivata y a lui q. Și apoi susțin că acest lucru de aici corespunde laplacianului din z. Lasă-mă să văd de ce. OK, așa că pot face o mică diagramă aici și pot aduna toți acești termeni. Deci primesc 1 peste epsilon pătrat și am patru pentru kl și apoi minus 1 pentru toți vecinii. Și acum z sub xx OK, așa că acele lucruri pe care le desenez acolo se numesc în mod diferit molecule sau șabloane de calcul sau ceva de genul ăsta, și sunt o modalitate grafică de a arăta cum se calculează o derivată estimată. Acum nu m-am deranjat pentru astea, dar am putut. Așa că aș putea, de exemplu, aceasta este molecula de calcul pentru derivatul x. Și apoi iată molecula de calcul pentru derivata y. Este atât de evident, nici măcar nu ne deranjam cu asta. Dar când ajungem la derivate mai mari, este la îndemână să desenăm aceste diagrame. Deci, dacă am putea implica asta cu sine -- amintește-ți 603 -- atunci înțelegi asta. Și dacă convoluți acest lucru cu sine, obțineți această derivată a doua. Așadar, cum te implici? Întorci și schimbi. Oricum, puteți obține acest lucru și din seria Taylor sau din orice alte metode de estimare a derivatelor. Bine, atunci dacă le combinăm pe acestea două, dacă le adăugăm pe acestea două, obținem acea diagramă - ei bine, cu excepția semnului. Deci, acesta este de fapt minus laplacianul, dar apare pe aceeași parte a semnului egal. Așa că atunci când îl mutăm pe cealaltă parte, devine plus laplacianul. Deci, Laplacianul este de fapt foarte utilizat în viziunea artificială, în special în preprocesare. Așa că ar trebui să ne familiarizăm cu el. Apropo, un alt mod de a scrie este că. Iar inginerii au un alt punct de vedere asupra asta ca matematicieni. Adun că matematicienii preferă primul mod de a scrie laplacianul, iar oamenii de dinamică fluidă ca celălalt. Dar in fine. Este un laplacian. Deci laplacianul este un operator interesant din multe puncte de vedere. Este un operator derivat. Am văzut deja că gradientul de luminozitate joacă un rol important. Primele derivate -- pentru unele operații pe imagini, ne-am dori ca lucrurile să fie invariante din punct de vedere rotațional. Cu alte cuvinte, dacă efectuați o operațiune de imagine care îmbunătățește detectarea marginilor, nu doriți să depindeți de alegerea sistemului de coordonate xy, astfel încât atunci când întoarceți coordonatele, vă așteptați ca lucrurile să meargă aproape la fel. Desigur, vor avea coordonate diferite, dar vor fi în locul corespunzător. Deci, una dintre marile întrebări este, există operatori derivați, care sunt foarte utili în detectarea marginilor, care sunt simetrici rotațional, astfel încât atunci când rotiți sistemul de coordonate, ei să facă același lucru? Ei bine, Laplacianul este combinația de derivate liniare de ordinul cel mai mic care face asta. Nu arată așa, nu-i așa, pentru că adăugăm derivata a doua parțială în raport cu x și derivata a doua parțială în raport cu y. Dar dacă treci prin durerea și agonia schimbării sistemelor de coordonate și calculând prima derivată și apoi calculând derivatele a doua și le însumezi și, magic, în noul sistem de coordonate, obții exact același lucru. Deci, să presupunem că avem un sistem de coordonate ca acesta și apoi mergem la un sistem de coordonate rotit. Se pare că zx prim-- că în acel sistem de coordonate rotit, Laplacianul este același. Vă scutesc de detalii. E destul de plictisitor. Dar acest lucru îl face pe laplacian să fie foarte interesat de tot felul de operațiuni de procesare a imaginii, deoarece este simetric rotațional. Desigur, pe o grilă discretă, oricum vom fi oarecum părtinitori. De exemplu, pare asimetric rotațional? Ei bine, nu îngrozitor. Deci, există aproximări mai bune dacă sunteți pe o grilă pătrată și vom vorbi despre ele. Și dacă nu sunteți pe o grilă pătrată, puteți face și mai bine. De exemplu, dacă vă aflați pe o grilă hexagonală, puteți obține o aproximare mai bună . Oricum, revenind la asta, deci ceea ce am făcut aici este că am ocolit calculul variației pentru moment și am intrat oarecum dureros în lumea discretă a pixelilor discreți. Și am găsit o ecuație care trebuie să fie adevărată la fiecare pixel pentru ca aceasta să fie o soluție cu cele mai mici pătrate. Adică, aceasta este o soluție care minimizează această eroare. Este cea mai potrivită. Este cât de bine putem obține. Și apoi, uitându-ne la această formulă aici, am decis că o, poate că aceasta este versiunea discretă a acelei ecuații continue. Și este exact, deoarece dacă folosim calculul variației, mergem direct la asta într-un singur pas. Deci de ce nu am făcut asta? Ei bine, pentru că există această curbă uriașă de învățare. Deci este un pas după ce faci o mulțime de lucruri și nu am vrut să fac asta chiar acum. Deci, oricum, ce facem cu aceste ecuații? Cum le rezolvam? Desigur, putem... sunt ecuații liniare. Deci putem folosi eliminarea gaussiană sau un algoritm poate puțin mai sofisticat , toate acestea necesită mult timp pentru o mulțime de ecuații. Corect, de obicei, ele merg ceva de genul n cub sau, dacă ești o persoană cu teoria complexității, n la 2,76 sau orice altceva, cu un multiplicator foarte mare în față. Dar in fine. Odată ce n este un milion sau 10 milioane, acesta este un număr mare și nu este probabil să faci asta. Deci, ce să facem în schimb... Ei bine, mare lucru este că avem un set rar de ecuații. Deci avem un milion de ecuații, dar fiecare dintre ele are doar o mână de termeni în ea. Deci ele implică doar -- fiecare ecuație implică doar cinci valori ale lui z. Deci am... te gândești să le scrii. Există un milion de rânduri din acestea, dar fiecare rând are doar cinci elemente diferite de zero. Ei bine, se pare că apoi putem rezolva acest lucru iterativ destul de simplu. Și, desigur, este ușor să propui o soluție iterativă. Este greu de demonstrat că converge. Așa că omitem acea parte și vom face doar apel la manualele care spun că converge. Deci ce putem face aici? Ei bine, putem scoate unul dintre acești termeni și pretindem că știm... avem o presupunere inițială. Deci știm care sunt aceste valori în acest moment. Și vom calcula o nouă valoare pentru aceasta. Deci, să vedem dacă am scris-o sau nu. Deci, voi folosi indicele în paranteză ca o modalitate de a indica pasul de iterație. Deci acesta este pasul n plus 1. Și acesta este pasul n. OK, aproape că am scris paranteza în indicele n aici pentru pasul n. Dar nu, acestea sunt din imagine. Sunt reparate. Odată ce am procesat imaginile, asta este dat. Singurul lucru care s- ar putea schimba este atât de mult. Și ce este asta? Ei bine, asta e media locală. Și în cazul nostru, cu acea moleculă de calcul, asta arată așa. Deci, pasul iterativ este foarte simplu. Mergem la un anumit pixel și obținem o nouă valoare luând media vecinilor de la pasul anterior. Și apoi adăugăm această corecție aici, care se bazează pe informațiile despre imagine. Și ce face asta? Ei bine, ne aduce mai aproape de satisfacerea condiției laplaciane deoarece aceasta este estimarea lui p sub x și aceasta este estimarea lui q sub y. iar diferența dintre aceasta și aceea este estimarea noastră a unui laplacian. Deci, pe măsură ce mergem mai departe, ajustăm acea valoare a pixelului folosind acea ecuație foarte simplă. Așa că aici intervine rarătatea. Acest lucru nu ar fi foarte util dacă am avea un milion de termeni în asta. Dar avem doar patru vecini de luat în considerare. Și puteți arăta că acest lucru converge. Nu vom face asta. Și va fi mult mai rapid decât încercarea de a o rezolva cu eliminarea Gauss, mai ales că nu aveți nevoie de precizie infinită. Vă puteți opri după un anumit punct și vă puteți relaxa. Deci, câteva lucruri de subliniat -- în primul rând, acest lucru este strâns legat de rezolvarea ecuației de căldură, de acest tip de iterație, deoarece ecuația de căldură este PDE de ordinul doi, la fel ca ecuația pe care o avem. Este, de asemenea, ecuația de difuzie. Prin urmare, există o mulțime de tehnici disponibile din alte domenii care ne spun cum să facem acest lucru eficient, cum să o facem în paralel și orice altceva. Deci, din nou, ideea este să treci prin pixeli. Și la fiecare pixel, calculați media vecinilor și apoi adăugați o corecție la ei. Și aceasta este noua valoare. Și tu continui să faci asta. Acum, pentru început, nu trebuie să faceți acest lucru secvenţial, așa cum a făcut Farnborough în rândurile câmpului său. Puteți face acest lucru în orice ordine doriți. Și de fapt, există avantaje în ceea ce privește convergența dacă faci asta. De asemenea, puteți paraleliza acest lucru. Poți să faci cât de multe dintre acestea vrei în paralel, atâta timp cât nu se ating, nu? Deci, dacă faceți o modificare a unui pixel pe baza unui vecin, nu doriți să faceți calculul care schimbă vecinul în același timp. Dar asta este enorm pentru că putem împărți imaginea în, nu știu, nouă sub-imagini, mici blocuri de 3 cu 3. Și în timp ce operăm pe acesta. Nu avem voie să-i atingem pe alții. Dar asta e bine. Asta înseamnă că putem avea un paralelism uriaș, un milion de pixeli împărțiți la 9. Ei bine, probabil că nu avem 110.000 de procese. Deci putem face ceva ceva mai inteligent. Oricum, metodele de rezolvare numerică a acestor ecuații sunt binecunoscute și este o problemă foarte stabilă, în sensul că, dacă există zgomot în măsurătorile tale, acesta va converge în continuare. Încă va funcționa și totul va fi cool. OK, deci... OK, avem puțin timp. Deci ce am făcut? Ei bine, ceea ce am făcut acum este să învățăm niște tehnici pentru că, într-un fel, acest lucru nu este direct util, cu excepția cazului stereo fotometric. Și acum vrem să trecem de la stereo fotometric. Dar genul de instrumente ca această discretizare și evitarea conflictului de identificatori și apoi să se uite la termeni și să văd, oh, aceasta este o aproximare a derivatului - acestea vor apărea din nou. Așa că a fost bine că am făcut asta. Dar, dincolo de asta, acest lucru vă arată că dacă aveți date stereo fotometrice , puteți reconstrui suprafața în cel puțin pătrate și puteți obține o soluție rezonabilă care se potrivește cu datele experimentale. OK, acum ne vom întoarce la problema ceva mai provocatoare a reconstrucțiilor unei singure imagini. Și am rezolvat deja un caz, și anume dacă suprafața avea aceste proprietăți foarte speciale. Așa că hai să trecem puțin peste asta. Așa că aici am avut... luminozitatea a fost o funcție a acesteia, care a fost incident. Și în acest caz, harta reflectanței a fost foarte simplă. Aveam aceste linii paralele. Nu vor fi distanțate egal din cauza rădăcinii pătrate, dar sunt linii paralele. Și fiecare dintre ele are 1 plus psp plus qsq egal cu o constantă. Deci izofoții din harta reflectanței sunt aceste linii drepte paralele. Și asta este de fapt ceea ce ne-a permis să rezolvăm problema pentru că atunci am spus, ei bine, să presupunem că mă rotesc la un sistem de coordonate ceva mai util . În acel sistem de coordonate, pot determina doar panta în acea direcție specială. Deci, dacă citesc valoarea luminozității astfel, în sistemul de coordonate original, este o relație liniară între p și q. Dar în noul sistem de coordonate, îmi oferă în mod convenabil o valoare exactă a p-prim. Și nu îmi spune nimic despre q prim. Așa că am sortat la maxim informațiile într-o direcție și am înrăutățit-o în altă direcție. Și o să scriu asta. Nu voi face acest lucru cu atenție, dar se dovedește că va trebui să ne ocupăm de aceste transformări coordonate la un moment dat. Deci... hopa. Deci... oh, și care este acest unghi? Să-i spunem theta s. Din moment ce acea rază, acel acces p prim, este perpendiculară pe toate aceste linii -- corect, voi avea acea p virgulă q punct ps qs. Îmi va permite să determin că unghiul este dat de acest triunghi. qs-- ca să pot-- ei bine, ar putea la fel de bine să-l notez. Deci, indiferent de poziția sursei de lumină, îmi pot da seama care este acel unghi. Deci, de fapt, sursa de lumină este undeva pe această linie. Să zicem că e aici sus. OK, acum ceea ce vreau să fac este să rotesc imaginea înainte, astfel încât să nu mai fie necesar mai târziu. Deci care este relația? Ei bine, sunt sigur că știi asta. Și îl putem numi theta s sau doar theta pentru simplitate. OK, dar ceea ce avem nevoie este o relație între p și q și p prim și q prim Deci avem nevoie de dz dx prim este dz dx dx dx prim plus dz dy dy dx prim. Și, desigur, acesta este p prime pe care vreau să merg. Aceasta este p. Acesta este q. Și așa am rămas cu asta. Ei bine, enervant, asta merge pe o cale greșită. Deci am nevoie de transformarea inversă a acesteia. Deci, care este inversul rotirii prin theta? Se rotește prin minus theta, nu? Deci x este x prim cos theta minus y prim sinus theta, iar y este x prim sinus theta plus. OK, atunci acesta este dx. dx prim este cosinus teta. Și acesta este dy dx prime. Deci asta este sine theta. Deci, de fapt, am primit p prim este p cosinus theta plus q sinus theta. Și, în mod similar, voi obține q prim este minus p sinus. Deci asta e frumos. Și ați putea spune, ei bine, aș fi putut ghici asta, corect, pentru că are aceeași formă. Ei bine, gândește-te din nou pentru că atunci când ajungi la derivata a doua, asta nu funcționează. Nu poți doar ghici răspunsul. Și asta poate fi relevant pentru că vom vorbi despre... vorbim despre Laplacian. Așadar, chiar acolo, dacă ai încerca să demonstrezi acea teoremă pe care am spus-o despre simetria rotațională, ar trebui să obții derivate secunde și atunci asta nu ar funcționa. Oricum, așa că o voi face. Voi roti aceste sisteme de coordonate și apoi voi ajunge cu ceva de genul... care leagă măsurătorile imaginii cu panta. Și detaliile ecuației nu sunt atât de importante. Important este că pot fi într-un anumit punct al imaginii. Am citit luminozitatea și am calculat această cantitate. Celelalte lucruri sunt toate cunoscute. Știu unde este sursa de lumină. Și am panta, care este uimitoare. Am panta suprafeței într-o anumită direcție și este suficient. Acum putem reconstrui suprafața. Dar asta a necesitat să rotim sistemul de coordonate, să avem o anumită direcție. Și asta va fi adevărat în cazul general. Deci, aceasta este doar pentru Hapke, unde avem izofote frumoase, în linie dreaptă în harta de reflexii. Dar vom generaliza asta. Și bine, deci ce facem cu asta? Ei bine, am trecut puțin peste asta data trecută pentru că putem doar să integrăm z din x este-- corect, deci avem panta. Pur și simplu îl integrăm. În ceea ce privește implementarea discretă, suntem aici. Mergem pe o distanță mică delta x... ca, nu știu, un pixel. Cunoaștem panta. Deci știm cât de mult se schimbă z. Corect, deci avem o nouă valoare a lui z Și apoi ne uităm la imagine și spunem, care este luminozitatea aici? Și folosind această formulă, găsim o nouă valoare pentru p prim și continuăm. Mai facem un pas mic delta x și ajungem acolo și așa mai departe. Și astfel putem construi o formă în lumea discretă. Și putem merge și în cealaltă direcție. Putem merge minus delta x și construim un profil în acest fel. Deci este uimitor că poți face asta. Ei bine, acesta este un singur profil. Dar acum, în imagine, avem de-a face și direcția y . Dar putem face asta pentru orice y, nu? Dar, în fiecare caz, suntem limitați să alergăm de-a lungul unui rând. Nu există interacțiune între rânduri. O tratăm doar ca pe o problemă 1D de-a lungul fiecărui rând. Citim luminozitatea la fiecare pixel. Îl convertim în pantă folosind acea formulă și apoi folosim acea pantă pentru a vedea unde mergem. Deci, sunt câteva lucruri interesante despre asta . Deci, una este că dacă adaug o constantă la z, se schimbă ceva? Deci, de fapt, să ne întoarcem la aceasta de aici, această problemă supradeterminată care acum a cam dispărut. Dacă adăugați o constantă la z, se modifică laplacianul lui z? Fara drept? Deci, este interesant pentru că asta înseamnă că, OK, poți recupera z. Dar de fapt, înălțimea absolută a lui z nu o cunoști. Și asta este rezonabil, deoarece dacă luminozitatea depinde de orientarea suprafeței, atunci deplasarea suprafeței în sus și în jos nu ar trebui să aibă niciun efect. Și în special, în cazul proiecției ortografice, aceasta nu se schimbă în niciun fel. Nici măcar nu este mărire sau micșorare sau ceva de genul ăsta. Și la fel și aici, informațiile de umbrire nu ne spun nimic în mod direct despre adâncime, ci doar despre adâncimea relativă. Știi, care este panta suprafeței? Și aici, pentru a obține de fapt o reconstrucție, am nevoie de o valoare inițială pentru z. Și, ei bine, asta e o problemă. Acum, dacă ar fi doar... ca în cazul soluției laplaciane, dacă este doar o schimbare generală a înălțimii, asta ar fi ușor de rezolvat. Este doar o necunoscută. Dar aici, avem potențial o valoare inițială diferită pentru fiecare rând pe care îl integrăm. Deci vă puteți imagina că calculăm aceste soluții și avem o valoare inițială, să zicem, aici. Și îl integrăm. Dar le putem alege independent, sau cineva ar putea să meargă acolo și să le măsoare. Dar asta înfrânge scopul. Încercăm să găsim forma suprafeței lunii înainte ca cineva să meargă acolo. Și, așadar, ca cineva să meargă acolo și să-l cerceteze, într-un fel încalcă scopul, deși înseamnă că trebuie să studiezi doar o curbă, iar apoi totul altceva devine din asta. Și am vorbit deja despre diverse euristici pentru a încerca să construim ceva, deși nu știm asta. Deci nu trebuie să avem aceste puncte inițiale de-a lungul axei y, totuși. Am putea avea puncte inițiale de-a lungul oricărei curbe. Deci asta înseamnă că avem nevoie de fapt de o curbă inițială. Nu contează cu adevărat care este curba atâta timp cât nu este paralelă cu primul x. Axa OK, și apoi acum, putem mapa acest lucru înapoi în lumea noastră originală nerotită. Și aceste profile vor rula acum într-un unghi. Și avem un fel de curbă aici. Acum permiteți-mi să introduc coordonatele. Să numim curba inițială este o funcție a lui eta. Deci curba inițială este x pentru eta, y pentru eta, z pentru eta. Corect, așa că vom presupune că este dat. Și apoi plecăm de la asta folosind un alt parametru, [INAUDIBLE]. Și acesta este primul nostru x în acest caz, dar vrem să generalizăm asta. Deci aceasta va fi foarte asemănătoare cu metoda generală. Și așa facem un pas delta x de-a lungul acestei curbe, care ar fi un pas în x prim. Și din cauza rotației... deci aceasta este schema pe care o urmăm. Deci, explorăm suprafața deplasându-ne de-a lungul acestor curbe și de la pas la pas, asta facem. Avem delta x și delta y se modifică într-un mod care este la un unghi, theta s, în acest sistem de coordonate xy original. M-am întors la acel sistem pentru că, în general, nu vom putea folosi acest truc. Funcționează doar pentru suprafețele Hapke. Și astfel puteți vedea că calculul numeric este foarte simplu. Preluăm luminozitatea imaginii. O conectăm la această formulă și obținem un pas în direcția z. Și așa continuăm să facem asta și să explorăm acea curbă. Și apoi facem același lucru pentru următoarea curbă și pot fi calculate independent. Deci le poți face în paralel dacă vrei. Doar o mică notă-- puteți schimba viteza cu care explorați soluția pentru că dacă acest lucru îmi spune să fac un pas delta x, delta y, delta z, poate voi lua 2 delta x, 2 delta y, 2 delta z sau jumătate. Și cum m-aș decide? Ei bine, să presupunem că mișcați doar 1/100 dintr-un pixel. Probabil că este o alegere proastă pentru creștere. Sau să presupunem că mutați 10 pixeli. Este o alegere proastă pentru creștere. Vrei să o reduci. Și lucrul convenabil este că putem schimba cu ușurință viteza. Doar le înmulțim pe toate trei cu aceeași constantă. Și așa că, dacă doriți ecuații simple, putem doar să înmulțim cu acea constantă și obțineți o expresie cu aspect ceva mai simplă. Corect, deci ne mișcăm în direcția x proporțional cu qs. Ne deplasăm în direcția y proporțional cu ps. Și acestea sunt fixe. Doar mergem cu mașina. Și apoi în direcția z avem această formulă simplă. Și deci, ceea ce vom face data viitoare este să generalizăm acest lucru la hărțile de reflectanță arbitrară, nu doar la suprafețe de tip Hapke. Și vă rugăm să aruncați o privire online pentru imagini cu imaginile realizate cu microscopul electronic de scanare. Sunt cu adevărat îngrijite și oferă exemple frumoase de umbrire și capacitatea noastră de a interpreta umbrirea. Asa de--