Najlepsze oprogramowanie do kompresji PNG? [Zamknięte]

22

Właśnie próbowałem skompresować obraz w formacie obrazu PNG i miałem różne wyniki z różnych aplikacji. Dla porównania, obraz, który próbuję skompresować, jest zrzutem ekranu tej witryny . Oto pobranie oryginalnego obrazu .

Oto niektóre wyniki do tej pory w kolejności od najlepszego do gorszego (oryginalny obraz to 239 KB):

PNGGauntlet (Xtreme! / None filter) ...................... 141KB
FastStone Capture v5.3 (16M / MAX/ No filter) ............ 166KB
Paint.NET 3.36 (Autodetect) .............................. 185KB
PNGGauntlet (Xtreme! / Auto filter) ...................... 208KB
IrfanView (PNGOUT 2 passes w/default) .................... 211KB
XnView (Export / 9 / Sub filter) ......................... 228KB
Photoshop CS1 (Save for Web / PNG24) ..................... 232KB
IrfanView (Standard save / 9) ............................ 240KB
XnView (Standard save / 9) ............................... 240KB
IrfanView (Save for Web / Best) .......................... 242KB

FastStone Capture v5.3 (16M / MAX/ Paeth filter) ......... 248KB
IrfanView (Save for Web / Optimal 256 / Xiaolin / Best) ..  81KB

Niektóre majstrowanie przy PNGGauntlet doprowadziły do ​​najlepszego rezultatu, choć kompresja zajęła wieki . FastStone robi coś interesującego, podobnie jak Paint.NET, ponieważ uzyskuje wyniki w ułamku czasu potrzebnego PNGGauntlet, aby rozwinąć swoją magię. Dwa ostatnie wyniki oddzieliłem dla kontrastu (zobacz, jak wydaje się powodować problem z filtrem Paeth). Zwróć też uwagę na paletę 256-kolorową wersję Irfan: normalnie byłbym to opcja, której użyłbym, ale testuję tutaj wyniki TrueColor.

Czy ktoś ma jakieś sugestie, które mogą pobić najlepsze wyniki tutaj i może ktoś wyjaśnić, co robią filtry, ponieważ wydają się one poważnie wpływać na wynik w zależności od typu obrazu.

Charles Roper
źródło
Nawet jeśli pytanie zostanie zadane w sposób konstruktywny (może z wyjątkiem „najlepszego” w tytule), niestety wygenerowało ono otwartą listę odpowiedzi, dlatego właśnie ją zamykam.
slhck
2
Na przyszłość, jaka byłaby akceptowalna forma tego pytania? Dla przypomnienia znalazłem odpowiedzi wyjątkowo przydatne i konstruktywne, a zatem dobrze pasujące do tej witryny. Z szacunkiem powiedziałbym, że zamknięcie tego, w tym konkretnym przypadku, jest złym osądem. Naturalne głosy w górę / w dół działają tutaj dobrze. Jeśli pojawi się inne narzędzie, odmawiasz nam możliwości zapoznania się z nim tutaj. Otwarte zakończenie jest tutaj korzystne.
Charles Roper
Od 2009 r. Zmieniło się kilka rzeczy. Stack Exchange wyjaśnił, że pytania otwarte nie są już mile widziane (np. „Jakie jest najlepsze oprogramowanie dla XZY?”), Ponieważ format po prostu nie jest do tego przeznaczony i nie powinien to być konkurs ankietowy, ale strona pytań i odpowiedzi na rzeczywiste problemy z zamkniętym zestawem odpowiedzi. Teraz twoje pytanie nie jest złe samo w sobie , ale zdecydowanie nie chcemy uzyskać listy wszystkich programów optymalizacyjnych PNG, które z definicji nie są konstruktywne. Wikipedia ma cię tam.
slhck
1
Rozumiem, że to pytanie było już od dawna i znalazłeś odpowiedzi przydatne - także, że jesteś członkiem tej społeczności dłużej niż ja - ale musisz zrozumieć, że zasady zmieniły się drastycznie. Jak powiedziałem, twoje pytanie nie jest złe, poprosiłeś nawet o wyjaśnienie, w jaki sposób działają filtry, ale nie zachęcało to do właściwych odpowiedzi.
slhck
Pingo twierdzi, że zapewnia szeroki zestaw opcji, od najszybszej do najsilniejszej, nadzieja zostanie przetestowana: css-ig.net/pingo Również był eksperymentalny ZPng - przy użyciu kontenera PNG z kodekiem Zstd Facebooka. Chociaż plik nie jest plikiem PNG, nadal jest bezstratny i twierdzi, że uzyska 66% rozmiaru PNG z 6% czasem
Arioch,

