Większy Stopień Kompresji Pliku Jpg | Resolution, File Sizes, Tiff, And Jpeg Compression: Ask David Bergman 178 개의 정답

당신은 주제를 찾고 있습니까 “większy stopień kompresji pliku jpg – Resolution, File Sizes, TIFF, and JPEG Compression: Ask David Bergman“? 다음 카테고리의 웹사이트 th.taphoamini.com 에서 귀하의 모든 질문에 답변해 드립니다: th.taphoamini.com/wiki. 바로 아래에서 답을 찾을 수 있습니다. 작성자 Adorama 이(가) 작성한 기사에는 조회수 23,056회 및 좋아요 803개 개의 좋아요가 있습니다.

większy stopień kompresji pliku jpg 주제에 대한 동영상 보기

여기에서 이 주제에 대한 비디오를 시청하십시오. 주의 깊게 살펴보고 읽고 있는 내용에 대한 피드백을 제공하세요!

d여기에서 Resolution, File Sizes, TIFF, and JPEG Compression: Ask David Bergman – większy stopień kompresji pliku jpg 주제에 대한 세부정보를 참조하세요

Today’s question is from Joshua K, \”Does a smaller file size mean the image has less resolution? What’s the best compression level to use when saving a JPEG? And should I be saving TIFF files instead?\”
Go to http://www.AskDavidBergman.com to submit your own photo question, see David’s gear list, and view the episode archive.
SUBSCRIBE AND BE PART OF THE ADORAMA FAMILY:
➥ https://www.youtube.com/user/adoramaTV
__________________________________
✘ PRODUCTION EQUIPMENT USED:
Canon EOS R Mirrorless Full Frame Digital Camera Body
https://www.adorama.com/car.html?kbid=66043
Canon EF 16-35mm f/4.0L IS USM Ultra Wide Angle Zoom Lens
http://www.adorama.com/ca16354.html?kbid=66043
Canon Control Ring Mount Adapter EF-EOS R
https://www.adorama.com/carcrma.html?kbid=66043
Manfrotto MT055XPRO3 Black Aluminum Tripod with MVH502AH Pro Video Head
https://www.adorama.com/bg055xprob52.html?kbid=66043
CLAR Illumi Max 500 High Power 5600K LED Light
https://www.adorama.com/clilmax500sl.html?kbid=66043
Photek SoftLighter II 60\” White Umbrella
https://www.adorama.com/pt6000fgs.html?kbid=66043
Lastolite 6×7′ Chromakey Collapsible Disc Background, Green
https://www.adorama.com/lsc67gr.html?kbid=66043
Audio-Technica AT803 Omni-Directional Lavalier Condenser Microphone
https://www.adorama.com/atat803.html?kbid=66043
Zoom H4n Pro Audio Recorder, Black
https://www.adorama.com/zh4nproab.html?kbid=66043
Audio-Technica XLRF-XLRM Balanced cable
https://www.adorama.com/at83146.html?kbid=66043
#imagefile #jpegcompression #adorama
__________________________________
❐ LET’S GET SOCIAL ❏
➥ Facebook https://www.facebook.com/adorama/
➥ Instagram https://www.instagram.com/adorama/
➥ Twitter https://twitter.com/adorama
❐ MORE ADORAMA ❏
➥ Podcast https://www.adorama.com/g/adorama-podcast#
➥ Blog https://www.adorama.com/alc/
➥ Shop https://www.adorama.com/
__________________________________
One-on-One consultations with David:
https://www.askdavidbergman.com/1on1/
Follow David on Instagram:
https://www.instagram.com/davidbergman/
Get more information about David’s #shootfromthepit live concert photography workshops at http://www.ShootFromThePit.com
Two-Minute-Tips episode about shooting RAW
https://youtu.be/Dkw8URRGYXY
Lightroom https://bit.ly/BergLR
Capture One https://www.captureone.com/en
Photos (Mac only) https://www.apple.com/macos/photos/
Photoshop https://bit.ly/BergPS
__________________________________
THANKS SO MUCH FOR WATCHING!

większy stopień kompresji pliku jpg 주제에 대한 자세한 내용은 여기를 참조하세요.

1.Większy stopień kompresji pliku JPG a) zwiększa rozmiar …

1.Większy stopień kompresji pliku JPG a) zwiększa rozmiar pliki b) powoduje pogorszenie jakości pliku c) zmnie… Natychmiastowa odpowiedź na Twoje pytanie.

+ 여기에 더 보기

Source: brainly.pl

Date Published: 5/10/2021

View: 4412

1.Większy stopień kompresji pliku JPG a … – KUDO.TIPS

1.Większy stopień kompresji pliku JPG a) zwiększa rozmiar pliki b) powoduje pogorszenie jakości pliku c) zmniejsza rozmiar pliku w pikselacj d) żadne z …

+ 더 읽기

Source: kudo.tips

Date Published: 6/8/2022

View: 9558

3 czynniki wpływające na rozmiar pliku JPG

ustawionego stopnia kompresji,; szczegółowości zdjęcia. Poza tym rozmiar pliku JPG zależy również od zastosowanych w oprogramowaniu aparatu …

+ 여기에 더 보기

Source: fotografiadlaciekawych.pl

Date Published: 11/30/2021

View: 9596

Jaki format wybrać dla najmniejszej wagi i najlepszej jakości?

Rozszerzenie JPG, jest jednym z najpopularniejszych we współczesnej … Moim zdaniem zapisywanie plików powyżej 90% nie ma większego sensu …

+ 여기에 자세히 보기

Source: grafmag.pl

Date Published: 10/18/2022

View: 5806

Kodowanie — kompresja – Przewodnik po informatyce

Kompresja danych zmniejsza miejsce potrzebne do zapisu plików. … że skompresowany stratnie plik będzie miał większy rozmiar niż nieskompresowany!

+ 자세한 내용은 여기를 클릭하십시오

Source: bezkomputera.wmi.amu.edu.pl

Date Published: 2/23/2021

View: 8728

Obraz JPG Kompresja JPG HTML – How2HTML

JPG jest chyba najbardziej popularnym formatem pliku graficznego. … Im większy stopień kompresji tym mniejszy rozmiar pliku, ale i niższa jakość.

+ 여기에 표시

Source: how2html.pl

Date Published: 9/25/2021

View: 1465

Kompresja plików graficznych – jak zastosować na … – AdVIST

Kompresja plików graficznych, to zmiana sposobu zapisu pliku tak, … JPS (JPG Stereo) – to stereoskopowy obraz JPEG, używa się go do …

+ 여기에 표시

Source: advist.pl

Date Published: 7/18/2022

View: 7838

JPEG – Wikipedia, wolna encyklopedia

Joint Photographic Experts Group) – algorytm stratnej kompresji grafiki rastrowej, wykorzystany w formacie plików graficznych o tej samej nazwie.

+ 여기에 더 보기

Source: pl.wikipedia.org

Date Published: 4/26/2021

View: 3991

주제와 관련된 이미지 większy stopień kompresji pliku jpg

주제와 관련된 더 많은 사진을 참조하십시오 Resolution, File Sizes, TIFF, and JPEG Compression: Ask David Bergman. 댓글에서 더 많은 관련 이미지를 보거나 필요한 경우 더 많은 관련 기사를 볼 수 있습니다.

Resolution, File Sizes, TIFF, and JPEG Compression: Ask David Bergman
Resolution, File Sizes, TIFF, and JPEG Compression: Ask David Bergman

주제에 대한 기사 평가 większy stopień kompresji pliku jpg

  • Author: Adorama
  • Views: 조회수 23,056회
  • Likes: 좋아요 803개
  • Date Published: 2020. 7. 27.
  • Video Url link: https://www.youtube.com/watch?v=nQx7N8MmFIs

1.Większy stopień kompresji pliku JPG a) zwiększa rozmiar pliki b) powoduje pogorszenie jakości plik…. Question from @Anula2463

Anula2463 @Anula2463 January 2019 2 233 Report

1.Większy stopień kompresji pliku JPG

a) zwiększa rozmiar pliki

b) powoduje pogorszenie jakości pliku

c) zmniejsza rozmiar pliku w pikselacj

d) żadne z powyższych

2.Który z plików nie jest używany do zapisu filmów?

a) MOV

b) MPG

c) SVG

d) VOB

3.Cyan, magenta, yellow, black, to pojęcia kojarzące się z:

a) modelami barw używanymi w Internecie

b) modelami barw używanymi do wydruku

c) modelami barw używanymi w telefonach komórkowych

d) modelami barw używanymi w procesie skanowania

4.Skaner przetwarza obraz:

a) cyfrowy na rastrowy

b) analogowy na cyfrowy

c) wektorowy na rastrowy

d) analogowy na wektorowy

3 czynniki wpływające na rozmiar pliku JPG

Najbardziej rozpowszechnionym formatem zapisu zdjęć jest JPG. Zobacz od czego zależy jego rozmiar i dlaczego przy tych samych ustawieniach w aparacie, na karcie pamięci zapisywane są pliki o różnym rozmiarze.

Dostałem pytanie od Bartka: „Mój aparat na tych samych ustawieniach wielkości zdjęcia i jego jakości robi raz fotki które mają 10-11 Mb a raz 7,5 Mb. Od czego to zależy? Od ilości szczegółów na fotce?”

Czynniki wpływające na rozmiar pliku JPG

Zacznijmy od tego, że tak duże różnice w rozmiarze pliku dotyczą formatu JPG. Jest to stratny format zapisu, a to oznacza, że dane w nim zawarte opisują zdjęcie ze zmniejszoną ilością szczegółów. Ten ubytek danych jest tak pomyślany, by dla obserwującego był jak najmniej zauważalny.

Nasz wzrok jest bardziej wrażliwy na nieznaczne różnice w jasności niż w barwie. Dlatego jak podają źródła redukcji może ulec informacja o zmianach barwy poszczególnych pikseli. Druga sprawa, to sposób zapisu informacji o obrazie. W systemach bezstratnych zapisywana jest informacja o wyglądzie każdego piksela. W systemie stratnym zapisywana jest informacja o tym jak piksel zmienia się względem poprzedniego. Ponadto piksele są grupowane i zapisywana jest zmiana dla całych grup. Dlatego na stopień kompresji ma wpływ również szczegółowość i różnorodność elementów zawartych na zdjęciu.

Im bardziej prosta zawartość pod względem jednorodności barwy tym mniej informacji może posłużyć do jej opisania. Im bardziej różnorodna zawartość tym więcej informacji jest potrzebnych do jej opisania. To tak w uproszczeniu, bo nigdy szczegółowo nie wnikałem w działanie poszczególnych algorytmów odpowiedzialnych za zmniejszanie rozmiaru pliku JPG.

