Oprogramowanie

Sprawdzanie jakości plików jpeg, jpg (jpgQ)

jakość

W optymalizacji plików w formacie JPG, JPEG kluczową rolę odgrywa pierwszy etap, który polega na oszacowaniu stopnia kompresji poszczególnych obrazów. Powstaje pytanie, w jaki sposób dokonać estymacji jakości zdjęcia, jakiej metody użyć. W tym poradniku przedstawię instrukcję, dzięki której szybko zdeterminujesz jakość dowolnej grafiki w formacie JPG/JPEG.

Każdy doskonale orientuje się, iż w przypadku formatu JPG/JPEG cały mechanizm zmniejszania rozmiaru pliku opiera się na kompresji stratnej, gdzie dochodzi do wyraźnej utraty jakości fotografii. Oprócz tego istnieje możliwość zastosowania alternatywnych metod optymalizacyjnych, uwzględniających metody kompresji bezstratnej.

W jednym z poprzednich artykułów opisywałem narzędzie ScriptJPG, dzięki któremu kompresja plików JPG stała się prosta, szybka i przyjemna. Aby efektywnie wykorzystać możliwości optymalizacyjne aplikacji należy ustalić aktualny stopień kompresji.

W celu oszacowania wartości użyjemy JPEG Quality Estimator, powszechnie znany jako jpgQ. Program działa w systemach Windows z serii NT (2000, XP/2003, Vista, Windows 7), platforma 32/64-bitowa. W emulatorze Wine pod Linuksem również uruchomimy program.

Konstrukcja programu jest bardzo prosta, dlatego nie należy spodziewać się zbyt wiele. Do większych niedogodności zaliczyć można brak obsługi drag and drop, brak funkcji przetwarzania wsadowego, co w przypadku wielu grafik stanowi duże utrudnienie.

JPEG Quality Estimator

Uruchamiamy jpgQ i przystępujemy do diagnostyki zdjęć. Obsługa programu jest bardzo prosta, wczytujemy fotografię (Load JPEG), a następnie klikamy RUN. W zależności od rozmiaru (rozdzielczości) zdjęcia po kilku-kilkunastu sekundach otrzymujemy wynik (sekcja Result, Image Quality setting).

Pierwsza wartość w polu Standard JPEG (subsampling 2-1-1) odpowiada większości plików JPG. Zatem jeśli nasz JPEG został zapisany z uwzględnieniem standardowej metody próbkowania, możemy poprzestać na odczycie tej wartości.

W wierszu Enhanced Sampling znajdziemy kolejną wartość. Jej odczyt jest uzasadniony w sytuacjach, gdy zdjęcie zostało zapisane przy wykorzystaniu udoskonalonej metody próbkowania.

JPEG Quality Estimator potrafi bardzo precyzyjnie oszacować jakość pliku. Dla przykładu podaję kilka odczytów (Standard JPEG/Enhanced).

Standardowy zrzut ekranu, bez przejść tonalnych o rozdzielczości 626×410.

  1. 96/94 (100)
  2. 84/79 (90)
  3. 71/60 (80)
  4. 56/43 (70)
  5. 42/32 (60)

Fotografia z aparatu cyfrowego o rozdzielczości 619×1632.

  1. 100/98 (100)
  2. 91/82 (90)
  3. 81/62 (80)
  4. 70/43 (70)
  5. 57/31 (60)

Pliki poddane testom konwertowane z PNG do JPG (zrzut) oraz JPG do JPG (fotografia) w programie IrfanView. Zapis do JPG z domyślnymi ustawieniami, z jakością 100, 90, 80, 70 i 60%.

Precyzja pomiaru zależy od konkretnej grafiki. Typowe zrzuty ekranu, bez przejść tonalnych, z niewielką ilością szczegółów uzyskują wartości o niskiej dokładności, natomiast w przypadku klasycznej fotografii mamy już niemalże idealne odwzorowanie stopnia jakości. Podobnie jest z rozdzielczością, czym większa tym jpgQ trafniej oszacuje wartość.

Szczegółowe informacje na temat mechanizmu działania narzędzia i sposobie interpretowania wyników znajdziecie w dokumentacji producenta.

O autorze

Mariusz Kołacz

Z zawodu mgr inż. informatyk, zwolennik nowoczesnych technologii i fan Nikoli Tesla. Prowadzi kilka blogów o tematyce technologicznej. Po godzinach lubi przeczytać dobrą książkę, pozwiedzać ciekawe miejsca w Polsce lub spędzić wolny czas na łonie natury.