Исследовательская работа по информатике «Фрактальное сжатие изображений» Подготовила ученица 9-Б класса лицея № 62 г. Запорожья Телятник Мария Понятие о компьютерной графике • Компьютерная графика (машинная графика) — область деятельности, в которой компьютеры используются для синтеза изображений и для обработки визуальной информации, полученной из реального мира. • Также компьютерной графикой называют и результат этой деятельности. Основные области применения • Сейчас компьютерная графика прочно вошла в повседневную жизнь и с успехом применяется: – графический интерфейс пользователя; – спецэффекты, визуальные эффекты (VFX), цифровая кинематография; – цифровое телевидение, Всемирная паутина, видеоконференции; – цифровая фотография и существенно возросшие возможности по обработке фотографий; – одна из областей научной деятельности. Виды графики • Очень условно компьютерную графику можно разделить на двумерную и трехмерную, анимационную и инженерную. В свою очередь анимация может быть и двумерной и трехмерной, также как инженерная компьютерная графика может быть двумерной и трехмерной. • – Кроме того, по способам задания изображений графику можно разделить на категории: – Векторная; – Растровая; – Фрактальная. Виды графики Векторная Растровая Фрактальная точка, прямая, окружность, прямоугольник, сплайн[1] пиксель фрактал цифровая фотография, графический интерфейс, генерация изображений природных объектов, механика жидкостей, биология, фрактальные антенны, сжатие изображений Пример изображения Элемент изображения Область применения инженерная графика под сплайном (от англ. spline — планка, рейка) обычно понимают составную функцию, совпадающую с функциями более простой природы на каждом элементе разбиения своей области определения. [1] Преимущества & недостатки Векторная Преимущества - Недостатки и проблемы при использовании Растровая минимальный объем файла полная свобода трансформаций имитация трёхмерности проще, чем для растров аппаратная независимость нереалистичнос ть изображений - - - Фрактальная эффектность и реалистичность в представлении графических объектов возможность уменьшения размеров изображения без особых потерь большой объём памяти, необходимый для работы с изображениями, исчезновение деталей изображений при уменьшении размеров пикселизация изображений при увеличении размеров - - малый размер файла реалистичность изображений соответствующего класса уменьшение и увеличение без потерь большая скорость воспроизведения при любых размерах изображения малоизученность, слабая применимость к классам изображений, для которых не определены фрактальные зависимости, сложность построения Фрактал •термин, означающий геометрическую фигуру, обладающую свойством самоподобия, то есть составленную из нескольких частей, каждая из которых подобна всей фигуре целиком. •это бесконечно самоподобная геометрическая фигура, каждый фрагмент которой повторяется при уменьшении масштаба. •самоподобное множество нецелой размерности. История фракталов "…Почему геометрию часто называют холодной и сухой? Одна из причин заключается в ее неспособности описать форму облака, горы, дерева или берега моря. Облака - это не сферы, горы - не конусы, линии берега - это не окружности, и Бенуа Мандельброт , кора не является гладкой, и молния не в 1975 году ввел распространяется по прямой. т ермин фракт ал в своей работ е «Фракт альная геомет рия природы» Природа демонстрирует нам не просто более высокую степень, а совсем другой уровень сложности…" Анимационный пример фракт ала Основное свойство фракталов • Это - самоподобие. • Любой микроскопический фрагмент фрактала в том или ином отношении воспроизводит его глобальную структуру. • В простейшем случае часть фрактала представляет собой просто уменьшенный целый фрактал. Классификация фракталов Основная •Геометрические •Алгебраические •Стохастические Другие • Рукотворные и природные • Детерминированные и недетерминированные «Рецепт» построения фракталов Взять простой мотив и повторять его, постоянно уменьшая размеры. В конце концов выйдет структура, воспроизводящая этот мотив во всех масштабах, - бесконечная лестница вглубь. • Берем отрезок и среднюю его треть переламываем под углом 60 градусов. • Затем повторяем эту операцию с каждой из частей получившейся ломаной - и так до бесконечности. • В результате мы получим простейший фрактал - триадную кривую, которую в 1904 году открыла математик Хельга фон Кох. Еще варианты… • Если на каждом шаге не только уменьшать основной мотив, но также смещать и поворачивать его, можно получить более интересные и реалистически выглядящие образования, например, лист папоротника или даже целые их заросли. • А можно построить весьма правдоподобный фрактальный рельеф местности и покрыть её очень симпатичным лесом. • Большинство текстур местности в современных компьютерных играх представляют фракталы. • Горы, лес и облака на картинке - фракталы. Большая проблема Интернета: как бы картинку побольше засунуть в файл размером поменьше Фрактальное сжатие • одна из самых молодых групп алгоритмов сжатия изображений и, по-видимому, достаточно перспективная. • особенность этого алгоритма: увеличенное изображение не дробится на квадраты. • во фрактальном сжатии используется новая идея – не близость цветов в локальной области, а подобие разных по размеру областей изображения. • алгоритм ориентирован на полноцветные изображения и изображения в градациях серого цвета. http://www.superfractals.com/gallery/gallery.htm Фрактальное сжатие изображений • 1980-е - математик Майкл Барнсли, Технологический университет Джорджии - нельзя ли по заданной картинке найти такой компактный набор правил построения фрактала, чтобы тот, по крайней мере в каком то диапазоне масштабов, был неотличим от исходной картинки? • Тогда вместо неё можно было бы передавать по каналам связи и хранить на винчестере эти правила. • Эта технология была использована Microsoft при создании знаменитой энциклопедии Encarta. Michael Barnsley Хронология развития фрактального сжатия изображений • 1981 - Джон Хатчинсон – в статье «Фракталы и самоподобие» представлена теория построения фракталов с помощью системы итерируемых функций (IFS, Iterated Function System). • 1987 - Майкл Барнсли - основал Iterated Systems, компанию, основной деятельностью которой является создание новых алгоритмов и ПО с использованием фракталов. • 1988 - М. Барнсли - фундаментальный труд «Фракталы повсюду». • 1992 - Арнауд Джеквин опубликовал новый алгоритм, крайне медленный, но с несомненным достоинством: вмешательство человека удалось полностью исключить. • 1994 - Ювал Фишер предоставил во всеобщее пользование исходные тексты исследовательской программы, в которой были реализованы алгоритмы оптимизации поиска. • 1995 - в июле в Тронхейме (Швеция) состоялась первая школа-конференция, посвященная фрактальной компрессии. Эффективность фрактального сжатия: Encarta • Мультимедиа-энциклопедия, содержащая информацию о животных, цветах, деревьях и живописных местах. • Выпущена в декабре 1992 года. • На диск записано: – 7 часов звука, – 100 анимационных роликов, – примерно 800 масштабируемых карт, – 7000 качественных фотографий. При этом, обычный компакт-диск в 650 Мбайт без использования компрессии может содержать либо 56 минут качественного звука, либо 1 час видео разрешения с разрешением 320х200 в формате MPEG-1, либо 700 полноцветных изображений размером 640х480 Ещё об эффективности фрактального сжатия • • • • • одно из наиболее поразительных (и знаменитых) IFS-изображений папоротник, в котором каждый лист в действительности представляет собой миниатюрный вариант самого папоротника; построен по методу Барнсли-Слоана (алгоритмы защищены патентами). в формате РСХ или ВМР это графический файл объемом более 38 тыс. байт (каждый из 307 200 пиксел требует по 1 бит); если считать, что каждое число с плавающей точкой требует 4 байт памяти (типично для типов данных с плавающей точкой при одинарной точности), то 112 байт – это все, что нужно для хранения всех данных, необходимых программе IFS-декомпрессии для восстановления изображения папоротника; коэффициент сжатия равен 340:1 ! Это интересно! • Фрактальное сжатие реализовано в формате FIF (Fractal Image Format). • Обычно файлы в формате FIF получаются несколько меньше файлов в формате JPG, но бывает и наоборот. • Если рассматривать картинки со все большим увеличением, у файлов JPG почти сразу появляется пресловутая лесенка. • А вот FIF файлы, как и положено фракталам, с ростом увеличения показывают все новую степень детализации структуры, сохраняя эстетику изображения • Особенностью (и самым существенным недостатком) алгоритма является потребность в колоссальных вычислительных мощностях при архивации. • При этом распаковка требует меньше вычислений, чем у JPEG. Фактически, это существенно несимметричный алгоритм • Коэффициент симметричности (отношение времени архивации ко времени разархивации) у JPEG не превышает 3, а у фрактального алгоритма он колеблется в пределах 1000-10000 Фрактальный алгоритм. Нематематическая иллюстрация идеи метода Расставляя линзы и меняя их характеристики, можно управлять получаемым изображением. Одна итерация работы Фотокопировальной Машины заключается в том, что по исходному изображению с помощью проектирования строится новое, после чего новое берется в качестве исходного. В процессе итераций получается изображение, которое перестает изменяться - аттрактор. Математика применения фракталов для сжатия изображений - IFS • Майкл Барнсли, «Фракталы повсюду»: – с помощью IFS-фракталов можно сжимать большие растровые изображения до долей их нормальных размеров; – это утверждение следует из теоремы Банаха о сжимающих преобразованиях (Collage Theorem), которая лежит в основе математического обоснования идеи фрактальной компрессии. • Сте́фан Ба́нах — польский математик, один из создателей современного функционального анализа; – установил в 1922 году теорему о неподвижной точке, которая гарантирует наличие и единственность неподвижной точки у некоторых отображений метрических пространств; – также теорема содержит конструктивный метод нахождения этой точки; – теорема названа теоремой Банаха • IFS представляет собой набор трехмерных аффинных преобразований, переводящих одно изображение в другое. Преобразованию подвергаются точки в трехмерном пространстве (х_координата, у_координата, яркость) Математика применения фракталов для сжатия изображений - IFS • • • • • x Ax By C y Dx Ey F Изображение кодируется несколькими простыми преобразованиями (например, аффинными), т.е. коэффициентами этих преобразований (в данном случае A,B,C,D,E,F). Например, закодировав какое-то изображение двумя аффинными преобразованиями, можно однозначно определить его с помощью 12-ти коэффициентов. Если теперь задать какую-либо начальную точку (например, х=0 у=0) и запустить итерационный процесс, то после первой итерации будут получены две точки, после второй – четыре, после третьей – восемь и т.д. Через несколько десятков итераций совокупность полученных точек будет описывать закодированное изображение. Но проблема состоит в том, что очень трудно найти коэффициенты IFS, которая кодировала бы произвольное изображение. Позитив фрактального сжатия • Фрактальное сжатие по принципу своего устройства работает не просто с последовательностями чисел, как это делают обычные алгоритмы сжатия, а с элементами изображения — линиями и фигурами. • Отсюда его способность масштабировать результат в большом разрешении без образования различных артефактов (таких как «лесенка» на резких границах или пикселизация — распад картинки на отдельные квадратики). • Кроме того, фрактальный алгоритм позволяет «разжимать» изображения фрагментами на ходу — например, только в той части, которая в данный момент демонстрируется на экране, не перегружая память лишними данными. • При сравнимом качестве результирующий файл будет тем меньше, чем с большим разрешением был создан оригинал Проблемы фрактального сжатия • Алгоритм фрактального сжатия изображений содержит чрезвычайно интенсивные вычисления, гораздо больше, нежели в более простых методах. • Для проведения вычислений требуются очень мощные вычислительные машины. • Подавляющее большинство исследований в области фрактальной компрессии сейчас направлены именно на уменьшение времени архивации, необходимого для получения качественного изображения, т.е. на оптимизацию алгоритма. • Восстановление происходит быстрее, но также требует больше времени, чем другие методы (спорный вопрос, не по всем источникам). Возможные методы регулировки фрактальных алгоритмов Для фрактального алгоритма компрессии важны механизмы регулировки степени сжатия и степени потерь. Сейчас разработан большой набор таких методов: – можно ограничить количество аффинных преобразований, заведомо обеспечив степень сжатия не ниже фиксированной величины; – можно потребовать, чтобы в ситуации, когда разница между обрабатываемым фрагментом и наилучшим его приближением будет выше определенного порогового значения, этот фрагмент дробился обязательно (для него обязательно заводится несколько "линз"); – можно запретить дробить фрагменты размером меньше, чем из N точек, чем обеспечить конечность процесса сжатия. Последние достижения фрактальной графики • В одном частном вопросе фрактальное сжатие оказалось на высоте. Это сжатие изображений текстовых оригиналов: в шрифтах легко выделить простые типовые элементы, которые поддаются фрактальному сжатию очень быстро и эффективно. • Таким образом, в компании AT&T еще в прошлом веке родился формат для представления электронных книг с названием DjVu. Сжатие JPEG на сегодня интересно трем категориям потребителей • пользователям, у которых большие коллекции картинок, цифровых фотографий • производителям архиваторов, ведь преимущество в 25-30% на сжатии JPEG — это заметный стимул воспользоваться именно этим архиватором • компаниям, производящим канальные и серверные акселераторы: при безлимитных тарифах, характерных для сегодняшнего домашнего Интернета, растет трафик и провайдеры весьма заинтересованы в его эффективном сжатии. Текущее состояние и перспективы фрактального сжатия • Пока фрактальное сжатие изображений развивается очень медленно • Вероятные причины: – аппаратные характеристики ПК недостаточны для обеспечения удовлетворительного времени компрессии – наиболее перспективные разработки в направлении оптимизации времени компрессии защищены патентами • Возможны положительные изменения, связанные с: – возрастанием скорости обработки информации, появлением концептуально новых поколений ПК – ускорением разработок алгоритмов компрессии (срок окончания основных патентов – 2006-2009 гг.) – достигнут определенный успех (разработан формат DjVu) – есть лица, заинтересованные в результативности разработок этого направления (пользователи, разработчики архиваторов, интернет-провайдеры) Смотрите также: • Мандельброт Б. Фрактальная геометрия природы / Бенуа Мандельброт. — М. : «Институт компьютерных исследований», 2002. — 241 с. • Пайтген Х.-О. Красота фракталов / Х.-О. Пайтген, П. Х. Рихтер. — М. : «Мир», 1993. — 168 с. • Ревич Ю. Дежавю / Ю. Ревич // Домашний Компьютер. — №1, 2008. — С. 25. • Изучаем компьютер. Разрешение изображений и фрактальная графика. http://tsv-22.narodru/1pc/ref/01/r01_20.html • В мире фрактальной графики. www.comprice.ru • –http://proximal.ru/ - Территория фракталов • А. Петров Фрактальное сжатие графики http://stanislaw.ru/rus/research/fractal.asp • Фрактальный алгоритм. Интернет-университет информационных технологий. http://www.intuit.ru/department/graphics/compression/6/3.html • Фрактальный папоротник и аффинные преобразования http://www.kv.by/index2002491201.htm • Д. Ватолин. Методы сжатия данных: Сжатие изображений. http://www.compression.ru/book/part2/part2__3.htm#_Toc448152512 • Д. Ватолин. Фрактальное сжатие изображений. http://www.osp.ru/cw/1996/06/10229/