Tak więc wielkość pliku zależy od trzech czynników:

rozmiaru zdjęcia,

ustawionego stopnia kompresji,

szczegółowości zdjęcia.

Poza tym rozmiar pliku JPG zależy również od zastosowanych w oprogramowaniu aparatu algorytmów do upraszczania obrazu. Są różne wersje i w różnych aparatach, czy programach graficznych może to się odbywać trochę inaczej.

Przykłady plików JPG o różnym rozmiarze

Dla pokazania różnic posłużę się to dwoma podobnymi ujęciami o odmiennym stopniu szczegółowości. Pliki źródłowe zostały na potrzeby strony internetowej zmniejszone do rozmiaru 850 na 560 pikseli. Klikając na miniaturę zdjęcia uzyskasz jego powiększenie w tym właśnie rozmiarze.

Minimalna kompresja – poziom jakości 100 – rozmiar pliku JPG: 428 KB

Minimalna kompresja – poziom jakości 100 – rozmiar pliku JPG: 139 KB – czyli ponad 3 razy mniejszy niż poprzedni kadr. Różnica wynika tylko i wyłącznie z zawartości zdjęcia.

Plik JPG z kompresją – poziom jakości 80 – rozmiar 186 KB

Plik JPG z kompresją – poziom jakości 80 – rozmiar 60 KB

Waga powyższych dwóch plików jest co najmniej o połą mniejsza niż podanych na początku. Niemniej porównując je ze zdjęciami z minimalną kompresją nie widać różnicy lub jest ona pomijalnie mała. Potwierdza to fakt, że możliwe jest zmniejszenie rozmiaru pliku JPG przy zachowaniu wystarczająco dobrej jakości obrazu.

Oczywiście wraz ze zwiększaniem kompresji dojdziemy do takiego stanu, że jakość zdjęcia bardzo spadnie. Dla porównania zobacz poniżej kadry z maksymalną kompresją.

Plik JPG z maksymalną kompresją – poziom jakości 0 – rozmiar 30 KB

Plik JPG z maksymalną kompresją – poziom jakości 0 – rozmiar 23 KB

Tu można już zauważyć podział obrazu na segmenty 8×8 pikseli. Poniżej powiększony fragment by lepiej to pokazać.

Powiększony fragment zdjęcia JPG o maksymalnej kompresji. Widać wyraźne pogorszenie jakości zdjęcia.

Tak więc korzystając z zapisu JPG możesz się spotkać z dużą różnicą w rozmiarze poszczególnych plików. W przypadku zapisu do formatu RAW rozbieżności w wadze plików są już znacznie mniejsze.

Ps. Jeśli masz jakieś pytania i uwagi związane z tym tematem, to pisz proszę w komentarzu poniżej.

Jaki format wybrać dla najmniejszej wagi i najlepszej jakości?

Podczas projektowania na potrzeby sieci bardzo często stajemy przed pytaniem – w jakim formacie zapisać plik? Odpowiedź nie jest prosta, ponieważ wybór zależeć może od wielu czynników. Najważniejszym z nich jest jednak to, czy zależy nam na niskiej wadze czy wysokiej jakości zapisywanej grafiki. Odpowiedzialnemu twórcy na sercu powinny leżeć obie te zmienne, bo po co nam piękny plik, którego nie możemy otworzyć, bo słaby Internet blokuje jego wczytywanie? I z drugiej strony – po co w ogóle patrzeć, kiedy plik jest słabej jakości? Do równania dochodzą też wymagania sprzętowe i finanse – większy transfer, to większe koszty.

Dzisiejszy tekst skupiać się więc będzie na 4 formatach najczęściej występujących w sieci – JPEG, GIF, PNG (w wersji 8 i 24 bitowej) oraz w roli ciekawostki – BMP. Wszystkie je formaty testować będę na pliku o wielkości 800 × 600 px. Poznajcie Ryszarda z Adobe Stock.

BMP

Nazwa formatu BMP pochodzi od angielskiego słowa BitMaP, które oznacza po prostu mapę bitową. Format ten jest już dość przestarzały i na potrzeby internetu już praktycznie niewykorzystywany (ze względu na dużą wagę plików będącej wynikiem braku kompresji plików tego formatu). Pliki BMP wykorzystywane są jednak szeroko jako tekstury i inne elementy wykorzystywane podczas tworzenia aplikacji (ze względu na łatwiejsze możliwości ich numerycznego przetwarzania).

Ryszard zapisany w BMP (bezstratnie) zajmuje 1,37 MB.

JPEG – Joint Photographic Experts Group

Rozszerzenie JPG, jest jednym z najpopularniejszych we współczesnej grafice komputerowej. Stało się tak ze względu na możliwości jakie daje – stosunkowo dobrą jakość plików przy zachowaniu małej wagi. JPEG, to klasyczny format stratny, jakość plików można ustalić w skali – przy zapisie dla Internetu i urządzeń w Photoshopie od 1 do 100%, przy klasycznym zapisie od 1 do 12.

Jeśli chcecie w pełni wykorzystać możliwości jakie daje nam ten format, warto poznać kilka opcji, dzięki którym możemy manipulować jakością, a więc także wagą zapisywanych plików.

W przypadku plików JPEG największy wpływ na jego wagę ma jakość wyrażona w procentach. Możemy ustalić ją w zakresie od 1 do 100. W praktyce akceptowalny wygląd dla zdjęć osiągnąć możemy od około 60 procent, dość dobry od 70, a całkiem fajny od 80. Moim zdaniem zapisywanie plików powyżej 90% nie ma większego sensu – jakość niewiele się zmienia, a waga spada znacząco – dla mojego pliku z 298 (dla 100%) do 197 kilo (dla 90%). Oczywiście jeśli przyłożycie do siebie dwa te pliki i porównacie je dokładnie – zobaczycie różnicę, jednak zysk na wadze jest znaczący, a niewielu użytkowników sieci sprawdzać będzie je tak dokładnie.

Nieco inaczej sprawa ma się z grafikami, które zawierają teksty nałożone na zdjęcia albo gradienty. W takim wypadku spadek jakości widoczny jest znacznie szybciej – czasem już nawet przy 70%, szczególnie jeśli mamy sporo tekstu o małej wielkości fontu lub pliki z ilustracjami w stylistyce wektorowej o ostrych krawędziach elementów. Warto zwrócić uwagę także na kolory – im bardziej jaskrawe, tym kompresja mniej wyrozumiała. Jest to szczególnie widoczne w przypadku czerwieni, różów czy zieleni.

Dla zdesperowanych: co jeszcze może zmniejszyć wagę pliku JPEG? Jeśli projektujecie na potrzeby reklamowe i musicie uważać na każdy kilobajt – warto wykorzystać jeszcze opcję usunięcia profilu kolorów i metadanych. Pliki zapisane progresywnie (ładujące się z „kaszki” do ostrego obrazu) zazwyczaj ważą więcej, pozwalają jednak na lepszy wygląd strony już w początkowym stadium jej wczytywania. Jedną z ciekawych możliwości, która sprawdzić może się podczas zapisywania zdjęć jest też „rozmycie”. Co prawda jak sama nazwa wskazuje – nasz obraz jest rozmywany, czasem to jednak lepsze rozwiązanie niż pełna kwadratowych pikseli grafika.

GIF – Graphics Interchange Format

Format GIF, to bardzo ciekawy twór, który poniekąd cieszy się złą sławą z winy twórców oprogramowania Photoshop (i innych jemu podobnych), które nie wspierają wszystkich jego możliwości. Jak wyczytać możemy z Wikipedii – GIF jest formatem bezstratnym, który obsłużyć może 256 kolorów nie na obraz, a na blok obrazu (które składać się mogą na jeden plik). Zła sława to jednak jedno, a co z praktyką?

Przede wszystkim GIF, to jedyny popularny format graficzny obsługiwany przez przeglądarki internetowe w którym zapisać możemy animację w prosty sposób (pomijam tutaj animowane pliki SVG). W tym miejscu warto na chwilę znów powrócić do wspomnianego wcześniej mitu – jeśli spróbujecie zrobić to z poziomu Photoshopa czy nawet After Effects – mocno się na tym przejedziecie, bo program po prostu przytnie większość kolorów tworząc grafikę praktycznie niemożliwą do wykorzystywania. Co więc zrobić, aby tego uniknąć? Zapisać plik w formacie wideo i przekonwertować go do GIFa korzystając z dostępnych w sieci aplikacji internetowych. Na co uważać i jak to zrobić, to materiał na kolejny tekst, jeśli chcielibyście o tym poczytać – dajcie znać.

GIF zasadniczo nie nadaje się do zapisu grafik, które zawierają większą liczbę kolorów, a i w przypadku tych z mniejszą nie radzi sobie najlepiej – o tym za moment przy okazji alternatywy – PNG-8. Jeśli jednak z jakichś powodów korzystacie z formatu GIF, pamiętajcie o unikaniu półprzezroczystości. Podobnie jak PNG-8, GIF jej nie obsługuje i konieczne jest dodanie „otoczki” czyli tła wszędzie tam, gdzie występuje.

Zapisując plik w tym formacie skorzystać możemy z wielu różnych ustawień sposobu przetwarzania obrazu (te same oferuje nam też PNG-8). Są to:

Dobór tablicy kolorów (percepcyjna, selektywna, adaptacyjna, restrykcyjna, czarno-biały, skala szarości, MacOS, Windows)

Dorób roztrząsania kolorów (bez roztrząsania – tworzy płaszczyzny kolorów, dyfuzja, wzorek, szum)

Podczas zapisywania plików, w zależności od tego co zawierają, warto przetestować różne kombinacje tych opcji i dobrać taką, która da nam najbardziej optymalne efekty. Gdy na naszej grafice więcej jest płaszczyzn kolorów – lepiej sprawdzi się “bez roztrząsania”, jeśli jednak znajduje się tam zdjęcie – często naturalniej wygląda “wzorek” czy “dyfuzja”, które na gładkich kolorach potrafią nałożyć niepotrzebne kropki.

