Предыдущая Следующая
 (а) (Ь)
Рис. 23.1.
Пример, иллюстрирующий теорему коллажа, (а) Исхолное изображен^ и четыре фрагмента изображения; (Ь) изображение-аттрактор
Системы итерируемых функций
47
2.3.4. Аффинные преобразования
Чтобы применить на практике теорему коллажа для создания фракталов, нам необходимо выбрать преобразования, которые будут являться сжимающими отображениями. Преобразования, которые использовал Барнсли для его IFS, - это так называемые аффинные преобразования. Аффинное преобразование - это преобразование вида
Л =
где а, Ь, с, й, е,/е К. Аффинные преобразования могут осуществлять поворот, перемещение и масштабирование. Определим матрицу
и ЪЛ
с с1
)
как матричную часть Т. Если 5 - это множество точек в К2, то площадь преобразованной области в |с!е1 А\ раз отличается от площади области 5, где \<\еХ А\ - это абсолютное значение определителя А. Таким образом, Г - это пространственное сжатие и, следовательно, сжатие в Я(Х), если \dQtA] < 1. Шесть неизвестных констант (а, 6, с, </, е,/), которые определяют преобразование, могут быть заданы путем определения операции преобразования над тремя точками (см. раздел 2.4.2). На Рис. 2.3.2 показано действие аффинного преобразования на множество точек в К2.
(*1 ,Уг)
(x2J2)
(*id>i)
 i 2.3-2.
Аффинное преобразование множества точек в Я2. Как вилите, это преобразование отображает точки (х/ ,}>,•)—» С*/ > У*)
48_Фракталы и вейвлеты для сжатия изображений в дейст^
Аффинные преобразования используются в системе IFS, ^ тому что их легко задать и легко вычислить их коэффициец ты. Однако могли бы использоваться любые сжимаюц^ отображения, чтобы удовлетворять теореме коллажа и созда вать аттракторы.
2.4. Применение системы итерируемых функций
Предположим, что вы хотите реализовать систему для соз дания фрактальных изображений с помощью IFS. Каки\и должны быть ключевые компоненты такой системы? Преж де всего, вы должны представлять себе изображение, кото рое вы хотите воспроизвести с помощью IFS. Поэтому былс бы полезно, чтобы ваша система могла импортировать су. ществующее изображение в каком-то известном графическом формате. Далее, вам необходимо каким-то образом задать точки на двумерной сетке. Затем вы определите аффинные преобразования путем задания трех исходных точек и трех результирующих точек, получающихся из исходных в результате преобразования. Затем ваша система должна автоматически генерировать коэффициенты аффинного преобразования, решая соответствующие линейные уравнения. И, наконец, ваша система должна проводить итерации IFS и графически отображать результаты, приближаясь к фрактальному изображению-аттрактору. В следующих разделах излагаются более подробно некоторые из этих шагов. В приложении говорится о том, как запустить IFS-программу, использованную для подготовки приведенных здесь примеров, а также обсуждается структура исходного кода. Предыдущая Следующая
|