В чем разница между изображениями "JPG" / "JPEG" / "PNG" / "BMP" / "GIF" / "TIFF"?

Я видел много типов расширений изображений, но никогда не понимал реальных различий между ними. Существуют ли какие-либо ссылки, которые четко объясняют их различия?

Существуют ли стандарты, которые следует учитывать при выборе конкретного типа изображения для использования в приложении? Что мы используем для веб-приложений?

Ответ 1

Да. Это разные форматы файлов (и их расширения файлов).

Записи Википедии для каждого из форматов дадут вам довольно много информации:

  • JPEG (или JPG для расширения файла, Joint Photographic Experts Group)
  • PNG (Portable Network Graphics)
  • BMP (растровое изображение)
  • GIF (формат обмена графикой)
  • TIFF (или TIF ​​для расширения файла, Tagged Image File Format)

Форматы изображений можно разделить на три широкие категории:

  • сжатие с потерями,
  • сжатие без потерь,
  • несжатых

Несжатые форматы занимают наибольшее количество данных, но они являются точными изображениями изображения. Растровые форматы, такие как BMP, обычно несжаты, хотя есть также сжатые BMP файлы.

Формат Lossy compression обычно подходит для фотографий. Он не подходит для иллюстраций, рисунков и текста, поскольку артефакты сжатия от сжатия изображения будут выдающимися. Сжатие Lossy, как следует из его названия, не кодирует всю информацию файла, поэтому, когда оно восстанавливается в изображение, оно не будет точным представлением оригинала. Однако он способен сжимать изображения очень эффективно по сравнению с форматами без потерь, поскольку он отбрасывает определенную информацию. Ярким примером формата сжатия с потерей является JPEG.

Форматы сжатия без потерь подходят для иллюстраций, рисунков, текста и других материалов, которые не выглядели бы хорошо при сжатии с сжатием с потерями. Как следует из названия, сжатие без потерь будет кодировать всю информацию из оригинала, поэтому, когда изображение распаковывается, оно будет точным представлением оригинала. Поскольку нет потери информации при сжатии без потерь, в большинстве случаев она не может достичь такого высокого сжатия, как сжатие с потерями. Примерами сжатия без потерь являются PNG и GIF. (GIF поддерживает только 8-битные изображения.)

TIFF и BMP являются форматами "обертки", поскольку данные внутри могут зависеть от используемой техники сжатия. Он может содержать сжатые и несжатые изображения.

Когда использовать определенный формат сжатия изображений, действительно зависит от того, что сжимается.

Похожие вопросы: Безжалостно сжимать большие изображения для Интернета

Ответ 2

Вы должны знать о нескольких ключевых факторах...

Во-первых, есть два типа сжатия: Lossless и Lossy.

Lossless означает, что изображение уменьшено, но не ухудшает качество. Lossy означает, что изображение сделано (даже) меньше, но в ущерб качеству. Если вы сохранили изображение в формате Lossy снова и снова, качество изображения будет становиться все хуже и хуже.

Существуют также различные глубины цвета (палитры): Указанный цвет и Прямой цвет.

С индексированным это означает, что изображение может хранить только ограниченное количество цветов (обычно 256), которые выбраны автором изображения, с Прямой, это означает, что вы может хранить много тысяч цветов, которые не были выбраны автором.


BMP - Lossless/Indexed и Direct

Это старый формат. Это Lossless (данные об изображении не теряются при сохранении), но также практически никакого сжатия, что означает сохранение, поскольку BMP приводит к ОЧЕНЬ большим размерам файлов. Он может иметь палитры как Indexed, так и Direct, но это небольшое утешение. Размеры файлов настолько неоправданны, что никто никогда не использует этот формат.

Хорошо: ничего действительно. Существует не что-то, что BMP превосходит или не улучшается другими форматами.

BMP vs GIF


GIF - Без потерь/Только индексирование

GIF использует сжатие без потерь, что означает, что вы можете сохранять изображение снова и снова и никогда не теряете никаких данных. Размеры файлов намного меньше, чем BMP, потому что хорошее сжатие фактически используется, но оно может хранить только индексированную палитру. Это означает, что в файле может быть только 256 различных цветов. Это звучит довольно мало, и это так.

Изображения GIF также могут быть анимированы и иметь прозрачность.

Хорошо для: Логотипы, чертежи линий и другие простые изображения, которые должны быть небольшими. Только на самом деле используется для веб-сайтов.

GIF vs JPEG


JPEG - Lossy/Direct