Ciekawą i potencjalnie przydatną opcją jest zarządzanie wygenerowaną paletą barw. Dla przykładu załóżmy, że potrzebujemy zapisać bardzo lekki plik, który zawierać będzie tekst na kółku w odpowiednim kolorze. Najprostszym rozwiązaniem w takiej sytuacji byłoby zapisanie pliku z wysoką kompresją (dla zmniejszenia wagi). O ile uda nam się zachować walory estetyczne zdjęcia – to nie najgorsza opcja, możemy jednak przy kompresji stracić tą barwę na której nam zależy (bo narzuca ją identyfikacja). Przydałaby się opcja jej blokowania i GIF nam na to pozwala. Wystarczy za pomocą próbnika wskazać odpowiedni kolor, zablokować go, a następnie zmniejszyć ilość barw w taki sposób, aby zapewnić sobie odpowiednią wagę.

PNG – Portable Network Graphics

Kolejnym ciekawym rozszerzeniem, bez którego nie można wyobrazić sobie pracy w sieci jest PNG. Powstał on w 1995 roku jako następca popularnego wówczas formatu GIF (do sposobu kompresji którego roszczenia patentowe wystosowały firmy Unisys i CompuServe [Wikipedia]).

Czym różni się on od formatu JPG? Najważniejszą różnicą jest obsługiwanie przez niego przezroczystości i półprzezroczystości, co czyni go niezastąpionym w bardzo wielu rozwiązaniach internetowych – wszędzie tam, gdzie chcemy nałożyć zdjęcie na inne tło. Jest to klasyczny format przeznaczony do sieci (stąd Network w nazwie), nie obsługuje więc przestrzeni barw CMYK.

W Photoshopie mamy możliwość zapisania plików PNG w dwóch, znacznie różniących się wersjach.

PNG-24

24 bitowy plik PNG, to format, który „pomieścić” w sobie może aż 16 milionów kolorów, przez co pozwala zapisać nam pliki bezstratnie, kosztem oczywiście dużej ich wagi. Można powiedzieć, że PNG-24 stanowić może alternatywę dla formatu JPG dla rozwiązań internetowych. Świetnie nada się wszędzie tam, gdzie chcemy pokazać plik w idealnej jakości – kiedy wysyłamy projekt klientowi czy zamieszczamy teksty w sieci.

Format ten bardzo dobrze kompresuje teksty i wszystkie grafiki niezawierające dużej liczby kolorów. Warto wybrać go przed JPEGiem zawsze wtedy, gdy zapisujemy logo, teksty, ilustracje wektorowe czy inne projekty nie zawierające gradientów, cieni i zdjęć. Podczas zapisywania plików do tego formatu nie mamy zbyt wielu opcji wyboru. Z rzeczy istotnych możemy jedynie włączyć i wyłączyć przezroczystość (kanał alpha), co wpływa na jego wagę tylko wtedy, gdy przezroczystość faktycznie występuje na grafice. Zdjęcia zapisane jako PNG-24 są bardzo ciężkie – mój przykładowy ma ponad 600 kib.

PNG-24 świetnie sprawdza się na Facebooku, zapisany w wadze poniżej 1 MB zazwyczaj nie jest kompresowany (w przeciwieństwie do znacznie mniejszych JPEGów z którymi skrypty tego serwisu nie obchodzą się tak łagodnie).

PNG-8

Jeśli założymy, że 24 bitowy PNG jest alternatywą JPEGa, to ten 8 bitowy zastąpi nam GIF. Podobnie jak jego zamiennik, format ten pozwala nam na dużą kontrolę jakości zapisywanego pliku za pomocą dokładnie tych samych opcji (w selektywnego dobierania kolorów i ich sposoby mieszania się). Dlaczego więc zdecydować się na PNG? Jest to format nowszy, jego przewagą jest nieco mniejsza waga dla tego samego pliku (105 kib dla PNG-8 i 114 kib dla GIFa – przy tej samej ilości kolorów).

Kiedy JPG, a kiedy PNG?

Format JPEG świetnie nadaje się do zapisywania zdjęć i grafik zawierających niewiele tekstów. Wszędzie tam, gdzie najważniejsza jest dla nas grafika, a jakość (lub nawet obecność) tekstów jest drugorzędna

Format PNG-8 tam, gdzie do czynienia mamy z grafikami wektorowymi, pełnymi płaszczyznami kolorów i tekstami na prostych tłach. PNG-24 zawsze wtedy, gdy waga nie gra roli i zależy nam na naprawdę dobrej jakości.

Aplikacje do kompresji online

Dodatkową opcją, która może oszczędzić nam nieco wagi są oczywiście aplikacje online. Korzystanie z nich pozwala na efektywną kompresję plików, jednak z mojego dotychczasowego doświadczenia korzystanie z nich jest czasochłonne (szczególnie wgrywanie plików), osobiście więc rzadko ich używam. Same aplikacje to szeroki temat na kolejny tekst, z pewnością się u nas pojawi.

Przewodnik po informatyce

7.1. Z lotu ptaka Kompresja danych zmniejsza miejsce potrzebne do zapisu plików. Jeżeli możesz zmniejszyć o połowę rozmiar pliku, to oznacza, że możesz przechowywać dwa razy więcej plików przy tych samych kosztach, lub możesz ściągać pliki dwa razy szybciej (płacąc dwa razy mniej za transfer). Pomimo tego, iż dyski twarde zwiększają objętość oraz wysoka przepustowość łączy staje się powszechna, to nadal dobrze jest osiągnąć przynajmniej to samo, pracując na mniejszym, skompresowanym pliku. Dla dużych magazynów danych, takich jakie posiadają Google lub Facebook, zmniejszenie o połowę przestrzeni potrzebnej do zapisu oznacza olbrzymie oszczędności w przestrzeni dyskowej, mocy obliczeniowej, a w konsekwencji oszczędności w zużyciu energii, chłodzeniu oraz niepożądanym wpływie na środowisko. Częste formy kompresji będące aktualnie w użyciu to JPEG (dla zdjęć), MP3 (dla plików audio), MPEG (dla wideo w tym DVD), oraz ZIP (dla dowolnych typów danych). Przykładowo, metoda kompresji JPEG redukuje rozmiar zdjęcia do jednej dziesiątej lub mniejszej części początkowego rozmiaru, co oznacza, iż aparat może przechowywać 10 razy więcej zdjęć, a obrazki w sieci mogą być ściągane 10 razy szybciej. Na czym polega haczyk? Okazuje się, że może być problem z jakością danych — np. mocno skompresowany obraz w JPEG może nie być tak ostry jak nieskompresowany oryginał. Poza tym, kompresowanie i dekompresowanie wymaga mocy obliczeniowej procesora. W większości przypadków ten narzut się jednak opłaca. Przesuń by porównać oba obrazki 55 Kb JPEG 139 Kb JPEG Wypróbuj narzędzie interaktywne na http://bezkomputera.wmi.amu.edu.pl/ppi/pl/interactives/compression-comparer/index.html W tym rozdziale przyjrzymy się temu, jak można uzyskać kompresję, jakie są korzyści i jakie koszty związane z używaniem skompresowanych danych. Będzie to przydatne podczas podejmowania decyzji, czy opłaca się kompresować dane. Zaczniemy od prostego przykładu – kodowania długości serii (RLE od ang. Run Length Encoding) – które daje pewien wgląd w zalety i wady kompresji.

