IFE – Mechanical Engineering

IFE – Biomedical Engineering

IFE – Pattern Recognition

For_students
Conversion from digital PAL format to high definition video

Author: Artur Adam Wujcicki MSc

Supervisor: Paweł Pełczyński MSc PhD

The thesis placed third the competition for the best MSc thesis in the academic year 2008/2009 organized by the Polish Association of Electric Engineers (SEP) and the Faculty of Electrical, Electronic, Computer and Control Engineering of the Technical University of Lodz.

Autor: A. Wujcicki

Cel pracy: Adaptacja i implementacja algorytmu poprawy rozdzielczości w celu uzyskania wydajnego programu umożliwiającego konwersję plików wideo zgodnych z formatem PAL do formatu HD1080p24.

Krótki opis wykonanej pracy magisterskiej:

Konwersja formatu obejmowała następujące etapy:

• Usunięcie przeplotu z ramek PAL (format HD p24 wykorzystuje skanowanie progresywne),
• Powiększenie ramek PAL,
• Zmianę proporcji ramek,
• Zmianę liczby klatek/s.

W celu poprawnego usunięcia przeplotu został określony zakres przesunięcia obiektów w scenie (typowy dla filmów) występujący pomiędzy ramkami PAL. Usunięcie przeplotu jest dokonywane tylko z użyciem jednej ramki PAL, co przyspiesza algorytm a także polepsza wyniki jego działania (poruszające się obiekty w scenie w większości wypadków nie znajdą się poza kadrem dla kolejnego analizowanego półobrazu, co ma wpływ na rozmycie wynikowego obrazu).

Powiększenie obrazu (bez przeplotu) jest dokonywane za pomocą procedury należącej do klasy algorytmów określanych mianem superresolution (nadrozdzielczości). W pracy zastosowano algorytm falkowy. Autor pracy sformułował odpowiednie twierdzenie na potrzeby tego algorytmu umożliwiające wyznaczenie minimalnej ilości ramek PAL (już po usunięciu przeplotu) potrzebnych do poprawnej rekonstrukcji obrazu dużej rozdzielczości HD. Standardowa implementacja tego algorytmu dla obrazów HD o wielkości 1920x1080 pix. jest praktycznie niewykonalna na komputerach klasy PC ze względu na bardzo duże wielkości macierzy, rzędu 3TB RAM na pojedynczą macierz. Wnikliwa analiza budowy takich macierzy oraz optymalizacja kodu programu umożliwiła zmniejszenie ilości potrzebnej pamięci RAM do max. 150MB oraz skróciła czas wykonania programu z około 2 godzin/1 obraz HD do około 7 minut/1 obraz HD.

Program generuje pliki dla kolejnych klatek filmu HD, a następnie koduje je do formatu avi za pomocą ogólnie dostępnego kodeka wideo.

Aplikacja pracuje w systemie Linux, nie posiada interfejsu graficznego (jest on niepotrzebny) i korzysta tylko z bibliotek na licencji GPL. Ograniczeniem programu jest fakt wykorzystania algorytmu superresolution, co oznacza, że pracuje on poprawnie gdy analizowane ramki PAL (podczas generacji obrazu HD) przedstawiają tę samą scenę, niewielkie zmiany treści obrazu są dopuszczalne – inaczej nie będzie możliwe znalezienie informacji potrzebnej do rekonstrukcji szczegółów obrazu HD. Aplikacja współpracuje tylko z plikami wideo, których wielkość obrazu wynosi 720x576 pix.

Pliki wideo wykorzystane do weryfikacji poprawności działania programu pochodziły z kamery SD oraz z programowej obróbki klipów zgodnych z formatem HD typu p pobranych z sieci.