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.

7 komentarzy

  • Witam, pytanie z innej bajki. Co to jest za wtyczka z której Pan korzysta, chodzi o linkowanie wewnątrz artykułów.

    • Wszystkie punkty linkowania są tworzone ręcznie, nie używam do tego dodatkowych wtyczek, są zbędne, po utworzeniu artykułu kwestia 2-3 minut i wszystko pięknie ładnie jest podlinkowane tak jak chcę bez zbędników.

    • Gdybyś jednak chciała automatycznie dodawać linki wewnątrz artykułów to pomoże wtyczka SEO Smart Links, ale niezbędna będzie konfiguracja.

      PS. Szkoda, że Facebook tak bardzo niszczy jakość zdjęć wrzucanych do portalu. Gdy porównałem wyniki oryginału i tego z Facebooka to musiałem przetrzeć oczy ze zdumienia 😉

  • Bardzo ciekawy blog. Dopiero na niego trafiłem, ale na pewno zostanę tu dłużej. Trochę informacji o JPEG-ach mi się przyda, bo czasem wklejam jpeg-i na bloga i nie wyglądają one zbyt dobrze.

  • Przecież to jest oczywiste! A ja nigdy nie wpadłem na to, że jpgi które kompresuję były już wcześniej skompresowane, jeżeli chodzi o kompresje przejść tonalnych to widziałem kiedyś ciekawy eksperyment. Mianowicie wielokrotne otwieranie i zapisywanie tego samego pliku jako jpeg, nawet bez kompresji zniekształca przejście tonalne.

  • Jakość plików była istotna kiedyś gdy internet był dużo wolniejszy. Teraz już tak bardzo nad tym webmasterzy się nie rozwodzą i nie przesadzają z optymalizacją… zresztą czasem lepiej zostawić np jeden większy obrazek niż kilka małych bo w efekcie strona ładuje się szybciej.

    • Nie uważam aby była mniej istotna. W sklepach internetowych, gdzie mamy po kilka zdjęć na każdej stronie produktu – tam jest szczególnie zasadna optymalizacja. Policz sobie dla przykładu przy 6 zdjęciach produktu, łącznie rozmiar powiedzmy 2MB przy łączu 1Mbit/s ile czasu będzie potrzebne do załadowania całej podstrony? I w tym miejscu każdy uzna, że optymalizacja jest kluczowa. Być może nie zdajesz sobie sprawy, że każda sekunda opóźnienia w ładowaniu witryny to utrata potencjalnego klienta.

Kliknij tutaj aby skomentować