7.2. Kodowanie długości serii Obejrzyj wideo na https://www.youtube.com/embed/uaV2RuAJTjQ?rel=0 Kodowanie długości serii (RLE od ang. Run Length Encoding) nie jest techniką często używaną współcześnie, ale nadaje się świetnie jako wprowadzenie do problemów związanych z kompresją. Wyobraźmy sobie, że mamy do czynienia z zamieszczonym poniżej prostym obrazkiem. Komputer może w prosty sposób zapisać taki obrazek stosując format, w którym zero oznacza piksel w kolorze białym, a jedynka — piksel w kolorze czarnym (jest to „mapa bitowa”, gdyż przypisaliśmy pikselom wartości bitów). Używając tej metody powyższy obrazek przedstawimy w następujący sposób: 011000010000110 100000111000001 000001111100000 000011111110000 000111111111000 001111101111100 011111000111110 111110000011111 011111000111110 001111101111100 000111111111000 000011111110000 000001111100000 100000111000001 011000010000110 Ciekawostka. Format pliku PBM ▼ Istnieje format obrazu, który wykorzystuje prostą reprezentację, w której jeden symbol odpowiada jednemu bitowi. Ten format nazywa się przenośnym formatem mapy bitowej PBM (ang. portable bitmap format). Pliki PBM są zapisywane z rozszerzeniem .pbm, i zawierają prosty nagłówek, za którym zapisane są dane obrazu. Dane w tym pliku można obejrzeć otwierając go w edytorze tekstowym, podobnie jak plik .txt, a sam obrazek możemy zobaczyć otwierając w programie graficznym, który wspiera format PBM (format ten nie jest szeroko wspierany, ale istnieje kilka programów go obsługujących) Plik pbm dla obrazu zawierającego wcześniej przywołany kształt diamentu wygląda następująco: P1 15 15 011000010000110 100000111000001 000001111100000 000011111110000 000111111111000 001111101111100 011111000111110 111110000011111 011111000111110 001111101111100 000111111111000 000011111110000 000001111100000 100000111000001 011000010000110 Pierwsze dwa wiersze stanowią nagłówek. Pierwszy wiersz określa format danych w pliku (P1 oznacza, że plik zawiera znaki zer i jedynek w formacie ASCII). Drugi wiersz wyznacza szerokość i wysokość obrazu w pikselach. Dzięki temu komputer zna wymiary obrazu nawet wtedy, gdy brakuje znaków nowego wiersza. Resztę danych stanowi po prostu obraz (patrz powyżej). Można skopiować i wkleić tę reprezentację (wraz z nagłówkiem) do pliku tekstowego, a następnie zapisać z rozszerzeniem .pbm. Jeśli posiadasz program, który obsługuje pliki PBM, może zobaczyć obraz. Mógłbyś również napisać program, który będzie pozwalał tworzyć tego typu pliki oraz wyświetlać je jako obrazy. Z tego względu, iż cyfry są reprezentowane przez znaki ASCII, nie jest to najbardziej efektywny sposób zapisu. Jednakże możemy przeczytać zawartość pliku. Istnieją inne warianty tego formatu, które zapisują kolory w pojedynczych bitach zamiast w znakach ASCII, oraz takie, które umożliwiają zapis odcieni szarości lub kolorów. Więcej informacji na temat tego formatu dostępnych jest w angielskiej Wikipedii. Kluczowym pytaniem w przypadku kompresji jest: Czy możemy zapisać obraz przy pomocy mniejszej ilości bitów i nadal być w stanie go odtworzyć? Okazuje się, że możemy. Jest wiele sposobów na osiągnięcie tego celu, ale w tym podrozdziale skupimy się na metodzie zwanej kodowaniem długości serii. Wyobraź sobie, że masz za zadanie przeczytać powyższe bity komuś, kto z kolei ma je zapisać. Po pewnej chwili będziesz mówił „pięć zer” zamiast „zero zero zero zero zero”. To usprawnienie jest podstawą kodowania długości serii (RLE), które pozwala zaoszczędzić przestrzeń potrzebną do przechowywania cyfrowych obrazów. W kodowaniu długości serii zastępujemy każdy wiersz liczbą kolejnych pikseli tego samego koloru, zawsze zaczynając od liczby pikseli białych. W omówiony wyżej przykładzie pierwszy wiersz zawiera jeden biały, dwa czarne, cztery białe, jedne czarny, cztery białe, dwa czarne i jeden biały piksel. 011000010000110 Możemy to przedstawić w następujący sposób. 1, 2, 4, 1, 4, 2, 1 W przypadku drugiego wiersza, który zaczyna się pikselem czarnym, mówimy, że jest zero białych na początku. 100000111000001 0, 1, 5, 3, 5, 1 Może to wydawać się dziwne, że musimy podać zawsze liczbę białych na początku, która w tym wypadku wynosi zero. Powodem tego jest fakt, iż komputer potrzebuje ścisłych reguł odnośnie tego, od którego koloru pikseli zaczynać. Trzeci wiersz zawiera pięć białych, pięć czarnych, oraz pięć białych pikseli. 000001111100000 To jest kodowane jako: 5, 5, 5 Zatem mamy następującą reprezentacją dla pierwszych trzech wierszy pikseli obrazu. 1, 2, 4, 1, 4, 2, 1 0, 1, 5, 3, 5, 1 5, 5, 5 Łatwo można się domyślić jak będą wyglądać kolejne wiersze w tym systemie reprezentacji. Spojler. Reprezentacja pozostałych wierszy ▼ Pozostałe wiersze to: 4, 7, 4 3, 9, 3 2, 5, 1, 5, 2 1, 5, 3, 5, 1 0, 5, 5, 5 1, 5, 3, 5, 1 2, 5, 1, 5, 2 3, 9, 3 4, 7, 4 5, 5, 5 0, 1, 5, 3, 5, 1 1, 2, 4, 1, 4, 2, 1 Ciekawostka. Kodowanie długości serii w programie „Informatyka bez komputera” ▼ W poniższym materiale wideo z programu „Informatyka bez komputera” zakodowany przy pomocy długości serii obraz jest odkodowany i zaprezentowany przez bardzo duże piksele (drukarką jest farba w sprayu!). Obejrzyj wideo na https://www.youtube.com/watch?v=VsjpPs146d8 7.2.1. Odwracanie kompresji RLE Aby upewnić się, że możemy odwrócić proces kompresji, spróbuj znaleźć oryginalną reprezentację (zera i jedynki) skompresowanego obrazu. 4, 11, 3 4, 9, 2, 1, 2 4, 9, 2, 1, 2 4, 11, 3 4, 9, 5 4, 9, 5 5, 7, 6 0, 17, 1 1, 15, 2 Co zawiera obraz? Z jak wielu pikseli się składa? Ile liczb użyto do reprezentacji tego obrazu? Spojler. Odpowiedź dla powyższego obrazu ▼ Rozwiązaniem jest filiżanka i talerzyk. Obrazek pochodzi z ćwiczenia interaktywnego Reprezentacja obrazów. Strona jest po angielsku, ale jest polska instrukcja do ćwiczenia. Poniższa aplikacja umożliwia dalsze eksperymentowanie z kodowaniem długości serii. Kodowanie RLE. Kliknij, by załadować. Wypróbuj narzędzie interaktywne na http://bezkomputera.wmi.amu.edu.pl/ppi/pl/interactives/run-length-encoding/index.html 7.2.2. Analiza kodowania długości serii Jak wiele przestrzeni zaoszczędziliśmy wykorzystując alternatywną reprezentację, i jak możemy to zmierzyć? W tym celu możemy policzyć ile razy musieliśmy nacisnąć przycisk na klawiaturze zapisując każdą z reprezentacji, zakładając, że każdy bit to jeden znak oraz, że każda cyfra i przecinek kodu RLE wymagają również znaku przy zapisie (to zgrubne oszacowanie na początek wystarczy). Aby opisać obraz z naszego przykładu w postaci nieskompresowanej potrzebnych jest 225 cyfr (zer i jedynek). Policz ile potrzeba przecinków i cyfr (pomiń spacje i znaki nowego wiersza) w nowej reprezentacji. Innymi słowy, policz znaki potrzebne do zapisania skompresowanej reprezentacji (abyś miał pewność, że wiesz o co chodzi, podajemy ci liczbę znaków w każdym z trzech pierwszych wierszy: 29). Powinieneś otrzymać wynik 119 znaków (sprawdź, czy wszystko się zgadza). Oznacza to, że skompresowana postać wymaga jedynie 53% znaków reprezentacji oryginalnej (wynika to z proporcji 119/225). To znacząca redukcja w wielkości przestrzeni potrzebnej do zapisania obrazu — to prawie połowa rozmiaru. Nowa reprezentacja jest skompresowaną postacią poprzedniej. Dla ciekawych. Kodowanie długości serii w praktyce ▼ W praktyce metoda ta (z pewnymi modyfikacjami) może być użyta do osiągnięcia kompresji na poziomie 15% oryginalnego rozmiaru. W rzeczywistych systemach tylko jeden bit jest wykorzystywany do przechowywania wartości czarno/białe (w przeciwieństwie do jednego znaku z naszych obliczeń). Jednakże długości kodowanych serii są również przechowywane bardziej efektywnie, również przy pomocy bitów, których stosunkowo krótkie ciągi mogą reprezentować liczby. Wykorzystywane ciągi bitów są tworzone przy pomocy techniki zwanej kodowaniem Huffmana, lecz zagadnienie to wykracza poza zakres tego materiału. 7.2.3. Zastosowania RLE Współcześnie głównym zastosowaniem dla skanowanych czarno-białych obrazów są faksy, które wykorzystują RLE. Jednym z powodów, dla których działa to tak skutecznie dla skanowanych stron dokumentów jest fakt, iż w tym przypadku liczba kolejnych białych pikseli jest olbrzymia. Typowa strona przesyłana faksem ma 200 pikseli szerokości, więc zastąpienie tych 200 bitów liczbą jest znaczącą oszczędnością. Z kolei liczbę tę możemy wyrazić przy pomocy zaledwie kilku bitów. Choć może się zdarzyć, że liczbą zastępujemy krótką serię pikseli, to i tak w ostatecznym rozrachunku oszczędności są znaczące. W praktyce faksy, które nie korzystają z kompresji, przesyłają dokumenty 7 razy wolniej. Projekt. Zastosuj kodowanie długości serii ▼ Teraz, gdy już znasz kodowanie długości serii, możesz sam stworzyć obraz czarno-biały, a następnie go skompresować, oraz zdekompresować obraz otrzymany od kogoś innego. Zacznij od narysowania obrazu przy pomocy zer i jedynek. (Upewnij się, że jest prostokątny, tzn. wszystkie wiersze mają tę samą długość.) Możesz go narysować na papierze lub przygotować na komputerze (korzystaj z czcionki o stałej szerokości, w przeciwnym wypadku może to okazać się frustrujące i kłopotliwe!) Ułatwieniem może być skorzystanie z kartki w kratkę (takiej jak w zeszycie do matematyki), zakreślenie kratek mających być czarnymi pikselami i pozostawienie pustych kratek jako pikseli białych. Po zakończeniu tej czynności możesz spisać zera i jedynki reprezentujące obraz. Stwórz skompresowaną reprezentację twojego obrazu stosując metodę kodowania długości serii, tzn. długości serii oddzielone przecinkami jak zostało przestawione powyżej. Przekaż kopię skompresowanej reprezentacji (długości serii, nie oryginalną reprezentację zerojedynkową) koledze oraz wytłumacz mu na czym polegała kompresja. Poproś go o narysowanie obrazu na kartce w kratkę. Następnie porównaj otrzymany obrazek z twoim oryginałem. Wyobraź sobie, że ty i twój kolega, oboje jesteście komputerami. Wykonując powyższe zadanie pokazałeś, że obrazy mogą zostać skompresowane na jednym komputerze i zdekompresowane na innym, tak długo jak istnieje uzgodniony standard (np. to, że każdy wiersz zaczyna się od liczby białych pikseli). W przypadku algorytmów kompresji bardzo istotne jest trzymanie się standardów, tak aby po skompresowaniu na jednym komputerze możliwa była dekompresja na innym. Przykładowo, utwory muzyczne zapisywane są w formacie MP3, aby po pobraniu z sieci mogły być odtworzone przez szeroką gamę urządzeń. 7.2.4. Stratna vs bezstratna kompresja O kompresji bezstratnej mówimy, jeżeli skompresowana reprezentacja może zostać przekonwertowana podczas dekompresji do dokładnie takiej samej postaci jak reprezentacja oryginalna, innymi słowy żadna informacja nie została stracona podczas kompresji i proces ten może być w pełni odwrócony. Nie wszystkie algorytmy kompresji są jednak bezstratne. Dla niektórych typów plików takich jak zdjęcia, utwory muzyczne i materiały wideo, możemy poświęcić nieco jakości (ilości informacji o zdjęciu), jeśli pozwoli to zmniejszyć znacząco rozmiar pliku. Zmniejszenie rozmiaru plików może mieć olbrzymie znaczenie przy pobieraniu plików tak dużych jak pliki wideo, które mogą być zbyt duże, aby dało się je ściągnąć! Te metody kompresji nazywa się stratnymi. Jeśli tracimy informacje w procesie kompresji, to niemożliwe jest odtworzenie dokładnie takiej samej postaci, jaką miał plik przed kompresją. Jednocześnie osoba, która ogląda plik wideo lub słucha muzyki może zaakceptować nieco pogorszoną jakość jeśli pliki są względnie małe. W dalszej części tego rozdziału zbadamy jaki wpływ na obraz i dźwięk może mieć stratna kompresja. Co ciekawe, może się wyjątkowo zdarzyć, że skompresowany stratnie plik będzie miał większy rozmiar niż nieskompresowany! Co więcej, naukowcy zajmujący się kompresją udowodnili, iż niemożliwe jest stworzenie metody kompresji bezstratnej, która zmniejsza każdy plik. W zdecydowanej większości przypadków nie jest to problemem, gdyż stratne metody kompresji dostosowane są do pewnych rodzajów danych, posiadających pewną charakterystykę, dla których nieskuteczna kompresja jest wysoce nieprawdopodobna. Wyzwanie. Najlepsze i najgorsze przypadki dla kodowania długości serii ▼ Jaki obraz będzie miał największy stopień kompresji przy kodowaniu długości serii (chodzi o obraz, którego rozmiar po skompresowaniu będzie najmniejszy w stosunku do rozmiaru początkowego)? Jest to przypadek, w którym wydajność algorytmu jest najwyższa. Kiedy kompresja jest najgorsza? Czy potrafisz znaleźć obraz, który ma większą reprezentację skompresowaną? (Pamiętaj o przecinkach, którymi oddzielamy długości serii!) Jest to przypadek, w którym wydajność algorytmu jest najgorsza. Spojler. Rozwiązanie zadania ▼ Najlepszy przypadek jest wtedy, gdy obraz jest całkowicie biały (wystarczy jedna liczba na wiersz). Najgorszy przypadek ma miejsce, gdy na zmianę występują piksele białe i czarne. Ciekawostka. Kompresja może powiększać pliki ▼ W najgorszym przypadku (na zmianę piksele białe i czarne) kodowanie długości serii da nam plik skompresowany o rozmiarze większym niż plik oryginalny! Jak został wspomniane wcześniej, każdy bezstratny algorytm kompresji, który przynajmniej jeden plik zmniejsza, musi mieć kilka plików, które powiększa — nie jest matematycznie możliwe, aby stworzyć algorytm kompresji bezstratnej, który zmniejsza każdy plik. Jako trywialny przykład posłuży nam pewna kompresja plików z 3-bitowych do 2-bitowych. Ile jest plików 3-bitowych? (Jest ich 8.) Ile jest plików 2-bitowych (Są ich 4.) Czy widzisz problem? Mamy 8 plików, które możemy chcieć skompresować, ale jednocześnie tylko 4 sposoby na ich reprezentację. Zatem niektóre z nich będą miały taką samą reprezentację, a przez to nie mogą zostać odkodowane dokładnie. Na przestrzeni lat było kilka oszustw opartych na twierdzeniach o bezstratnej metodzie kompresji, która kompresuje każdy plik. Skompresować każdy plik do mniejszego można tylko metodą stratną (czyli tracąc informacje); wszystkie metody bezstratne muszą powiększać niektóre pliki. Dobrze byłoby mieć metodę, która kompresuje wszystkie pliki bez strat; można by wtedy skompresować duży plik, a następnie zastosować kompresję do skompresowanego pliku i zmniejszyć go ponownie, powtarzając aż do uzyskanie jednego bajtu — lub jednego bitu! Niestety nie jest to możliwe.

