Bardzo krótki artykuł przedstawiający trzy przykłady różnic w skuteczności kompresji obrazków za pomocą GIF i PNG.
Autor: blackcat
Zajmiemy się ocena który format jest lepszy: GIF czy PNG, wykluczając to, że GIF może być animowany. Chciałbym zaprezentować w jakich przypadkach, który format jest lepszy. Obydwa formaty zdawały by się być podobne a jednak tkwi w nich różnica. W celu udowodnienia, który format jest lepszy zrobimy pewne testy.
Próba zapisu obrazka z czarnymi liniami:
To doświadczenie miało pokazać jakość algorytmu kompresującego każdego z formatów. Zauważamy, że chociaż rozmiar pliku niewiele się różni to dla takiego położenia kolorów algorytm GIF’a jest bardziej doskonały, a algorytm PNG zostaje w tyle.
Teraz spróbujmy zapisać te same czarne linie obrócone o 90°:
I mamy niespodziankę. Po poprzedniej przegranej PNG jest teraz lepszy o prawie połowę rozmiaru pliku. Tak, linie pionowe to słabe miejsce formatu GIF, natomiast algorytm PNG w tym przypadku jest niezawodny.
Jeszcze jedna próba na liniach. Teraz obrócimy je pod katem 45°:
Jak widać tutaj PNG jest sporo w tyle (większy rozmiar pliku), a wydawało by się, że powinien być lepszy od rywala. Algorytm jednak jest algorytmem. Trudno jest odpowiedzieć, który format jest lepszy. Wybór formatu należy do użytkownika. Wybierze ten który jest dla niego lepszy. Może projektanci kiedyś udoskonala format PNG i będzie on znacznie lepszy od innych. Jak na razie będzie trzeba czekać, miejmy nadzieje, że nie długo.
Autor: blackcat
Witam
Chciałbym w zasadzie napisać, że należałoby dodać porównanie funkcjonalne, skomplikować obrazki, porównać kompresje z dużą ilością kolorów.
Oba formaty powinny być używane wspólnie, ponieważ są lepsze do różnych zastosowań. PNG ma zaimplementowany kanał alfa, więc jest doskonały wszędzie tam gdzie jest potrzebna półprzezroczystość. GIF ma tylko pełną przezroczystość lub wcale. Obrazek w PNG może zawierać pełną skalę kolorów, GIF tylko 256, przejścia między kolorami dla których zabrakło skali w pliku są emulowane ditheringiem, co nie zawsze ładnie wygląda.
W dzisiejszych czasach rozmiar ma mniejsze znaczenie niż za czasów modemów, ale wcale nie twierdzę, że nie trzeba się nim przejmować. Po prostu czasami dobry wygląd i kanał alfa ma priorytet.
Pozdrawiam.
Jarek
Zgadzam się w 100 % z Jarkiem !
To stary artykuł i potraktowany dość pobieżnie. Postaram się wkrótce przygotować coś bardziej pożytecznego.
Nie zgodzę się że rozmiar ma małe znaczenie. Wąskim gardłem komputerów dzisiaj są właśnie dyski. No chyba że masz SSD to wtedy rzeczywiście nie ma się czym przejmować.