Изображения JPEG были предназначены для того, чтобы сделать как можно более подробные фотографические изображения, удалив информацию, которую человеческий глаз не заметит. В результате формат Lossy и сохранение одного и того же файла снова и снова будут приводить к тому, что с течением времени будет потеряно больше данных. У него есть палитра тысяч цветов, и это отлично подходит для фотографий, но сжатие с потерями означает, что это плохо для логотипов и линейных рисунков: они не только выглядят нечеткими, но и такие изображения также будут иметь больший размер файла по сравнению с GIF!

Хорошо для: Фотографии. Кроме того, градиенты.

JPEG vs GIF


PNG-8 - Lossless/Indexed

PNG - более новый формат, а PNG-8 (индексированная версия PNG) - действительно хорошая замена для GIF. Однако, к сожалению, у него есть несколько недостатков: во-первых, он не может поддерживать анимацию, как GIF (может, она может, но только Firefox, похоже, поддерживает ее, в отличие от анимации GIF, которая поддерживается каждым браузером). Во-вторых, он имеет некоторые проблемы с поддержкой старых браузеров, таких как IE6. В-третьих, важное программное обеспечение, такое как Photoshop, имеет очень плохую реализацию формата. (Черт вас, Adobe!) PNG-8 может хранить только 256 цветов, например GIF.

Хорошо для: Главное, что PNG-8 работает лучше, чем GIF, поддерживает Alpha Transparency.

PNG-8 vs GIF

Важное примечание: Photoshop не поддерживает Alpha Transparency для файлов PNG-8. (Черт вас, Photoshop!) Есть способы конвертировать PNG-24 в PNG-8 файлы, сохраняя при этом свою прозрачность. Один из методов - PNGQuant, другой - сохранение ваших файлов с помощью Fireworks.


PNG-24 - Lossless/Direct

PNG-24 - отличный формат, который сочетает кодировку Lossless с прямым цветом (тысячи цветов, как JPEG). Это очень похоже на BMP в этом отношении, за исключением того, что PNG фактически сжимает изображения, поэтому это приводит к значительно меньшим файлам. К сожалению, файлы PNG-24 по-прежнему будут намного больше, чем JPEG, GIF и PNG-8, поэтому вам все равно нужно подумать, хотите ли вы его использовать.

Несмотря на то, что PNG-24 позволяют тысячи цветов при сжатии, они не предназначены для замены изображений JPEG. Фотография, сохраненная как PNG-24, скорее всего будет по меньшей мере в 5 раз больше, чем эквивалентное изображение в формате JPEG, что очень мало улучшает видимое качество. (Конечно, это может быть желательным результатом, если вас не интересует размер файла и вы хотите получить изображение лучшего качества, которое вы можете.)

Как и PNG-8, PNG-24 поддерживает альфа-прозрачность.

Я надеюсь, что это поможет!

Ответ 3

Обычно они либо:

Без потерь Алгоритмы сжатия без потерь уменьшают размер файла без потери качества изображения, хотя они не сжаты в виде небольшого файла в виде файла сжатия с потерями. Когда качество изображения оценивается выше размера файла, обычно выбираются алгоритмы без потерь.

Утраченное сжатие Лоссальные алгоритмы сжатия используют присущие ограничения человеческого глаза и отбрасывают невидимую информацию. Большинство алгоритмов сжатия с потерями позволяют изменять уровни качества (сжатие), и по мере увеличения этих уровней размер файла уменьшается. При самых высоких уровнях сжатия ухудшение изображения становится заметным как "артефакт сжатия". Изображения, приведенные ниже, демонстрируют заметное артефакты алгоритмов сжатия с потерями; выберите миниатюру, чтобы просмотреть полноразмерную версию.

Каждый формат отличается, как описано ниже:

JPEG Файлы JPEG (Joint Photographic Experts Group) - это (в большинстве случаев) формат с потерями; расширение имени файла DOS - JPG (другая ОС может использовать JPEG). Почти каждая цифровая камера может сохранять изображения в формате JPEG, который поддерживает 8 бит на цвет (красный, зеленый, синий) для 24-битного итога, создавая относительно небольшие файлы. Когда это не слишком велико, сжатие заметно не ухудшает качество изображения, но файлы JPEG ухудшают деградацию поколений при многократном редактировании и сохранении. Фотографические изображения могут быть лучше сохранены в формате без потерь JPEG, если они будут повторно отредактированы, или если небольшие "артефакты" (дефекты, вызванные алгоритмом сжатия JPEG) неприемлемы. Формат JPEG также используется в качестве алгоритма сжатия изображений во многих файлах Adobe PDF.

