Компьютерная графика Векторные файлы Физическое и логическое сжатие Алгоритм художника Трехмерная графика Растровая графика

Фрактальное сжатие

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

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

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

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

Наиболее популярен метод кодирования Fractal Transform. Именно он был предложен в 1986г. Майклом Барнсли. Это первый алгоритм для математического описания, примененный реального растрового изображения.

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

В процессе преобразования реальных растровых данных во фрактальные коды реализуются 2 больших преимущества.

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

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

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

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

Фрактальное сжатие – процесс ассиметричный. Сжатие длится в 1000 и 10000 раз дольше, чем распаковка. применяется базах данных изображений.

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

Более эффективно сжимаются изображения  с битовой глубиной 24 и 32 бита на пиксель, чем 8-битовые полутоновые изображения.

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

Сжатие Jpeg

Joint photograph expert group – сформирована в 1982.

Сжатие с потерями, но сильное (20:1 – 25:1)

Jpg не является алгоритмом .Это целый набор методов сжатия.

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

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

Объём зависит от содержимого изображения . Степень сжатия составляет 25:1 без заметной потери качества. Ничего не остается исходного файла. Пользователь регулирует качество jpg, используя его параметр Q фактор – установка качества изменяется от1 до 100 при создается изображение самого маленького размера и плохого наилучшее большом размере.

Начальное Q=75 , если качество нормальное понижается Q, нет – наоборот.

Алгоритм Jpeg

Он основан на схеме кодирования с помощью дискретных косинус преобразований (Дкп.

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

Схема Jpeg , используется только при сжатии многоцветных изображений в которых различие между соседними пиксельными значениями незначительно. Пиксельная глубина >=5 битов на цветовой канал : 65000 цветов.

Процесс сжатия делится на:

преобразование изображения в оптимальное цветовое пространство

субдискретизация усреднением групп пикселей

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

квантование блока коэффициентов Дкп

кодирование результирующих коэффициентов

Декодирование Jpeg в обратном порядке.

Преобразование изображения

Алгоритм кодирует каждое изображение , основанное на любом типе цветового пространства. Jpeg преобразует каждый компонент отдельно в модель YCB or YCBCR, потому что ней достигаются нужные:

Y – яркость

CB,CR – цветность(взять у Оли)

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

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

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

Дкп

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

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

Квантование

Прежде чем отбросить объём информации, компрессор делит выходное значение матрицы ДКП на коэффициенты квантования. Коэффициенты квантования – величина обратная Q. После деления результат округляется до целого. Чем больше коэффициент, тем данных теряется, т. к. реальное всё менее точное. На этом этапе мы управляем Jpg компрессором за счет установки качества.

Кодирование результирующих коэффициентов

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

ЦВЕТОВЫЕ МОДЕЛИ В графических файлах для представления цветов используется цветовые модели. Самые известные - аддитивные и субтрактивные модели. В аддитивной модели цвета получаются путем сложения основного цвета с черным. Чем больше интенсивность добавляемого цвета, тем ближе результирующий цвет к белому - смешивание всех основных цветов дает чисто белый цвет, если значение их интенсивности максимально; и чисто черный, если значение интенсивности =0. Аддитивные цветовые среды являются самосветящимися, например, цвета на мониторе.
Графические библиотеки в языках программирования