7.3. Kompresja obrazu metodą JPEG Obrazy mogą zajmować dużo miejsca, dlatego najczęściej obrazy są przechowywane na komputerze w postaci skompresowanej. Pozwala to zaoszczędzić miejsce na dysku. Najczęściej, zwłaszcza w przypadku zdjęć, nie ma potrzeby przechowywania obrazu dokładnie tak, jak wyglądał on pierwotnie. Wynika to z faktu, iż zawiera on więcej szczegółów niż ktokolwiek może zobaczyć. W rezultacie możemy zaoszczędzić przestrzeń dyskową, zwłaszcza jeśli utracone szczegóły są trudno dostrzegalne dla ludzkiego oka. Istnieją inne sytuacje, w których obrazy muszą być przechowywane w dokładnie takiej samej postaci jak oryginał, na przykład w przypadku skanów medycznych lub przetwarzania zdjęć o bardzo wysokiej jakości. W takich przypadkach stosuje się metody bezstratne lub obrazy nie są w ogóle kompresowane (np. w formacie RAW na aparatach). W podrozdziale o reprezentacji danych sprawdziliśmy, jak można zmniejszyć rozmiar pliku obrazu, używając mniejszej liczby bitów do opisania koloru każdego piksela. Jednak metody kompresji obrazu, takie jak JPEG, wykorzystują wzorce w obrazie, aby zmniejszyć przestrzeń potrzebną do jego przedstawienia, bez niekorzystnego wpływu na obraz. Poniższe trzy obrazy pokazują różnicę między zmniejszeniem głębi bitowej a użyciem wyspecjalizowanego systemu kompresji obrazu. Obraz po lewej stronie jest oryginałem, który używa 24 bity na piksel. Środkowy obraz został skompresowany do jednej trzeciej oryginalnego rozmiaru za pomocą JPEG; pomimo, iż jest to „stratna” wersja oryginału, różnica nie jest widoczna. Obraz po prawej stronie ma liczbę kolorów zmniejszoną do 256, a więc używa 8 bitów na piksel zamiast 24, co oznacza, że zajmuje jedną trzecią pierwotnego rozmiaru. Mimo że stracił tyle samo bitów, usunięte informacje miały znacznie większy wpływ na to, jak wygląda. Na tym polega zaleta formatu JPEG: usuwa informacje z obrazu, które nie mają dużego wpływu na postrzeganą jakość. Ponadto w przypadku formatu JPEG można ustalić kompromis między jakością a rozmiarem pliku. Zmniejszenie liczby bitów (głębia kolorów) jest na tyle istotną zmianą, że nie uważamy tego za metodę kompresji, lecz po prostu za reprezentację niskiej jakości. Metody kompresji obrazu, takie jak JPEG, GIF i PNG, zostały zaprojektowane tak, aby wykorzystać wzorce w obrazie, w celu uzyskania znacznej redukcji rozmiaru pliku bez znaczącej utraty jakości. Na przykład poniższy obraz pokazuje powiększone piksele, które są fragmentem oka z powyższego obrazu (wysokiej jakości). Zauważmy, że kolory sąsiednich pikseli są często bardzo podobne, nawet w tej części obrazu, która ma dużo szczegółów. Na przykład piksele pokazane w czerwonym polu poniżej zmieniają się stopniowo z bardzo ciemnego na bardzo jasny. Kodowanie długości serii nie działa w tym przypadku. Można by skorzystać z wariantu, który określa kolor piksela, a następnie mówi, ile kolejnych pikseli ma ten sam kolor. Chociaż większość sąsiednich pikseli jest prawie taka sama, to szanse na to, że są identyczne, są bardzo niskie, a serie identycznych kolorów prawie nie występują. Istnieje jednak sposób, aby wykorzystać stopniowo zmieniające się kolory. W przypadku pikseli w czerwonym polu powyżej, możesz wygenerować przybliżoną wersję tych kolorów, określając tylko pierwszy i ostatni w serii. Na tej podstawie komputer będzie obliczać pośrednie, zakładając, że kolor zmienia się stopniowo. Zamiast zapisywania wartości dla 5 pikseli otoczonych na powyższym rysunku czerwoną ramką, wystarczy zapisać tylko dwie wartości, aby oglądający nie zauważył żadnej różnicy. Jest to stratne, ponieważ nie można dokładnie odtworzyć oryginału, ale wystarczająco dobre dla wielu zastosowań i pozwalające zaoszczędzić dużo miejsca. Co to jest?. Interpolacja ▼ Proces zgadywania kolorów pikseli między dwoma, które są znane, jest przykładem interpolacji. Interpolacja liniowa zakłada, że wartości rosną o stałą wielkość pomiędzy dwiema podanymi wartościami. Na przykład, dla pięciu powyższych pikseli załóżmy, że pierwszy piksel ma wartość koloru niebieskiego równą 124, a ostatni ma niebieską wartość 136. W takim przypadku interpolacja liniowa domyślałaby się, że niebieskie wartości dla tych pośrednich wynoszą 127, 130 i 133, a dzięki temu nie trzeba ich zapisywać i można zaoszczędzić miejsce. W praktyce stosuje się bardziej złożone podejście do odgadywania pikseli, ale interpolacja liniowa daje dobre wyobrażenie o tym, jak to działa. System JPEG, który jest szeroko stosowany do zdjęć, wykorzystuje bardziej wyrafinowaną wersję tego pomysłu. Zamiast działać na pięciu kolejnych pikselach, tak jak to zrobiliśmy powyżej, działa na bloku o rozmiarze 8 na 8 pikseli. Zamiast szacować wartości za pomocą funkcji liniowej, wykorzystuje kombinacje funkcji cosinus. Dla ciekawych. Czym są funkcje sinus i consinus ▼ Funkcje sinus i cosinus są funkcjami trygonometrycznymi, które są często używane do obliczania długości boków trójkąta. Wykres wartość sinusa od 0 do 180 stopni jest gładką krzywą o wartościach w przedziale 1 do -1, przypominającą falę (podobnie jak wykres funkcji cosinus, który jest nieco przesunięty). Różne postacie tego wykresu można wykorzystać do przybliżenia wartości pikseli przechodzących z jednego koloru do drugiego. Jeśli dodasz dwie fale cosinusowe o różnych częstotliwościach, to możesz uzyskać interesujące kształty. Teoretycznie każdy wzór złożony z pikseli może zostać utworzony przez dodanie różnych fal cosinusowych! Poniższy wykres pokazuje wartości funkcji \(\sin(x)\) oraz \(\cos(x)\) dla \(x\) z zakresu od 0 do 180 stopni. Dla ciekawych. Dodawanie fal sinusa i cosinusa w celu uzyskania dowolnego kształtu fali ▼ Metody JPEG (i MP3) bazują na technice, która falę dowolnego kształtu przedstawia jako sumę wielu fal. Przekształcenie kształtu fali dla bloku pikseli lub próbki muzyki w sumę prostych fal można wykonać za pomocą techniki zwanej transformacją Fouriera, która jest powszechnie wykorzystywana przy przetwarzaniu obrazu. Możesz poeksperymentować z dodawaniem fal, aby uzyskać inne kształty za pomocą udostępnionego arkusza kalkulacyjnego. W arkuszu tym za pomocą żółtego obszaru na pierwszej zakładce możesz wybrać, które fale dodać. Spróbuj ustawić 4 sinusoidy na częstotliwości, które wynoszą odpowiednio 3, 9, 15 i 21 razy częstotliwość podstawowa („podstawowa” to najniższa częstotliwość.) Następnie ustaw „amplitudy” (odpowiednik poziomu głośności) tej czwórki na wartości 0,5, 0,25, 0,125 i 0,0625 (każda z nich jest równa połowie poprzedniej). W rezultacie powinieneś uzyskać poniższe cztery sinusoidy: Kiedy powyższe cztery fale są ze sobą dodane, interferują i tworzą kształt, który ma ostrzejsze przejścia: Okazuje się, że gdyby kontynuować ten wzorzec z większą liczbą sinusoid, kształt wynikowy stałby się „falą prostokątną”, która nagle przechodzi od wartości maksymalnej do minimum. Ta pokazana powyżej jest wyboista, gdyż wykorzystaliśmy tylko 4 fale sinusoidalne, aby ją opisać. To właśnie dzieje się w algorytmie JPEG, jeśli kompresujesz czarno-biały obraz. „Kolor” pikseli w miarę przesuwania się po obrazie będzie wynosił 0 (czarny) lub pełny poziom intensywności (biały), lecz JPEG będzie przybliżał go za pomocą sumy niewielkiej liczby fal cosinusów (które mają taki sam kształt jak sinusoidy) Daje to „przedobrzenia” widoczne na poniższym obrazku; w obrazie JPEG pojawiają się one jako jasne i ciemne plamy otaczające nagłą zmianę koloru: Możesz eksperymentować z różnymi kombinacjami fal, uzyskując różne kształty. Być może trzeba mieć więcej niż cztery, aby uzyskać dobre przybliżenia kształtu, który chcesz osiągnąć; to jest właśnie kompromis, z którym stara sobie radzić algorytm JPEG. Na drugiej zakładce arkusza kalkulacyjnego zamieszczone zostały pewne sugestie dotyczące parametrów. Możesz zapoznać się z przekształceniami Fouriera za pomocą darmowego oprogramowania Wolfram Alpha; będzie to wymagało instalacji wtyczki w przeglądarce. Oto przykładowe prezentacje Wolfram (po ang.): interaktywny pokaz kompresji JPEG, prezentacja związków między sinusoidami a innymi formami falowymi oraz prezentacja tego jak sinusoidy można zsumować, aby otrzymać inne kształty. Warto przyjrzeć się z bliska mocno skompresowanemu obrazowi JPEG. Na przykład następujący obraz został bardzo mocno skompresowany przy użyciu JPEG (zajmuje jedynie 1,5% pierwotnego rozmiaru). Jeśli powiększymy obszar oka, wyraźnie widać bloki 8 x 8 pikseli: Zauważ, iż w każdym bloku występuje bardzo niewielka różnorodność. Na poniższym obrazie blok w czerwonej ramce zmienia się tylko w kierunku pionowym. Prawdopodobnie można go określić, podając tylko dwie wartości brzegowe, pozostałe mogą być wyliczone przez dekoder podobnie jak w przykładzie interpolacyjnym. Zielony kwadrat zmienia się tylko w poziomie i podobnie można go wyrazić przy pomocy dwóch wartości brzegowych zamiast 64 wartości. Niebieski blok ma tylko jeden kolor! Żółty blok jest bardziej skomplikowany, ponieważ w tej części obrazu więcej się dzieje. Pojawiają się tu fale. Od lewej do prawej widzimy zmianę jasności od ciemnej, przez jaśniejszą, do ciemniej, dlatego zmienność tę będzie wygodnie zapisać za pomocą fali. Od góry do dołu żółty zmienia się głównie od jasnego do ciemnego. Dzięki temu możemy przechowywać tylko kilka wartości zamiast wszystkich 64. Pomimo tego, że jakość jest dość niska, to oszczędność w przestrzeni dyskowej jest ogromna — plik JPEG jest 60 razy mniejszy (mógłby zostać pobrany 60 razy szybciej). Obrazy JPEG o wyższej jakości przechowują więcej szczegółów dla każdego bloku 8 na 8, co sprawia, że odwzorowują wierniej oryginalny obraz. Zajmują też więcej miejsca, ponieważ zawierają informację o większej liczbie szczegółów. Możesz samemu przetestować jak to wszystko działa, wybierając stopień kompresji w czasie zapisywania pliku w formacie JPEG (większość edytorów graficznych na to pozwala). Co to jest?. Nazwa JPEG ▼ Nazwa jpg jest skrótem od Joint Photographic Experts Group, komitetu utworzonego w latach 80. w celu wypracowania standardów umożliwiających zachowywanie fotografii cyfrowych i wyświetlanie ich na różnych urządzeniach. Ponieważ niektóre systemy operacyjne ograniczają rozszerzenia plików do trzech znaków, pliki skompresowane JPEG mają rozszerzenie .jpg. Dla ciekawych. Więcej na temat fal cosinusowych ▼ Fale cosinusowe wykorzystywane w metodzie JPEG oparte są na dyskretnej transformacji cosinusowej. „Dyskretna” oznacza, że opisujemy ją za pomocą zbioru skończonego. Fale w JPEG są reprezentowane jako wartości dla 8 x 8 punktów (dla kodowanego bloku), a każda z tych wartości pochodzi ze skończonego zbioru liczb binarnych. Nasuwa się naturalne pytanie, jak metoda JPEG, zaprojektowana do przedstawiania obrazów o płynnie zmieniających się kolorach, działa w sytuacji, gdy kolory zmieniają się nagle? W takim przypadku konieczne jest dodawanie wielu fal, pozwalających uzyskać nagłą zmianę koloru, a tym samym ostrą krawędź. Niestety wtedy fale cosinusowe powodują przesadzone zmiany (zabrudzone krawędzie), takie jak te na drugim z poniższych obrazków, będącym powiększonym fragmentem pierwszego. Oryginał miał ostre krawędzie, ale na powiększeniu obrazu JPEG widać, że nie tylko krawędzie są rozmyte, ale niektóre ciemniejsze piksele pojawiają się dalej również na białym tle, wyglądając trochę jak cienie lub echa. Z tego względu JPEG jest używany do kompresji zdjęć i naturalnych obrazów, natomiast inne metody kompresji (takie jak GIF i PNG, które poznamy w dalszej części) będą działać lepiej w przypadku sztucznych obrazów, takich jak ten.

