totul despre indicele de similitudine structurală (SSIM): teorie + cod în PyTorch

SSIM a fost introdus pentru prima dată în lucrarea IEEE din 2004, Evaluarea calității imaginii: de la vizibilitatea erorilor la similitudinea structurală. Rezumatul oferă o bună intuiție în ideea din spatele sistemului propus,

metodele obiective de evaluare a calității imaginii perceptive au încercat în mod tradițional să cuantifice vizibilitatea erorilor (diferențelor) dintre o imagine distorsionată și o imagine de referință folosind o varietate de proprietăți cunoscute ale sistemului vizual uman. Presupunând că percepția vizuală umană este foarte adaptată pentru extragerea informațiilor structurale dintr-o scenă, introducem un cadru complementar alternativ pentru evaluarea calității bazat pe degradarea informațiilor structurale.

rezumat: autorii fac 2 puncte esențiale,

  • majoritatea tehnicilor de evaluare a calității imaginii se bazează pe cuantificarea erorilor dintre o referință și o imagine eșantion. O metrică comună este de a cuantifica diferența dintre valorile fiecăruia dintre pixelii corespunzători dintre eșantion și imaginile de referință (utilizând, de exemplu, eroarea medie pătrată).
  • sistemul de percepție vizuală umană este foarte capabil să identifice informațiile structurale dintr-o scenă și, prin urmare, să identifice diferențele dintre informațiile extrase dintr-o referință și o scenă de probă. Prin urmare, o metrică care reproduce acest comportament va funcționa mai bine pe sarcini care implică diferențierea între un eșantion și o imagine de referință.

metrica indicelui de similitudine structurală (SSIM) extrage 3 Caracteristici cheie dintr-o imagine:

  • luminanță
  • Contrast
  • structură

comparația dintre cele două imagini se realizează pe baza acestor 3 caracteristici.

Fig 1 prezentat mai jos prezintă dispunerea și debitul sistemului de măsurare a similitudinii structurale. Semnalul X și semnalul Y se referă la imaginile de referință și eșantion.

Fig 1: Sistemul De Măsurare A Similitudinii Structurale. Sursa: https://www.cns.nyu.edu/pub/eero/wang03-reprint.pdf

dar ce calculează această metrică?

acest sistem calculează indicele de similitudine structurală între 2 imagini date, care este o valoare între -1 și +1. O valoare de +1 indică faptul că cele 2 imagini date sunt foarte asemănătoare sau identice, în timp ce o valoare de -1 indică faptul că cele 2 imagini date sunt foarte diferite. Adesea, aceste valori sunt ajustate pentru a fi în intervalul în care extremele au același înțeles.

acum, să explorăm pe scurt, modul în care aceste caracteristici sunt reprezentate matematic și modul în care acestea contribuie la scorul final SSIM.

  • luminanță: luminanța se măsoară prin medierea tuturor valorilor pixelilor. Sa notată cu X-X (Mu), iar formula este dată mai jos,

unde xi este a i-a valoare a pixelilor imaginii x. N este numărul total de valori ale pixelilor. Sursa: https://www.cns.nyu.edu/pub/eero/wang03-reprint.pdf
  • Contrast: Se măsoară luând deviația standard (rădăcina pătrată a varianței) a tuturor valorilor pixelilor. Acesta este notat cu XV (sigma) și reprezentat de formula de mai jos,

unde x și y sunt cele două imagini și mu este media valorilor pixelilor imaginii. Sursa: https://www.cns.nyu.edu/pub/eero/wang03-reprint.pdf
  • Structura: Comparația structurală se face folosind o formulă consolidată (mai multe despre asta mai târziu), dar, în esență, împărțim semnalul de intrare cu abaterea sa standard, astfel încât rezultatul să aibă deviația standard a unității, ceea ce permite o comparație mai robustă.

unde x este imaginea de intrare

Deci acum am stabilit intuiția matematică din spatele celor trei parametri. Dar stai! Nu am terminat încă cu matematica, un pic mai mult. Ceea ce ne lipsește acum, sunt funcții de comparație care pot compara cele două imagini date pe acești parametri și, în final, o funcție de combinație care le combină pe toate. Aici, definim funcțiile de comparație și, în final, funcția de combinație care produce valoarea indicelui de similitudine

  • funcția de comparație a luminanței: este definită de o funcție, L(x, y) care este prezentată mai jos. (mu) reprezintă media unei imagini date. x și y sunt cele două imagini comparate.

