Citius, altius, fortius

Siedem lat po ostatecznym zatwierdzeniu formatu JPEG, w sierpniu 1998, zespół Digital Imaging Group oraz grupa funkcjonująca pod skrzydłami organizacji standaryzacyjnej ISO rozpoczęły prace nad JPEG2000 (ISO 15444). Celem obu zespołów jest stworzenie nowego, unowocześnionego standardu pliku graficznego, oferującego lepszą jakość obrazu niż w przypadku zbiorów JPEG przy jednocześnie zwiększonym współczynniku kompresji.

W formacie JPEG2000 zastosowano nową metodę kompresji danych – algorytm faletkowy (ang. wavelet algorithm). W pierwszym etapie działania algorytmu cały obraz transformowany jest przy użyciu serii faletek (należących do jednej rodziny, zbudowanej na bazie specyficznej funkcji – ang. mother wavelet) w macierz tzw. współczynników faletkowych. Z otrzymanej macierzy eliminowana jest pewna część informacji o ilustracji (przede wszystkim szumy). W drugim etapie kompresji, zwanym kwantyzacją, pozostałe współczynniki zaokrągla się do z góry założonych poziomów, co pozwala zapisać je w reprezentacji całkowitoliczbowej. W efekcie kolory występujące na obrazie przybliżane są barwami zbliżonymi. Im większy założony współczynnik kompresji, tym mniej wiernie oddawane są kolory.

Zaletą nowego algorytmu jest to, że na ilustracji nie powstają charakterystyczne dla plików JPEG tzw. artefakty (sztuczne efekty uboczne) w postaci obszarów kwadratowych wyraźnie nie pasujących do otaczających je fragmentów obrazu. Dzieje się tak dlatego, że transformacja faletkowa jest przeprowadzana na całej ilustracji, a nie na jej fragmentach. W przypadku JPEG2000 zniekształcenia, jeśli się pojawią, mają kształt nieregularny, dzięki czemu dają lepsze efekty wizualne na obrazie wynikowym.

Zmiana algorytmu

Mówiąc w dużym uproszczeniu, wszystkie algorytmy kompresji usuwają z obrazu te informacje, które się niepotrzebnie powtarzają, są niedostrzegalne dla ludzkiego oka lub których brak jest akceptowalny przy danym poziomie tolerancji. W standardzie JPEG użyto algorytmu bazującego na podziale obrazu na bloki o wymiarach 8×8 pikseli. Każdy blok był następnie poddawany dyskretnej transformacji kosinusowej (DTC) i kilku innym operacjom.

Coraz dokładniej

Tak jak w przypadku formatów GIF, PNG (CHIP 2/96, s. 76) i FlashPix (CHIP 3/97, s. 104), obrazek w formacie JPEG2000 może być wyświetlany w mniej lub bardziej dokładny sposób. Jak ilustracja będzie wyglądała na ekranie użytkownika, zależy zwłaszcza od jej twórców, którzy mogą kontrolować, z jaką jakością będzie ona udostępniana odbiorcy. Użytkownik z kolei – jeśli uzna, że obrazek ma już wystarczającą rozdzielczość – będzie mógł wstrzymać jego dalsze wczytywanie.

Twórcy będą mogli zapisywać ilustracje z jakością równą oryginalnemu obrazowi w celach np. archiwizacyjnych, dzięki czemu nie będzie już konieczne stosowanie innych, bezstratnych formatów (takich jak np. TIFF). Możliwe też jest wyświetlanie fragmentów obrazka z lepszą jakością niż w pozostałej jego części i dokonywanie na nim operacji typu obracanie, filtrowanie, skalowanie itp.

Kolory, metadane i rozszerzenia

Format JPEG2000 przewiduje stosowanie w plikach specjalnych sekcji, zawierających tzw. metadane. Przy ich użyciu możliwe będzie podawanie wielu dodatkowych informacji o obrazie, a także rozszerzanie samego formatu JPEG2000. Ponadto metadane mogą być dopisywane po prostu na końcu pliku, bez konieczności przepisywania całego zbioru.

Specyfikacja JPEG2000 przewiduje możliwość dołączania (właśnie w postaci metadanych) do plików zapisanych w tym formacie informacji o profilach kolorów ICC oraz o barwach obrazka w modelu CMYK. Normalnie kolory definiowane będą w standardzie sRGB. Jeśli jednak w pliku zapisany będzie także profil ICC, podawane w nim informacje będą istotniejsze niż te w sRGB.

Koniec już blisko

Przyjęcie projektu specyfikacji nowego standardu miało miejsce pod koniec 1999 r. Oficjalnie JPEG2000 ma być zatwierdzony w przyszłym roku. Oprócz tego przygotowywana jest jeszcze część druga specyfikacji, obejmująca omówienie rozszerzeń przeznaczonych do specjalnych celów.

Część pierwsza specyfikacji jest darmowa dla wszystkich chętnych. W skład części drugiej mogą wchodzić także rozszerzenia płatne, które zainteresują jednak tylko ok. 10% twórców. Wśród dodatkowych możliwości formatu należy wymienić m.in. opcję kompresji obrazów (bądź ich fragmentów) zawierających czarno-biały tekst innym algorytmem niż reszty ilustracji, co ułatwi rozpoznanie tekstu za pomocą programów OCR. Drugim rozszerzeniem będzie sekcja, w której możliwe będzie umieszczenie informacji o kolejnych klatkach animacji “zaszytej” w pliku i prędkości, z którą te klatki mają być wyświetlane.

Samo zatwierdzenie standardu nie oznacza jego wejścia w życie. Niezbędne jest jeszcze “zaakceptowanie” JPEG2000 np. przez producentów popularnych przeglądarek WWW. Na razie nie wiadomo jednak, kiedy (i czy w ogóle) będą one “rozumiały” ten standard.

Najważniejsze cechy formatu JPEG2000

– nowy algorytm kompresji danych

– bezstratna lub stratna kompresja ilustracji

– kontrola jakości wyświetlanego obrazka

– zwiększenie możliwości zapamiętywania informacji o kolorach ilustracji

– opcja dekodowania i wyświetlania tylko fragmentu obrazka

Pokaz możliwości nowego formatu: ten sam obrazek zapisany z rosnącym współczynnikiem kompresji uwidacznia przewagę nowego algorytmu kompresji użytego w JPEG2000.

Średni współczynnik kompresji
Wysoki współczynnik kompresji

Info
Grupy dyskusyjne
Pytania, uwagi i komentarze do artykułu:
#
Pytania techniczne:
#
Internet
JPEG2000: http://www.jpeg.org/jpeg2000.htm
Literatura
W. Skarbek: Metody reprezentacji obrazów cyfrowych, Akademicka Oficyna Wydawnicza PLJ, Warszawa 1993
Na dołączonym CD-ROM-ie w dziale Aktualności | Tendencje znajdują się dokumenty ze specyfikacją formatu JPEG2000 oraz ilustracje z artykułu.
Więcej:bezcatnews