В процессе сжатия растровых графических файлов по алгоритму jpeg: В процессе сжатия растровых графических файлов по алгоритму JPEG его информационный объем

В процессе сжатия растровых графических файлов по алгоритму jpeg: В процессе сжатия растровых графических файлов по алгоритму JPEG его информационный объем

alexxlab 18.05.2021

Содержание

Методика обучения графическому редактору Adobe Photoshop в профильном курсе информатики (стр. 6 из 10)

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

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

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

Учитывая вышесказанное, задача преподавателя сводится к организации занятия, постановке задачи и цели занятия, объяснению теоретического материала, пояснению сложных понятий и процессов, которые необходимо выполнить. Методическиерекомендации:

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

Тема 1. Виды компьютерной графики

Понятия, рассматриваемые при обучении темы «Виды компьютерной графики»:

— растровая графика, векторная графика.

Основные вопросы, рассматриваемые при изучении темы «Виды компьютерной графики»

— виды графики;

— преимущество и недостатки компьютерной графики;

— форматы графических файлов.

Рекомендации

Урок по этой теме удобно провести в виде лекции. Эта тема является ознакомительной перед изучением программы Adobe Photoshop. Учащиеся должны четко отличать растровую, векторную графику. Знать преимущества и недостатки. Необходимо подробно рассмотреть форматы графических файлов. Учащиеся должны выбрать нужный формат при сохранении, знать какие форматы включают алгоритм сжатия без потерь качества, а какие приводят к необратимой потере части информации.

При рассмотрении понятий необходимо дать определения растровой, векторной графики, рассмотреть их достоинства и недостатки, а также их отличительные особенности. Также при объяснении темы рассказывается о форматах сохранения BMP, TIFF, GIF, PNG, JPEG, WMF, EPS, CDR. Достоинства и недостатки каждого формата.

Содержание

Растровые графические изображения формируются в процессе преобразования графической информации из аналоговой формы в цифровую. Растровое изображение хранится с помощью точек различного цвета (пикселей), которые образуют строки и столбцы. Каждый пиксель имеет определенное положение и цвет. Хранение каждого пикселя требует определенного количества битов информации, которое зависит от количества цветов в изображении.

Пиксель — минимальный участок изображения, цвет которого можно задать независимым образом.

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

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

Векторная графика. Векторные графические изображения являются оптимальным средством хранения высокоточных графических объектов, для которых имеет значение сохранение четких качественных и ясных контуров. Векторные изображения формируются из объектов (точка, линия, окружность, прямоугольник и пр.), которые хранятся в памяти компьютера в виде графических примитивов и описывающих их математических формул.

Например, графический примитив точка задается своими координатами (X,Y), линия — координатами начала (XI,Y1) и конца (X2,Y2), окружность координатами центра (X,Y) и радиусом (R), прямоугольник — координатами левого верхнего угла (X1,Y1) и правого нижнего угла (X2.Y2) и так далее. Для каждого примитива задается цвет.

Достоинством векторной графики является то, что файлы, хранящие векторные графические изображения, имеют сравнительно небольшой объем.

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

Для обработки изображений на компьютере используются специальные программы — графические редакторы. Они разделяются на две категории: растровые и векторные.

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

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

Сжатие применяется для растровых графических файлов, так как они имеют обычно достаточно большой объем. При сжатии графических файлов алгоритм сжатия включается в формат графического файла.

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

Для рисунков типа диаграммы целесообразно применение метода сжатия, который использует поиск повторяющихся в рисунке «узоров». Такой алгоритм используется в графических файлах форматов TIFF и GIF и позволяет сжать файл в несколько раз.

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

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

Рассмотрим некоторые форматы графических файлов более подробно.

Bit MaP image (BMP) — универсальный формат растровых графических файлов, используется в операционной системе Windows. Этот формат поддерживается многими графическими редакторами.

Tagged Image File Format (TIFF) — формат растровых графических файлов, поддерживается всеми основными графическими редакторами и компьютерными платформами. Включает в себя алгоритм сжатия без потерь информации. Рекомендуется для использования при работе с издательскими системами.

Graphics Interchange Format (GIF) — формат растровых графических файлов, поддерживается приложениями для различных операционных систем. Включает алгоритм сжатия без потерь информации, позволяющий уменьшить объем файла в несколько раз. Используется для размещения графических изображений на Web-страницах в Интернете.

Portable Network Graphic (PNG) — формат растровых графических файлов, аналогичный формату GIF. Рекомендуется для использования на Web-страницах.

Joint Photographic Expert Group (JPEG) — формат растровых графических файлов, который реализует эффективный алгоритм сжатия (метод JPEG) для отсканированных фотографий и иллюстраций. Алгоритм сжатия позволяет уменьшить объем файла в десятки раз, однако приводит к необратимой потере качества. Поддерживается приложениями для различных операционных систем. Данный формат является самым популярным.

Windows MetaFile (WMF) — универсальный формат векторных графических файлов для Windows-приложений. Используется для хранения коллекции графических изображений Microsoft Clip Gallery.

Encapsulated PostScript (EPS) — формат векторных графических файлов, поддерживается программами для различных операционных систем. Рекомендуется для печати и создания иллюстраций в настольных издательских системах.

CorelDRaw files (CDR) — оригинальный формат векторных графических файлов, используемый в системе обработки векторной графики CorelDraw.

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

На завершающем этапе урока следует задать вопросы.

Контрольные вопросы.

1. В чем состоит различие растровых и векторных графических изображений? (Векторные изображения имеют преимущество. Их можно масштабировать без потери качества в отличии от растровых.)

2. В каком случае изображение следует сохранять в формате JPEG?( В случае, если в дальнейшем изображение не будут увеличивать, изменять или редактировать и не требуется высокое качество.)

3. В каком редакторе, растровом или векторном, вы будете редактировать фотографию? (Фотографию можно редактировать исключительно в растровом редакторе, векторные программы не предназначены для обработки растровых изображений.)

4. Какой вид графики предполагает изменение размера без потери качества? (Векторная графика.)

Тема 2. Знакомство с Adobe Photoshop

Понятия, рассматриваемые при обучении темы «Знакомство с Adobe Photoshop»:

— рабочее окно;

— окно изображения;

— строка состояния;

— панель инструментов.

Основные вопросы, рассматриваемые при изучении темы «Знакомство с Adobe Photoshop»:

— назначение Adobe Photoshop;

— интерфейс программы Adobe Photoshop.

4.2.1.3 Графические форматы

GIF (CompuServe Graphics Interchange Format)

Формат, разработанный фирмой CompuServe для передачи растровой графики в сети, GIF-формат не зависит от аппаратных средств. Он использует алгоритм сжатия LZW, которые позволяет сжимать файлы с большими одноцветными площадями (логотип, заголовки, схемы). GIF-формат позволяет сохранять изображение «через строчку» (Interlacing), благодаря чему можно восстановить всю картинку, но с меньшей разрешающей способностью. Эту возможность широко используют в интернете. Поначалу вы видите грубую картинку, однако по мере прибытия новых данных качество картинки улучшается. В GIFе можно один или более цветов объявить прозрачным, в этом случае их не будет видно в интернет-браузере и некоторых других программах. Прозрачность обеспечивается дополнительным Alfa-каналом, который сохраняется вместе с файлом. GIF-файл может содержать и несколько растровых изображений, которые браузер загружает по одной, с частотой, указанной в файле. Такой файл называется анимированный GIF. Основным ограничением формата GIF является то, что изображение можно сохранить лишь в режиме 256 цветов.

 

PNG (Portable Network Graphics)

PNG это формат разработанный недавно, для замены формата GIF. Использует сжатие без потерь. Глубина цвета может быть любой вплоть до 48 бит. Использует Interlacing, причём не только для строк, но и для столбцов, поддерживает прозрачность с плавным переходом. В файле формата PNG сохраняется информация о гамма-коррекции. Гамма — это один цвет, который характеризует зависимость яркости экрана компьютера от напряжения на электродах кинескопа. Это число позволяет корректировать яркость картинки при отображении. Необходимо это для того, чтобы картинка, сделанная на компьютере одного типа, смотрелась бы одинаково и на экране другого типа. Это свойство помогает при применении основной идеи WWW, согласно которой отображение информации не должно зависеть от аппаратного обеспечения. PNG-файлы можно создавать в большинстве графических программ.

 

JPEG (Joint Photographic Experts Group)

На самом деле JPEG это не формат, а алгоритм сжатия, которые не основывается на поиске одинаковых элементов, как RLE и LZW, а использует различие пикселей. JPEG отыскивает плавные изменения цвета в квадрате 9х9 пикселей. Вместо действительных значений JPEG сохраняет скорость изменения от пикселя к пикселю. Избыточная с точки зрения алгоритма информация о цвете удаляется, заменяя некоторые значения средними. Чем больше плотность сжатия, тем больше данных выбрасывается и тем ниже качество картинки и меньше размер файла.

Используя JPEG, можно получить в 10-150 раз меньший файл, чем TIFF! Формат не зависит от аппаратных средств, PC и Macintosh поддерживают его полностью.

При сжатии с помощью JPEG лучший результат дают фотографии, потому что в них больше цветовых переходов, на одноцветных поверхностях логотипов и схем могут возникнуть помехи. Лучше сжимаются изображения с большим расширением(200-300 и более dpi) чем изображения с малой разрешающей способностью(72-150 dpi). В файлах с большим разрешением переходы мягче, потому что обрабатываемых квадратов 9х9 больше. В формате JPEG необходимо сохранять лишь конечный вариант работы, потому что с каждым сохранением теряются данные.

 

TIFF (Tagged Image File Format)

Не зависящий от аппаратных средств формат TIFF на сегодняшний день является одним из самых используемых и безопасных форматов. Его поддерживают практически все программы связанные с графикой на компьютерах PC и Macintosh. TIFF это лучший выбор для импортирования растровых изображений в издательские программы и программы векторной графики. Можно сохранять любые модели цветов: чёрно-белая, RGB, CMYK, а также дополнительные цвета Pantone. TIFF может сохранить векторы Photoshop, Alfa-каналы для создания масок в видеоклипах Adobe Premiere и множество других данных. Также существуют два вида TIFF-формата: для PC и Macintosh. Причиной является то, что процессоры Intel и Motorola используют различные виды представления чисел. Обычно графические программы читают оба варианта форматов. Самой большой проблемой является LZW сжатие, которое TIFF иногда использует. Часть программ (например, QuarkXPress 3.x и Adobe Streamline) такие файлы прочитать не могут, к тому же их распечатка может занять больше времени.

 

ArtisMedia | Блог компании ArtisMedia

Фотографии, графические рисунки, фоновые изображения – это визуальные элементы веб-дизайна, от которых зависит внешний вид сайта и скорость его загрузки.

Существует несколько графических форматов, которые чаще всего используются на веб-страницах. Это расширения JPEG, GIF, PNG и SVG. Чем же они отличатся между собой?

JPEG

JPEG (Joint Photographic Experts Group), также известный как JPG, – 16-битный формат растровых графических изображений. Является популярным расширением для цифровых фотографий, которые имеют яркие цвета и мелкие детали. Многие цифровые камеры предпочитают работать именно с этим форматом.

Поскольку JPEG изображения имеют тенденцию быстро загружаться, большинство веб-дизайнеров предпочитают этот формат для своих сайтов. JPEG использует сложный алгоритм сжатия, который отражает зависимость качества файла от степени его сжатия. При оптимальном проценте сжатия (60-75%) размер файла уменьшается, не вызывая заметных изменений внешнего вида картинки. Однако, надо учитывать, что каждое повторное сохранение файла JPEG снижает его качество.

Формат JPG не поддерживает прозрачность, что делает его практически бесполезным для логотипов и иконок. Также этот формат не подходит для графических текстовых файлов, так как при их сжатии увеличивается размытость и теряется четкость картинки.

Таким образом, JPEG является отличным расширением для веб-дизайна, но для хранения исходных изображений следует использовать форматы PSD, TIFF, RAW.

GIF

GIF (Graphic Interchange Format) — это тип растрового изображения, ограниченный 256 цветами. Алгоритм сжатия для файлов этого формата менее сложен, чем для файлов JPG. Сжатие не вызывает потерю данных. GIF расширение очень эффективно для логотипов, иконок, таблиц, но абсолютно не подходит для цифровых фотографий, которые имеют тысячи оттенков.

У GIF формата есть две отличительные особенности. Это поддержка прозрачности изображения и возможность анимации.

•  Прозрачность носит относительный характер: пикселы могут быть либо 100% прозрачны, либо 100% непрозрачны. Промежуточных значений не бывает. Если сделать какой-либо цвет прозрачным, то он будет прозрачным на всем изображении. Например, можно разместить рисунок логотипа поверх другого рисунка. В течение многих лет GIF был единственным форматом, который поддерживал прозрачность. Теперь же с этой целью можно использовать расширения PNG и SVG.

•  Анимированные GIF –распространенный формат изображений в интернете. Любой файл анимации GIF состоит из нескольких последовательных кадров, идущих с небольшой задержкой друг за другом. Повтор кадров может быть зациклен в бесконечном повторении либо может быть принудительно остановлен в конце.

PNG

PNG (Portable Network Graphic) — формат растровых изображений, является комбинацией GIF и JPEG. Лучше всего его использовать для простого и плоского графического дизайна. PNG изображения работают с прозрачностью лучше, чем GIF. Но, в отличие от GIF, анимация не может быть сгенерирована с помощью PNG.

Используя программы Adobe Illustrator, Adobe Photoshop дизайнеры создают, редактируют, изменяют размеры файлов PNG. При сохранении готовых изображений применяются два типа расширений: PNG-8 (8 бит) или PNG-24 (24 бита).

•  PNG-8 отображает только 256 цветов. Имеет хорошие параметры прозрачности, характеризуется улучшенным форматом сжатия.

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

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

SVG

SVG (Scalable Vector Graphics) – наиболее распространенный масштабируемый векторный формат. В отличие от растровых расширений (JPG, GIF и PNG), SVG файлы используют векторы для создания небольших файлов, которые могут быть увеличены до любого размера без потери качества.

Возможности файлов SVG неограниченны. Адаптивный дизайн в веб-разработке увеличил спрос на эти файлы. Геометрическая природа файлов SVG помогает легко адаптировать векторную графику до нужных параметров. Размер SVG-файла зависит от его сложности. Таким образом, для простых изображений SVG файл будет иметь меньший размер, чем любой растровый аналог (JPEG, PNG).

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

Предметно-методическая кафедра информатики и ИКТ

Согласно утвержденному графику, в училище состоялось заседание комиссии по аттестации педагогических работников училища. Среди аттестующихся педагогов была преподаватель информатики Щигал Елена Сергеевна, претендующая на высшую квалификационную категорию по должности «учитель».

Читать далее →

Рубрика: Новости

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

Читать далее →

Рубрика: Новости

Обновлённая версия интерактивной игры-викторины «Великая Победа», основанной на исторических фактах и событиях Великой Отечественной войны, создана в Оренбургском президентском кадетском училище.

Читать далее →

Рубрика: Новости

С 19 по 30 апреля 2021 г. будет проходить X открытый командный турнир по робототехнике «ОренБот-2021».

Читать далее →

Рубрика: Новости

На кафедре информатики и ИКТ прошло заседание преподавателей по теме «Анализ образовательных результатов 3 четверти, актуальные вопросы развития по предметным областям».

Читать далее →

Рубрика: Новости

Из Всероссийского детского центра «Смена» вернулся лидер робототехников Оренбургского президентского кадетского училища.

Читать далее →

Рубрика: Новости

В течение  текущего учебного года преподаватели информатики и технологии трудятся над  информационным и эстетическим обновлением учебных кабинетов.

 

Читать далее →

Рубрика: Новости

С апреля 2015 года правительство Российской Федерации приняло решение взять курс на создание подушки безопасности, в теории позволяющей смягчить удар после полного отключения страны от Американского программного обеспечения и защитить конфиденциальность информации, обрабатывая её на российских процессорах. 

Читать далее →

Рубрика: Новости

Подведены итоги училищного конкурса цифровых образовательных ресурсов «Цифровой прорыв-2020», в котором от ПМК информатики и ИКТ принимала участие Щигал Е.С.

Читать далее →

Рубрика: Новости

Методы и алгоритмы сжатия графической информации Текст научной статьи по специальности «Компьютерные и информационные науки»

МЕТОДЫ И АЛГОРИТМЫ СЖАТИЯ ГРАФИЧЕСКОЙ

ИНФОРМАЦИИ М.С. Тулякова

Научный руководитель — кандидат технических наук, доцент Б.А. Крылов

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

Введение

Сжатие — способ более эффективного представления информации. Эффективность сжатия изображения определяется уровнем его избыточности. В цифровых изображениях существуют различные типы избыточности. Первый тип обусловливается повторением в файле изображения пикселей одинаковых цветов, преобладанием какого-либо цвета (статистическая избыточность). Такая избыточность характерна для деловой графики (диаграммы, графики). Другой тип избыточности является результатом корреляции пикселей. Такая избыточность называется пространственной и чаще всего присутствует в фотореалистичных изображениях. Также для фотореалистичных изображений характерна психофизическая избыточность. Она связана с тем, что не все детали изображения одинаково воспринимаются зрителем. Ряд деталей, имеющих одновременно малые размеры и малый контраст, не видны на изображении, поэтому могут быть удалены без вреда для качества восприятия изображения.

Невозможно в общем виде сказать, имеет алгоритм сжатия высокую или низкую эффективность. Эффективность компрессии зависит от типа сжимаемого изображения. Можно выделить следующие типы:

• Двухуровневое (монохроматическое) изображение. Каждый пиксель изображения может принимать только одно из двух значений. Это самый простой тип изображения, где каждый пиксель изображения представлен одним битом.

