русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

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


Дата добавления: 2014-10-07; просмотров: 732; Нарушение авторских прав


Ранее мы рассматривали, что в растровой графике, которая производится современными цифровыми преобразователями, изображение, как правило, представляется в формате три байта на один пиксел, что приводит к большим и трудно обрабатываемым файлам растровой графики. Для того чтобы уменьшить требования к памяти, было разработано много схем сжатия. Одна их них, разработанная компанией CompuServe, называется GIF (сокращенно от Graphic Interchange Format — формат графического обмена). Этот стандарт сжатия решает проблему путем сокращения количества цветов, которые могут быть приписаны пикселу, до 256. Это означает, что значение каждого пиксела можно представить с помощью одного байта, а не трех. Каждому из 256 значений пиксела при помощи таблицы, которая называется палитрой, ставится в соответствие определенное сочетание красного, зеленого и синего цветов. Изменяя палитру изображения, мы можем изменять цвета изображения.

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

Другой стандарт сжатия изображений называется JPEG. Он был разработан Joint Photographic Experts Group (Объединенная группа экспертов в области фотографии), входящей в состав организации ISO. JPEG оказался эффективным для представления цветных фотографий. На самом деле, именно этот стандарт принят производителями современных цифровых камер, и он обещает еще долгое время иметь влияние в сфере цифровых изображений.

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



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

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

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

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

В заключение следует заметить, что исследования в области сжатия данных представляют собой широкое поле деятельности. Мы обсудили только два метода сжатия изображений из множества существующих. Кроме того, существуют различные техники сжатия звуковых и видеоданных. Например, группой Motion Picture Experts Group (MPEG — Экспертная группа по вопросам движущегося изображения), входящей в состав организации ISO, были разработаны методы, подобные тем, которые используются в стандарте JPEG, для того чтобы ввести стандарты кодирования (сжатия) движущихся изображений. Согласно этому алгоритму сначала кодируется первое изображение последовательности, подобно тому, как это делается в базисном стандарте JPEG, а затем при помощи методов относительного кодирования записываются оставшиеся изображения.



<== предыдущая лекция | следующая лекция ==>
Представление звука | Ошибки передачи данных


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.134 сек.