Odpowiedzi:

15

PngOptimizer 165KB w około 2 sekundy.

Jakość obrazu pozostaje nietknięta.

Vincent Robert
źródło
Słodkie! To fajne małe narzędzie. Również elegancki interfejs.
Charles Roper
1
Tak naprawdę niewiele mówi o tym, co naprawdę robi. Czy to zdecydowanie bezstratne? Jakie „bezużyteczne informacje” usuwa z plików?
Sam
11

Mam tylko kiedykolwiek pngcrush ale działa dobrze i ma wiele opcji.

Draemon
źródło
Sprawdziłem większość wszystkiego, co tu wspomniano, i zdecydowałem się również na pngcrush. Polecenie usunięcia wszystkich innych sekcji danych i uruchomienie w trybie brutalnej siły (jeśli masz czas / zasoby) dało najlepsze, najbardziej niezawodne wyniki dla mojego zestawu obrazów (głównie typy grafiki liniowej - czarno-białe / szare z dużymi sekcjami czerni lub biały).
Goyuix,
Ponieważ jest uruchamiany z wiersza poleceń, łatwo go również wbudować w sekwencję kompilacji, co jest miłe.
Rich Bradshaw,
7

Dla szybkiego testu pobrałem 170 losowych plików PNG z różnych stron internetowych o łącznej wielkości około 8 MB. Oto wyniki:

Original: 8,403,619 bytes total
PNGCrush: 7,398,194 bytes total
 Optipng: 7,340,167 bytes total
  PNGOUT: 6,938,205 bytes total

Wydaje się więc, że PNGOUT (lub dowolny oparty na nim GUI) jest najlepszym wyborem, jeśli głównym celem jest rozmiar. To wszystko są bezstratne transformacje.

davr
źródło
5

Najlepsze wyniki uzyskuję dzięki ScriptPNG . Jest to skrypt wsadowy dla systemu Windows, który wykorzystuje szeroki wachlarz narzędzi PNG w celu znalezienia najlepszej możliwej kompresji dla danego obrazu. Często wyciska 10-100 bajtów z już skompresowanego obrazu. Autor ma inne narzędzia oraz wiele artykułów na temat kompresji png / jpeg, testów PNG i porównań.

Ma różne tryby:

  • Najszybszy do Xtreme (tryby prędkości vs rozmiaru)
  • PNG24 (PNG24 + specyficzne dla A)
  • PNG8 (specyficzne dla PNG8)
  • APNG (animowany PNG)
evam
źródło
4

W przeciwieństwie do większości innych wymienionych tutaj kompresorów, TinyPNG zmniejsza pliki PNG za pomocą kompresji stratnej. Dlatego może osiągnąć znacznie lepsze współczynniki redukcji wielkości pliku.

Molf
źródło
3

PNGGauntlet to opakowanie GUI dla PNGOUT, a jeśli spojrzysz na tę stronę, masz wtyczkę PNGOUT.DLL dla Irfanview, jeśli wolisz to jako interfejs, lub możesz użyć PNGOUT w wierszu poleceń lub w skryptach, jeśli chcesz zautomatyzować kompresję jako część procesu kompilacji / wdrażania.

Sam Hasler
źródło
3

Lubię OptiPNG . Oprócz narzędzia źródłowego i wiersza poleceń dostępne są wtyczki optipng dla Eksploratora Windows, Paint.NET, kilka interfejsów dla użytkowników komputerów Mac i inne projekty (Apache Ant, Eclipse; zobacz sekcję Projekty pokrewne na stronie głównej).

matowe wilkie
źródło
2

czy ktoś może wyjaśnić, co robią filtry

opisane w specyfikacji .

Zmieniają sposób zapisywania wierszy obrazu. Zamiast zapisywać surowe wartości RGB (lub indeksy palet), obraz może przechowywać różnice między sąsiednimi pikselami. Może to sprawić, że dane lepiej nadają się do kompresji, jeśli masz obraz z gradientami.

Kornel
źródło
2

Shrink-O-Matic dla łatwej zmiany rozmiaru, konwersji i optymalizacji plików. Aplikacja AIR.

ppuschmann
źródło
2

W moich testach najlepszym narzędziem online jest http://compresspng.com

użytkownik203701
źródło
4
Jeśli masz jakieś powiązania z tą witryną, zadeklaruj to. Również odpowiedzi tylko link nie są dobrymi odpowiedziami. Wyjaśnij, dlaczego uważasz, że to jest rozwiązanie.
ChrisF