Wiem, że JPEG to „stratny” algorytm kompresji, który odrzuca informacje w celu zaoszczędzenia miejsca. Jaki jest tego efekt wizualny? Słyszałem o „artefaktach JPEG”. Jak to wygląda?
Czy są sytuacje, w których ten sam poziom kompresji tworzy więcej artefaktów i wygląda gorzej? Czy treść obrazu w ogóle ma znaczenie? Z czym algorytm dobrze sobie radzi i z czym ma problem?
Zakładając, że JPEG jest wymagany, czy istnieje sposób na zmniejszenie artefaktów? Jeśli przesyłam do serwisu internetowego, który zastosuje własną kompresję poza moją kontrolą, czy mogę coś zrobić z obrazem z wyprzedzeniem, aby mógł lepiej przetrwać?
Odpowiedzi:
Przykład
Korzystanie z aktualnego zdjęcia zdjęcia tygodnia. To jest wysokiej jakości JPEG:
ponownie zapisane w Gimp z jakością JPEG 80 (niska); zwróć uwagę na ogólną utratę ostrości, „kropki” wokół krawędzi o wysokim kontraście, utratę szczegółów w obszarach o niskim kontraście:
i ponownie zapisane w GIMP z jakością JPEG 30 (bardzo niska); należy zwrócić uwagę na wyraźne bloki 8x8 i znaczną utratę ostrości i szczegółów koloru:
Trzy rodzaje zniekształceń
JPEG ma tendencję do wprowadzania dwóch trzech rodzajów zniekształceń:
Widoczna struktura bloków i aureole wokół krawędzi są zwykle nazywane artefaktami JPEG. Powiększmy nasz przykład, aby zobaczyć je lepiej. Od lewej do prawej: kadr z oryginalnych obrazów JPEG Q80 i JPEG Q30. Artefakty oznaczyłem na zielono (kółka na aureole i kropki na bloki 8x8):
Jak każda utrata informacji, nie można jej odzyskać. Ostrzenie może pomóc odzyskać utracony kontrast krawędzi, ale sprawia, że „aureole” są bardziej widoczne; odszumianie może pomóc usunąć „aureole”, ale jeszcze bardziej zmniejsza ostrość. Jeśli struktura bloku jest widoczna, prawdopodobnie jest już za późno. Po prostu trzymaj oryginalne obrazy o wysokiej rozdzielczości i wysokiej jakości i nie nadpisuj ich.
Strategie hostingowe
Jeśli kontrolujesz parametry kompresji JPEG i chcesz zmaksymalizować jakość obrazu:
Jeśli przesyłasz do usługi innej firmy i nie kontrolujesz parametrów kompresji, niewiele możesz na to poradzić:
źródło
JPEG faktycznie używa dwóch rodzajów kompresji, stratnej i bezstratnej. Bezstratna kompresja nie powoduje artefaktów, więc możemy zignorować tę część. Szczególny rodzaj kompresji stratnej w JPEG, zwany dyskretną transformacją cosinusową dla algorytmów matematycznych, umożliwia kompromis między stopniem kompresji a wiernością. Większość oprogramowania spełnia tę funkcję jako „jakość”, zwykle w skali 0-100, przy czym 100 oznacza brak straty lub bardzo niewielką stratę i stamtąd spada.
Ten szczególny algorytm kompresji został przyjęty, ponieważ jest dobry w wyrzucaniu rzeczy, których ludzki system wzrokowy nie zauważa tak bardzo, jak innych elementów sceny. Po części dlatego całkiem przyzwoicie wyglądające zdjęcia mogą mieć imponująco wysokie współczynniki kompresji. Dlatego też działa dobrze na prawdziwych ciągłych tonach, a nie tak dobrze na syntetycznych obrazach i grafikach.
Oto 200 x 300 obszar większego zdjęcia z pikselami powielonymi 2x, aby lepiej je zobaczyć. Zastosowano kompresję JPEG „jakość” 100:
Jakość 80, zmniejszenie rozmiaru pliku o 79%:
Jakość 60, redukcja 86%:
Jakość 40, redukcja 90%:
Zmniejszenie rozmiaru pliku oparto na kompresjach JPEG całego pliku, dzięki czemu struktury nagłówka i inne stałe koszty ogólne stanowiły niewielką część danych.
Zauważ, że musisz szukać artefaktów na drugim zdjęciu, mimo że prawie 4/5 oryginalnych informacji zostało odrzuconych. Artefakty kompresji JPEG są zwykle najbardziej widoczne na ostrych krawędziach i powoli zmieniających się płaskich obszarach. Ponieważ grafika liniowa ma ostre krawędzie, kompresja JPEG nie jest do tego odpowiednia.
Widać, że artefakty kompresji stają się coraz gorsze przy wyższych współczynnikach kompresji. Pamiętaj jednak, że dolne zdjęcie zachowuje niesamowitą ilość informacji wizualnych z powodu usunięcia 9/10 jego nieprzetworzonych informacji.
Typami artefaktów charakterystycznych dla stratnej kompresji JPEG są „blokowanie” w powoli zmieniających się płaskich obszarach i „brud” otaczający krawędzie o wysokim kontraście. Na przykład zobacz prawy dolny obszar na powyższym obrazku. Zawiera nieostre tło, więc wartości zmieniają się powoli. Blokowanie jest dość oczywiste. Aby zobaczyć przykłady „brudu”, rozejrzyj się po lewym rogu kozy. Te dwa rodzaje artefaktów są zwykle silną wskazówką, że kompresja JPEG była objęta. Poszukaj ich również na innych zdjęciach powyżej, aby zorientować się, jak wyglądają, kiedy zaczynają się pojawiać, i jaki stopień kompresji możesz tolerować w różnych okolicznościach.
źródło
Kompresja JPG odbywa się w blokach pikseli. Na mocno skompresowanym obrazie JPG można zobaczyć krawędzie tych bloków: na oryginalnym obrazie dwa piksele mogły być bardzo blisko pod względem jasności i koloru, ale jeśli znajdują się w różnych blokach, to po kompresji i dekompresji (podczas oglądania) każdy z nich ich wartości mogą różnić się od oryginału, więc tracisz stopniowe mieszanie i zaczynasz dostrzegać tę „blokadę”.
Oto typowy przykład na niebie - JPG zapisany w jakości 0.
Jeśli zostaniesz przesłany na stronę korzystającą z kompresji JPG, możesz uzyskać lepsze wyniki, wykonując dwie czynności (musisz eksperymentować z witryną, aby zobaczyć, co działa):
zmień rozmiar obrazu, aby mieścił się w granicach maksymalnej wysokości / szerokości dozwolonej przez witrynę, aby strona nie zmieniała rozmiarów Twoich zdjęć
wykonaj własną kompresję, aby uzyskać mniejszy rozmiar pliku o dobrej jakości. W zależności od sposobu działania witryny, jeśli obraz jest już wystarczająco mały, może nie poddać się dalszej kompresji, a nawet jeśli tak, może mieć mniejszy efekt.
Jeśli chodzi o usuwanie artefaktów JPG z obrazu, artefakty JPG mogą wyglądać podobnie do normalnego szumu czujnika. Oprogramowanie redukujące hałas z powodzeniem usunie niektóre drobne artefakty JPG, ale z utratą szczegółów.
Oto przykład z jakością JPG 50%, z blokowaniem, ale także ciemniejszymi i jaśniejszymi pikselami przypominającymi szum.
Topaz Labs ma produkt o nazwie DeJpeg , który działa specjalnie na artefakty JPG. Wykonuje to dobrą robotę bez zbytniej utraty szczegółów. Wtyczka może także wyostrzać i generalnie redukować szumy. Wtyczka jest kompatybilna z Photoshop CS, Photoshop Elements i Paint Shop Pro. Nie sądzę, że to działa z Lightroom lub Aperture.
źródło
W przypadku stron internetowych, które kompresują pliki, dopóki nie osiągną określonego docelowego rozmiaru pliku, istnieje sposób na poprawę jakości obrazów w określonych okolicznościach.
JPEG działa poprzez konwersję obrazu do [serii] reprezentacji przestrzeni częstotliwości [s] (gdzie X i Y reprezentują częstotliwości poziome i pionowe, a „jasność” reprezentuje amplitudę częstotliwości). Częstotliwości poniżej pewnej amplitudy są ignorowane, co zmniejsza ilość przechowywanych danych, osiągając kompresję.
Szum ma szerokie spektrum częstotliwości, których JPEG nie może skompresować. Dlatego możesz mieć dwa obrazy, zastosować ten sam poziom kompresji i uzyskać dwa różne rozmiary plików po kompresji JPEG.
Jeśli zrobisz zdjęcie i celowo rozmyjesz nieistotne obszary tła, zmniejszysz całkowitą ilość informacji i osiągniesz znacznie wyższą kompresję tych obszarów, pozostawiając więcej kilobajtów do kodowania obszarów, w których ważne są szczegóły. Działa to szczególnie dobrze w przypadku obrazów, na których tło jest już nieostre.
źródło
Oto przykład powiększonego JPEG:
Zdjęcie użytkownika Wikipedii FelixH. Ten obraz jest objęty licencją Creative Commons Uznanie autorstwa-Na tych samych warunkach 3.0 Unported.
Na tym obrazie wyraźnie widać tak zwane „artefakty” w niebieskim obszarze. Zwróć uwagę, jak obraz wydaje się być podzielony na bloki, a granice bloków nie pasują.
Istnieje wiele rzeczy, które można zrobić, aby uniknąć lub zmniejszyć ten problem:
Najbardziej oczywiste: nie używaj JPEG. Możesz pracować ze swoimi obrazami przy użyciu formatu bezstratnej kompresji, takiego jak RAW, PNG lub bezstratny TIFF. Przejdziesz na wersję JPEG tylko w ostatnim kroku, gdy chcesz przesłać zdjęcie do Internetu, e-maila itp.
Format jpeg pozwala na konfigurację poziomu kompresji. Jeśli chcesz, możesz uzyskać mniej artefaktów, ale plik będzie większy.
Unikaj ponownego zapisywania pliku JPEG w kółko, ponieważ każde pokolenie jeszcze bardziej obniża jakość.
źródło
Artefakty to niepożądane efekty uboczne przetwarzania obrazu. W tym przypadku wynikają one ze sposobu kompresji danych przez algorytm JPEG.
Zasadniczo ludzie chcą mieć możliwość przechowywania zdjęć cyfrowo, bez zajmowania zbyt dużej przestrzeni dyskowej. W rezultacie większość zdjęć jest przechowywana w formacie JPEG. Jest to format, który kompresuje dane tworzące obraz w sposób, który stara się zachować jak najwięcej szczegółów. Poziom kompresji można zmienić podczas tworzenia pliku. Jest to jednak algorytm „stratny”, co oznacza, że odrzuca niektóre dane - nie można wrócić ze skompresowanego pliku JPEG do oryginalnych danych.
Ta utrata danych odbywa się kosztem jakości obrazu. Kompresja została zaprojektowana w taki sposób, aby minimalizować wpływ na ogólny obraz, ale może być zauważalna przy wysokich poziomach kompresji.
Artefakty JPEG najczęściej wyglądają jak blokowe sekcje koloru. Można je zobaczyć tam, gdzie następuje subtelna stopniowa zmiana koloru w dużym odcieniu kolorów - np. Na niebieskim niebie lub w mglistej scenie. Artefakty wyglądają raczej jak postrzępione kontury określonego koloru niż gładka mieszanka.
W przypadku bardziej skompresowanych scen artefakty można również zobaczyć wokół granic obiektów - np. Gałęzi drzewa na jasnym niebie. Wyglądają jak plamiste bloki otaczające obiekt.
Najlepsze podejście do ograniczenia artefaktów to:
Aby uzyskać więcej informacji, zobacz http://photo.net/learn/jpeg/
źródło