30Aug
PNG format trebao bi biti format bez gubitaka, ali kada spremite sliku kao PNG datoteku, od vas se traži da odaberete razinu kompresije. Znači li to da PNG format zapravo nije bez gubitka? Današnji SuperUser Q & A post pomaže razjasniti zbunjenost znatiželjnom čitatelju.
Današnje pitanje &Sesija odgovora nam dolazi zahvaljujući SuperUseru - podjele Stack Exchange, grupiranjem zajednice Q & A web stranica.
Pitanje
SuperUser čitač pkout želi znati je li kvaliteta PNG slike pod utjecajem odabrane razine kompresije:
Kao što sam je razumio, PNG datoteke koriste kompresiju bez gubitaka. Međutim, kada koristim editor slike kao što je Gimp i pokušavam spremiti sliku kao PNG datoteku, traži se razina kompresije u rasponu od 0 do 9.
Ako ima parametar kompresije koji utječe na vizualnu preciznost komprimiranogslika, kako je onda PNG bez gubitka? Može li mi netko objasniti ovo? Dobivam li ponašanje bez gubitaka samo kada postavim razinu kompresije na 9?
Postoji li razlika u kvaliteti slike ovisno o razini kompresije koju odaberete?
Odgovor
SuperUser suradnici LordNeckbeard i jjlin imaju odgovor za nas. Prvo, LordNeckbeard:
PNG je komprimiran, ali bez gubitka
Razina kompresije je razmjena između veličine datoteke i brzine kodiranja / dekodiranja. Da bi pretjerano generalizirali, čak i formati slikovnih slika, kao što je FLAC, imaju slične pojmove.
Različite razine kompresije, isti dekodirani izlaz
Iako su veličine datoteke različite zbog različitih razina kompresije, stvarni dekodirani izlaz će biti identičan. Možete usporediti MD5 ishešene dekodirane izlaze s ffmpeg pomoću MD5 muxera. Ovo se najbolje prikazuje s nekim primjerima.
Stvaranje PNG datoteka
- Prema zadanim postavkama, ffmpeg će koristiti -compression_level 100 za PNG izlaz.
- Brz, neuredan test pokazao je da 100( najviša razina kompresije) traje otprilike tri puta dulje za kodiranje i pet puta dulje od dekodiranja od 0( najniža razina kompresije) u ovom primjeru.
Usporedba veličine datoteke
Dekodiranje PNG datoteka i prikazivanje MD5 hasura
Budući da su oba hasesa jednaka, možete biti sigurni da su dekodirani izlazi( ne komprimirani sirovi datoteke) točno isti.
Slijedi odgovor jjlin:
PNG je bez gubitaka. GIMP najvjerojatnije neće koristiti najbolji izbor riječi u ovom slučaju.
Razmislite o kvaliteti kompresije ili razini kompresije .S nižom kompresijom dobivate veću datoteku, ali je potrebno manje vremena za proizvodnju, a kod veće kompresije dobivate manju datoteku koja traje duže.
Obično dobivate smanjenje povrata, tj. Ne toliko smanjenje veličine u usporedbi s povećanjem vremena koje je potrebno prilikom podizanja do najviših razina kompresije, ali to ovisi o vama.
Imate li što dodati objašnjenju? Zvuči u komentarima.Želite li pročitati više odgovora od drugih tehnoloških korisnika Stack Exchangea? Pogledajte ovdje cijelu raspravu.