• Полутоновое изображение. Значение каждого пикселя в этом случае представляет собой яркость соответствующей точки. Полутоновое изображение может иметь 2п (п = 4, 8, 12, 16, 24) градаций серого.

• Полноцветное изображение. Каждый пиксель такого изображения кодируется 24 битами, которые делятся на три 8-битовые группы. Эти группы содержат значения, которые управляют информацией о красном, зеленом и голубом цвете и их интенсивности. Типы данных истинного цвета RGB содержат 16.7 миллионов цветов.

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

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

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

Сжатие без потерь

RLE. Одним из самых простых алгоритмов сжатия без потерь является кодирование серий последовательностей — алгоритм RLE. На первом этапе реализации этого ал-

горитма происходит «вытягивание» двумерного файла изображения в одномерную цепочку бит. Дальнейшее кодирование осуществляется за счет наличия в этой цепочке повторяющихся блоков бит. В закодированный файл записываются пары «счетчик повторений — значение повторяющегося байта» [1].

Этот алгоритм рассчитан на изображения с большими областями постоянной яркости или цвета и маленьким количеством цветов. Примерами таких изображений может служить деловая графика — диаграммы, графики. К минусам данного алгоритма можно отнести его неэффективность применительно к фотореалистичным изображениям. В этом случае возможно даже увеличение размера заархивированного файла относительно исходного.

Групповое кодирование используется в таких форматах bitmap файлов, как BMP, PCX, TIFF.

Метод Хаффмана. Этот алгоритм практически не используется в чистом виде, а применяется как один из этапов компрессии в более сложных схемах. В его основе лежит учет частоты появления одинаковых пикселей в изображении. При этом пикселям исходного изображения, которые встречаются часто, сопоставляется код меньшей длины, а встречающимся редко — код большей длины [2]. Кодирование по Хаффману нуждается в точной статистике, касающейся того, как часто каждая величина появляется в исходном файле. Таким образом, для обеспечения правильной работы метод Хаффмана реализуется в два прохода. В первый проход собирается статистика частоты появления символов; во второй — кодируются сами символы. В этом случае в дополнение к закодированному изображению в файле необходимо хранить таблицу с соответствиями кодируемых пикселей и кодирующих цепочек битов. Существует вариант реализации этого алгоритма, при котором такая таблица строится адаптивно, в процессе архивации.

Рассмотрим пример сжатия по Хаффману (табл. 1). Пусть к, с, ч, з, ж, ф — цвета пикселей (красный, синий, черный, зеленый, желтый, фиолетовый). Входной поток: «ксссчччззжжжжжжжжжф». Сначала для каждого символа подсчитывается частота его появления в этом потоке. Далее строится двоичное дерево. Наиболее редко используемые значения в этом примере — «к» и «ф», так что они становятся первой парой; «к» присваивается 0-я ветвь, а «ф» — 1-я. Это означает, что 0 и 1 будут младшими битами кодов для «к» и «ф», соответственно. Более старшие биты будут получены из дерева по мере того, как оно будет построено. Затем частоты этих первых 2-х суммируются, что дает в итоге 2. Поскольку теперь самая низкая частота -2, эта пара объединяется с «з» (которое также имеет частоту 2). Исходной паре присваивается нулевая ветвь этого дерева, a «з» — первая ветвь. Таким образом, код для «к» заканчивается на 00; «ф» — на 01; «з» — на 1 и будет на один бит короче по сравнению с кодами для «к» и «ф».

Символ Частота Выходная последовательность

К 1 0000

Ф 1 0001

З 2 001

С 3 00

Ч 3 01

Ж 9 1

Таблица 1. Сжатие Хаффмана для входного потока пикселей

Алгоритм Хаффмана эффективен при сжатии изображений с ограниченным количеством цветов пикселей. Сжатие с фиксированной таблицей применяется в качестве последнего этапа архивации в JPEG. Этот алгоритм реализован также в формате TIFF.

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

Первый шаг этого алгоритма — создание таблицы с одним элементом кода для каждой возможной величины данных; например, 256 элементов для 8-битных данных. Далее алгоритм «просматривает» входной поток, и в эту таблицу добавляется каждое уникальное сочетание пикселей в сжимаемом изображении. Если на вход поступает уже имеющаяся комбинация пикселей, то в выходной поток записывается индекс ячейки в таблице, в которой эта комбинация содержится. Таким образом, алгоритм преобразует поток символов на входе в поток индексов ячеек таблицы на выходе. При переполнении таблицы алгоритм либо прекращает ее заполнение, либо очищает (полностью или частично) [1].

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

Алгоритм LZW эффективен при сжатии 8-битных изображений, имеющих небольшое количество цветов. Наличие шума в изображении значительно снижает эффективность сжатия. Существует огромное количество различных реализаций алгоритма сжатия LZW. Метод LZW используется для сжатия изображений при записи их в форматы TIFF и GIF.

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

Сжимаемая последовательность значений пикселей представляется как некоторая двоичная дробь из интервала [0, 1). Для сжатия цепочки пикселей определяют частоту появления каждого символа во входном потоке. Интервал [0, 1) разбивается на подин-тервалы с длинами, пропорциональными этим частотам. Далее за основу разбиения берется подинтервал, соответствующий частоте появления первого пикселя из последовательности, и также разбивается на подинтервалы, пропорциональные вероятностям появления пикселей. Далее берется подинтервал, соответствующий частоте появления следующего пикселя из входной последовательности, и также разбивается. Процедура повторяется. В качестве выходной последовательности берется любая дробь из окончательно определенного интервала [1].

Рассмотрим пример арифметического сжатия. Пусть к, с, з — цвета пикселей (красный, синий, зеленый). Входной поток: «ксзк». Вычисляется частота появления символа, и в соответствии с ней интервал [0, 1) делится на подынтервалы. Вычисленные значения указаны в табл. 2. Первый пиксель — к, поэтому для дальнейшего разбиения выбираем интервал [0.0; 0.5). Разбиваем этот интервал на подынтервалы и выбираем тот, который соответствует с — [0.25; 0.375). Разбиваем этот интервал на подынтервалы, выбираем соответствующие пикселю з — [0.34375; 0.375). Разбиваем этот интервал на подинтервалы еще раз и выбираем подынтервал, соответствующий пикселю к -[0.34375; 0,359375). Таким образом цепочку «ксзк» можно представить любым числом из этого подынтервала, например 0,35.

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

Символ Частота Первое деле- Второе деле-

ние на подин- ние на подин-

тервалы тервалы

К 0.5 [0.0; 0.5) [0; 0.25)

С 0.25 [0.5; 0.75) [0,25; 0.375)

З 0.25 [0.75; 1.0) [0.375; 1)

Третье деление на Четвертое деление на

подинтервалы подинтервалы

[0.25; 0.3125) [0.34375; 0,359375)

[0.3125; 0.34375) [0,359375; 0,3671875)

[0.34375; 0.375) [0,3671875;0.375)

Таблица 2. Вычисление интервалов при арифметическом сжатии

Сжатие с потерями

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

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

Сжатие JPEG происходит в несколько этапов. Первый этап заключается в преобразовании цветовой схемы RG8 в YUV (Y-компонента — это яркость, а две остальные -это голубая и красная цветовые компоненты). Цветное изображение в системе RGB представляется как результат сложения трех компонент

XC = a1 XR + a2 XG + a3 XB .

В этом выражении a„ a2, a3 — калориметрические коэффициенты. Переход от цветовой RGB-палитры к компонентам YUV выполняется по формуле (1):

Y = Va, [Xr ]2 + a2 [Xg ]2 + a3 X ]2 , (1)

U = Xb ,

V = XR .

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

Следующим этапом алгоритма JPEG является дискретизация. Исходное изображение разбивается на блоки, размером 8×8 пикселей. г, ч (2X +1) u n (2x +1) v n L L f (X У) cos-72-cos-77-

x=0y=0 16 16

(2)

где

‘ 1

С ( z) ='»

, если z = 0 V2 •

1, если z Ф 0

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

На этом основывается следующий этап сжатия методом JPEG — квантование. Именно на этом этапе происходит самая значительная потеря информации. Квантование представляет собой деление каждого полученного после ДКП блока коэффициентов на матрицу квантования поэлементно. Для каждой компоненты матрица квантования своя. Значение коэффициентов этой матрицы определяет степень сжатия изображения. Поскольку для U и V компонентов квантование может быть более грубым, чем для Y компонента, на последнем этапе процесса сжатие U и V компонентов происходит в большей степени. После квантования большинство значений в блоке становятся нулями, сохранятся только небольшое количество наиболее значимых коэффициентов, к тому же эти значения относительно невелики. Квантование также обеспечивает возможность последующего эффективного сжатия данных при помощи любого способа сжатия без потерь. Для этого блок 8×8 обходим при помощи зигзаг-сканирования, все коэффициенты вытягиваются в цепочку. В начале этой цепочки находятся коэффициенты, соответствующие низким частотам, а в конце — высоким. Далее к получившейся цепочке коэффициентов применяется RLE-кодирование, получившиеся в результате пары сжимаются по методу Хаффмана [5] .

JPEG — один из самых популярных алгоритмов сжатия. Он обеспечивает высокую эффективность сжатия при приемлемом уровне потерь. JPEG применяется, в основном, к фотореалистичным изображениям. Основной плюс этого алгоритма — это высокие коэффициенты сжатия изображений. К минусам можно отнести высокую вычислительную сложность и специфические искажения — эффект Гиббса. Этот эффект проявляется в том, что линии JPEG изображений с четкими контурами начинают заметно «дрожать». Так, например, если изображение содержит какие-либо подписи, то подобный эффект может возникнуть вокруг символов.

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

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

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

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

Функция аффинного преобразования описывается следующим образом:

a b х l

+

с d y f

f ( х) = ах + by +1, f (y) = сх + dy + f .

Здесь (х, y) — координата пикселя исходного изображения. Первая матрица определяет масштабирование и трансформацию исходного изображения (a, b, с и d — аффинные коэффициенты вращения, деформации, расширения и сжатия). Вторая матрица определяет величину параллельного переноса (l и f — коэффициенты перемещения).

Кодируемое изображение разбивается на множество неперекрывающихся блоков (ранговых областей), для каждого из которых, в пределах этого же изображения, ищется блок большего размера (домен), пиксели которого путем некоторого преобразования, задаваемого несколькими коэффициентами, переводились бы в пиксели ранговой области. Из преобразований, переводящих домены в ранговые области, формируется отображение, переводящее изображение в изображение. Если для какого-либо домена не находится подобного среди ранговых областей, то этот домен разбивают на части и ищут подобные ранговые области уже для этих частей. Кодом изображения будут являться местоположение и размеры ранговых областей, а также коэффициенты преобразований, описывающих самоподобие внутри изображения [5]. Количество бит, необходимых для описания кода, будет существенно меньше количества бит, необходимых для описания исходного изображения. Параметры аффинного преобразования кодируются по методу Хаффмана и сохраняются. Файл со сжатым изображением содержит две части: заголовок, содержащий информацию о расположении доменов и ранговых областей, и упакованную таблицу аффинных коэффициентов для каждого домена.

Алгоритм фрактального сжатия несимметричен по времени — на сжатие изображения требуется примерно в 1000-10000 раз больше времени, чем на распаковку. Это объясняется большими затратами времени на поиск в изображении подобных областей.

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

JPEG2000. Несмотря на большую популярность алгоритма JPEG, по прошествии нескольких лет был разработан новый алгоритм JPEG2000. Это связано с тем, что были разработаны новые, более эффективные, методы сжатия изображений, в частности wavеlet-преобразование.

Базовая схема JPEG2000 похожа на схему JPEG, но есть ряд отличий. Основным является то, что вместо дискретного косинусного преобразования (ДКП) используется дискретное wavеlet-преобразование. Применение wavеlet-преобразования имеет ряд преиму-

ществ по сравнению с ДКП, таких как увеличение коэффициента сжатия и избавление от блочной структуры изображения, возникающей в сильно сжатых JPEG файлах.

Первым этапом сжатия в алгоритме JPEG2000, также как и в JPEG, является преобразование цветовой схемы из RGВ в YUV. После этого к каждой компоненте исходного изображения применяется wavеlet-преобразование. Вначале исходное изображение подвергается фильтрации посредством четырех цифровых фильтров, которые делят спектр исходного изображения на четыре равные неперекрывающиеся области. Низкочастотный фильтр пропускает информацию, передаваемую на низких частотах (т.е. малое количество деталей), блокируя информацию, передаваемую на высоких частотах (т. е. содержащую большое количество деталей), а высокочастотный фильтр — наоборот. В итоге получается четыре области: первая представляет собой «размытую» версию исходного изображения (низкочастотный фильтр), три оставшихся — высокочастотные компоненты изображения, которые имеют вид горизонтальных, вертикальных и диагональных границ. Все четыре изображения подвергаются прореживанию путем устранения каждой второй строки и каждого второго отсчета в строке, а затем размещаются на той же площади, что и исходное изображение. Далее в пределах первой области, которая была отфильтрована низкочастотным фильтром, повторяют эту операцию. Количество повторений соответствует количеству уровней вейвлет-декомпозиции.

Следующим шагом wavеlet-преобразования, так же как и JPEG-сжатия, является квантование. Низкочастотные компоненты квантуются на меньшее число уровней, высокочастотные — на большее. Процесс квантования осуществляется путем деления матрицы отсчетов на матрицу квантования [4]. При квантовании отсчетов компонент, полученных в результате wavеlet-преобразования, на пониженное число уровней в них вносится шум квантования, но если сжатие не слишком велико, то шумы в восстановленном изображении будут не очень заметны.

Далее для сжатия получившегося массива данных используется арифметическое сжатие. Кодируется не все изображение и даже не отдельные субполосы, а более мелкие объекты — кодируемые блоки (КБ). Размер кодируемого блока может быть не более 4096 пикселей, высота не менее 4 пикселей. Такое разбиение, хотя и снижает несколько коэффициент сжатия, но повышает устойчивость сжатого потока к ошибкам канала связи: ошибка испортит лишь небольшой блок. Кодирование блоков ведется в три этапа, битовыми плоскостями [3].

Алгоритм сжатия JPEG2000 ориентирован на полоноцветные 24-битные изображения без резких переходов цветов. Стандарт JPEG2000 превосходит по эффективности стандарт JPEG примерно в 2 раза при сжатии с потерями и на 5-20% при сжатии без потерь. Представление изображения, полученное в результате wavеlet-преобразования, очень удобно тем, что оно обеспечивает возможность получения приблизительных копий изображения без осуществления полного обратного преобразования, это имеет большое значение при размещении изображения в Интернете.

Заключение

В статье описаны основные применяемые сегодня методы сжатия изображений. Выбор того или иного метода зависит от области, где будут применяться сжатые изображения, и от характеристик этих изображений. Каждый из методов имеет множество вариаций, но в статье приведены только основные принципы работы алгоритмов.

Литература

1. Ватолин Д., Ратушняк А., Смирнов М., Юкин В. Методы сжатия данных. М.: ДИАЛОГ-МИФИ, 2003. 384 с.

Исследование графических форматов — Курсовая

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ ЭЛЕКТРОНИКИ И МАТЕМАТИКИ

(Технический университет)

Курсовая работа

по дисциплине «Компьютерная графика»

Исследование графических форматов

Выполнил:

студент группы С-54

Попов Сергей

Падежнов Евгений

Преподаватель:

Королёв Д.А.

Москва 2012

План курсовой работы

Классификация графических форматов______________________________3

Методы сжатия графических данных (подробно)_____________________9

Графические форматы в печати____________________________________15

Исследование_____________________________________________________16

Заключение______________________________________________________19

Список использованной литературы________________________________20

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


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

Векторное изображение представляет собой совокупность отрезков кривых линий, которые описываются математическими выражениями, и цветных заливок. Проще говоря, чтобы компьютер нарисовал прямую линию, нужны координаты двух точек, которые соединяются по кратчайшему пути, для дуги задаются координаты центра окружности и радиус и т.д. Таким образом, векторная иллюстрация — это набор геометрических примитивов (простейших объектов, таких как линии, окружности, многогранники и тому подобное), использующихся для создания более сложных изображений.

Векторное изображение представляет собой совокупность отрезков кривых линий, которые описываются математическими выражениями, и цветных заливок. Проще говоря, чтобы компьютер нарисовал прямую линию, нужны координаты двух точек, которые соединяются по кратчайшему пути, для дуги задаются координаты центра окружности и радиус и т.д. Таким образом, векторная иллюстрация — это набор геометрических примитивов (простейших объектов, таких как линии, окружности, многогранники и тому подобное), использующихся для создания более сложных изображений.

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

Большинство векторных форматов могут так же содержать внедрённые в файл растровые объекты или ссылку на растровый файл (технология OPI). Сложность при передаче данных из одного векторного формата в другой заключается в использовании программами различных алгоритмов, разной математики при построении векторных и описании растровых объектов.

Проблема сохранения изображений для последующей их обработки чрезвычайно важна. С ней сталкиваются пользователи любых графических систем. Изображение может быть обработано несколькими графическими программами прежде, чем примет свой окончательный вид. Например, исходная фотография сначала сканируется, затем улучшается её чёткость и производится коррекция цветов в программе Adobe PhotoShop . После этого изображение может быть экспортировано в программу рисования, такую как CorelDRAW или Adobe Illustrator, для добавления рисованных картинок. Если изображение создаётся для статьи в журнале или книги, то оно должно быть импортировано в издательскую систему QuarkXPress или Adobe PageMaker. Если же изображение должно появиться в мультимедиа-презентации, то оно, вероятнее всего, будет использовано в Microsoft PowerPoint, Macromedia Director или размещено на Web-странице.

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

