Transcript Curs 9
APLICAŢII ALE PCA ÎN COMPRESIA ŞI RESTAURAREA SEMNALELOR MATRICEA MOORE-PENROSE (PSEUDO-INVERSA) ALGORITMUL DE ELIMINARE A ZGOMOTULUI CORELAT PRIN TEHNICI PCA Tehnica propusă pentru eliminarea zgomotului este bazată pe reprezentarea semnalului imagistic în termenii componentelor principale şi procesarea vectorului “alb” astfel obţinut. Modelul este următorul. Fie X X 0 η semnalul imagistic observat, unde o X 0 este setul de imagini originale, vector aleator cu medie μ 0 şi matrice de covarianţă Σ 0 o η este componenta zgomot, repartizată normal, cu medie μ şi matrice de covarianţă Σ Ipotezele de lucru sunt o semnalul iniţial este necorelat cu componenta zgomot aditiv o vectorii medie şi matricele de covarianţă corespunzătoare semnalului iniţial, respectiv zgomotului sunt date cunoscute. Metoda propusă pentru eliminarea zgomotului presupune parcurgerea a două etape: o aplicarea unei transformări pentru decorelarea componentei zgomot o aplicarea unei metode de tip contracţie a codului pentru eliminarea zgomotului semnalului obţinut în urma procesului de decorelare. Datele observate - imagini monocrome prelucrate considerând descompunerea în blocuri de dimensiune p p , ulterior liniarizate n p p . În etapa de preprocesare datele sunt reduse la intervalul 0,1 şi centrate, Y X EX X 0 μ 0 η μ , unde EY 0n şi Cov Y , Y T Σ 0 Σ Fie A matricea cu coloane un set de vectori proprii ai matricei Σ 01 Σ şi Λ diag 1 , 2 ,..., n , unde 1 , 2 ,..., n sunt valorile proprii ale lui Σ 01 Σ (sunt numere pozitive, deşi Σ 01 Σ nu este simetrică) ; A diagonalizează simultan matricele de covarianţă Σ 0 şi Σ , A T Σ 0 A I n şi A T Σ A Λ Fie transformarea Z A T Y . Rezultă Cov Z, Z T A T Σ 0 Σ A I n Λ , deci componentele lui Z sunt necorelate. Deoarece Z A T Y A T X 0 μ 0 A T η μ , componenta η' A T η μ corespunde zgomotului rezultat în vectorul transformat A T X 0 μ 0 Cov η' , η'T A T Cov η μ , η μ A A T Σ A Λ T Pentru eliminarea zgomotului din imaginea transformată Z utilizăm funcţia de contracţie g u sign u max 0, u 2 i . Fie Z0 imaginea rezultată în urma aplicării funcţiei de contracţie şi Y0 varianta imaginii Y din care este eliminată componenta zgomot, unde Z 0 A T Y0 . Pe baza proprietăţii că A diagonalizează simultan cele două matrice de covarianţă, avem AA T Σ 01 , AZ 0 AAT Y0 Σ 01Y0 deci, Y0 A T 1 Z0 Σ0 AZ 0 Varianta restaurată a lui X0 este Xˆ 0 Y0 EX , deci Xˆ 0 Σ 0 AZ 0 EX A T 1 Z0 EX . Implementare în varianta 1. Se dispune de μ , Σ0 , μ şi Σ . Obţinerea imaginilor cu zgomot I1 , I2 ,..., I nr exp imagini neperturbate de dimensiune m n , instanţe ale lui X 0 . Se lucrează I cu blocuri 16x16 şi liniarizate şi normalizate I i i 255 , 1 i nrexp . După cum rezultă din model, se dispune de μ , Σ0 , μ şi Σ - pot fi calculaţi direct, primii doi parametri din imaginile neperturbate pentru variantele normalizate ale imaginilor, ceilalţi conform zgomotului. Perturbarea: este realizată cu zgomot corelat, fiecare bloc liniarizat de dimensiune 256 este perturbat cu acelaşi zgomot normal, de medie μ şi matrice de c ovarianţă Σ . Rezultă J1 , J 2 ,..., J nr exp imagini perturbate de dimensiune p , liniarizate şi împărţite în blocuri. Algoritmul de eliminare a zgomotului Date de intrare: J1 , J 2 ,..., J nr exp , μ , Σ0 , μ şi Σ Imaginile se normalizează (se aduc valorile matricelor în [0,1], prin împărţire la 255). μ μ 255 Σ Σ 2552 1 J J 1. Centrarea: i i nr exp nr exp J k,1i nrexp k 1 2. Construieşte matricea transformării liniare - A matricea cu coloane vectori proprii ai matricei Σ 01 Σ , Λ diag 1 , 2 ,..., p şi A diagonalizează simultan matricele de covarianţă Σ 0 şi Σ apel MATLAB [A,Lambda]=eig(sigmap,sigma); 3. Aplică transformarea directă: Z i AT J i , 1 i nrexp 4. Aplică funcţia de contracţie a codului Z 0i t g Z i t sign Z i t max 0, Z i t 2 t , 1 i nr exp, 1 t p 5.Aplică transformarea inversă Y 0i pinv AT Z 0i , 1 i nrexp 6. Calculează o aproximare a imaginilor iniţiale X i μ Y 0i , 1 i nrexp Jˆ 255 * X , 1 i nrexp i i Imagini perturbate VARIANTA 1 DE IMPLEMENTARE Implementarea în varianta 2. Se dispune doar de μ şi Σ . Valorile parametrilor μ , Σ0 , sunt estimate din date, pe baza observaţiilor asupra imaginilor cu zgomot 1 μ Fie 1 nr exp nr exp 1 J k Σ1 , nr exp 1 k 1 nr exp T J μ J μ k 1 k 1 k 1 Algoritmul este implementat pentru μˆ 0 μ 1 μ , Σˆ 0 Σ1 Σ Observaţii 1. Numărul exemplelor trebuie să fie suficient de mare încât valorile estimate pentru vectorul medie şi matricea de covarianţă să fie apropiate de cele teoretice (de exemplu fiecare imagine neperturbată generează NR imagini perturbate; numărul exemplelor perturbate devine nrexp=NR*nrexp). 2. Imaginile reconstruite sunt obţinute pe baza variantei 1 de implementare pentru valorile μˆ 0 μ 1 μ , Σˆ 0 Σ1 Σ , μ şi Σ . Pentru o mai bună reconstrucţie, aproximarea fiecărei imagini neperturbate este obţinută ca medie a tuturor variantelor reconstruite ale aceleiaşi imagini. Imagini perturbate VARIANTA 2 DE IMPLEMENTARE Imagini restaurate –sunt cunoscute media si covarianta zgomotului (zgomotul este aditiv, corelat si de medie generata aleator); NR=50 (fiecare imagine “curata” a fost transmisa prin canalul de comunicatie care genereaza zgomotul de NR ori; fiecare imagine restaurata este media variantelor restaurate ale celor NR exemple bruiate primite) OBSERVAŢII 1. În algoritmii prezentaţi în cursurile 6,7, 8 şi 9 matricele de covarianţă de selecţie pot fi slab condiţionate, în principal din cauza numărului relativ mic de observaţii asupra vectorilor aleatori (date de tip semnal imagistic, sonor etc.). În plus, metodele de calcul numeric folosite pot produce rezultate perturbate (valori proprii nule, vectori proprii cu valori numere complexe, cu partea imaginară foarte mică în modul şamd). 2. Pe baza observaţiei 1, este recomandată folosirea pseudoinversei în locul inversei unei matrice (chiar dacă, teoretic, matricea de inversat este nesingulată), sunt utilizate doar valorile proprii nenule şi, implicit, componentele principale asociate acestora. 3. Valorile proprii calculate, deşi teoretic sunt numere reale pozitive, pot conţine şi părţi imaginare (foarte mici în modul). În acest caz sunt considerate părţile reale, şi numai acelea pozitive. 4. Funcţia de contracţie a codului este aplicată doar în cazul valorilor proprii pozitive (sau acelor valori proprii cu parte reală număr pozitiv).