TIFF TIFF (Tagged Image File Format) - это гибкий формат, который обычно сохраняет 8 бит или 16 бит на цвет (красный, зеленый, синий) для 24-битных и 48-разрядных итогов соответственно, используя либо TIFF, либо имена файлов TIF. Гибкость TIFF - это и благословение, и проклятие, потому что ни один читатель не читает каждый тип файла TIFF. TIFF являются потерями и без потерь; некоторые предлагают относительно хорошее сжатие без потерь для двухуровневых (черно-белых) изображений. Некоторые цифровые камеры могут сохранять в формате TIFF, используя алгоритм сжатия LZW для хранения без потерь. Формат изображения TIFF широко не поддерживается веб-браузерами. TIFF по-прежнему широко используется в качестве стандартного файла фотографии в полиграфическом бизнесе. TIFF может обрабатывать цветовые пространства, специфичные для устройства, такие как CMYK, определенные конкретным набором чернил для печати. ​​

PNG Формат PNG (Portable Network Graphics) был создан как свободный, с открытым исходным кодом, преемник GIF. Формат файла PNG поддерживает truecolor (16 миллионов цветов), в то время как GIF поддерживает только 256 цветов. Файл PNG отличается тем, что изображение имеет большие, равномерно окрашенные области. Формат PNG без потерь лучше всего подходит для редактирования изображений, а форматы с потерями, такие как JPG, лучше всего подходят для окончательного распределения фотографических изображений, поскольку файлы JPG меньше, чем файлы PNG. Многие старые браузеры в настоящее время не поддерживают формат файла PNG, однако в Internet Explorer 7 все современные веб-браузеры полностью поддерживают формат PNG. Адаптация Adam7 позволяет раннее предварительное просмотрение, даже если передан только небольшой процент данных изображения.

GIF GIF (формат обмена изображениями) ограничен 8-битной палитрой или 256 цветами. Это делает формат GIF подходящим для хранения графики с относительно небольшим количеством цветов, таких как простые диаграммы, формы, логотипы и изображения в стиле мультяшного стиля. Формат GIF поддерживает анимацию и по-прежнему широко используется для обеспечения эффектов анимации изображения. Он также использует сжатие без потерь, которое более эффективно, когда большие области имеют один цвет и неэффективны для подробных изображений или затухающих изображений.

BMP Формат BMP файла (растровое изображение Windows) обрабатывает графические файлы в ОС Microsoft Windows. Как правило, файлы BMP несжаты, поэтому они большие; Преимуществом является их простота, широкое признание и использование в программах Windows.

Использование для веб-страниц/веб-приложений

Ниже приведен краткий обзор этих форматов изображений при использовании их с веб-страницей/приложением.

PNG отлично подходит для IE6 и выше (для обеспечения прозрачности работы потребуется небольшой CSS-патч). Отлично подходит для иллюстраций и фотографий. JPG отлично подходит для фотографий в Интернете. GIF хорош для иллюстраций, когда вы не хотите переходить на PNG BMP не следует использовать онлайн в веб-страницах - тратит трафик

Источник: Форматы файлов изображений

Ответ 4

Так как другие рассмотрели различия, я порадую использование.

TIFF обычно используется сканерами. Он делает огромные файлы и на самом деле не используется в приложениях.

BMP несжатый, а также делает огромные файлы. Он также не используется в приложениях.

GIF использовался повсюду в Интернете, но он не понравился, поскольку он поддерживает только ограниченное количество цветов и запатентован.

JPG/JPEG в основном используется для любого качества фотографии, но не для текста. Используемое сжатие с потерями имеет тенденцию к резким линиям.

PNG не такой маленький, как JPEG, но без потерь, поэтому он хорош для изображений с четкими линиями. Он широко используется в Интернете сейчас.

Лично я обычно использую PNG везде, где только могу. Это хороший компромисс между JPG и GIF.

Ответ 5

JPG > Совместная группа экспертов по фотографиям

1 JPG-изображения поддерживают 16 миллионов цветов и лучше всего подходят для фотографий и сложной графики

2 JPG не поддерживают прозрачность.

PNG > Портативная сетевая графика

1 Он использовался как альтернатива файлу GIF, когда технология GIF защищалась авторским правом и требовала разрешения на использование.

2 PNG позволяют на 5-25% больше сжатия, чем GIF, и с более широким диапазоном цветов. PNG используют двумерное чередование, что заставляет их загружаться в два раза быстрее, чем изображения GIF ".