Сжатие применяется для растровых графических файлов, так как они имеют обычно достаточно большой объем. При сжатии графических файлов алгоритм сжатия включается в формат графического файла.

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

Классификация графических форматов

Векторные форматы графических файлов

AI – Adobe Illustrator artwork — векторный формат файлов, создаваемых программой Adobe Illustrator. У Adobe Illustrator большое число версий, и формат ai каждой новой версии зачастую несовместим с более старыми версиями. На практике наблюдается совместимость «снизу вверх», что означает возможность работы с файлом старой версии в более новой версии программы, но такой файл не может быть открыт в более старой программе. Начиная с версии Adobe Illustrator 10 поддерживается возможность импорта файлов более новых версий. Формат обеспечивает очень высокое качество рисунков, но по ряду параметров плохо совместим с другими программами (например, различные «фирменные» эффекты Adobe Illustrator и градиентная заливка могут не передаваться при сохранении в другие форматы). Изначально был основан на EPS. Corel DRAW и многие другие программы имеют встроенную поддержку этого формата.

Спецификация формата:/public/developer/en/illustrator/sdk/AI7FileFormat.pdf

CDR – Формат файла  — векторное изображение или рисунок, созданный с помощью программы CorelDRAW. Данный формат файла разработан компанией Corel  для использования в собственных программных продуктах. Так как формат проприетарный, CDR-файлы не поддерживаются многими программами, предназначенными для редактирования изображений. С помощью свободного конвертора uniconvertor возможна конвертация в свободные форматы, например в SVG. Информация:/wiki/CorelDRAW#Read.2Fwrite_support

PS – изначально это язык описаний страниц. Другими словами, это язык программирования, содержащий команды принтеру (такие принтеры называются PostScript-принтерами), и предназначенный для печати графики и текста. Создан фирмой Adobe. Важная черта — независимость от устройства (реально PostScript не всегда полностью независим от устройства) Был разработан в Adobe в начале 80-ых годов как часть ядра механизма печати компьютеров Apple, но вскоре стал широко распространенным стандартом для большинства компьютерных систем. Интерпретаторы Postscript (в виде программных или аппаратных компонентов) для печати документов присутствуют практически во всех современных компьютерных системах. В Postscript используется модель изображения текста (или рисунков) на чистой странице.

Спецификация формата:/devnet/postscript/pdfs/5001.DSC_Spec.pdf

fla, fh — исходные файлы проектов Adobe (ранее Macromedia) Flash. Ведут своё начало от формата FutureSplash, положившего начало технологиям Flash и ShockWave. Файлы являются контейнерами и могут содержать в себе векторную графику, растровые изображения, музыку и звуки, видео, программный код на специальном языке ActionScript, что позволяет создавать интерактивные приложения с широкими возможностями. При компиляции преобразуется в контейнер SWF, не подлежащий изменению.

Спецификация формата: http://www.digitalpreservation.gov/formats/fdd/fdd000132.shtml

SWF– ShockWave Flash, откомпилированный проект Adobe Flash, пригодный для публикации в сети и быстрого просмотра с помощью модуля браузера или отдельного плеера. Не может быть изменён без наличия исходного FLA-проекта, но возможна частичная декомпиляция и извлечение ресурсов.

Спецификация формата:/devnet/swf/pdf/swf_file_format_spec_v9.pdf

SVG — Scalable Vector Graphics – масштабируемая векторная графика. Является открытым стандартом и не является проприетарным форматом. Основанный на XML язык разметки, предназначенный для описания двухмерной векторной графики, поддерживается многими веб-браузерами и может быть использован при оформлении веб-страниц. К сожалению, формат не обеспечивает высокого качества и быстродействия в отношении сложных рисунков и имеет ограничения по сфере своего использования. Наиболее часто применяется при работе с открытым векторным редактором Inkscape. Также применяется сжатый формат SVGZ – SVG Zipped, так как XML-файлы больших объектов занимают много места.

Спецификация формата:/TR/SVG11/

WMF — Windows Metafile — графический формат файла в системе Microsoft Windows. Универсальный векторный формат, поддерживаемый большинством векторных редакторов. Не обеспечивает качество сложных рисунков, имеет ограниченное число поддерживаемых эффектов, поэтому для профессионального использования не подходит. Формат поддерживается рядом веб-браузеров и может быть использован при оформлении веб-страниц. Используется программами Windows и Microsoft Office, в частности векторный клипарт MS Office хранится в этом формате. Существует расширенная версия формата – EMF (Enhanced MetaFile).

Спецификация формата:/en-us/library/cc215212.aspx

PDF – Portable Document Format («переносимый формат документа») — кроссплатформенный формат электронных документов, созданный фирмой Adobe с использованием ряда возможностей языка PostScript. В первую очередь предназначен для представления в электронном виде полиграфической продукции. Для просмотра можно использовать официальную бесплатную программу Adobe Reader, а также программы сторонних разработчиков. PDF с 1 июля 2008 года является открытым стандартом ISO 32000. Формат PDF позволяет внедрять необходимые шрифты, векторные и растровые изображения, формы, интерактивные элементы и мультимедиа-вставки. Поддерживает RGB, CMYK, Grayscale, Lab, Duotone, Bitmap, несколько типов сжатия растровой информации.. Включает механизм электронных подписей и шифрования для криптозащиты и проверки подлинности документов.

Спецификация формата:/devnet/pdf/pdf_reference.html

Растровые форматы

BMP – (Windows Bitmap) разрабатывался фирмой Microsoft как совместимый со всеми приложениями Windows. Для приложений в операционной системе OS/2 имеется собственная версия BMP. В формате BMP можно сохранять черно-белые, серые полутоновые, индексные цветные и цветные изображения системы RGB (но не двухцветные или цветные изображения системы CMYK). Недостаток этих графических форматов: большой объем. Следствие — малая пригодность для Internet-публикаций.В BMP данные о цвете хранятся только в модели RGB, поддерживаются как индексированные цвета (до 256 цветов), так и полноцветные изображения, причем в режиме индексированных цветов возможна простейшая компрессия RLE (Run Length Encoding — кодирование с переменной длиной строки). Без компрессии размер файла стремится к максимально возможному. Применяется для хранения растровых изображений, предназначенных для использования в Windows и, по сути, больше ни на что не пригоден. Использование BMP не для нужд Windows является распространенной ошибкой новичков: использовать BMP нельзя ни в web, ни для печати, ни для простого переноса и хранения информации. Он хорошо подходит для хранения очень маленьких изображений — таких как иконки на рабочем столе. Большие же файлы в этом формате занимают слишком много места.

Спецификация формата:http://oep.berkeley.edu/pdf/FireProjects/OtherDocs/RoadBMPs.pdf

PCX – стандарт представления графической информации. Использовался графической программой ZSoft PC Paintbrush (одной из первых популярных графических программ) для MS-DOS компании Microsoft, текстовых процессоров и настольных издательских систем типа Microsoft Word и Ventura Publisher, разработанный компанией ZSoft Corporation для своего графического редактора Z-Soft PaintBrush для операционной системы MS-DOS. Многие программы и игры DOS использовали его для хранения графики. Изображения в формате PCX можно посмотреть большинством программ под DOS, в том числе и внутренним просмотрщиком Norton Commander. Цветовые возможности: 1, 2, 4, 8 или 24- битовый цвет, поддерживается только схема RGB, причем полностью отсутствуют возможности сохранения монохромного изображения в оттенках серого. Всегда применяется сжатие ROB. Как и ВМР, этот формат в значительной мере устарел и поддерживается современными графическими программами исключительно для совместимости с устаревшим программным обеспечением.

Спецификация формата:/9781565920583/CDROM/GFF/TEXTONLY/SUMMARY/PCX.HTM

GIF – Graphics InterChange Format («формата обмена графикой»), открытый формат, использующий алгоритм сжатия без потерь информации LZW.  поддерживает до 256 цветов, позволяет задавать один из цветов как прозрачный, дает возможность сохранения с чередованием строк (при просмотре сначала выводится каждая 8-я, затем каждая 4-я и т.д. Это позволяет судить об изображении до его полной загрузки). Способен содержать несколько кадров в одном файле с последующей последовательной демонстрацией (т.н. «;анимированный GIF»;). Уменьшение размера файла достигается удалением из описания палитры неиспользуемых цветов и построчного сжатия данных (записывается количество точек повторяющегося по горизонтали цвета, а не каждая точка с указанием ее цвета). Такой алгоритм дает лучшие результаты для изображений с протяженными по горизонтали однотонными объектами. Поддерживает прозрачность пикселей (двухуровневая – полная прозрачность, либо полная непрозрачность). Данный формат широко применяется при создании Web-страниц. Его выгодно применять для изображений с малым количеством цветов и резкими границами (например, для содержащих текст, для изображений карт, схем и чертежей).

Спецификация формата:/computer-graphics/gif/

PNG – Растровый графический формат PNG, набирающий всё большую популярность в эпоху веб 2.0, появился в далеком 1995 году как замена старому доброму GIF (и, частично, TIFF). К тому времени хозяева запатентованного GIF’а решили сбивать четырёхзначные суммы со всех разработчиков, использующих формат, и свободному сообществу ничего не осталось кроме как предложить бесплатную альтернативу. Portable Network Graphics, «Переносимая сетевая графика», открытый, разработан с целью заменить формат GIF. Использует алгоритм сжатия Deflate без потерь информации (усовершенствованный LZW). Максимальная глубина цвета — 48 бит. Поддерживает каналы градиентных масок прозрачности (256 уровней прозрачности). PNG — относительно новый формат, и поэтому ещё не очень распространён. В основном используется в Web-дизайне. В некоторых браузерах (к примеру, в IE6) отсутствует поддержка прозрачности PNG и поэтому не рекомендуется использовать прозрачные PNG изображения на Web-страницах.

Спецификация формата:/gff2/graphics/summary/png.htm

JPEG (JPG) — Joint Photographic Experts Group — формат, использующий алгоритм сжатия с потерями информации, который позволяет уменьшить размер файла в сотни раз. Глубина цвета — 24 бит. Не поддерживается прозрачность пикселей. При сильном сжатии в области резких границ появляются дефекты. Формат JPEG хорошо применять для сжатия полноцветных фотографий. Учитывая то, что при повторном сжатии происходит дальнейшее ухудшение качества, рекомендуется сохранять в JPEG только конечный результат работы. JPEG широко применяется при создании Web-страниц, а также для хранения больших коллекций фотографий.

Спецификация формата:/public/jfif.pdf

TIFF – Графический контейнер, который может сохранить и растровые, и векторные изображения; может содержать высококачественную графику, поддерживающую глубину цвета от 1 до 24-разрядов; поддерживает сжатие как с потерями, так и без потерь; также поддерживает многократные слои и страницы. Файлы TIFF были разработаны для того, чтобы стать стандартным форматом изображения, сохраняющим высококачественные цветные изображения на различных компьютерных платформах. Чаще всего они встречаются с расширением .TIF. Формат TIFF первоначально был разработан Aldus, объедившимся с Adobe Systems в 1994.

Спецификация формата:/public/developer/en/tiff/TIFF6.pdf

PSD — (PhotoShop Document). Собственный формат программы Adobe Photoshop (расширение имени файла .PSD), один из наиболее мощных по возможностям хранения растровой графической информации. Позволяет запоминать параметры слоев, каналов, степени прозрачности, множества масок. Поддерживаются 48-разрядное кодирование цвета, цветоделение и различные цветовые модели. Основной недостаток выражен в том, что отсутствие эффективного алгоритма сжатия информации приводит к большому объему файлов.

Спецификация формата: /faqs/graphics/fileformats-faq/part3/section-115.html

Методы сжатия графических данных (подробно)

При сжатии методом RLE (Run — Length Encoding) последовательность повторяющихся величин (в нашем случае — набор бит для представления видеопикселя) заменяется парой — повторяющейся величиной и числом её повторений.

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

Название формата

Программы, которые могут открывать файлы

Метод сжатия

BMP Windows Device Independent Bitmap

Все программы WINDOWS, которые используют растровую графику

RLE для 16- и 256- цветных изображений (по желанию)

PCX Z — Soft PaintBrush

Почти все графические приложения для PC

RLE (всегда)

GIF Graphic Interchange Format

Почти все растровые редакторы; большинство издательских пакетов; векторные редакторы, поддерживающие растровые объекты

LZW (всегда)

TIFF Tagged Image File Format

Большинство растровых редакторов и настольных издательских систем; векторные редакторы, поддерживающие растровые объекты

LZW (по желанию) и др.

TGA TrueVision Targa

Программы редактирования растровой графики

RLE (по желанию)

IMG Digital Research GEM Bitmap

Некоторые настольные издательские системы и редакторы изображений WINDOWS

RLE (всегда)

JPEG Joint Photographic Experts Group

Последние версии программ редактирования растровой графики; векторные редакторы, поддерживающие растровые объекты

JPEG (можно выбрать степень сжатия)

Метод сжатия RLE включается в некоторые графические форматы, например, в формат PCX .

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

Сжатие методом RLE наиболее эффективно для изображений, которые содержат большие области однотонной закраски, и наименее эффективно — для отсканированных фотографий, так как в них нет длинных последовательностей одинаковых видеопикселей.

Метод сжатия LZW (назван так по первым буквам его разработчиков Lempel, Ziv, Welch) основан на поиске повторяющихся узоров в изображении. Сильно насыщенные узорами рисунки могут сжиматься до 0,1 их первоначального размера. Метод сжатия LZW применяется для файлов форматов TIFF и GIF; при этом данные формата GIF сжимаются всегда, а в случае формата TIFF право выбора возможности сжатия предоставляется пользователю. Существуют варианты формата TIFF, которые используют другие методы сжатия. Из-за различных схем сжатия некоторые версии формата TIFF могут оказаться несовместимыми друг с другом. Это означает, что возможна ситуация, когда файл в формате TIFF не может быть прочитан в некоторой графической программе, хотя она должна «понимать» этот формат. Другими словами, не все форматы TIFF одинаковы. Но, несмотря на эту проблему, TIFF является одним из самых популярных растровых форматов в настоящее время.

Метод сжатия JPEG обеспечивает высокий коэффициент сжатия для рисунков фотографического качества. Формат файла JPEG , использующий этот метод сжатия, разработан объединенной группой экспертов по фотографии (Joint Photographic Experts Group). Сжатие по методу JPEG сильно уменьшает размер файла с растровым рисунком (возможен коэффициент сжатия 100 : 1). Высокий коэффициент сжатия достигается за счет сжатия с потерями, при котором в результирующем файле теряется часть исходной информации. Метод JPEG использует тот факт, что человеческий глаз очень чувствителен к изменению яркости, но изменения цвета он замечает хуже. Поэтому при сжатии этим методом запоминается больше информации о разнице между яркостями видеопикселей и меньше — о разнице между их цветами. Так как вероятность заметить, минимальные различия в цвете соседних пикселей, мала. Изображение после восстановления выглядит почти неизменным. Пользователю предоставляется возможность контролировать уровень потерь, указывая степень сжатия. Благодаря этому, можно выбрать наиболее подходящий режим обработки каждого изображения: возможность задания коэффициента сжатия позволяет сделать выбор между качеством изображения и экономией памяти. Если сохраняемое изображение — фотография, предназначенная для высокохудожественного издания, то ни о каких потерях не может быть и речи, так как рисунок должен быть воспроизведён как можно точнее. Если же изображение — фотография, которая будет размещена на поздравительной открытке, то потеря части исходной информации не имеет большого значения. Эксперимент поможет определить наиболее допустимый уровень потерь для каждого изображения.

В файлах растровых форматов запоминаются:

• размер изображения — количество видеопикселей в рисунке по горизонтали и вертикали

• битовая глубина — число битов, используемых для хранения цвета одного видеопикселя

• данные, описывающие рисунок (цвет каждого видеопикселя рисунка), а также некоторая дополнительная информация.

В файлах растровой графики разных форматов эти характеристики хранятся различными способами.

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

Методы сжатия делятся на две категории:

• сжатие файла с помощью программ — архиваторов;

• сжатие, алгоритм которого включён в формат файла.

В первом случае специальная программа считывает исходный файл, применяет к нему некоторый сжимающий алгоритм (архивирует) и создаёт новый файл. Выигрыш в размере нового файла может быть значительным. Однако этот файл не может быть использован ни одной программой до тех пор, пока он не будет преобразован в исходное состояние (разархивирован). Поэтому такое сжатие применимо только для длительного хранения и пересылки данных, но для повседневной работы оно неудобно. В системах DOS и WINDOWS наиболее популярными программами сжатия файлов являются ZIP, ARJ, RAR и другие.

Как правило, графические программы используют свои собственные форматы для сохранения изображений во внешней памяти. Собственный файловый формат — частный и наиболее эффективный формат для хранения файлов отдельного графического приложения. Например, «родной» формат CorelDRAW — CDR , Adobe PhotoShop — PSD, Fractal Design Painter — RIFF, Paint (стандартная программа WINDOWS ) — BMP. При сохранении изображения в файле всегда нужно указывать тип формата.

Кроме того, для каждого «чужого» графического формата открываются дополнительные диалоговые окна, с помощью которых пользователь устанавливает параметры формата (количество используемых цветов, необходимость сжатия — для BMP и TIFF, коэффициент сжатия — для JPEG и др.).

Преобразование файлов из растрового формата в векторный

Существуют два способа преобразования файлов из растрового формата в векторный:

1) преобразование растрового файла в растровый объект векторного изображения;

2) трассировка растрового изображения для создания векторного объекта.