7.4. Kompresja ogólnego przeznaczenia Metody kompresji ogólnego przeznaczenia muszą być bezstratne, ponieważ nie można założyć, że użytkownik zgodzi się na utratę danych. Najbardziej popularne algorytmy tego typu (takie jak ZIP, gzip i rar) oparte są na metodzie zwanej kodowaniem Ziva-Lempela, wymyślonej przez Jacoba Ziva i Abrahama Lempela w latach siedemdziesiątych. Przyjrzymy się temu zagadnieniu na przykładzie pliku tekstowego. Główną ideą kodowania Ziva-Lempela jest zastępowanie sekwencji znaków często występujących w plikach (na przykład sekwencja znaków „obraz” pojawia się często w tym rozdziale) odnośnikami do miejsca, w którym ostatnio się pojawił. Pod warunkiem, że odniesienie jest mniejsze niż zastępowana fraza, oszczędzamy miejsce. Zwykle systemy oparte na tym podejściu można wykorzystać do zredukowania plików tekstowych do zaledwie jednej czwartej ich oryginalnego rozmiaru, co nie ustepuje prawie żadnej znanej metodzie kompresowania tekstu. Poniższa aplikacja umożliwia zapoznanie się z tą ideą. Możesz kliknąć pole, aby zobaczyć, dokąd prowadzi odnośnik, a następnie wpisać odpowiednie znaki i w rezultacie odkodować tekst. Co się stanie, jeśli odniesienie wskazuje na inne odniesienie? Jeśli dekodujesz tekst od początku odnośnik będą zawsze wskazywać na odkodowane już znaki i nie będzie problemu z odkodowywaniem. Narzędzie interaktywne, pokazujące, jak działa kompresja. Spójrz na stronę http://www.csfieldguide.org.nz/releases/1.9.9/_static/widgets/COMPRESSION/LWZ/public_html/index.html Możesz wprowadzić własny tekst, klikając zakładkę TEXT. Możesz również wkleić jakiś własny tekst, aby sprawdzić, ile znaków można zastąpić odniesieniami. Odnośniki są w rzeczywistości dwiema liczbami: pierwsza określa, ile znaków wcześniej zaczyna się sekwencja, a druga — jaka jest jej długość. Każde takie odwołanie zwykle zajmuje około jednego lub dwóch znaków, więc oszczędzamy miejsce jeżeli zastępowane są co najmniej dwa znaki. Opcje w powyższej aplikacji wymuszają, aby zastępowane sekwencje miały długość większą lub równą 2. Oczywiście bierzemy pod uwagę wszystkie znaki, a nie tylko litery alfabetu, więc system kompresji może również odnosić się do spacji między wyrazami. W praktyce jedną z najczęściej występujących sekwencji jest kropka, po której następuje spacja. To podejście sprawdzi się również w przypadku obrazów czarno-białych, ponieważ sekwencje takie jak „10 białych pikseli” prawdopodobnie się powtarzają. Oto niektóre fragmenty z wcześniejszego przykładu; możesz wkleić je do powyższej aplikacji, aby zobaczyć, jak działa kompresja. 011000010000110 100000111000001 000001111100000 000011111110000 000111111111000 001111101111100 011111000111110 111110000011111 Powyższy przykład dobrze ilustruje, co dzieje się z obrazami podczas zapisu w formacie GIF lub PNG; wartości pikseli są kompresowane za pomocą algorytmu Ziva-Lempela, który działa dobrze, jeśli wiele kolejnych pikseli ma ten sam kolor. Ale działa bardzo słabo w przypadku zdjęć, w których mało prawdopodobne jest powtórzenie wzorców pikseli. Ciekawostka. Kompresja ZL lub LZ? ▼ Opisany powyżej algorytm został nazwany kompresją Ziva-Lempela od nazwisk dwóch informatyków, Jacoba Ziva i Abrahama Lempela, którzy wymyślili go w latach siedemdziesiątych. Niestety ktoś pomieszał kolejność autorów, kiedy opisywał ten pomysł i nazwał go kompresją „LZ” zamiast kompresji „ZL”. Wielu naukowców skopiowało błąd, przez co metoda Ziva i Lempela jest obecnie zwana „kompresją LZ”!

7.5. Kompresja audio Jedną z najczęściej stosowanych metod kompresji muzyki jest MP3, który jest częścią standardu kompresji wideo o nazwie MPEG (Moving Picture Experts Group). Ciekawostka. Nazwa *mp3* ▼ Nazwa mp3 nie jest zbyt oczywista. Pomimo tego, że mp oznacza „ruchomy obraz” (ang. moving picture), a 3 pojawiło się już w pierwszej wersji, to pliki mp3 są używane do zapisu muzyki! Pełna nazwa standardu, z którego pochodzi MP3, to MPEG, a brakujące „EG” oznacza „grupę ekspertów” (ang. expert group), podobnie jak w skrócie JPEG. Grupę tą stanowiło konsorcjum firm i naukowców, którego celem było ustalenie standardu pozwalającego odtwarzanie materiałów wideo na urządzeniach różnych marek (na przykład ta sama płyta DVD działała na dowolnym odtwarzaczu DVD). Pierwsza wersja wypracowanych przez konsorcjum standardów (zwana MPEG-1) miała trzy metody przechowywania ścieżki dźwiękowej (warstwy 1, 2 i 3). Jedna z tych metod (warstwa 3 MPEG-1) stała się bardzo popularna w kompresowaniu muzyki i jej nazwa została skrócona do MP3. Standard MPEG-1 nie jest już obecnie używany w przypadku wideo (płyty DVD i telewizja używają głównie MPEG-2), ale jest bardzo ważny w przypadku kodowania audio. Współczesną wersją MPEG jest MPEG-4 (MPEG-3 przedawnił się, zanim został uznany za standard). MPEG-4 oferuje wideo wyższej jakości i jest powszechnie stosowany do kodowania plików wideo, transmisji strumieniowych, dysków blu-ray i w przypadku niektórych programów telewizyjnych. Metoda kompresji audio AAC, używana między innymi przez Apple, również pochodzi ze standardu MPEG-4. Na komputerach, MPEG-4 part 14 jest powszechnie używany do wideo, a jego skrócona nazwa to MP4. Podsumowując: MP3 oznacza „MPEG-1 layer 3”, natomiast MP4 jest skrótem od „MPEG-4 part 14”. Pozostałe metody kompresji dźwięku wykorzystują podobne rozwiązania co algorytm MP3, i niektóre z nich oferują lepszą jakość przy podobnym rozmiarze pliku (lub mniejszy rozmiar przy tej samej jakości). Nie będziemy dokładnie prezentować zasad działania tych algorytmów, ale ogólna idea sprowadza się do rozłożenia dźwięku na pasma o różnych częstotliwościach, a następnie przedstawienie każdego z tych pasm jako sumy fal cosinusowych. Na stronie CS4FN znajdziesz więcej informacji na temat mp3, jak również w artykule na tej stronie (po angielsku). Inne dostępne systemy kompresji dźwięku to: AAC, ALAC, Ogg Vorbis i WMA. Każda z tych metod ma pewne zalety w stosunku do innych, niektóre są bardziej kompatybilne z urządzeniami lub nie wymagają licencji. Jak mały może być plik? Jak czułe jest ludzkie ucho? Oto główne pytania dotyczące skompresowanego dźwięku. (Dodatkowo pojawia się pytanie, ile czasu zajmuje kodowanie pliku, co może być istotne dla praktyczności systemu). Kompromis między jakością a wielkością plików audio może zależeć od sytuacji, w której muzyka jest odtwarzana. Jeśli biegasz i słuchasz muzyki, jakość może nie mieć większego znaczenia, dzięki czemu można ograniczyć przestrzeń potrzebną do jej przechowywania. Z drugiej strony, jeśli słuchamy nagrań w domu na dobrym sprzęcie, jakość może odgrywać o wiele większą rolę niż rozmiaru plików. Aby ocenić stopień kompresji pliku audio, należy przyjrzeć się oryginalnym nagraniom wysokiej jakości, takim jak płyta CD (lub nieskompresowane pliki WAV lub AIFF). Przygotuj pliki audio z różnymi stylami muzycznymi oraz innymi rodzajami dźwięku, takimi jak mowa lub nawet cisza. Przekowertuj te nagrania do różnych formatów audio. Jednym z narzędzi, które to umożliwia, jest iTunes firmy Apple. Można go użyć do zgrywania płyt CD i zapisu w różnych formatach, po uprzednim ustaleniu jakości i wielkości. Wiele innych programów audio oferuje podobne możliwości. Skompresuj każde z przygotowanych nagrań przy użyciu różnych metod, po upewnieniu się, że każdy skompresowany plik jest tworzony z oryginału wysokiej jakości. Stwórz tabelę pokazującą, ile czasu zajęło przetwarzanie każdego nagrania, jaki jest rozmiar skompresowanego pliku oraz ocenę jakości dźwięku w porównaniu z oryginałem. Prześledź związki pomiędzy jakością a rozmiarem — czy potrzebujesz dużo większych plików do przechowywania dobrej jakości dźwięku? Czy istnieje minimum dla rozmiaru pliku, który zachowuje akceptowalną jakość? Czy w przypadku mowy niektóre metody działają lepiej niż inne? Czy 2-minutowe nagranie ciszy zajmuje więcej miejsca niż 1 minuta nagrania ciszy? Czy 1 minuta muzyki zajmuje więcej miejsca niż minuta ciszy?

Obraz JPG Kompresja JPG HTML

Obraz JPG

JPG jest chyba najbardziej popularnym formatem pliku graficznego. Zapewne każdy z Was już miał z nim styczność, bo zapewne każdy przynajmniej raz wykonał zdjęcie aparatem cyfrowym tudzież aparatem telefonicznym, czyli tzw. komórką. Właśnie zdjęciom format ten zawdzięcza tak dużą popularność. Większość robionych obecnie zdjęć zapisywana jest w tym formacie. Skoro jest taki popularny to dowiedzmy się trochę więcej o nim.

Trzyliterowy skrót JPG jest skróconą formą czteroliterowego skrótu JPEG (ang. Joint Photographic Experts Group – połączona grupa ekspertów fotograficznych). Skrót ten pochodzi od grupy osób, która zajmowała się rozwojem tego standardu plików. Ze względu na praktykę używania rozszerzeń trzyliterowych dłuższy skrót JPEG zazwyczaj zapisujemy jako JPG.

Kompresja JPG

Format ten został opracowany na potrzeby zmniejszenia rozmiaru (kompresji) zdjęć fotograficznych. Jest to format tzw. stratnej kompresji, tzn. zmniejszenia rozmiaru kosztem jakości zdjęcia.

Pokrótce kompresja ta polega na zmniejszeniu liczby kolorów na zdjęciu w podobnych obszarach i zastąpieniem ich jednym bądź kilkoma odcieniami tego samego koloru. Tak na prawdę nie musimy do końca wiedzieć jak działa ta kompresja, warto jednak znać jej efekty.

Kompresji możemy dokonać w programach graficznych i możemy sami regulować jej stopień. Im większy stopień kompresji tym mniejszy rozmiar pliku, ale i niższa jakość. Właśnie głównie rozchodzi się o tą jakość. Zbyt duży stopień kompresji powoduje pojawienie się skutków ubocznych, czyli tzw.

Artefakty są to grupy pikseli, które niejako zaśmiecają nam obraz, a których wcześniej tam nie było. Są to dodatkowe piksele wprowadzone przez algorytm kompresji.

Powyższy obraz ukazuje dwa pliki zapisane w formacie JPG. Po lewej stronie mamy plik zapisany bez kompresji, a po prawej stronie plik skompresowany. W skompresowanym pliku gołym okiem widać artefakty, które zaśmiecają nam obraz.

Kompresja zastosowana na powyższej grafice znacznie pogorszyła jej jakość, a głównym przesłaniem kompresji jest zmniejszenie rozmiaru pliku, przy minimalnej stracie jakości danego pliku. Więc jak zmniejszyć rozmiar powyższej grafiki nie tracąc na jakości?

Powyższa grafika używa jedynie dwóch kolorów: czarnego i żółtego. Do zapisu grafik, które nie używają zbyt dużej ilości kolorów używamy innych formatów plików (np. PNG, GIF). Format JPG natomiast najlepiej nadaje się do plików graficznych wykorzystujących setki kolorów, czyli głównie zdjęć. Stratna kompresja wykonana na zdjęciu, jest zazwyczaj niezauważalna.

Powyżej znajduje się to samo zdjęcie w dwóch połówkach, po lewej stronie mamy połowę zdjęcia, która nie uległa kompresji. Natomiast po prawej mamy zdjęcie, które zostało skompresowane. Różnica między nimi na pierwszy rzut oka jest niezauważalna. Tak, oczywiście straty jakości są, tyle że po szybkim przeskanowaniu zdjęcia nie znajdziemy różnicy.

JPEG – Wikipedia, wolna encyklopedia

Joint Photographic Experts Group (JPEG) Rozszerzenia pliku .jpg, .jpeg, .jpe

.jif, .jfif, .jfi (rozszerzenie.jfi nie jest bezpośrednio obsługiwane przez Windows XP) (kontenery) Typ MIME image/jpeg Producent Joint Photographic Experts Group Typ stratna i bezstratna kompresja grafiki rastrowej

JPEG (ang. Joint Photographic Experts Group) – algorytm[1][2] stratnej kompresji grafiki rastrowej, wykorzystany w formacie plików graficznych o tej samej nazwie. Motywacją do powstania tego standardu było ujednolicenie algorytmów kompresji obrazów monochromatycznych i kolorowych.

Format plików JPEG/JFIF obok formatów GIF i PNG jest najczęściej stosowanym formatem grafiki na stronach WWW. Typ MIME zarejestrowany dla tego formatu nosi nazwę image/jpeg i został zdefiniowany w RFC 1341 ↓.

Historia standardu JPEG [ edytuj | edytuj kod ]

Prace nad standardem rozpoczęły się w kwietniu 1983 roku w organizacji ISO. W 1986 roku z inicjatywy ISO oraz CCITT powstał zespół ekspertów nazwany Joint Photographic Experts Group (ang. Połączona Grupa Ekspertów Fotograficznych), który zjednoczył wysiłki różnych niezależnych grup.

Standard o nazwie ISO/IEC IS 10918-1 | ITU-T Recommendation T.81 został opublikowany w dwóch częściach w 1991 roku i definiował podstawowy (ang. baseline), sekwencyjny tryb kompresji stratnej, oparty na dyskretnej transformacji kosinusowej (DCT) oraz jego różne rozszerzenia:

Tryb progresywny kompresji, również oparty na DCT, przewidziany do wyświetlania obrazów w trakcie przesyłania danych. Efekt płynnie wyostrzającego się obrazu jest szczególnie dobrze widoczny przy użyciu szybkiego dekompresora i wolnej transmisji danych. Tryb ten zyskał rozpowszechnienie wraz z rozwojem Internetu.

Tryb hierarchiczny, pozwalający na zapis w jednym pliku tego samego obrazu jako sekwencji kadrów o różnych rozdzielczościach. Kolejne kadry są kodowane jako różnice względem kadrów poprzednich, o niższej rozdzielczości, a nie jako oddzielne obrazy, co zmniejsza rozmiar pliku. Tryb ten nie definiuje, która z metod kompresji ma zostać użyta. Tryb hierarchiczny umożliwia szybki podgląd obrazów bez czasochłonnej dekompresji obrazów o wysokiej rozdzielczości, co ma zastosowanie np. w fotografii cyfrowej.

Opisane metody kompresji stratnej umożliwiają uzyskanie dużej kompresji obrazu, rzędu 20:1 kosztem pewnej utraty szczegółów, na ogół niezauważalnej.

Opublikowany standard JPEG nie opisywał dokładnych implementacji algorytmów kompresji, W rezultacie powstało wiele rozwiązań różniących się nawet w takich szczegółach, jak skala jakości obrazu. Równocześnie z implementacjami komercyjnymi, częściowo opatentowanymi, zaczęły powstawać rozwiązania rozprowadzane na innych licencjach. Szczególnie wyróżniła się praca zespołu znanego jako Independent JPEG Group (IJG), zakończona publikacją bibliotek kompresji i dekompresji JPEG jako wolnego oprogramowania na licencji zbliżonej do licencji BSD.

Standard JPEG nie określał też dokładnego formatu plików graficznych, zdefiniowano tylko podstawy znane pod nazwą JPEG Interchange Format. W rezultacie największą popularność uzyskał wprowadzony przez firmę C-cube Microsystems format JFIF (ang. JPEG File Interchange Format), stanowiący rozszerzenie wobec standardu i posługujący się rozszerzeniem „jpeg” albo „jpg”, dlatego często błędnie identyfikowany ze standardem JPEG. Inny popularny format pliku wykorzystujący standard JPEG to TIFF.

W 1993 roku opracowano rozszerzenie standardu JPEG dla bezstratnej kompresji, używające zupełnie innej metody niż istniejące metody stratne. Rozszerzenie to nie jest obsługiwane przez biblioteki IJG i nigdy się szerzej nie przyjęło.

W 1995 pod nazwą ISO/IEC IS 10918-3 | ITU-T Recommendation T.84 opublikowano część trzecią standardu, zawierającą kolejne rozszerzenia, które miały poprawić jakość obrazu przy tym samym stopniu kompresji. Są to m.in.:

zmienna kwantyzacja (ang. variable quantization ) uwzględnia różne poziomy szczegółowości w różnych częściach obrazu;

) uwzględnia różne poziomy szczegółowości w różnych częściach obrazu; wybiórcza poprawa jakości (ang. selective refinement ) umożliwia kontynuację progresywnej dekompresji lub podjęcie dekompresji z kadru o wyższej rozdzielczości tylko dla fragmentów obrazu zawierających najwięcej szczegółów;

) umożliwia kontynuację progresywnej dekompresji lub podjęcie dekompresji z kadru o wyższej rozdzielczości tylko dla fragmentów obrazu zawierających najwięcej szczegółów; podział na kafelki (ang. tiling), umożliwiający składanie obrazu z kawałków o różnych rozmiarach, rozdzielczościach, współczynnikach kompresji czy nawet paletach barw.

Poza tym zdefiniowano standardowy format pliku o nazwie SPIFF (ang. Still Picture Interchange File Format), który jako kompatybilny wstecznie miał zastąpić format JFIF. Darmowe biblioteki IJG nie obsługują rozszerzeń zawartych w tej części standardu.

Krytyka braku w standardzie dobrych metod bezstratnej kompresji, które nadawałyby się do zapisu obrazu o najwyższej jakości czy kompresji różnic między kadrami w trybie hierarchicznym, przyczyniła się do rozpoczęcia prac nad kolejnym rozszerzeniem standardu. Komitet JPEG rozpatrzył różne algorytmy i jako podstawę kolejnego rozszerzenia standardu wybrał sekwencyjny algorytm LOCO-I (ang. low complexity, context-based, lossless image compression algorithm), opracowany w HP Labs w 1996. Standard został opublikowany w 1999 roku w dokumencie ISO/IEC IS 14495-1 | ITU-T T.87, a metoda kompresji jest znana pod nazwą JPEG-LS. Metoda ta daje kompresję rzędu 2:1 i nie jest zbyt powszechnie stosowana. Standard opisuje również (mało) stratny tryb metody JPEG-LS.

W tym samym czasie trwały też prace nad modyfikacją metod stratnych, które miały wyeliminować wady stosowanego dotychczas algorytmu DCT. Na następcę wybrano algorytm dyskretnej transformaty falkowej, co dało możliwość połączenia kompresji stratnej i bezstratnej oraz zastosowania wcześniej zdefiniowanych rozszerzeń w jednej metodzie. Tak zdefiniowany standard otrzymał nazwę JPEG 2000 i został ogłoszony w 2000 roku w dokumencie ISO/IEC 15444-1:2000.

Algorytm stratny JPEG [ edytuj | edytuj kod ]

Algorytm kompresji używany przez JPEG jest algorytmem stratnym, tzn. w czasie jego wykonywania tracona jest bezpowrotnie część pierwotnej informacji.

Algorytm przebiega następująco: (część danych zaczerpnięto z hasła kompresja stratna)

obraz jest konwertowany z kanałów czerwony-zielony-niebieski (model RGB) na jeden kanał jasności/luminancji i 2 kanały barwy/chrominancji (model YCbCr). Ludzkie oko znacznie dokładniej postrzega drobne różnice jasności od drobnych różnic barwy, a więc użyteczne jest tutaj rozbicie obrazu na te kanały, żeby użyć na nich różnych parametrów kompresji.

zachodzi podpróbkowanie chrominancji: zmniejszana jest rozdzielczość pikseli kanałów barwy. Można nie redukować wcale, redukować 2 do 1 lub 4 do 1.

kanały są dzielone na bloki 8 × 8 pikseli. W przypadku kanałów kolorów, jest to 8 × 8 danych po redukcji rozdzielczości, a więc zwykle 16 × 16 pikseli obrazu początkowego. Bloki są traktowane w dalszych operacjach matematycznych jako macierze 8 × 8.

na blokach wykonywana jest dyskretna transformata kosinusowa (DCT). Zamiast wartości pikseli mamy teraz średnią wartość wewnątrz bloku (współczynnik DC) oraz częstotliwości zmian wewnątrz bloku (współczynniki AC), obie wyrażone przez liczby zmiennoprzecinkowe. Transformata DCT jest teoretycznie odwracalna, więc jedyna strata danych to drobne różnice wynikające z użycia zaokrągleń.

Różnicowa reprezentacja współczynników DC (DPCM).

Kwantyzacja, czyli zastąpienie danych zmiennoprzecinkowych przez liczby całkowite. To właśnie tutaj występują straty danych. Zależnie od parametrów kompresora, odrzuca się mniej lub więcej danych. Zasadniczo większa dokładność jest stosowana do danych dotyczących niskich częstotliwości niż wysokich.

współczynniki AC są uporządkowywane zygzakowato, aby zera leżały obok siebie.

współczynniki niezerowe są kompresowane kodowaniem entropijnym, zazwyczaj algorytmem Huffmana (standard JPEG pozwala też na użycie kodowania arytmetycznego). Kod Huffmana stosowany w formacie JPEG ma specjalne symbole dla ciągów zer i końca niezerowych współczynników (EOB, end of block).

Użyta transformata powoduje efekty blokowe w przypadku mocno skompresowanych obrazków.

Wielką innowacją algorytmu JPEG była możliwość kontroli stopnia kompresji w jej trakcie, co umożliwia dobranie jego stopnia do danego obrazka, tak aby uzyskać jak najmniejszy plik, ale o zadowalającej jakości.

Obraz Jakość Rozmiar (bajty) Współczynnik kompresji Komentarz Pełna jakość (Q = 100) 83261 2,6:1 Niezauważalnie małe artefakty Przeciętna jakość (Q = 50) 15138 15:1 Pierwsze oznaki artefaktów małej skali na granicach obiektów Średnia jakość (Q = 25) 9553 23:1 Silniejsze artefakty; strata informacji z dużej rozdzielczości Niska jakość (Q = 10) 4787 46:1 Duże straty rozciągłości tonalnej; artefakty na krawędziach obiektów Najniższa jakość (Q = 1) 1523 144:1 Bardzo duża strata kolorów i kształtów; niektóre obiekty niemalże nierozpoznawalne

Najczęściej stosowanym formatem w prezentacji treści stereoskopowych, w postaci elektronicznej, jest JPS, stanowiący pojedynczy obraz JPEG o parzystej liczbie pikseli w poziomie, zawierający umieszczone obok siebie treści przeznaczone dla prawego i lewego oka; zbiór JPS może być (jako „płaski” podwójny obraz) obsługiwany dowolnym narzędziem rozpoznającym JPEG (zwyczajnie widoczne są obie części).

Zobacz też [ edytuj | edytuj kod ]

키워드에 대한 정보 większy stopień kompresji pliku jpg

다음은 Bing에서 większy stopień kompresji pliku jpg 주제에 대한 검색 결과입니다. 필요한 경우 더 읽을 수 있습니다.

이 기사는 인터넷의 다양한 출처에서 편집되었습니다. 이 기사가 유용했기를 바랍니다. 이 기사가 유용하다고 생각되면 공유하십시오. 매우 감사합니다!

사람들이 주제에 대해 자주 검색하는 키워드 Resolution, File Sizes, TIFF, and JPEG Compression: Ask David Bergman

  • adorama tv
  • adoramatv
  • adorama
  • jpeg compression
  • ask david bergman
  • best compression level
  • does a smaller file size have less resolution
  • what is a tiff file
  • how to get the best resolution
  • tiff files vs jpeg
  • tiff
  • resolution
  • jpeg
  • file sizes
  • adorama youtube
  • understanding image resolution
  • digital image
  • camera
  • compression
  • how jpeg works
  • image compression
  • image processing
  • jpeg file format
  • image representation
  • image and video processing
  • photography basics for beginners

Resolution, #File #Sizes, #TIFF, #and #JPEG #Compression: #Ask #David #Bergman


YouTube에서 większy stopień kompresji pliku jpg 주제의 다른 동영상 보기

주제에 대한 기사를 시청해 주셔서 감사합니다 Resolution, File Sizes, TIFF, and JPEG Compression: Ask David Bergman | większy stopień kompresji pliku jpg, 이 기사가 유용하다고 생각되면 공유하십시오, 매우 감사합니다.

See also  Nakladki Do Maszynki Fale Loki Koki | The Razor N°401 Premium Fale Loki Koki 269 개의 베스트 답변

Leave a Comment