Celem zajęć jest zapoznanie z transformatą Falkową (Wavelet Transform) i jej zastosowaniem w kompresji obrazu.
Zadania
- Zaimplementować funkcję Transformatę Falkową, sparametryzować funkcję, tak aby można było określić liczbę poziomów dekompozycji. Zaimplementować również transformatę odwrotną. (0,3 pkt)
- Sprawdzić działanie opracowanej funkcji i zaprezentować wyniki poszczególnych poziomów dekompozycji, jak na rysunkach w materiałach. (0,1 pkt)
- Przetestować kompresję na kilku obrazach testowych dla różnych poziomów dekompozycji — testować wzrokowo i używając norm jakości (0,2 pkt):
- Opracować procedurę zerowania współczynników na ostatnich n-poziomach dekompozycji HH (dodać do funkcji transformaty jako parametr albo zrobić to ręcznie na zewnątrz) i sprawdzić wpływ tej operacji na obraz odtworzony (transformata odwrotna)
- Sprawdzić wpływ kwantyzacji na rozłożony obraz i jego jakość po odtworzeniu. UWAGA Nie stosować typów
uint
, ponieważ w rozłożonym obrazie są wartości ujemne!!!
- Przeprowadzić badania z punktu 3. w innych przestrzeniach koloru
YCbCr
,HSV
,CIE Lab
itd. (0,3 pkt) - Opisać swoje obserwacje i syntetycznie sformułować wnioski końcowe dotyczące uzyskanych efektów. (0,1 pkt)
Do oddania
- kod źródłowy (jeden plik
.py
) - sprawozdanie z obserwacjami i wynikami (format
PDF
)