Первый способ используется в программе CorelDRAW, которая, как правило, успешно импортирует файлы различных растровых форматов. К примеру, если растровая картинка содержит 16 миллионов цветов, CorelDRAW покажет изображение, приближенное по качеству к телевизионному. Однако, импортируемый растровый объект может становиться довольно большим даже в том случае, если исходный файл невелик. В файлах растровых форматов информация хранится достаточно эффективно, так как часто используются методы сжатия. Векторные форматы такой способностью не обладают. Поэтому растровый объект, хранящийся в векторном файле, может значительно превосходить по размерам исходный растровый файл.

Особенность второго способа преобразования растрового изображения в векторное заключается в следующем. Программа трассировки растровых изображений (например, CorelTRACE) ищет группы пикселей с одинаковым цветом, а затем создает соответствующие им векторные объекты. После трассировки векторизованные рисунки можно редактировать как угодно. На рис. 6 показано растровое изображение, которое хорошо преобразуется в векторное. Дело в том, что растровые рисунки, имеющие четко выраженные границы между группами пикселей одинакового цвета, хорошо переводятся в векторные. В то же время результат трассировки растрового изображения фотографического качества со сложными цветовыми переходами выглядит хуже оригинала.

Преобразование файлов одного векторного формата в другой

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

• считывает описания объектов на одном векторном языке,

• пытается перевести их на язык нового формата.

Если программа-переводчик считает описание объекта, для которого в новом формате нет точного соответствия, этот объект может быть либо описан похожими командами нового языка, либо не описан вообще. Таким образом, некоторые части рисунка могут исказиться или исчезнуть. Всё зависит от сложности исходного изображения.

Преобразование файлов из векторного формата в растровый

Преобразование изображений из векторного формата в растровый (этот процесс часто называют растрированием векторного изображения) встречается очень часто. Прежде, чем разместить рисованную (векторную) картинку на фотографии, её необходимо экспортировать в растровый формат.

Каждый раз, когда векторный рисунок направляется на устройство вывода (в частности, монитор или принтер), он подвергается растрированию — преобразованию в набор видеопикселей или точек.

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

Преобразование файлов одного растрового формата в другой

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

Для преобразования файлов из одного формата в другой используются специальные программы — преобразователи (конверторы) форматов. Однако большинство графических программ (CorelDRAW, Adobe Illustrator, Adobe PhotoShop и др.) могут читать и создавать файлы различных форматов, т. е. являются преобразователями форматов.

Исследование графических форматов

Сравнительная таблица по сравнению уровня сжатия растровых изображений в приложении к курсовой.

Заключение

Графические форматы различаются по виду хранимых данных (растровая, векторная и универсальные контейнеры), по допустимому объему данных, параметрам изображения, хранению палитры, методике сжатия. Растровый файл состоит из точек, число которых определяется разрешением, измеряемым обычно в точках на дюйм (dpi). Важным фактором, влияющим на качество изображения и размер файла, является глубина цвета — число разрядов, отводимых для хранения цветовой информации. Очевидно, что даже файлы с низким разрешением содержат в себе тысячи или десятки тысяч точек. Так, растровая картинка размером 1024х768 точек и с 256 цветами занимает 768Кбайт. Для уменьшения объемов файлов разработаны специальные алгоритмы сжатия. Именно они и являются основной причиной существования графических форматов. Векторный способ записи графических данных применяется в системах автоматического проектирования (CAD) и в графических пакетах. В этом случае изображение состоит из простейших элементов (линия, ломаная, эллипс, прямоугольник и т.д.) и кривых, для каждого из которых определен ряд атрибутов (например, для круга – координаты центра, радиус, толщина и цвет контурной линии, тип и цвета заливки и т.д.). Записывается также место объектов на странице и расположение их друг относительно друга (слои — какой из них «;лежит»; выше, а какой ниже). У каждого метода есть свои преимущества. Растровый позволяет передавать тонкие, едва уловимые детали образов, векторный же лучше всего применять, если оригинал имеет отчётливые геометрические очертания. Векторный файл меньше по объему, зато растровый быстрее отобразится на экране, так как для вывода векторного изображения процессору необходимо произвести множество математических операций. С другой стороны, векторные файлы гораздо проще редактировать. Существует множество программ, переводящих данные из векторного формата в растровый. Как правило, такая задача решается довольно просто, чего нельзя сказать об обратной операции — преобразовании растрового файла в векторный (трассировка) и даже о переводе одного векторного файла в другой. Векторные алгоритмы записи используют уникальные для каждой фирмы-поставщика математические модели, описывающие элементы изображения.

Графические редакторы (8 класс)

Векторная графика Векторная графика

 Векторные графические изображения являются оптимальным Векторные графические изображения являются оптимальным средством хранения высокоточных графических объектов (чертежи, средством хранения высокоточных графических объектов (чертежи, схемы и пр.), для которых имеет значение сохранение четких и ясных схемы и пр.), для которых имеет значение сохранение четких и ясных контуров. С векторной графикой вы сталкиваетесь, когда работаете с контуров. С векторной графикой вы сталкиваетесь, когда работаете с системами компьютерного черчения и автоматизированного системами компьютерного черчения и автоматизированного проектирования (САПР), программами обработки трехмерной графики проектирования (САПР), программами обработки трехмерной графики и др.и др.

 Векторные изображения формируются из объектов (точка, линия, Векторные изображения формируются из объектов (точка, линия, окружность, прямоугольник и пр.), которые хранятся в памяти окружность, прямоугольник и пр.), которые хранятся в памяти компьютера в виде графических примитивов и описывающих их компьютера в виде графических примитивов и описывающих их математических формул.математических формул.

 Например, графический примитив Например, графический примитив точкаточка задается своими задается своими координатами (X,Y), координатами (X,Y), линиялиния — координатами начала (XI,Y1) и конца — координатами начала (XI,Y1) и конца (X2,Y2), (X2,Y2), окружностьокружность — координатами центра (X,Y) и радиусом (R), — координатами центра (X,Y) и радиусом (R), прямоугольникпрямоугольник — координатами левого верхнего угла (X1,Y1) и — координатами левого верхнего угла (X1,Y1) и правого нижнего угла (X2.Y2) и так далее. Для каждого примитива правого нижнего угла (X2.Y2) и так далее. Для каждого примитива задается также цвет.задается также цвет. Например, рисунок, рассмотренный выше в векторном графическом Например, рисунок, рассмотренный выше в векторном графическом редакторе может быть задан с помощью четырех примитивов редакторе может быть задан с помощью четырех примитивов (окружности, 2-х точек и кривой линии).(окружности, 2-х точек и кривой линии).

Системы сжатия изображений JPEG — Исследовательская лаборатория компьютерной инженерии [CERL]

JPEG с потерями

JPEG — это аббревиатура от Joint Photographic Experts Group, а JFIF — это аббревиатура формата обмена файлами JPEG. Обычно файлы с расширением .JPG являются файлами JFIF. Если файл JPEG загружен в текстовый редактор, такой как Блокнот Windows, строка JFIF начинается в первой строке, начиная с 7-го символа. Сжатие JPEG в основном отбрасывает большую часть исходной информации, поэтому точное исходное изображение невозможно восстановить из файла JPEG.Это называется сжатием с потерями. Хотя это звучит плохо, фотография на самом деле содержит значительную информацию, которую человеческий глаз не может обнаружить, поэтому от нее можно безопасно отказаться.

Режимы сжатия JPEG

Стандарт JPEG определяет четыре режима сжатия: иерархическое, прогрессивное, последовательное и без потерь. На рисунке 0 показана взаимосвязь основных режимов сжатия JPEG и процессов кодирования.