unde C1 este o constantă pentru a asigura stabilitatea atunci când numitorul devine 0. C1 este dat de,

actualizare: de-a lungul articolului, nu am explorat care sunt constantele K și L din această ecuație. Din fericire, un cititor a subliniat acest lucru în comentarii și, astfel, în interesul de a face acest articol un pic mai util, le voi defini aici.

L este intervalul dinamic pentru valorile pixelilor (l-am setat ca 255, deoarece avem de-a face cu imagini standard pe 8 biți). Puteți citi mai multe despre care sunt diferitele tipuri de imagini și ce înseamnă acestea, aici.

K1, K2 sunt doar constante normale, nimic de mult acolo!

  • funcția de comparare a contrastului: este definită de o funcție c(x, y) care este prezentată mai jos. X-X indică deviația standard a unei imagini date. x și y sunt cele două imagini comparate.

unde C2 este dat de,

  • funcția de comparare a structurii: este definită de funcția S(x, y) care este prezentată mai jos. X-X indică deviația standard a unei imagini date. x și y sunt cele două imagini comparate.

în cazul în care XY(XY) este definit ca,

și în cele din urmă, scorul SSIM este dat de,

în cazul în care valoarea relativă a fiecăreia dintre valori este egală cu cea a numărului de valori, în cazul în care valoarea relativă a valorilor este > 0, în cazul în care valoarea relativă a valorilor este > 0. Pentru a simplifica expresia, dacă presupunem că, în cazul în care, în cazul în care se presupune, în cazul în care, în cazul în care, în cazul în care, în cazul în care se presupune, în cazul în care, în cazul în care, în cazul în care,

dar există o întorsătură a complotului!

în timp ce veți putea implementa SSIM folosind formulele de mai sus, este posibil să nu fie la fel de bun ca implementările gata de utilizare disponibile, așa cum explică autorii,

pentru evaluarea calității imaginii, este util să se aplice indicele SSIM la nivel local, mai degrabă decât la nivel global. În primul rând, caracteristicile statistice ale imaginii sunt de obicei foarte nestaționare din punct de vedere spațial. În al doilea rând, distorsiunile imaginii, care pot depinde sau nu de statisticile locale ale imaginii, pot fi, de asemenea, variante spațiale. În al treilea rând, la distanțe tipice de vizionare, doar o zonă locală din imagine poate fi percepută cu rezoluție înaltă de către Observatorul uman la un moment dat (din cauza caracteristicii de foveare a HVS,). Și, în sfârșit, măsurarea calității localizate poate oferi o hartă de calitate variabilă spațial a imaginii, care oferă mai multe informații despre degradarea calității imaginii și poate fi utilă în unele aplicații.

rezumat: În loc să aplicați valorile de mai sus la nivel global (adică pe toată imaginea simultan), este mai bine să aplicați valorile la nivel regional (adică în secțiuni mici ale imaginii și să luați media generală).

această metodă este adesea denumită Indicele de similitudine structurală medie.

datorită acestei schimbări de abordare, formulele noastre merită, de asemenea, modificări pentru a reflecta același lucru (trebuie remarcat faptul că această abordare este mai frecventă și va fi utilizată pentru a explica codul).

(Notă: dacă conținutul de mai jos pare puțin copleșitor, nu vă faceți griji! Dacă obțineți esența, atunci parcurgerea codului vă va oferi o idee mult mai clară.)

autorii folosesc o funcție de cântărire gaussiană circular-simetrică 11×11 (practic, o matrice 11×11 ale cărei valori sunt derivate dintr-o distribuție gaussiană) care se mișcă pixel cu pixel pe întreaga imagine. La fiecare pas, statisticile locale și indicele SSIM sunt calculate în fereastra locală. Deoarece acum calculăm valorile la nivel local, formulele noastre sunt revizuite ca,

unde wi este funcția de ponderare gaussiană.

dacă ați găsit acest lucru un pic unintuitive, nu vă faceți griji! Este suficient să ne imaginăm wi ca un multiplicatorși care este folosit pentru a calcula valorile necesare cu ajutorul unor trucuri matematice.

odată ce calculele sunt efectuate pe toată imaginea, luăm pur și simplu media tuturor valorilor SSIM locale și ajungem la valoarea SSIM globală.

în sfârșit am terminat cu teoria! Acum, pe codul!

You might also like

Lasă un răspuns

Adresa ta de email nu va fi publicată.