3 Изображение, которое имеет много цветов или требует расширенной прозрачности переменных, PNG является предпочтительным типом файла.

GIF > Формат обмена графикой

1 Уменьшает количество цветов в изображении до 256.

2 GIF также поддерживают прозрачность.

3 GIF имеют уникальную возможность отображать последовательность изображений, похожую на видео, называемую анимированным GIF.

4 Если изображение имеет несколько цветов и не требует какого-либо расширенного эффекта альфа-прозрачности, GIF - это путь.

SVG > Масштабируемая векторная графика

1 SVG - это веб-стандарт на основе XML, который описывает как статические изображения, так и анимации в двух измерениях.

2 SVG позволяет создавать очень качественную графику и анимацию, которые не теряют деталей, поскольку их размер увеличивается/уменьшается.

Ответ 6

Эти имена относятся к различным способам кодирования данных пиксельных изображений (JPG и JPEG - одно и то же, и TIFF может просто заключать jpeg с некоторыми дополнительными метаданными).

Эти форматы изображений могут использовать различные алгоритмы сжатия, различные цветовые представления, различную возможность переноса дополнительных данных, отличных от самого изображения, и т.д.

Для веб-приложений я бы сказал, что jpeg или gif достаточно хороши. Jpeg используется чаще из-за его более высокой степени сжатия, а gif обычно используется для легкой анимации, когда вспышка (или что-то подобное) является более убитым или места, где требуется прозрачный фон. PNG также можно использовать, но у меня нет большого опыта в этом. BMP и TIFF, вероятно, не являются хорошими кандидатами для веб-приложений.

Ответ 7

То, что сказал Кообрид и Джеральд.

Кроме того, JPEG является именем формата файла. JPG обычно используется сокращенное расширение файла для этого формата, поскольку вам необходимо иметь расширение с 3-буквенными файлами для более ранних систем Windows. Аналогично с TIFF и TIF.

В настоящее время веб-браузеры отображают только файлы JPEG, PNG и GIF, поэтому те, которые могут отображаться на веб-страницах.

Ответ 8

PNG поддерживает прозрачность альфа-канала.

TIFF может иметь расширенные опции I.e. ссылка на геоданные для GIS приложений.

Я рекомендую использовать JPEG только для фотографий, никогда не для изображений, таких как клип, логотипы, текст, диаграммы, линейное искусство.

Благоприятный PNG.

Ответ 9

Названные - это все растровые графики, но помимо этого не забывайте о более важной векторной графике. Существуют сжатые и несжатые типы (более или менее), но все они без потерь. Наиболее важными являются:

Ответ 10

Расширение файла сообщает вам, как сохранить изображение. Некоторые из этих форматов просто сохраняют биты как они есть, некоторые сжимают изображение по-разному, включая методы без потерь и потери. Веб может рассказать вам, хотя я знаю, что некоторые пациенты ответят на них здесь.

В основном веб-сайт поддерживает gif, jpg и png. JPEG тот же (или очень близко) к jpg.

Ответ 11

Для указанной разницы и использования между различными форматами изображений есть хорошее обсуждение выше.

Однако я хочу добавить что-то для общего процесса захвата изображения и его хранения.

Процесс захвата

Или вы можете сказать процесс построения (как мы можем рисовать или делать снимки с компьютеров сейчас). Если вы делаете фотографию с помощью камеры, вы уже используете множество датчиков (CCD или CMOS) и алгоритмы (фильтр шаблонов Bayer, подэмплинг и квантование и т.д.). Также есть такие вещи, как Pixel Format и Color Space. После получения базовой информации о пикселях должен быть способ их хранения.

Основная структура файла изображения

Чтобы сохранить информацию о пикселях в файле, нам нужно соглашение и связанные с ним алгоритмы. Для экономии места есть сжатие, но в основном проблема заключается в кодировании пикселей в байтах и ​​декодировании байтов в пикселях для отображения.

Типичный файл изображения может состоять из нескольких частей, в основном двух: meta data or file header и pixel data section. meta data рассказывает о самом изображении, может быть height и width, file format и т.д. И pixel data section является реальным section, который имеет дело с real picture.

Сохранение и отображение

Как мы уже говорили, файлы хранятся на жестком диске и находятся в байтах/битах. Таким образом, файлы изображений не имеют приоритета, а также потоки байтов. Для показа, может быть, нам стоит узнать, как работает монитор. Типичные мониторы ПК используют модель RGB для отображения.

Надеюсь, что это поможет: -)