Рисунок 0. Режимы работы JPEG

  1. Последовательный: изображения в последовательном режиме кодируются сверху вниз.Последовательный режим поддерживает выборки данных с точностью 8 и 12 бит. В последовательном формате JPEG каждый компонент цвета полностью кодируется за одно сканирование. В последовательном режиме стандартом JPEG определены два альтернативных процесса энтропийного кодирования: один использует кодирование Хаффмана; в другом используется арифметическое кодирование.
  2. Progressive: в изображениях JPEG с прогрессивной разверткой компоненты кодируются при многократном сканировании. Сжатые данные для каждого компонента помещаются от минимум 2 до 896 сканирований.Первоначальное сканирование создает грубую версию изображения, а последующее сканирование уточняет его.
  3. Без потерь: сохраняет точное исходное изображение, малый коэффициент сжатия, меньше использования
  4. Иерархический: JPEG — это суперпрогрессивный режим, в котором изображение разбивается на ряд фрагментов изображения, называемых кадрами. Кадр — это набор из одного или нескольких сканированных изображений. В иерархическом режиме первый кадр создает версию изображения с низким разрешением. Остальные кадры уточняют изображение, увеличивая раствор.(В-1) -1]. Цель этого — гарантировать, что все DCT-коэффициенты будут величинами со знаком с одинаковым динамическим диапазоном. Изображение разбито на блоки размером 8 × 8. Затем каждый блок независимо преобразуется с использованием DCT 8 × 8. Если размеры изображения не кратны 8, блоки на нижней и правой границах могут быть заняты только частично. Эти граничные блоки должны быть дополнены до полного размера блока 8 × 8 и обработаны таким же образом, как и любой другой блок.Компрессор может выбрать значение, используемое для заполнения частичных граничных блоков.

    Цветовое пространство

    Карта VGA отображает цвета, устанавливая интенсивность трех цветов: КРАСНЫЙ, СИНИЙ и ЗЕЛЕНЫЙ. Три цвета образуют ось декартовой системы координат. Тогда любой цвет является точкой в ​​этом цветовом пространстве. Изображение в градациях серого формируется только с использованием точек в цветовом пространстве, где интенсивности КРАСНОГО, СИНЕГО и ЗЕЛЕНОГО цветов равны. Альтернативный набор осей, так называемая яркость и цветность.Ось яркости обозначена Y, синяя ось цветности обозначена U, а красная ось цветности обозначена V. Три новые оси, которые мы создали, образуют три компонента, используемых в файлах изображений JPEG. Следующие формулы преобразуют две системы координат.

     Y = 0,299 R + 0,587 G + 0,114 B
    U = -0,1687 R - 0,3313 G + 0,5 B + 128
    V = 0,5 R - 0,4187 G - 0,0813 B + 128
    
    R = Y + 1.402 (V-128)
    G = Y - 0,34414 (У-128) - 0.71414 (В-128)
    В = Y + 1.772 (U-128)
     

    Существует причина для использования цветового пространства YUV. Человеческий глаз более чувствителен к яркости, чем к цветности. Обычно файлы JPEG выкидывают 3/4 информации о цветности до того, как произойдет какое-либо другое сжатие. Это сокращает объем информации, хранящейся об изображении, на 1/2. Когда все три компонента полностью сохранены, для 4 пикселей требуется 3 x 4 = 12 значений компонентов. Если отбрасываются 3/4 из двух компонентов, нам нужно 1 x 4 + 2 x 1 = 6 значений.
    Наибольшие горизонтальные и вертикальные коэффициенты выборки определяют высоту и ширину минимальной кодированной единицы (MCU) соответственно. Для случая, показанного на фиг.4, MCU будет иметь два блока 8 × 8 в высоту и два блока 8 × 8 в ширину, всего четыре блока 8 × 8. Блоки сохраняются в файле сначала все Ys, затем все Us, затем все Vs. В этом случае один MCU будет содержать четыре блока Y 8 × 8, за которыми следует один блок U 8 × 8 и один блок V 8 × 8

    .

    Рисунок 1. Трехкомпонентное изображение с субдискретизацией цветности

    Базовая единица данных — блок 8 × 8.Каждая единица данных представляет информацию для одного компонента информации о цвете пикселей. Компонент может быть яркостью (Y), цветностью синего (U) или красным (V).

    Система сжатия изображений JPEG

    Рисунок 2 описывает основные части системы сжатия JPEG. Цветное изображение (которое представлено тремя основными цветными изображениями — красным, зеленым и синим) преобразуется в изображения эквивалентной яркости и цветности (Y, U и V) с использованием формулы преобразования, как показано в предыдущем разделе.Смещение уровня включено в преобразование цвета. Затем изображения цветности U и V подвергаются субдискретизации с определенным коэффициентом, чтобы уменьшить количество выборок для сохранения скорости передачи битов.

    Рисунок 2. Система сжатия изображений JPEG

    Выходные изображения цветности и яркости разделены на блоки 8 × 8. Каждый блок данных 8 × 8 подвергается дискретному косинусному преобразованию (DCT). Исходный блок данных 8 × 8 и эквивалентный ему блок DCT-коэффициентов показаны на рисунке 3

    .

    Рисунок 3.Исходный блок данных (слева) и эквивалентные коэффициенты DCT (справа)

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

    Рисунок 4. Таблица квантования яркости (слева) и квантованные коэффициенты DCT (справа)

    На рисунке 4 показана конкретная таблица квантования яркости и квантованные коэффициенты блока DCT, как показано на рисунке 3. Большинство коэффициентов переменного тока уменьшены до нуля, и очень небольшое количество ненулевых значений сосредоточено на низких пространственных частотах (окрестность коэффициента постоянного тока). Чтобы улучшить степень сжатия, квантованный блок переупорядочивается в зигзагообразном порядке, затем применяется метод кодирования длины серии для преобразования последовательности в промежуточные символы. Symbol- 1 содержит информацию (RUNLENGTH, SIZE), а Symbol- 2 содержит информацию (AMPLITUDE)

    Рис. 5. Квантованные коэффициенты в зигзагообразном порядке (вверху) и промежуточные символы из DPCM и кодирования длин серий (внизу)

    На рисунке 5 показаны промежуточные символы, которые необходимо представить для блока данных, показанного на рисунке 3. Коэффициент DC заменяется разностью между коэффициентом DC текущего блока и коэффициентом предыдущего блока.В примере, представленном на рисунке, операция DCT завершается базой компьютера с типом данных фиксированной точки. Быстрый алгоритм DCT включает операции сложения, вычитания и сдвига. Требуется временная память для хранения блока входных данных 8 × 8 и промежуточных результатов. Все они являются причиной компьютерных ошибок. Таким образом, разработка отказоустойчивости для этапа DCT является важной работой в исследовательском проекте. Квантованные коэффициенты DCT являются предметом DPCM и кодирования длины прогона.DPCM используется для вычисления разницы между значением DC текущего блока и значением предыдущего блока. Кодирование длины прогона используется для переупорядочивания коэффициентов переменного тока по зигзагообразной траектории в блоке 8 × 8.

    Дискретное косинусное преобразование

    Идеи сжатия JPEG исходят из инженерного фона. Электрические и звуковые волны можно представить как серию амплитуд во времени. Дискретное косинусное преобразование (DCT) — один из основных строительных блоков JPEG.Дискретное косинусное преобразование было впервые применено к сжатию изображений в новаторской работе Ахмеда, Натараджана и Рао, в которой они показали, что это конкретное преобразование очень близко к преобразованию KLH, преобразованию, которое дает некоррелированные коэффициенты. Другим важным аспектом DCT является возможность квантования коэффициентов DCT с использованием обычно взвешенных значений квантования. Для обнаружения неисправности в сетях DCT была предложена схема одновременного обнаружения ошибок (CED).
    При преобразовании изображения непрерывное тональное изображение может быть представлено серией амплитуд для каждого цветового компонента в двухмерном пространстве.Подобно преобразованию Фурье, дискретное косинусное преобразование используется для отбрасывания высокочастотной информации, которая оказывает небольшое визуальное влияние на изображение. Для представления неподвижного изображения частоты здесь относятся к пространственным частотам, а не к временным частотам.
    Операция DCT в системе сжатия изображений JPEG начинается с блока данных изображения 8 × 8, f (x, y). Этот блок может быть преобразован в новый блок 8 × 8, F (x, y), прямым дискретным косинусным преобразованием (FDCT). Исходный блок f (x, y) может быть получен с помощью обратного дискретного косинусного преобразования (IDCT).Уравнения для дискретных косинусных преобразований:


    Поскольку 2-D DCT является разделяемым, суммирование может быть выполнено как восемь 1-D DCT для всех строк, а затем восемь 1-D DCT для восьми столбцов, сформированных коэффициентами для строк. Быстрый алгоритм 8-точечного DCT может быть реализован на рисунке 6. Путь стрелки на графике представляет знак минус в узле. Сам узел представляет собой сложение или вычитание.

    Рис. 6. Блок-схема для 8-точечного DCT адаптирована из Араи, Агуи и Накадзимы.
    a1 = 0: 707; а2 = 0: 541; а3 = 0: 707; а4 = 1: 307; и a5 = 0: 383

    Эта версия DCT имеет 13 умножений и 29 сложений, что составляет конкуренцию лучшим, достигнутым другими методами. Из 13 умножений восемь предназначены для масштабирования конечного результата до правильного диапазона. Если выходные данные должны быть квантованы, они могут быть оставлены в этой масштабированной форме, а коэффициенты масштабирования могут быть включены в деления, необходимые для квантования выходных данных. Наконец, на самом деле перед квантованием необходимо всего 5 умножений, что делает наиболее эффективным 1-мерное квантованное DCT.

    Кодирование Хаффмана

    Коды

    Хаффмана — широко используемый и очень эффективный метод сжатия данных; экономия от 20% до 90% является типичной, в зависимости от характеристик сжимаемых данных. Данные, которые здесь следует учитывать, представляют собой последовательность символов. Жадный алгоритм Хаффмана использует таблицу частот встречаемости символов для построения оптимального способа представления каждого символа в виде двоичной строки. Имеется файл данных длиной 100 000 символов, который необходимо хранить компактно.Предположим, что символы в файле встречаются с частотами, указанными в Таблице 1

    Таблица 1. Частота символов в файле

    б с d e f
    Частота (в тысячах) 45 13 12 16 9 5
    Кодовое слово фиксированной длины 000 001 010 011 100 101
    Кодовое слово переменной длины 0 101 100 111 1101 1100

    Файл данных содержит только символы a-f с указанными частотами.Если каждому символу присвоено трехбитовое кодовое слово, файл может быть закодирован в 300 000 битов. Используя показанный код переменной длины, файл можно закодировать в 224 000 бит, что экономит примерно 25%. Фактически, это оптимальный символьный код для этого файла. После определения символов алфавита эффективность сжатия может быть повышена за счет использования более коротких кодовых слов для более вероятных символов и более длинных кодовых слов для менее вероятных символов. Эти кодовые слова переменной длины принадлежат схеме энтропийного кодирования.Кодирование
    Хаффмана — это один из методов энтропийного кодирования, который JPEG использует в своем стандарте сжатия. Мы видим здесь только коды, в которых кодовое слово не является префиксом другого кодового слова. Такие коды называются префиксными кодами. Можно показать, что оптимальное сжатие данных, достижимое с помощью символьного кода, всегда может быть достигнуто с помощью префиксного кода. Кодирование всегда просто для любого двоичного символьного кода; Кодовые слова, представляющие каждый символ файла, просто объединяются. Например, с префиксным кодом переменной длины из Таблицы 1 3 символа abc кодируются как 0.101.100 = 0101100, где «.» используется для обозначения конкатенации. Процесс декодирования требует удобного представления кода префикса, чтобы можно было легко выбрать исходное кодовое слово.

    Бинарное дерево, листья которого являются заданными символами, обеспечивает одно такое представление. Мы интерпретируем двоичное кодовое слово для символа как путь от корня к этому символу, где 0 означает «перейти к левому дочернему элементу», а 1 означает «перейти к правому дочернему элементу». На рисунке 7 показано дерево кодов фиксированной длины из приведенного выше примера.На каждом листе указан символ и частота его появления. Каждый внутренний узел помечен суммой частот листьев в его поддереве. Оптимальный код для файла всегда представлен полным двоичным деревом, в котором каждый нелистовой узел имеет двух дочерних элементов. Код фиксированной длины, показанный на рисунке 7, не является полным двоичным деревом: есть кодовые слова, начинающиеся с 10…., Но ни одно из них не начинается с 11….

    Рисунок 7. Дерево, соответствующее схеме кода фиксированной длины
    a = 000, b = 001, c = 010, d = 011, e = 100, f = 101

    Если дерево ограничено полным двоичным деревом, то если C — алфавит, из которого взяты символы, то дерево для оптимального префиксного кода имеет точно | C | листьев, по одному на каждую букву алфавита, и ровно | C | -1 внутренние узлы.На рисунке 8 показано полное двоичное дерево, которое реализует оптимальный префиксный код для приведенного выше примера.

    Рисунок 8. Дерево, соответствующее оптимальному коду префикса для данного файла данных
    a = 0, b = 101, c = 100, d = 111, e = 1101, f = 1100

    Имея дерево T , соответствующее префиксному коду, легко вычислить количество битов, необходимых для кодирования файла. Для каждого символа c в C , пусть f ( c ) обозначает частоту c в файле и пусть d ( c ) обозначает глубину листа c . в дереве. d ( c ) также является длиной кодового слова для символа c . Количество бит, необходимых для кодирования файла, составляет

    .

    Проблема с древовидными структурами состоит в том, что они очень чувствительны к ошибкам памяти и не имеют доступной избыточности. Деревья конструируются с использованием указателей для связывания узлов, и каждый узел несет информацию о себе, своем родителе и потомках. Следовательно, если один внутренний узел исчезает в результате ошибки памяти, то теряются все его дочерние узлы.Кодирование с использованием кодовых таблиц Хаффмана применяется в стандарте сжатия изображений JPEG. Индексы строки и столбца указывают размер кода, а также нулевую длину серии ненулевых коэффициентов DCT в блоке. Использование кодовой таблицы более подробно описано в проекте отказоустойчивости для кодирования Хаффмана в системах сжатия JPEG.

    Формат сжатых данных JPEG

    На рисунке 8 указан порядок составляющих старших частей формата обмена, который начинается маркером SOI, кадром и заканчивается маркером EOI.Структура кадра начинается с заголовка кадра и должна содержать одно или несколько сканирований. Заголовку кадра может предшествовать один или несколько сегментов спецификации таблицы или одновременных маркеров.

    Рис. 9. Простой формат данных сжатого изображения

    Если присутствует сегмент DLN (определение количества строк), он должен немедленно следовать за первым сканированием. Для процесса на основе DCT каждое сканирование должно содержать от одного до четырех компонентов изображения. Если в сканировании содержится от 2 до 4 компонентов, они должны чередоваться в пределах сканирования.Структура сканирования начинается с заголовка сканирования и содержит один или несколько сегментов данных с энтропийным кодированием. Каждому заголовку сканирования может предшествовать одна или несколько спецификаций таблицы или разные сегменты маркера. Если перезапуск не разрешен, будет только один сегмент с энтропийным кодированием. Если перезапуск разрешен, количество сегментов с энтропийным кодом определяется размером изображения и заданным интервалом перезапуска. В этом случае маркер перезапуска должен следовать за каждым сегментом энтропийного кода, кроме последнего. Чтобы обнаружить ошибку для всего вывода сжатых данных, мы разбиваем его на сегменты

    Файл JPEG состоит из восьми следующих частей:

    1. A Начало изображения SOI
    2. Маркер APP0
      1. APP0 длина
      2. Идентификатор
      3. Версия
      4. Единицы измерения плотности по осям X и Y
      5. X плотность
      6. Y плотность
      7. Эскиз горизонтальных пикселей
      8. Пиксели эскиза по вертикали
      9. Эскиз растрового изображения RGB
    3. Маркер APPn, где n может быть от 1 до 15 (необязательно)
      1. Длина APPn
      2. Информация о приложении
    4. Одна или несколько таблиц квантования DQT
      1. Длина таблицы квантования
      2. Номер таблицы квантования
      3. Таблица квантования
    5. A Начало кадра SOF0
      1. Начало длины кадра
      2. Точность (бит на пиксель на компонент цвета)
      3. Высота изображения
      4. Ширина изображения
      5. Количество цветовых компонентов
      6. Для каждого компонента
        1. ID
        2. Коэффициент вертикальной выборки
        3. Коэффициент горизонтальной выборки
        4. Таблица квантования #
    6. Один или несколько столов Хаффмана DHT
      1. Длина стола Хаффмана
      2. Тип
      3. , переменный или постоянный ток
      4. Индекс
      5. A Таблица битов
      6. A Таблица значений
    7. A Начало сканирования SOS
      1. Длина начала сканирования
      2. Количество цветовых компонентов
      3. Для каждого компонента
        1. ID
        2. Стол переменного тока #
        3. Стол постоянного тока #
      4. Сжатые данные изображения (не включены в длину начала сканирования)
    8. Конец изображения EOI

    Система декомпрессии изображений JPEG

    Система декомпрессии JPEG является обратной по сравнению с системой сжатия JPEG.

    Рис. 10. Структура распаковки JPEG

    Как только кодовые потоки поступают в систему декомпрессии, все полученные таблицы квантования и Хаффмана восстанавливаются. Заголовки кадра также декодируются для определения размера и точности изображения. Сжатый поток для каждого блока 8 × 8 делится на две части. Код DC декодируется с использованием таблиц DC Хаффмана. Выходное значение DC-декодера действительно представляет собой разницу между DC-значением текущего и предыдущих блоков 8 × 8.IDPCM восстанавливает истинное значение DC, добавляя значение, полученное от декодера DC, со значением DC, декодированным из предыдущего блока. Часть AC декодируется с использованием таблиц AC Хаффмана для получения коэффициентов AC, которые организованы в зигзагообразном порядке. Таким образом, на этапе без зигзага коэффициенты преобразовываются в блок 8 × 8. Этап деквантования выполняет умножение коэффициентов с IDCT выполняет обратное дискретное косинусное преобразование для каждого блока 8 × 8. Поскольку квантование генерирует ошибки квантования, данные восстановленного блока больше не идентичны данным исходного изображения.Данные, полученные на выходе IDCT, формируют изображения цветности и яркости, суммируются со смещением уровня и, наконец, преобразуются в изображение RGB перед отображением на экране.

    Рисунок 11. Преобразование инверсии цвета в декодере

    Схема преобразования инвертирования цвета показана на рисунке 11.

    Процесс декодирования файла JPEG

    На основе формата файла JPEG процессы распаковки для файла JPEG показаны ниже:

    1. Начало изображения SOI
    2. Считывание маркера APP0
    3. Определить таблицу квантования (DQT)
      1. Получите длину таблицы квантования.
      2. Получите номер таблицы квантования.
      3. Получить 64 записи в таблице квантования.
    4. Начало кадра SOF0
      1. Получить начало длины кадра
      2. Убедитесь, что точность составляет 8 бит на пиксель для каждого цветового компонента.
      3. Получить высоту изображения
      4. Получить ширину изображения
      5. Убедитесь, что количество цветовых компонентов равно 3.
      6. Для каждого компонента
        1. Получить идентификатор (игнорируется)
        2. Получить коэффициент вертикальной выборки (младший полубайт)
        3. Получить коэффициент горизонтальной выборки (High Nibble)
        4. Получить таблицу квантования # См. Таблицу квантования выше.
      7. Вычислить делители, используемые для повышения частоты дискретизации компонентов цветности.
        • Например, если оба фактора выборки яркости равны 2, то MCU будет иметь 2 × 2 8 × 8 единиц данных или 16 × 16 пикселей, но только значения цветности 8 × 8. В этом случае компоненты цветности в горизонтальном направлении (в первой строке), пиксели 0 и 1 будут использовать первое значение; пиксели 2 и 3 будут использовать второе значение и т. д. Аналогичная ситуация существует в вертикальном направлении.
      8. Рассчитать количество MCU по горизонтали и вертикали на изображении
        • Это число используется для вычисления правого верхнего угла MCU при отображении пикселей.
      9. Пропустите до конца этого раздела, если мы еще не там.
    5. таблица Хаффмана (DHT) процессы
      1. Получите длину таблицы Хаффмана.
      2. Получить тип, AC или DC (1 -> AC)
        • Установить указатель таблицы на таблицу правильного типа, переменного или постоянного тока.
      3. Получить индекс.
        • Это будет использоваться, чтобы определить, какой компонент будет использовать эту таблицу. См. Начало сканирования.
      4. Получите таблицу битов и сложите записи, чтобы определить, сколько записей находится в таблице значений.
      5. Получить таблицу значений.
    6. Начало сканирования SOS
      1. Получить начало длины сканирования.
      2. Получить количество компонентов цвета (предположим, их будет три)
      3. Для каждого компонента
        1. Чтение идентификатора и игнорирование
        2. Получить таблицу переменного тока № (Младший полубайт)
        3. Получить таблицу DC № (High Nibble)
      4. Перейти в конец этого раздела.
      5. Обработать сжатые данные изображения.
    7. Конец изображения EOI

    Сжатие JPEG

    [Предыдущий] [Следующий]

    Одна из самых актуальных тем в технологиях сжатия изображений сегодня — это JPEG.Аббревиатура JPEG означает для Joint Photographic Experts Group, комитета по стандартам, который возникла в Международной организации по стандартизации (ISO). В 1982 году ISO сформировал Photographic Experts. Группа (PEG) для исследования методов передачи видео, неподвижные изображения и текст через ISDN (интегрированный Услуги цифровой сети) линии. Целью PEG было создание набора промышленных стандарты передачи графических и графических данных по цифровым сети связи.

    В 1986 году подгруппа CCITT начала исследовать методы сжатия цвета. и данные в градациях серого для факсимильной передачи. Необходимые методы сжатия Цветные факсимильные системы были очень похожи на те, которые исследовала компания PEG. Поэтому было решено, что две группы должны объединить свои ресурсы и работать вместе над достижением единого стандарта.

    В 1987 году ISO и CCITT объединили свои две группы в совместный комитет, который будет исследовать и производить единый стандарт сжатия данных изображения для обоих организации для использования.Этот новый комитет был JPEG.

    Хотя создатели JPEG могли представить себе множество коммерческих приложений для технологии JPEG, потребительская публика, голодная из-за маркетинговые обещания в области обработки изображений и мультимедийных технологий значительно выигрывают также. Большинство ранее разработанных методов сжатия дают относительно плохие результаты. работа по сжатию данных изображения с непрерывным тоном; то есть изображения, содержащие сотни или тысячи цветов, взятых из реальных объектов.И очень мало форматы файлов могут поддерживать 24-битный растр изображений.

    GIF например, можно хранить только изображения с максимальной глубиной пикселей восемь бит, максимум 256 цветов. И его алгоритм сжатия LZW не очень хорошо работают с типичными отсканированными изображениями. Шум низкого уровня обычно обнаруженный в таких данных, поражает способность LZW распознавать повторяющиеся шаблоны.

    И TIFF, и BMP способны хранить 24-битные данные, но в их pre-JPEG версии могут использовать только схемы кодирования (LZW и RLE соответственно) которые не очень хорошо сжимают этот тип данных изображения.

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

    JPEG в перспективе

    В отличие от всех других методов сжатия, описанных до сих пор в этой главе, JPEG — это не единый алгоритм.Вместо этого его можно рассматривать как набор инструментов методы сжатия изображений, которые могут быть изменены в соответствии с потребностями пользователя. JPEG можно настроить для получения очень маленьких сжатых изображений, относительно плохого качества на вид, но все же подходит для многих Приложения. И наоборот, JPEG может создавать очень качественные сжатые изображения, которые по-прежнему намного меньше, чем исходные несжатые данные.

    JPEG также отличается тем, что это в первую очередь метод с потерями. сжатия.Наиболее популярные схемы сжатия форматов изображений, такие как поскольку стандарты RLE, LZW или CCITT — это сжатие без потерь методы. То есть они не сбрасывают никакие данные при кодировании процесс. Изображение, сжатое без потерь, гарантированно быть идентичным исходному изображению в несжатом виде.

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

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

    Тот факт, что JPEG с потерями и работает только с Выбор типа данных изображения может заставить вас спросить: «Зачем это нужно?» Это зависит от ваших потребностей.JPEG — отличный способ хранения 24-битных фотографических изображений, таких как те, которые используются для обработки изображений и мультимедийные приложения. 24-битный JPEG (16 миллиона цветов) изображения превосходят по внешнему виду 8-битные (256 цветов) изображения на дисплее VGA и максимально впечатляет при использовании аппаратного обеспечения 24-битного дисплея (которое сейчас довольно недорого).

    Степень достигнутого сжатия зависит от содержания данных изображения. Типичное изображение фотографического качества может быть сжато от 20: 1 до 25: 1. без заметного ухудшения качества.Более высокое сжатие соотношения приведут к файлам изображений, которые будут заметно отличаться от оригинала изображение, но в целом хорошее качество изображения. И достигнув 20: 1 или лучшая степень сжатия во многих случаях не только экономит место на диске, но и сокращает время передачи по сетям передачи данных и телефонным линиям.

    Конечный пользователь может «настроить» качество JPEG. кодировщик, использующий параметр, который иногда называют качеством установка или Q-фактора .Несмотря на то что разные реализации имеют разные масштабы добротности, диапазон Обычно от 1 до 100. Коэффициент 1 дает наименьшее, наихудшее качественные изображения; коэффициент 100 дает самое большое и лучшее качество изображений. Оптимальный коэффициент добротности зависит от содержимого изображения и составляет поэтому разные для каждого изображения. Искусство Сжатие JPEG обнаруживает самый низкий коэффициент добротности который создает изображение, которое визуально приемлемо, и предпочтительно как как можно ближе к оригиналу.

    Библиотека JPEG, предоставленная Независимая группа JPEG использует шкалу настройки качества от 1 до 100. Чтобы найти оптимальное сжатие изображения с использованием библиотеки JPEG, следуйте этим шаги:

    1. Кодируйте изображение, используя настройку качества 75 (-Q 75).
    2. Если вы наблюдаете недопустимые дефекты изображения, увеличьте значение и перекодировать изображение.
    3. Если качество изображения приемлемое, уменьшайте настройку до тех пор, пока изображение не появится. качество еле приемлемое.Это будет оптимальная настройка качества для этого изображение.
    4. Повторите этот процесс для каждого имеющегося у вас изображения (или просто закодируйте их все используя настройку качества 75).

    JPEG не всегда является идеальным решением для сжатия. Причин несколько:

    • Как мы уже говорили, JPEG не подходит для всех требований сжатия. Изображения, содержащие большие области одного цвета не очень хорошо сжимаются. Фактически, JPEG будет вносить «артефакты» в такие изображения, которые видны на плоском фон, из-за чего они выглядят значительно хуже, чем если бы вы использовал обычный метод сжатия без потерь.Изображения более «занятой» композиции содержат еще худшие артефакты, но они значительно менее заметны на фоне более сложный фон изображения.
    • JPEG может быть довольно медленным, если реализован только программно. Если быстро требуется декомпрессия, лучше всего подойдет аппаратное решение JPEG, если вы не хотите ждать, когда появится более быстрое программное решение или купите более быстрый компьютер.
    • JPEG нетривиально реализовать.Вряд ли ты сможешь сесть вниз и напишите свой собственный кодировщик / декодер JPEG за несколько вечеров. Мы рекомендуем что вы получаете стороннюю библиотеку JPEG, а не пишете свою.
    • JPEG не поддерживается очень многими форматами файлов. Форматы, которые поддерживают Все файлы в формате JPEG являются довольно новыми, и можно ожидать, что они будут часто пересматриваться. интервалы.

    Базовый JPEG

    Спецификация JPEG определяет минимальное подмножество стандарта, называемое базовым. JPEG, который должны поддерживать все приложения, поддерживающие формат JPEG.Этот базовый уровень использует схему кодирования на основе дискретного косинусного преобразования (DCT) достигать сжатие. DCT — это общее название класса операций, идентифицированных и опубликовано несколько лет назад. Алгоритмы на основе DCT с тех пор проникли в различные методы сжатия.

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

    Схема сжатия JPEG делится на следующие этапы:

    1. Преобразование изображения в оптимальное цветовое пространство.
    2. Субдискретизация компонентов цветности путем усреднения групп пикселей все вместе.
    3. Примените дискретное косинусное преобразование (DCT) к блокам пикселей, таким образом удаляя избыточные данные изображения.
    4. Квантование каждого блока коэффициентов DCT с использованием оптимизированных весовых функций для человеческого глаза.
    5. Кодировать результирующие коэффициенты (данные изображения) с помощью переменной Хаффмана алгоритм длины слова для удаления избыточности в коэффициентах.

    Рисунок 9-11 суммирует эти шаги, а в следующих подразделах рассматривается каждый из них по очереди. Обратите внимание, что декодирование JPEG выполняет обратное шаги.

    Рисунок 9-11: Сжатие и распаковка JPEG

    Преобразовать изображение

    Алгоритм JPEG может кодировать изображения которые используют любое цветовое пространство.Сам JPEG кодирует каждый компонент в цветовой модели отдельно, и это полностью независима от какой-либо модели цветового пространства, такой как RGB, HSI или CMY. Наилучшая степень сжатия получается, если цветовое пространство яркости / цветности, например YUV или YCbCr, используется. (См. Главу 2 для описания этих цветовые пространства.)

    Большая часть визуальной информации, к которой человеческие глаза наиболее чувствительны, находится в высокочастотной, серой шкале, компоненте яркости (Y) цвета YCbCr космос.Два других компонента цветности (Cb и Cr) содержат высокочастотные информация о цвете, к которой человеческий глаз менее чувствителен. Большая часть этого поэтому информацию можно отбросить.

    Для сравнения: RGB, HSI и Цветовые модели CMY распространяют свой полезный визуальный образ информация равномерно по каждому из трех цветовых компонентов, что делает выборочный отказ от информации очень затруднен. Все трое компоненты цвета должны быть закодированы в самом высоком качестве, что приводит к ухудшению степени сжатия.Полутоновые изображения не имеют цветовое пространство как таковое и поэтому не требует преобразования.

    Компоненты цветности с субдискретизацией

    Самый простой способ использовать меньшую чувствительность глаза к информация о цветности — это просто использование меньшего количества пикселей для каналы цветности. Например, в изображении номинально 1000×1000 пикселей, мы можем использовать полную яркость 1000×1000 пикселей, но только 500×500 пикселей для каждого компонента цветности.В этом представлении каждый пиксель цветности покрывает ту же область, что и блок пикселей яркости 2×2. Мы храним в общей сложности шесть пикселей значений для каждого блока 2×2 (четыре значения яркости, по одному для каждого два канала цветности), а не двенадцать значений, необходимых, если каждый компонент представлен в полном разрешении. Примечательно, что это 50 процентное сокращение объема данных практически не влияет на воспринимаемое качество большинства изображений. Эквивалентная экономия невозможна с обычные цветовые модели, такие как RGB, потому что в RGB каждый цветовой канал несет некоторую яркость информации и так любая потеря разрешения вполне заметна.

    Когда несжатые данные предоставляются в обычном формате (равном разрешение для всех каналов), компрессор JPEG должен уменьшить разрешение каналов цветности на понижающая дискретизация , или усреднение групп пикселей. Стандарт JPEG допускает несколько различных выбор коэффициентов выборки или относительных размеров субдискретизированных каналы. Канал яркости всегда остается с полным разрешением (1: 1 выборка).Обычно оба канала цветности субдискретизируются 2: 1. по горизонтали и 1: 1 или 2: 1 по вертикали, что означает, что пиксель цветности покрывает ту же область, что и пиксель 2×1, или Блок яркостных пикселей 2×2. JPEG относится к эти процессы понижающей дискретизации как 2h2v и 2h3v соответственно.

    Другое широко используемое обозначение — это выборка 4: 2: 2 для 2h2v и 4: 2: 0. выборка на 2х3в; это обозначение происходит от телевизионных обычаев (преобразование цвета и понижающая дискретизация используются с начало передачи цветного ТВ).2х2в выборка довольно распространен, потому что соответствует Национальному телевидению Комитет по стандартам (NTSC) стандартная телевизионная практика, но она предлагает меньше компрессия, чем выборка 2х3в, без какого-либо улучшения воспринимаемого качество.

    Применение дискретного косинусного преобразования

    Данные изображения разделены на блоки пикселей 8×8. (Из на этом этапе каждый компонент цвета обрабатывается независимо, поэтому «пиксель» означает одно значение, даже в цветном изображении.) А DCT применяется к каждому 8×8 блокировать. DCT преобразует пространственное изображение представление в частотной карте: термин младшего разряда или «DC» представляет собой среднее значение в блоке, в то время как последовательные термины высшего порядка («AC») представляют силу все большего и большего количества быстрое изменение ширины или высоты блока. Самый высокий AC член представляет силу косинусоидальной волны, чередующейся с максимумом до минимума в соседних пикселях.

    Расчет DCT довольно сложен; на самом деле, это самый затратный шаг в Сжатие JPEG.Смысл этого в том, что теперь мы выделили в изображении присутствует высокочастотная и низкочастотная информация. Мы можем отбросить высокочастотные данные легко без потери низкочастотной информации. DCT сам шаг без потерь, за исключением ошибок округления.

    Квантовать каждый блок

    Чтобы отбросить соответствующий объем информации, компрессор разделяет каждую Выходное значение DCT по «коэффициенту квантования» и округляет результат до целое число.Чем больше коэффициент квантования, тем больше данных теряется, потому что фактическое значение DCT представляется все менее и менее точно. Каждый из 64 позиции выходного блока DCT имеют свой коэффициент квантования, при этом члены более высокого порядка квантуются сильнее, чем члены более низкого порядка члены (то есть члены более высокого порядка имеют большие коэффициенты квантования). Кроме того, отдельные таблицы квантования используются для яркости и данные цветности, причем данные цветности квантуются сильнее, чем данные яркости.Это позволяет JPEG в большей степени использовать различные глаза чувствительность к яркости и цветности.

    Именно этот шаг контролируется настройкой «качество» большинства Компрессоры JPEG. Компрессор запускается с встроенный столик, подходящий для обстановки среднего качества и увеличивает или уменьшает значение каждой записи таблицы в обратном порядке пропорционально требуемому качеству. Полные таблицы квантования фактически используемые записываются в сжатый файл, так что декомпрессор будет знать, как (приблизительно) восстановить Коэффициенты DCT.

    Выбор подходящей таблицы квантования выглядит черным. Изобразительное искусство. Большинство существующих компрессоров начинаются с примерной таблицы, разработанной комитет ISO JPEG. это вероятно, что будущие исследования дадут более качественные таблицы, дающие больше сжатие для того же воспринимаемого качества изображения. Реализация улучшенные таблицы не должны вызывать проблем с совместимостью, потому что декомпрессоры просто считывают таблицы из сжатого файла; Oни неважно, как был выбран стол.

    Кодировать полученные коэффициенты

    Полученные коэффициенты содержат значительное количество избыточных данные. Сжатие Хаффмана без потерь удалит избыточность, что приводит к уменьшению размера данных JPEG. Необязательный расширение спецификации JPEG позволяет арифметическое кодирование, которое будет использоваться вместо кодирования Хаффмана для еще большего коэффициент сжатия. (См. Раздел «Расширения JPEG (Часть 1)» ниже.) На этом этапе поток данных JPEG готов к передаче через канал связи или инкапсулированы внутри файла изображения формат.

    Расширения JPEG (Часть 1)

    То, что мы рассмотрели до сих пор, является только базовой спецификацией для JPEG. Ряд расширений был определен в Часть 1 спецификации JPEG, которая предоставляет прогрессивное наращивание изображения, улучшенные коэффициенты сжатия с использованием арифметическое кодирование и схема сжатия без потерь. Эти особенности выходят за рамки потребностей большинства реализаций JPEG и поэтому были определены как «не требующие поддержки» расширения стандарта JPEG.

    Построение прогрессивного изображения

    Построение прогрессивного изображения — это расширение для использования в приложениях, которые нужно получать потоки данных JPEG и отображать их на лету. Может отображаться базовое изображение в формате JPEG. только после того, как все данные изображения были получены и декодированы. Но некоторые приложения требуют, чтобы изображение отображалось только через данных получено. Используя обычный метод сжатия, это означает отображение первых нескольких строк развертки изображения как есть расшифровано.В этом случае, даже если строки развертки были чересстрочными, вы потребуется не менее 50 процентов данных изображения, чтобы получить хорошую подсказку, как к содержанию изображения. Постепенное наращивание JPEG предлагает лучшее решение.

    Прогрессивное наращивание позволяет отправлять изображение слоями, а не сканировать линий. Но вместо последовательной передачи каждой битовой плоскости или цветового канала (что было бы не очень полезно), последовательность изображений, созданных из отправляются приближения к исходному изображению.Первое сканирование дает невысокая точность представления всего изображения — по сути, очень некачественное Сжатое изображение в формате JPEG. Последующие сканирования постепенно улучшают изображение на повышение эффективного добротности. Если данные отображаются на лету, сначала вы увидите грубую, но узнаваемую визуализацию всего изображения. Этот появится очень быстро, потому что потребуется лишь небольшой объем данных. передано для его производства. Каждое последующее сканирование улучшит отображаемый качество изображения по одному блоку за раз.

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

    Соответствующее расширение JPEG обеспечивает иерархическое хранение одного и того же изображения в несколько разрешений. Например, изображение может быть размером 250 x 250, 500×500, 1000×1000 и 2000×2000 пикселей, чтобы один и тот же файл изображения мог поддержка отображения на экранах с низким разрешением, лазерные принтеры среднего разрешения, и фотонаборные устройства высокого разрешения.Изображения с более высоким разрешением сохраняются как отличаются от моделей с более низким разрешением, поэтому им нужно меньше места, чем они потребовалось бы, если бы они хранились независимо. Это не то же самое, что прогрессивная серия, потому что каждое изображение доступно отдельно в полное желаемое качество.

    Арифметическое кодирование

    Базовый стандарт JPEG определяет сжатие Хаффмана как последний шаг в процесс кодирования. Расширение JPEG заменяет механизм Хаффмана двоичным арифметический энтропийный кодировщик.Использование арифметического кодера снижает результирующий размер данных JPEG еще на 10–15 процентов по сравнению с результатами, которые может быть достигнута кодировщиком Хаффмана. Без изменения итогового качества изображения, этот выигрыш может иметь значение в реализациях, где огромное количество изображений JPEG заархивированы.

    Арифметическое кодирование имеет ряд недостатков:

    • Не все декодеры JPEG поддерживают арифметическое декодирование. Базовый JPEG декодеры должны поддерживать только алгоритм Хаффмана.
    • Арифметический алгоритм работает медленнее как при кодировании, так и при декодировании, чем Хаффман.
    • Арифметический кодировщик, используемый JPEG (называемый Q-кодер ) принадлежит IBM и AT&T. (Mitsubishi также имеет патенты на арифметическое кодирование.) Вы должны получить лицензию от соответствующих поставщиков, если их Q-кодеры должны быть используется в качестве задней части вашей реализации JPEG.
    Сжатие JPEG без потерь

    Обычно возникает вопрос: «При какой добротности? становится ли JPEG без потерь? »Ответ -« никогда ».»Базовый JPEG — это метод сжатия с потерями. сжатие независимо от настроек, которые вы можете сделать в параметрах. Фактически, Кодеры на основе DCT всегда работают с потерями, потому что ошибки округления неизбежны в преобразование цвета и шаги DCT. Вы можете подавить преднамеренную информацию потери на этапах понижающей дискретизации и квантования, но вы все равно не получите точное воссоздание оригинальных битов. Кроме того, этот параметр минимальных потерь является очень неэффективный способ использования JPEG с потерями.

    Стандарт JPEG предлагает отдельный режим.Этот режим не имеет ничего общего с обычным Алгоритмы на основе DCT, и в настоящее время реализовано лишь в нескольких коммерческих приложениях. JPEG без потерь — это форма прогнозирования без потерь Кодирование с использованием двумерной дифференциальной импульсно-кодовой модуляции (DPCM) схема. Основная предпосылка заключается в том, что значение пикселя сочетается с значения до трех соседних пикселей для формирования значения предиктора. В затем значение предиктора вычитается из исходного значения пикселя.Когда обработано все растровое изображение, полученные предикторы сжимаются с использованием описанные методы кодирования Хаффмана или двоичной арифметической энтропии в стандарте JPEG.

    JPEG без потерь работает с изображениями от 2 до 16 бит на пиксель, но лучше всего работает с изображениями с 6 или более битами на пиксель. Для таких изображений обычно достигается степень сжатия. 2: 1. Для данных изображения с меньшим количеством бит на пиксель другое сжатие схемы работают лучше.

    Расширения JPEG (Часть 3)

    Следующие расширения JPEG описаны в Части 3 спецификации JPEG.

    Переменное квантование

    Переменное квантование — это расширение, доступное для квантования. процедура DCT-процессов. Это улучшение может использоваться с любым из процессов на основе DCT определяется JPEG, за исключением базовой линии процесс.

    Процесс квантования, используемый в JPEG, квантует каждый из 64 DCT коэффициенты, использующие соответствующее значение из таблицы квантования.Значения квантования могут быть переопределены до начала сканирования, но не должны быть изменены, если они находятся в пределах сканирования сжатого поток данных.

    Переменное квантование позволяет масштабировать значения квантования в потоке сжатых данных. В начале каждого блока 8×8 стоит масштабный коэффициент квантователя, используемый для масштабирования значений таблицы квантования в компоненте изображения и сопоставить эти значения с AC коэффициенты, хранящиеся в сжатых данных.Значения квантования могут затем можно найти и при необходимости изменить.

    Переменное квантование позволяет определять характеристики изображения. изменен, чтобы контролировать качество вывода на основе данной модели. Переменный квантователь может постоянно настраиваться во время декодирования, чтобы обеспечить оптимальный выход.

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

    Расширение переменного квантования также позволяет JPEG сохранять изображения данные, изначально закодированные с использованием схемы переменного квантования, такой как MPEG. Чтобы данные MPEG можно было точно перекодировать в другой формат, другой формат должен поддерживать переменное квантование, чтобы поддерживать высокая степень сжатия. Это расширение позволяет JPEG поддерживать данные поток, первоначально полученный из источника с переменным квантованием, такого как I-кадр MPEG.

    Выборочное уточнение

    Выборочное уточнение используется для выбора области изображения для дальнейшее улучшение.Это улучшение улучшает разрешение и детализация области изображения. JPEG поддерживает три типы выборочного уточнения: иерархическое, прогрессивное и компонент. Каждый из этих процессов уточнения отличается своим применением. эффективность, сложность и необходимый объем памяти.

    • Иерархическое выборочное уточнение используется только в иерархический режим работы. Это позволяет для области кадра, который будет уточнен следующим дифференциальным кадром иерархическая последовательность.
    • Прогрессивное селективное уточнение используется только в прогрессивный режим и добавляет изысканности. Это позволяет больше разрешение нулевых и ненулевых коэффициентов DCT в кодированной области кадра.
    • Выборочное уточнение компонентов может использоваться в любом режим работы. Это позволяет области кадра содержать меньше цвета, чем определено в заголовке кадра.
    Мозаичное изображение

    Мозаика используется для разделения одного изображения на два или более меньших подизображения.Мозаика позволяет упростить буферизацию изображения данные в памяти, более быстрый произвольный доступ к данным изображения на диске и хранение изображений размером более 64Kx64K сэмплов. JPEG поддерживает три типа мозаики: простую, пирамидальную и составную.

    • Простая мозаика делит изображение на два или более плитки фиксированного размера. Все простые плитки кодируются слева направо. и сверху вниз и являются смежными и не перекрываются. Все плитки должны иметь одинаковое количество образцов и составляющих идентификаторы и должны быть закодированы с использованием тех же процессов.Плитка на нижняя и правая часть изображения могут быть меньше, чем назначенный размер размеров изображения и, следовательно, не будет кратный размеру плитки.
    • Пирамидальная мозаика также разделяет изображение на плитки, но каждая плитка также выложен плиткой с использованием нескольких различных уровней разрешения. В Модель этого процесса — мозаичное изображение JPEG. Пирамида (JTIP), которая представляет собой модель того, как создать пирамидальный JPEG с несколькими разрешениями изображение.

      Изображение JTIP хранит последовательные слои одно и то же изображение в разных разрешениях. Первое изображение, сохраненное в вершина пирамиды составляет одну шестнадцатую определенного размера экрана и называется виньетка . Это изображение используется для быстрого отображения содержимого изображений, особенно для файловых браузеров. Следующее изображение занимает четверть экрана и называется имиджет . Это изображение обычно используется, когда два или более изображения должны отображаться одновременно на экран.Следующее — полноэкранное изображение с низким разрешением, за которым следует последовательно увеличивая разрешение изображений и заканчивая исходное изображение.

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

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

    ПМКФ официально санкционирован Формат файла JPEG, предназначенный для замены defacto JFIF (файл JPEG Формат обмена), который используется сегодня.SPIFF включает в себя все функции JFIF и добавляет довольно немного больше функциональности. SPIFF разработан так правильно написанные читатели JFIF будут читать Файлы SPIFF-JPEG также.

    Подробнее читайте в статье о SPIFF.

    Прочие добавочные номера

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

    Для получения дополнительной информации о JPEG

    Стандарт JPEG доступен на английском, французском или испанском языках, а также бумажная копия или документ PostScript или Word для Windows из Международная организация по стандартизации (ISO) или международная Союз электросвязи (ITU).Копии стандарта можно заказать по адресу:

    Американский национальный институт стандартов, Inc.
    Внимание: Служба поддержки клиентов
    11 Западная 42-я улица
    Нью-Йорк, NY 10036 США
    Голосовой: 212-642-4900

    Стандарт опубликован как Рекомендация ITU и как ISO / IEC Международного стандарта и разделен на три части: Часть 1. действующая спецификация, часть 2, посвящена методам испытаний на соответствие, а в части 3 рассматриваются расширения спецификации JPEG.Части 1 и 2 имеют статус международного стандарта. См. Эти документы:

    «Цифровое сжатие и кодирование неподвижных изображений с непрерывным тоном, Требования и руководящие принципы », номер документа ITU-T T.81 или ISO / IEC 10918-1.

    «Цифровое сжатие и кодирование неподвижных изображений с непрерывным тоном, Проверка на соответствие, номер документа ITU-T T.83 или ИСО / МЭК 10918-2.

    Часть 3 все еще находится в статусе проекта комитета.См. Этот документ:

    «Цифровое сжатие и кодирование неподвижных изображений с непрерывным тоном, Расширения, номер документа ITU-T T.84 или ИСО / МЭК 10918-3.

    Новая информация о JPEG и связанных алгоритмах постоянно появляется. Большинство коммерческих работ для JPEG выполняется в следующих компаниях:

    Eastman Kodak Corporation
    Государственная улица, 232 (
    ) Рочестер, Нью-Йорк 14650
    Голосовой: 800-242-2424
    WWW: http: // www.kodak.com
    C-Cube Микросистемы
    1778 Бульвар Маккарти,
    Милпитас, Калифорния 95035
    Голосовой: 408-944-6300

    См. Статью о формате файла JFIF. поддерживается C-Cube и форматом файлов SPIFF определено частью 3 спецификации JPEG.

    Часто задаваемые вопросы по JPEG (часто задаваемые Вопросы) — полезный источник общей информации о JPEG. Этот FAQ включен в компакт-диск; однако, поскольку FAQ часто обновляется, версия CD-ROM должна быть используется только для общей информации.FAQ — это отправляется каждые две недели в группы новостей USENET comp.graphics.misc , news.answers и comp.answers . Вы можете получить последняя версия этого FAQ из новостей. ответы архив по адресу:

    ftp://rtfm.mit.edu/pub/usenet/news.answers/jpeg-faq.

    Вы также можете получить этот FAQ, отправив электронное письмо по адресу:

    [адрес электронной почты]

    с сообщением «отправить usenet / news.ответы / jpeg-faq «в теле.

    Консорциум программистов, Independent JPEG Group (IJG), имеет создал общедоступную версию кодировщика и декодера JPEG на C форма исходного кода. Мы записали этот код на компакт-диск. Вы можете получить библиотеку IJG из различных FTP-сайты, информационные службы и компьютерные доски объявлений.

    Лучшее краткое техническое введение в JPEG алгоритм сжатия:

    Уоллес, Грегори К., «Неподвижное изображение в формате JPEG Стандарт сжатия, Сообщения ACM , т. 34, нет. 4 апреля 1991 г., С. 30-44.

    Более полное объяснение JPEG можно найти в следующие тексты:

    Пеннебейкер, Уильям Б. и Джоан Л. Митчелл, JPEG: сжатие данных неподвижных изображений Стандарт , Ван Ностранд Рейнхольд, Нью-Йорк, 1993.

    Эта книга содержит полный текст Стандарты ISO JPEG (ДИС 10918-1 и 10918-2).Это, безусловно, самый полное описание JPEG существует и настоятельно рекомендуется.

    Нельсон, Марк, Книга сжатия данных , Книги M&T, Редвуд-Сити, Калифорния. 1991 г.

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

    Вот краткая библиография для дополнительного чтения JPEG:

    Барда, Дж. Ф., «Кодаж и сжатие больших изображений». Труды AFNOR Multimedia и Конференция по стандартизации , т. 1 марта 1993 г., С. 300-315.

    Хадсон, Г., Х. Ясуда и И. Себастьен, «The International» Стандартизация техники сжатия неподвижных изображений », Труды IEEE Global Телекоммуникационная конференция , ноябрь 1988 г., стр.1016-1021.

    Леже, А., Дж. Митчелл, Ю. Ямазаки, «Сжатие неподвижных изображений» Алгоритмы, оцененные для международной стандартизации », Труды IEEE Global Телекоммуникационная конференция , ноябрь 1988 г., С. 1028-1032.

    Леже, А., Т. Омачи, Т.К. Уоллес, «JPEG Still Алгоритм сжатия изображения « Optical Машиностроение , т. 30, нет. 7, июль 1991 г., стр. 947-954.

    Митчелл, Дж.Л. и В. Пеннебейкер, «Развитие JPEG Стандарт сжатия цветных данных »в Стандартах для Electronic Imaging Systems , Neir, M. and M.E. Courtot, ред., т. CR37, SPIE Press, 1991, стр. 68-97.

    Нетравали, А.Н., Б.Г. Haskell, Цифровые изображения: Представление и сжатие , Plenum Press, Нью-Йорк, 1988 г.

    Раббани М. и Джонс П., Сжатие цифровых изображений Методы, учебные тексты в оптической инженерии , т.TT7, SPIE Press, 1991.


    [Предыдущий] [Следующий]

    Эта страница взята из Энциклопедии форматов графических файлов и имеет лицензию O’Reilly по лицензии Creative Common / Attribution.

    Сжатие JPEG

    JPEG означает Joint Photographic Experts Group, комитет по стандартизации. Это также означает алгоритм сжатия, изобретенный этим комитетом.

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

    • Сжатие JPEG с потерями: когда вы распаковываете сжатое изображение JPEG и сравниваете результат с исходным сжатым изображением, в распакованном изображении будут различия и потеря деталей и резкости. Другие алгоритмы сжатия, такие как LZW, работают без потерь: распакованное изображение идентично исходному.
    • Мы легче воспринимаем небольшие изменения яркости, чем небольшие изменения цвета. Человеческая зрительная система также не очень хорошо справляется с высокочастотными данными — если детали изображения изменяются очень быстро в части изображения, наш мозг не может действительно обработать все эти изменения.Эти два аспекта нашего восприятия используются при сжатии JPEG для уменьшения размера файла изображения.
    • Сжатие
    • JPEG не использует ни одного фиксированного способа сжатия данных. Алгоритм может сильно сжимать данные изображения со значительной потерей деталей или ограничивать потерю деталей за счет снижения степени сжатия. В таких приложениях, как Adobe Photoshop, ползунок позволяет выбрать степень сжатия.
    • Существует два алгоритма сжатия JPEG: самый старый на этой странице обозначается просто как «JPEG».На отдельной странице обсуждается новый алгоритм JPEG 2000.
    • Вы должны различать алгоритм сжатия JPEG и соответствующий формат файла JFIF, который многие люди называют файлами JPEG и который обсуждается в разделе о форматах файлов.

    Как работает JPEG

    Алгоритмы JPEG выполняют сжатие поэтапно:

    • Наша зрительная система менее чувствительна к изменениям цвета (цветности), чем к изменениям яркости (яркости).Алгоритм JPEG основан на этой разнице в восприятии. Он не анализирует цветовые значения RGB или CMYK, а вместо этого использует цветовое пространство на основе яркости / цветности под названием YCbCr. В этом цветовом пространстве канал Y передает данные яркости, а каналы Cb и Cr содержат информацию о цвете. Это позволяет раздельное сжатие этих двух факторов. Поскольку для нашей визуальной системы яркость более важна, чем цветность, алгоритм сохраняет большую часть яркости в сжатом файле и понижает дискретизацию информации о цвете, как правило, с коэффициентом 2 как по горизонтали, так и по вертикали.

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

    Цветовое пространство YCbCr используется только для внутреннего использования. Вы не замечаете его использования как пользователь. После распаковки файла, который был сжат в формате JPEG, вы снова получаете изображение, имеющее то же цветовое пространство, что и исходное изображение.

    • Затем алгоритмы JPEG разрезают изображение на отдельные блоки размером 8 × 8 пикселей.Алгоритм сжатия рассчитывается для каждого отдельного блока, что объясняет, почему эти блоки или группы блоков становятся видимыми, когда применяется слишком сильное сжатие. Сжатие также применяется отдельно к каналам Y, Cb и Cr.
    • Для каждого блока 8 × 8 применяется преобразование дискретного косинусного преобразования (DCT). В этом сложном процессе уровни интенсивности всех 64 пикселей заменяются значениями, которые описывают, как эти значения могут быть вычислены с использованием сочетания математических функций.Эта операция не сжимает файл, она просто заменяет значения пикселей 8 × 8 матрицей 8 × 8 коэффициентов DCT.
    • Как только это будет сделано, можно начать фактическое сжатие. Сначала программа сжатия проверяет качество изображения JPEG, запрошенное пользователем (например, настройки Photoshop, такие как «низкое качество» или «среднее качество»), и выбирает подходящую таблицу квантования. Это матрица чисел 8 × 8. Затем программа делит каждый из DCT-коэффициентов 8 × 8 на соответствующую константу в таблице квантования 8 × 8 и округляет до ближайшего целого числа.Таблица квантования предпочитает небольшие или постепенные изменения изменениям высокой частоты. Как было сказано в начале этого раздела, наша зрительная система не может легко справиться с быстрыми повторяющимися изменениями в данных изображения, поэтому алгоритм поддерживает постепенные тональные изменения. Результатом этого шага квантования является переход от матрицы, содержащей 64 числа, которые потенциально все разные, к новой таблице, содержащей гораздо более низкие числа, которые с большей вероятностью будут иметь то же значение или, для высокочастотных паттернов, быть нули.Новая матрица 8 * 8 по-прежнему примерно описывает, как воспроизвести исходные тональные значения 8 * 8, но округление привело к снижению качества изображения.
    • Таблица, содержащая много одинаковых или нулевых чисел, легко сжать. Последним шагом в процессе является сжатие этих коэффициентов с использованием схемы кодирования Хаффмана или арифметической схемы. Обычно используется кодировка Хаффмана. Это сжатие без потерь приводит к еще одному уменьшению размера файла.

    Преимущества

    Объединив несколько алгоритмов сжатия, JPEG достигает выдающихся степеней сжатия.Даже для допечатной подготовки вы можете легко сжать файл до одной пятой от его исходного размера. Для веб-публикации или обмена электронной почтой можно достичь даже лучшего соотношения до 20: 1.

    Декомпрессия

    JPEG поддерживается в форматах PostScript уровня 2 и 3 RIP. Это означает, что файлы меньшего размера могут быть отправлены по сети в RIP, который быстрее освобождает отправляющую станцию, минимизирует накладные расходы на сервер печати и ускоряет RIP.

    Недостатки

    Обратной стороной сжатия JPEG является то, что алгоритм предназначен только для изображений с непрерывным тоном (помните, что P в JPEG означает «Фотографический»).JPEG не подходит для изображений с резкими изменениями тона. Есть несколько типичных типов изображений, для которых следует избегать JPEG:

    • изображений, к которым добавлены эффекты маски и тени в таких приложениях, как Photoshop.
    • дампов экранов или схем.
    • смесей, созданных в Photoshop.
    • изображений, содержащих 256 (или меньше) цветов.
    • изображений, созданных программным обеспечением CAD-CAM или 3D-приложениями, такими как Maya или Bryce.
    • изображений, в которых отсутствует один или несколько триадных цветов.Иногда создаются изображения, в которых используются, например, только пурпурная и черная пластина. Если такое изображение сжато с использованием сжатия JPEG, вы можете увидеть артефакты, появляющиеся на голубой и желтой пластине.

    Из-за того, что JPEG имеет свойство работать с потерями, его следует использовать только на этапе производства допечатной подготовки (создание PostScript или PDF, наложение, проверка, вывод). Во время процесса создания, когда изображения все еще редактируются, обрезаются и корректируются цвета, каждая новая команда SAVE приводит к дополнительной потере качества изображения при использовании JPEG.

    Где используется сжатие JPEG

    Сжатие

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

    • Файлы EPS
    • Файлы EPS DCS
    • Файлы JFIF
    • PDF файлы

    Другие источники информации

    Компания

    Computerphile опубликовала два видеоролика о сжатии JPEG: в первом рассказывается об алгоритме в целом и о том, как он использует информацию о цвете. Во втором видео более подробно рассматривается DCT.

    JPEG (Объединенная группа экспертов по фотографии) Определение

    Стенды для «Объединенной группы экспертов по фотографии». JPEG — популярный формат файлов изображений. Он обычно используется цифровыми камерами для хранения фотографий, поскольку поддерживает 2 24 или 16 777 216 цветов. Формат также поддерживает различные уровни сжатия, что делает его идеальным для веб-графики.

    16 миллионов возможных цветов в изображении JPEG создаются с использованием 8 бит для каждого цвета (красного, зеленого и синего) в цветовом пространстве RGB.Это обеспечивает 2 8 или 256 значений для каждого из трех цветов, что в совокупности позволяет получить 256 x 256 x 256 или 16 777 216 цветов. Три значения 0 дают чистый черный цвет, а три значения 255 создают чистый белый цвет.

    Алгоритм сжатия JPEG может уменьшить размер файла растрового изображения (BMP) в десять раз без ухудшения качества. Тем не менее, алгоритм сжатия работает с потерями, что означает некоторую потерю качества изображения в процессе сжатия. По этой причине профессиональные цифровые фотографы часто предпочитают снимать изображения в необработанном формате, чтобы они могли редактировать свои фотографии с максимально возможным качеством.Обычно они экспортируют изображения как изображения JPEG (.JPG), когда ими делятся или публикуются в Интернете.

    Помимо данных изображения, файлы JPEG могут также включать метаданные, описывающие содержимое файла. Сюда входят размеры изображения, цветовое пространство и информация о цветовом профиле, а также данные EXIF. Данные EXIF ​​часто «штампуются» на изображении цифровой камерой и могут включать настройку диафрагмы, выдержку, фокусное расстояние, включение / выключение вспышки, число ISO и десятки других значений.

    Недостатки формата JPEG

    Хотя формат JPEG отлично подходит для хранения цифровых фотографий, у него есть некоторые недостатки. Например, сжатие с потерями может вызвать проблему, называемую «артефактом», при которой части изображения становятся заметно блочными. Обычно это происходит, когда для сохранения изображения используется высокий уровень сжатия. Для сохранения небольших изображений и изображений с большим количеством текста формат GIF часто является лучшей альтернативой. Изображения JPEG также не поддерживают прозрачность.Поэтому формат JPEG — плохой выбор для сохранения непрямоугольных изображений, особенно если они будут опубликованы на веб-страницах с другим цветом фона. Формат PNG, который поддерживает прозрачные пиксели, больше подходит для этих типов изображений.

    ПРИМЕЧАНИЕ: Объединенная группа экспертов по фотографии, в честь которой назван формат изображения JPEG, опубликовала первую спецификацию JPEG в 1992 году. С тех пор организация разработала несколько вариантов этого формата, включая JPEG 2000 и JPEG XR.Однако наиболее популярным остается стандартный формат JPEG.

    Расширения файлов: .JPG, .JPEG, .JFIF, .JPX, .JP2

    Обновлено: 26 июля 2016 г.

    TechTerms — Компьютерный словарь технических терминов

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

    Все определения на веб-сайте TechTerms составлены так, чтобы быть технически точными, но также простыми для понимания.Если вы сочтете это определение JPEG полезным, вы можете сослаться на него, используя приведенные выше ссылки для цитирования. Если вы считаете, что термин следует обновить или добавить в словарь TechTerms, отправьте электронное письмо в TechTerms!

    Подпишитесь на рассылку TechTerms, чтобы получать избранные термины и тесты прямо в свой почтовый ящик. Вы можете получать электронную почту ежедневно или еженедельно.

    Подписаться

    Руководство дизайнера по сжатию изображений

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

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

    01. Растровые изображения

    Существует два основных типа изображений: растровое и векторное.

    Поработав некоторое время с изображениями, вы поймете, что существует два основных типа изображений: растровое изображение, и векторное. .

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

    02. Векторы

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

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

    03. Сжатие изображений с потерями

    Сжатие изображений с потерями работает путем удаления информации из исходного файла

    Существует два основных всеобъемлющих метода сжатия файлов: с потерями и без потерь.

    Lossy удаляет информацию из исходного файла, в идеале там, где вы не заметите ее исчезновения, что, как следствие, экономит место.

    04. Сжатие изображений без потерь

    Сжатие изображений без потерь, в отличие от сжатия изображений с потерями, сохраняет все исходные данные, но за свою цену: размер файла обычно значительно больше.Примеры форматов файлов с потерями (где информация теряется) включают JPG, GIF и MP3, тогда как форматы без потерь включают EPS, TIF, PNG и PSD (хотя и PNG, и TIF ​​также могут быть с потерями).

    05. Как работает сжатие изображений

    Различные алгоритмы сжатия изображений используют разные подходы к уменьшению размера файла

    Существует множество различных алгоритмов сжатия изображений, каждый из которых использует свой подход к уменьшению размера файла. Самый простой подход, например, называется кодированием длин серий и работает, анализируя файл побитно в поисках шаблонов (буквально, исследуя каждый отдельный бит файла — 8 бит в байте, 1024 байта в килобайте и т. Д.) ).

    Там, где анализ обнаруживает закономерность, например десять нулей подряд, можно сэкономить место, записав это как 10: 0 вместо записи всех десяти нулей. Этот тип сжатия изображений работает без потерь, но не очень эффективен для уменьшения размера файла.

    06. Сжатие изображений JPEG

    Сжатие изображений JPEG разделяет изображения на лоскутное одеяло из блоков

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

    Сжатие изображения JPEG, например, разбивает изображение на лоскутное одеяло блоков, применяя сжатие к каждому блоку с помощью операции дискретного косинусного преобразования.

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

    07. Сжатие MP3

    Сжатие MP3 работает аналогично сжатию изображений JPEG, удаляя информацию с частот, которые человеческое ухо вряд ли сможет воспринять. Аудиофилы высмеивают MP3, потому что они чувствуют, что нюансы исходной записи теряются в процессе удаления этих частот для сохранения размера файла, и аналогично художникам и дизайнерам не нравится то, что JPEG делает с их изображениями при применении высокого сжатия.И то, и другое необходимо для уменьшения объема данных, передаваемых через Интернет в виде ресурсов на веб-страницу или приложение или для отправки на принтеры.

    08. Формат GIF

    Решение о типе и уровне сжатия изображений традиционно усложнялось проблемами лицензирования. Еще в 1990-х годах GIF (формат обмена графическими данными) был очень популярным форматом для сжатия веб-изображений (и остается таковым сегодня).

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

    09. Формат PNG

    PNG предлагает лучший уровень сжатия, чем GIF

    Проблема с GIF заключалась в алгоритме сжатия, используемом для этого формата. LZW — это метод сжатия изображений без потерь, который был запатентован Unisys, который попытался реализовать свои права собственности, потребовав от всех пользователей формата GIF платить за лицензию.Этот судебный иск заставил некоторых поставщиков программного обеспечения полностью отказаться от поддержки GIF и положил начало разработке популярного сейчас формата PNG (Portable Network Graphics).

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

    PNG не поддерживает несколько кадров в одном файле.Кстати, существует отдельная разработка под названием APNG, которая поддерживает несколько фреймов, но в 2007 году она была отклонена как официальное расширение формата PNG — в настоящее время она изначально поддерживается только браузерами на основе Opera и Gecko, такими как Firefox.

    10. Как выбрать правильный формат

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

    Шаг 1

    Если вы отправляете изображение на печать, вам понадобится формат файла с высоким разрешением

    Решите, где будет использоваться ваше изображение.Если вы отправляете изображение на печать, вам потребуется высококачественный формат. Если вы публикуете в Интернете, вы можете обойтись более низким качеством изображения (и, следовательно, меньшим размером файла).

    Step 2

    Новые дисплеи Retina с высокой плотностью пикселей требуют изображений с более высоким разрешением

    Решите, в каком размере будет отображаться ваше изображение. Для печати изображения обычно воспроизводятся с разрешением 300 точек на дюйм (точек на дюйм) — это означает, что на каждый дюйм воспроизводимого размера потребуется не менее 300 пикселей информации.Например, отпечаток размером 10 x 8 дюймов должен быть изображением размером 3000 пикселей (10 x 300) на 2400 пикселей (8 x 300).

    На экране большинство изображений отображается с разрешением 72 DPI, хотя это меняется с появлением дисплеев Retina с высокой плотностью пикселей. Важно отметить, что изображения на экране отображаются 1: 1 с отображаемыми пикселями, поэтому, если вы хотите показать изображение с шириной 600 пикселей, вам обычно нужно воспроизвести изображение только с 600 пикселей по горизонтали (несмотря на сложности отображения сетчатки!)

    Шаг 3

    Наконец, определитесь с наиболее подходящим форматом для вашего использования и требованиями к размеру:

    • GIF не подходит для печати или изображений фотографического качества из-за своей ограниченной цветовой палитры, но он идеально подходит для штриховой графики или анимированных веб-изображений. .
    • JPEG — отличное универсальное решение как для печати, так и для веб-приложений, но помните, что это формат с потерями, поэтому не используйте JPEG в качестве формата архива — сохраните исходное изображение в формате без потерь.
    • Если вам нужна прозрачность в Интернете, у вас есть только два варианта: GIF или PNG. Если вам нужно несколько уровней прозрачности, выберите PNG, но если вам просто нужно несколько пикселей, чтобы быть полностью прозрачными, GIF может соответствовать всем требованиям.
    • Для печати TIFF и EPS являются универсальными форматами, к которым может применяться сжатие изображений без потерь (и с потерями), поэтому в случае сомнений (и если размер файла не слишком важен), выбор одного из этих двух форматов будет достаточно безопасным. держать пари.

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

    FILEminimizer Pictures использует довольно радикальный подход к сжатию изображений по сравнению со многими аналогичными инструментами. По умолчанию он может изменять форматы, изменять размер изображений, перекодировать файлы JPEG с пониженным качеством и вырезать метаданные, чтобы уменьшить ваши изображения. (Вы можете настроить большую часть этого в настройках программы.)

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

    FileOptimizer может сжимать изображения JPG, GIF и PNG, а также работать с исполняемыми файлами, архивами, документами Microsoft Office, файлами PDF и т. Д. У него один из самых простых интерфейсов, которые мы видели: перетащите изображения в FileOptimizer, щелкните правой кнопкой мыши, выберите Optimize и все.

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

    ImageOptim — это инструмент Mac, который оптимизирует изображения GIF, JPEG и PNG, выступая в качестве интерфейса для множества других приложений: PNGOUT, AdvPNG, Pngcrush, расширенный OptiPNG, JpegOptim, jpegrescan, jpegtran и Gifsicle.

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

    Интерфейс ImageOptim тоже работает хорошо. Перетащите один файл, группу, папку или что-то еще, и он сразу же начнет сжимать каждое изображение и отображать результаты. Программа не самый быстрый инструмент, но, если вы не дадите ей тысячи HD JPEG, это, вероятно, не будет проблемой.

    JPEDmini — интересное приложение для Mac с двойным подходом к сжатию файлов JPEG.Во-первых, он использует интеллектуальный алгоритм, чтобы выяснить, насколько изображение может быть сжато без видимых эффектов (так что программа не работает без потерь, но это не просто перекодирование с некоторыми фиксированными настройками качества). А затем программа использует собственный кодировщик JPEG, чтобы попытаться доставить максимально компактные файлы.

    В фоновом режиме происходит много всего, но ничего из этого не видно пользователю. Просто перетащите свои изображения в программу (максимум 20 в день в бесплатной версии), и она заменит оригиналы сжатыми версиями.

    Для простой веб-графики JPEGmini не делает ничего особенного. Возможности сжатия значительно возрастают по мере увеличения ваших изображений. Если ваша графика слишком громоздкая, то определенно стоит попробовать программу, чтобы увидеть, как она работает для вас.

    15. Smush.It

    Большинство веб-сервисов сжатия изображений сильно ограничены, но Smush.It от Yahoo — редкое исключение. Да, вы ограничены файлами размером до 1 МБ, но в противном случае система загрузит столько изображений, сколько вам нужно.Нет ни регистрации, ни создания учетной записи, ни дневных квот. Изображения обрабатываются с помощью различных инструментов, что позволяет загружать результаты в ZIP-файл.

    Если есть одна проблема с этим подходом, так это то, что вы очень изолированы от самих инструментов сжатия. Их никак нельзя настроить или настроить. Результаты, которые вы видите, — это то, что вы получаете, и вы ничего не можете сделать, чтобы их изменить.

    В целом мы по-прежнему предпочитаем свободу и настраиваемость локального инструмента, но если удобство онлайн-сервиса соответствует вашим потребностям, тогда Smush.Это может быть разумный выбор.

    Слова: Сэм Хэмптон-Смит (1-10), Майк Уильямс (11-15)

    Понравилось? Тогда прочтите это!

    Сжатие без потерь — обзор

    Хранение данных

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

    Цифровые изображения находятся в компьютерных файлах, и эти файлы должны соответствовать строгому формату, чтобы их можно было читать в будущем.Из-за особенностей цифровых камер эти файлы могут быть большими и быстро занимать место. Поэтому конечное использование вашего изображения может диктовать предпочтительный формат файла. Например, если вам по-прежнему требуется преемственность с исходным изображением, вы можете сохранить файл RAW размером 20 МБ. Однако если изображение предназначено только для Интернета, то можно уменьшить избыточную информацию с помощью сжатия.

    Из-за больших размеров файлов можно уменьшить избыточную информацию с помощью сжатия.

    Если это делается без потери какой-либо важной информации, происходит сжатие без потерь. В среднем это обычно 2: 1, таким образом, 18 миллионов мегабайт (18 Мбайт) могут быть уменьшены до 9 миллионов без потери информации. Когда файл открывается, чтобы показать исходное изображение, вся информация останется нетронутой. В некоторых камерах это можно сделать в виде RAW-файла или TIFF-файла при постпродакшене.

    Помимо сжатия без потерь, существуют также методы «сжатия с потерями»; они используют сложные математические соотношения и могут выборочно исключать информацию, которая вряд ли важна для содержания изображения.Самым распространенным методом является преобразование JPEG, и его преимущество заключается в том, что коэффициент сжатия может меняться, и оператор регулирует требуемый коэффициент сжатия.

    Важно отметить, что чем выше степень сжатия, тем выше вероятность потери информации. Помимо потери информации, высокие коэффициенты сжатия могут создавать артефакты в изображении, и опять же, чем сильнее сжатие, тем больше артефактов. Умеренные уровни сжатия JPEG с соотношением приблизительно 5: 1 обычно считаются удовлетворительными.

    Для фотографов-доказательств жизненно важен правильный выбор файловой структуры, рекомендации SWGIT и CAST изложены в их руководствах. SWGIT разбивает изображения на категории 1 и 2. Изображения категории 1 — это те, которые используются для обзоров или настройки сцены, тогда как изображения категории 2 используются для анализа или точного воспроизведения. Например, фотограф-доказатель не будет сжимать изображение отпечатка пальца, если процесс сжатия изменил детали внутри этого знака.В то время как они могут сжимать файл для автомобиля, в котором потеря деталей может не быть критичной (Таблица 10).

    Таблица 10. Общие форматы файлов

    Широко распространенный формат сжатия файлов, который может настраиваться пользователями при более низких уровнях сжатия
    Формат Тип Сжатие Комментарии
    RAW NC Нет Файлы необработанных изображений с минимально обработанными данными датчика изображения сканера изображений цифровой камеры или пленочного сканера. Файлы Raw называются так, потому что они еще не обработаны и, следовательно, еще не готовы к печати или редактированию
    Tiff NC Нет Надежный и широко используемый формат, который не сжимает изображение, часто используется для архивации готового изображения
    LZW LLC 2: 1 Широко распространенный формат файла, в котором используется стандартный формат TIFF, но добавляется сжатие потерь
    JPEG LC & gt; VLC 9010 2: 1
    Потери практически невозможно обнаружить, поскольку сжатие увеличивается, потери возрастают и могут стать весьма заметными.При степени сжатия более 10: 1 на изображениях также можно увидеть артефакты.
    JPEG 2000 LC & lt; 100: 1 Jpeg 2000 использует вейвлет-сжатие, позволяющее использовать высокие степени сжатия. без потери качества изображения, однако он не широко используется в доказательной сфере.
    Файлы изображений BMP / Bitmap NC Файлы BMP — это формат файла растрового изображения, используемый для хранения растровых цифровых изображений независимо от устройства отображения, особенно в Microsoft windows

    Сокращения: LC, сжатие с потерями; LLC, сжатие без потерь; NC, без сжатия; VLC, сжатие без визуальных потерь.

    После того, как проблема формата будет решена, нужно выбрать носитель для хранения. Некоторые системы полагаются на серверы, для которых выполняется резервное копирование и защита как средство архивного хранения. Другие записывают файлы для архивации на устойчивый носитель с однократной записью, такой как однократная запись, чтение множества (WORM) компакт-дисков, DVD или дисков Blue-ray.

    Серверный подход удобен для конечного пользователя и при правильном обслуживании вполне удовлетворителен. У этого есть обратная сторона: материалы судебно-медицинской экспертизы должны храниться в течение десятилетий, и хотя существует очень низкая вероятность отозвать эти материалы обратно по прошествии первых нескольких лет.Это приводит к тому, что большое количество дискового пространства выделяется для изображений, которые могут никогда не быть восстановлены. С другой стороны, использование отдельных CD, DVD или дисков Blue-ray обеспечивает надежное долгосрочное хранилище, которое можно обновлять по мере развития технологий.

    Все, что вам нужно знать о сжатии изображений

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

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

    1. «Сжатие без потерь» и «Сжатие с потерями»

    Многие люди считают, что им следует использовать только форматы изображений, в которых используется сжатие без потерь. Хотя сжатие без потерь лучше для многих типов изображений, для многих других в нем нет необходимости. По сути, сжатие изображений без потерь означает, что все данные из исходного файла сохраняются. С другой стороны, сжатие с потерями удаляет некоторые данные из исходного файла и сохраняет изображение с уменьшенным размером файла. Вам, как дизайнеру, решать, сколько данных следует игнорировать, установив степень сжатия изображения.

    Сжатие без потерь

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

    DEFLATE — еще один метод сжатия данных без потерь, используемый для изображений PNG. Он использует комбинацию алгоритма LZ77 и кодирования Хаффмана.Помимо использования для изображений PNG, он также используется для сжатия ZIP и gzip.

    Сжатие Лемпеля-Зива-Велча (LZW) — это алгоритм сжатия без потерь, который выполняет ограниченный анализ данных. Он используется в файлах GIF и некоторых форматах TIFF.

    Сжатие с потерями

    Существует ряд методов сжатия с потерями, некоторые из которых можно комбинировать с методами без потерь для создания файлов еще меньшего размера. Один из способов — уменьшить цветовое пространство изображения до наиболее распространенных цветов в изображении.Это часто используется в GIF, а иногда и в изображениях PNG, чтобы уменьшить размер файла. При использовании с правильными типами изображений и в сочетании с дизерингом это может привести к изображениям, почти идентичным оригиналам.

    Кодирование с преобразованием — это тип кодирования, используемый для изображений JPEG. В изображениях кодирование с преобразованием усредняет цвет в небольших блоках изображения с использованием дискретного косинусного преобразования (DCT) для создания изображения, которое имеет гораздо меньше цветов, чем оригинал.

    Подвыборка цветности — это еще один тип сжатия с потерями, который учитывает, что человеческий глаз воспринимает изменения яркости более резко, чем изменения цвета, и использует это преимущество, отбрасывая или усредняя некоторую информацию о цветности (цвете) при сохранении информации о яркости (яркости). .Он обычно используется в схемах кодирования видео и в изображениях JPEG.

    2. Различные типы файлов

    В этой статье мы сосредоточимся только на трех типах файлов, наиболее часто встречающихся в веб-дизайне: PNG, JPEG и GIF. Хотя существуют и другие форматы изображений, которые используют сжатие (TIFF, PCX, TGA и т. Д.), Вы вряд ли столкнетесь с ними в каких-либо проектах цифрового дизайна.

    GIF

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

    JPEG

    JPEG (Joint Photographic Experts Group) — это формат изображения, в котором используется сжатие с потерями для создания файлов меньшего размера. Одним из больших преимуществ JPEG является то, что он позволяет дизайнеру точно настроить степень сжатия.Это приводит к лучшему качеству изображения при правильном использовании, а также к наименьшему разумному размеру файла. Поскольку JPEG использует сжатие с потерями, изображения, сохраненные в этом формате, подвержены «артефактам», когда вы можете увидеть пикселизацию и странные ореолы вокруг определенных участков изображения. Чаще всего они возникают в тех областях изображения, где есть резкий контраст между цветами. Как правило, чем больше контраст в изображении, тем более высокое качество должно быть сохранено, чтобы конечное изображение выглядело достойно.

    PNG

    PNG (переносимая сетевая графика) — еще один формат растрового изображения, который использует сжатие данных без потерь и был создан для замены формата изображения GIF. Формат PNG долгое время в значительной степени не поддерживался Internet Explorer, что делало его менее распространенным, чем форматы GIF и JPEG, хотя теперь он правильно поддерживается всеми основными браузерами. Файлы PNG поддерживают цвет на основе палитры (24-битный или 32-битный RGBA), оттенки серого, цветовые пространства RGBA и RGB. Одним из самых больших преимуществ PNG является то, что он поддерживает ряд параметров прозрачности, включая прозрачность альфа-канала.

    3. Выбор формата файла

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

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

    Для фотографий или изображений с градиентами, где GIF не подходит, лучше всего подходит формат JPEG. JPEG отлично подходит для фотографий с небольшими изменениями цвета и без резких контрастов. В областях с резким контрастом более вероятно появление артефактов (разноцветный ореол вокруг области). Регулировка уровня сжатия ваших JPEG-файлов перед их сохранением часто может привести к гораздо более высокому качеству изображения при сохранении меньшего размера файла.

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

    Вот обзор того, какие типы файлов лучше всего подходят для каждого типа изображений:

    GIF

    • Если требуется анимация.
    • Штриховые рисунки и простая графика.

    JPEG

    • Фотографии, особенно без высокой контрастности.
    • Скриншоты, в особенности фильмов, игр или аналогичного содержимого.

    PNG

    • Штриховая графика, иллюстрации.
    • Фотографии с высокой контрастностью.
    • Прозрачность, особенно прозрачность альфа-канала.
    • Скриншоты приложений или другие подробные диаграммы.

    А вот обзор форматов, которые следует избегать для каждого типа изображений:

    GIF

    • Изображения с градиентами.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *