Widziałem wiele typów rozszerzeń graficznych, ale nigdy nie zrozumiałem prawdziwych różnic między nimi. Czy są tam jakieś linki, które jasno wyjaśniają ich różnice?
Czy istnieją standardy, które należy wziąć pod uwagę przy wyborze określonego typu obrazu do wykorzystania w aplikacji? Czego używamy w aplikacjach internetowych?
image
file-format
MOZILLA
źródło
źródło
Odpowiedzi:
Tak. Są to różne formaty plików (i ich rozszerzenia).
Wpisy Wikipedii dla każdego z formatów dadzą ci sporo informacji:
Formaty obrazów można podzielić na trzy szerokie kategorie:
Nieskompresowane formaty zajmują najwięcej danych, ale stanowią dokładną reprezentację obrazu. Formaty bitmapowe, takie jak BMP, są generalnie nieskompresowane, chociaż istnieją również skompresowane pliki BMP.
Formaty kompresji stratnej są na ogół odpowiednie dla fotografii. Nie nadaje się do ilustracji, rysunków i tekstu, ponieważ artefakty kompresji powstałe w wyniku kompresji obrazu będą się wyróżniać. Kompresja stratna, jak sama nazwa wskazuje, nie koduje wszystkich informacji zawartych w pliku, więc po odzyskaniu go do obrazu nie będzie dokładną reprezentacją oryginału. Jest jednak w stanie bardzo skutecznie kompresować obrazy w porównaniu z formatami bezstratnymi, ponieważ odrzuca pewne informacje. Doskonałym przykładem stratnego formatu kompresji jest JPEG.
Formaty kompresji bezstratnej nadają się do ilustracji, rysunków, tekstu i innych materiałów, które nie wyglądałyby dobrze po skompresowaniu przy użyciu kompresji stratnej. Jak sama nazwa wskazuje, kompresja bezstratna zakoduje wszystkie informacje z oryginału, więc po zdekompresowaniu obrazu będzie to dokładna reprezentacja oryginału. Ponieważ kompresja bezstratna nie powoduje utraty informacji, w większości przypadków nie jest w stanie osiągnąć tak wysokiego stopnia kompresji, jak kompresja stratna. Przykładami bezstratnej kompresji obrazu są PNG i GIF. (GIF dopuszcza tylko obrazy 8-bitowe).
TIFF i BMP to formaty „opakowujące”, ponieważ dane w nich zawarte mogą zależeć od zastosowanej techniki kompresji. Może zawierać obrazy skompresowane i nieskompresowane.
Kiedy użyć określonego formatu kompresji obrazu, naprawdę zależy od tego, co jest kompresowane.
Powiązane pytanie: Bezlitosna kompresja dużych obrazów na potrzeby Internetu
źródło
Powinieneś być świadomy kilku kluczowych czynników ...
Po pierwsze, istnieją dwa rodzaje kompresji: bezstratna i stratna .
Bezstratny oznacza, że obraz jest pomniejszony, ale bez uszczerbku dla jakości. Strata oznacza, że obraz jest (jeszcze) mniejszy, ale ze szkodą dla jakości. W przypadku ciągłego zapisywania obrazu w formacie stratnym jakość obrazu będzie się stopniowo pogarszać.
Istnieją również różne głębi kolorów (palety): kolor indeksowany i kolor bezpośredni .
Z indeksowaniem oznacza to, że obraz może przechowywać tylko ograniczoną liczbę kolorów (zwykle 256), które zostały wybrane przez autora obrazu, w przypadku Direct oznacza to, że możesz przechowywać wiele tysięcy kolorów, które nie zostały wybrane przez autora.
BMP - bezstratne / indeksowane i bezpośrednie
To jest stary format. Jest bezstratny (żadne dane obrazu nie są tracone podczas zapisywania), ale jest też niewielka lub żadna kompresja, co oznacza, że zapisywanie w formacie BMP skutkuje BARDZO dużymi rozmiarami plików. Może mieć palety zarówno indeksowane, jak i bezpośrednie, ale to mała pociecha. Rozmiary plików są tak niepotrzebnie duże, że nikt tak naprawdę nigdy nie używa tego formatu.
Good for: Nic tak naprawdę. Nie ma niczego, w czym BMP wyróżnia się, ani nie jest lepszy od innych formatów.
GIF - bezstratne / tylko indeksowane
GIF wykorzystuje kompresję bezstratną, co oznacza, że możesz wielokrotnie zapisywać obraz i nigdy nie stracić żadnych danych. Rozmiary plików są znacznie mniejsze niż BMP, ponieważ w rzeczywistości używana jest dobra kompresja, ale może ona przechowywać tylko paletę indeksowaną. Oznacza to, że plik może zawierać maksymalnie 256 różnych kolorów. To brzmi jak niewielka kwota i tak jest.
Obrazy GIF mogą być również animowane i mieć przezroczystość.
Dobre w przypadku: logo, rysunków kreskowych i innych prostych obrazów, które muszą być małe. Naprawdę używane tylko w witrynach internetowych.
JPEG - stratne / bezpośrednie
Obrazy JPEG zostały zaprojektowane tak, aby szczegółowe obrazy fotograficzne były jak najmniejsze, usuwając informacje, których ludzkie oko nie zauważy. W rezultacie jest to format stratny, a wielokrotne zapisywanie tego samego pliku spowoduje utratę większej ilości danych w miarę upływu czasu. Ma paletę tysięcy kolorów, więc jest świetny do zdjęć, ale kompresja stratna oznacza, że jest szkodliwa dla logo i rysunków liniowych: nie tylko będą wyglądać rozmyte, ale takie obrazy będą miały większy rozmiar pliku w porównaniu do GIF!
Dobre dla: fotografii. Również gradienty.
PNG-8 - bezstratny / indeksowany
PNG to nowszy format, a PNG-8 (indeksowana wersja PNG) jest naprawdę dobrym zamiennikiem GIF-ów. Niestety ma jednak kilka wad: po pierwsze nie może obsługiwać animacji takiej jak GIF (cóż, ale tylko Firefox wydaje się ją obsługiwać, w przeciwieństwie do animacji GIF obsługiwanej przez każdą przeglądarkę). Po drugie, ma pewne problemy z obsługą starszych przeglądarek, takich jak IE6. Po trzecie, ważne oprogramowanie, takie jak Photoshop, ma bardzo słabą implementację formatu. (Cholera, Adobe!) PNG-8 może przechowywać tylko 256 kolorów, jak GIF.
Dobre dla: Główną rzeczą, którą PNG-8 radzi sobie lepiej niż GIF, jest obsługa przezroczystości alfa.
Ważna uwaga: Photoshop nie obsługuje przezroczystości alfa dla plików PNG-8. (Cholera, Photoshop!) Istnieją jednak sposoby na konwersję plików Photoshop PNG-24 do PNG-8 z zachowaniem ich przezroczystości. Jedną metodą jest PNGQuant , inną jest zapisywanie plików w programie Fireworks .
PNG-24 - bezstratny / bezpośredni
PNG-24 to wspaniały format, który łączy kodowanie bezstratne z bezpośrednim kolorem (tysiące kolorów, podobnie jak JPEG). Pod tym względem jest bardzo podobny do BMP, z wyjątkiem tego, że PNG faktycznie kompresuje obrazy, więc daje w wyniku znacznie mniejsze pliki. Niestety pliki PNG-24 będą nadal znacznie większe niż pliki JPEG, GIF i PNG-8, więc nadal musisz się zastanowić, czy naprawdę chcesz go użyć.
Mimo że pliki PNG-24 dopuszczają tysiące kolorów przy kompresji, nie mają zastępować obrazów JPEG. Zdjęcie zapisane jako PNG-24 będzie prawdopodobnie co najmniej 5 razy większe niż równoważny obraz JPEG, co bardzo nieznacznie poprawia widoczną jakość. (Oczywiście może to być pożądany rezultat, jeśli nie martwisz się o rozmiar pliku i chcesz uzyskać najlepszą możliwą jakość obrazu).
Podobnie jak PNG-8, PNG-24 również obsługuje przezroczystość alfa.
Mam nadzieję że to pomogło!
źródło
Ogólnie są to:
Kompresja bezstratna Algorytmy kompresji bezstratnej zmniejszają rozmiar pliku bez utraty jakości obrazu, chociaż nie są kompresowane do tak małego pliku, jak plik poddany kompresji stratnej. Gdy jakość obrazu jest wyższa niż rozmiar pliku, zwykle wybiera się algorytmy bezstratne.
Kompresja stratna Algorytmy kompresji stratnej wykorzystują nieodłączne ograniczenia ludzkiego oka i odrzucają niewidoczne informacje. Większość algorytmów kompresji stratnej umożliwia stosowanie różnych poziomów jakości (kompresji), a wraz ze wzrostem tych poziomów zmniejsza się rozmiar pliku. Przy najwyższych poziomach kompresji pogorszenie jakości obrazu staje się zauważalne jako „artefakty kompresji”. Poniższe obrazy pokazują zauważalne artefakty algorytmów kompresji stratnej; wybierz obraz miniatury, aby wyświetlić wersję w pełnym rozmiarze.
Każdy format jest inny, jak opisano poniżej:
JPEG Pliki JPEG (Joint Photographic Experts Group) mają (w większości przypadków) format stratny; rozszerzenie nazwy pliku DOS to JPG (inne systemy operacyjne mogą używać JPEG). Prawie każdy aparat cyfrowy może zapisywać obrazy w formacie JPEG, który obsługuje 8 bitów na kolor (czerwony, zielony, niebieski) w sumie 24-bitowe, tworząc stosunkowo małe pliki. Gdy kompresja nie jest zbyt duża, kompresja nie wpływa zauważalnie na jakość obrazu, ale pliki JPEG ulegają degradacji generacyjnej, gdy są wielokrotnie edytowane i zapisywane. Obrazy fotograficzne mogą być lepiej przechowywane w bezstratnym formacie innym niż JPEG, jeśli będą ponownie edytowane lub jeśli małe „artefakty” (skazy spowodowane przez algorytm kompresji JPEG) są niedopuszczalne. Format JPEG jest również używany jako algorytm kompresji obrazu w wielu plikach Adobe PDF.
TIFF TIFF (Tagged Image File Format) to elastyczny format, który zwykle zapisuje 8 lub 16 bitów na kolor (czerwony, zielony, niebieski) odpowiednio dla 24-bitowych i 48-bitowych sum, używając nazw plików TIFF lub TIF . Elastyczność TIFF jest zarówno błogosławieństwem, jak i przekleństwem, ponieważ żaden czytelnik nie czyta każdego typu pliku TIFF. TIFF są stratne i bezstratne; niektóre oferują stosunkowo dobrą bezstratną kompresję dla obrazów dwupoziomowych (czarno-białych). Niektóre aparaty cyfrowe mogą zapisywać dane w formacie TIFF, używając algorytmu kompresji LZW do bezstratnego przechowywania. Format obrazu TIFF nie jest powszechnie obsługiwany przez przeglądarki internetowe. TIFF pozostaje powszechnie akceptowanym standardem plików fotograficznych w branży poligraficznej. TIFF może obsługiwać przestrzenie kolorów specyficzne dla urządzenia, takie jak CMYK zdefiniowane przez określony zestaw farb drukarskich.
PNG Format pliku PNG (Portable Network Graphics) powstał jako darmowy następca formatu GIF o otwartym kodzie źródłowym. Format pliku PNG obsługuje truecolor (16 milionów kolorów), podczas gdy GIF obsługuje tylko 256 kolorów. Plik PNG wyróżnia się, gdy obraz ma duże, jednolicie kolorowe obszary. Bezstratny format PNG najlepiej nadaje się do edycji obrazów, a formaty stratne, takie jak JPG, są najlepsze do ostatecznej dystrybucji obrazów fotograficznych, ponieważ pliki JPG są mniejsze niż pliki PNG. Wiele starszych przeglądarek obecnie nie obsługuje formatu pliku PNG, jednak w przypadku programu Internet Explorer 7 wszystkie współczesne przeglądarki internetowe w pełni obsługują format PNG. Przeplot Adam7 umożliwia wczesny podgląd, nawet jeśli przesłano tylko niewielki procent danych obrazu.
GIF GIF (Graphics Interchange Format) jest ograniczony do 8-bitowej palety lub 256 kolorów. To sprawia, że format GIF nadaje się do przechowywania grafiki ze stosunkowo niewielką liczbą kolorów, takich jak proste diagramy, kształty, logo i obrazy w stylu kreskówek. Format GIF obsługuje animacje i jest nadal szeroko stosowany do zapewniania efektów animacji obrazu. Wykorzystuje również bezstratną kompresję, która jest bardziej efektywna, gdy duże obszary mają jeden kolor, a nieskuteczna w przypadku obrazów szczegółowych lub obrazów z dudkami.
BMP Format pliku BMP (mapa bitowa systemu Windows) obsługuje pliki graficzne w systemie operacyjnym Microsoft Windows. Zwykle pliki BMP są nieskompresowane, dlatego są duże; zaletą jest ich prostota, szeroka akceptacja i zastosowanie w programach Windows.
Użyj dla stron internetowych / aplikacji internetowych
Poniżej znajduje się krótkie podsumowanie tych formatów obrazów podczas ich używania ze stroną internetową / aplikacją.
Źródło: Formaty plików graficznych
źródło
Ponieważ inni omówili różnice, trafię do zastosowań.
TIFF jest zwykle używany przez skanery. Tworzy ogromne pliki i nie jest tak naprawdę używany w aplikacjach.
BMP jest nieskompresowany, a także tworzy ogromne pliki. Nie jest też tak naprawdę używany w aplikacjach.
GIF był kiedyś w całej sieci, ale wypadł z łask, ponieważ obsługuje tylko ograniczoną liczbę kolorów i jest opatentowany.
JPG / JPEG jest używany głównie do wszystkiego, co ma jakość fotograficzną, ale nie do tekstu. Stosowana kompresja stratna ma tendencję do niszczenia ostrych linii.
PNG nie jest tak mały jak JPEG, ale jest bezstratny, więc nadaje się do obrazów z ostrymi liniami. Jest teraz w powszechnym użyciu w sieci.
Osobiście zwykle używam PNG wszędzie, gdzie mogę. To dobry kompromis między JPG i GIF.
źródło
JPG> Wspólna Grupa Ekspertów Fotograficznych
1 Obrazy JPG obsługują 16 milionów kolorów i najlepiej nadają się do fotografii i złożonej grafiki
2 JPG nie obsługują przezroczystości.
PNG> Portable Network Graphics
1 Jest używany jako alternatywa dla formatu pliku GIF, gdy technologia GIF była chroniona prawami autorskimi i wymagała pozwolenia na użycie.
2 pliki PNG zapewniają od 5 do 25 procent większą kompresję niż pliki GIF i mają szerszą gamę kolorów. Pliki PNG używają przeplotu dwuwymiarowego, dzięki czemu ładują się dwa razy szybciej niż obrazy GIF ”.
3 Obraz, który ma dużo kolorów lub wymaga zaawansowanej zmiennej przezroczystości, preferowanym typem pliku jest PNG.
GIF> Format wymiany grafiki
1 Zmniejsza liczbę kolorów obrazu do 256.
2 GIF-y obsługują również przezroczystość.
3 GIF-y mają wyjątkową możliwość wyświetlania sekwencji obrazów, podobnie jak w przypadku filmów, zwanej animowanym GIF-em.
4 Jeśli obraz ma niewiele kolorów i nie wymaga żadnego zaawansowanego efektu przezroczystości alfa, najlepszym rozwiązaniem jest GIF.
SVG> Skalowalna grafika wektorowa
1 SVG to standard sieciowy oparty na XML, który opisuje zarówno statyczne obrazy, jak i animacje w dwóch wymiarach.
2 SVG umożliwia tworzenie grafiki i animacji o bardzo wysokiej jakości, które nie tracą szczegółów wraz ze wzrostem / zmniejszeniem ich rozmiaru.
źródło
Nazwy te odnoszą się do różnych sposobów kodowania danych obrazu pikseli (JPG i JPEG to to samo, a TIFF może po prostu zawierać plik jpeg z dodatkowymi metadanymi).
Te formaty obrazów mogą wykorzystywać różne algorytmy kompresji, różne reprezentacje kolorów, różne możliwości przenoszenia dodatkowych danych innych niż sam obraz i tak dalej.
W przypadku aplikacji internetowych powiedziałbym, że jpeg lub gif jest wystarczająco dobre. Jpeg jest używany częściej ze względu na wyższy współczynnik kompresji, a gif jest zwykle używany do animacji o małej wadze, w których flash (lub coś podobnego) jest nadmiernym zabiciem lub miejsc, w których pożądane jest przezroczyste tło. PNG może być również używany, ale nie mam z tym dużego doświadczenia. BMP i TIFF prawdopodobnie nie są dobrymi kandydatami do aplikacji internetowych.
źródło
Co powiedzieli coobird i Gerald.
Ponadto JPEG to nazwa formatu pliku. JPG jest powszechnie używanym skróconym rozszerzeniem pliku dla tego formatu, ponieważ we wcześniejszych systemach Windows potrzebne było 3-literowe rozszerzenie pliku. Podobnie z TIFF i TIF.
Przeglądarki internetowe w tej chwili wyświetlają tylko pliki JPEG, PNG i GIF - więc to są te, które można wyświetlać na stronach internetowych.
źródło
PNG obsługuje przezroczystość kanałów alfanumerycznych.
TIFF może mieć rozszerzone opcje, tj. Odniesienia geograficzne dla aplikacji GIS .
Zalecam używanie formatu JPEG tylko w przypadku zdjęć, nigdy w przypadku obrazów takich jak obiekty clipart, logo, tekst, diagramy, grafiki liniowe.
Preferuj PNG.
źródło
Wymienione wszystkie są grafikami rastrowymi, ale oprócz tego nie zapominaj o coraz ważniejszych wektorach. Istnieją typy skompresowane i nieskompresowane (w mniejszym lub większym stopniu), ale wszystkie są bezstratne. Najważniejsze to:
źródło
Rozszerzenie pliku informuje o sposobie zapisania obrazu. Niektóre z tych formatów po prostu zapisują bity bez zmian, niektóre kompresują obraz na różne sposoby, w tym metodą bezstratną i stratną. Sieć może ci to powiedzieć, chociaż wiem, że niektórzy z pacjentów, którzy udzielili pomocy, przedstawią je tutaj.
Sieć preferuje głównie gif, jpg i png. JPEG jest tym samym (lub bardzo zbliżonym) do jpg.
źródło
W przypadku określonej różnicy i zastosowania między różnymi formatami obrazu mamy już dobrą dyskusję powyżej.
Chcę jednak dodać coś do ogólnego procesu robienia zdjęć i ich przechowywania.
Proces przechwytywania
Lub możesz powiedzieć proces konstruowania (tak jak teraz możemy rysować lub robić zdjęcia za pomocą komputerów). Jeśli robisz zdjęcie aparatem, używasz już wielu czujników (CCD lub CMOS) i algorytmów (filtr wzoru Bayera, podpróbkowanie i kwantyzacja itp.). Są też takie rzeczy jak
Pixel Format
iColor Space
. Po uzyskaniu podstawowych informacji o pikselach musi istnieć sposób na ich przechowywanie.Podstawowa struktura pliku obrazu
Do przechowywania informacji o pikselach w pliku potrzebujemy konwencji i powiązanych algorytmów. Aby zaoszczędzić miejsce, istnieje kompresja, ale zasadniczo problem polega na kodowaniu pikseli na bajty i dekodowaniu bajtów na piksele w celu wyświetlenia.
Typowy plik obrazu może składać się z kilku części, w zasadzie dwóch:
meta data or file header
ipixel data section
.meta data
Mówi o obrazie samego, możeheight
iwidth
,file format
itp Apixel data section
jest prawdziwasection
, która zajmuje sięreal picture
.Przechowywanie i wyświetlanie
Jak powiedzieliśmy wcześniej, pliki są przechowywane na dysku twardym i są w bajtach / bitach. Pliki obrazów nie mają więc żadnego priorytetu, ale w rzeczywistości również przesyłają bajty. Do wyświetlania, może powinniśmy coś wiedzieć, jak działa monitor. Typowe monitory PC wykorzystują do wyświetlania model RGB.
Mam nadzieję że to pomoże:-)
źródło