Подтвердить что ты не робот

Практическое использование фракталов в программировании

Фракталы всегда были для меня загадкой.

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

4b9b3361

Ответ 1

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

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

Ответ 2

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

Ответ 3

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

Ответ 5

Диффузия ошибок вдоль кривой Гильберта.

Это простая идея - предположим, что вы конвертируете изображение в черно-белое растровое изображение 0-1. Преобразование пикселя яркости 55% в белый приводит к ошибке + 45%. Вместо того, чтобы просто забыть об этом, вы должны учитывать 45% при обработке следующего пикселя. Предположим, что его значение составляет 80%. Обычно он преобразуется в белый цвет, но соседний пиксель слишком яркий, поэтому с учетом ошибки +45% вы конвертируете его в черный (80% -45% = 35%), сохраняя ошибку -35% распространение в следующие пиксели.

Таким образом, 75% -ная серая область будет иметь соотношение белого/черного пикселя, близкое к 75/25, что хорошо. Но если вы обрабатываете пиксели слева направо, ошибка распространяется только в одном направлении, что приводит к ухудшению изображения. Введите пробельные кривые. Обработка пикселей вдоль кривой Гильберта дает хорошую локальность распространения ошибки. Подробнее здесь, с изображениями.

Ответ 6

Другим применением фрактальной теории является интерполяция фрактального изображения. Например, Perfect Resize 7 использует фракталы для изменения размеров изображений с очень хорошим качеством. Они, скорее всего, используют разделенные итерационные функциональные системы (PIFS), которые предполагают, что разные части изображения являются автомодельными друг другу. Алгоритм основан на поиске автомодельных частей изображения и описании трансформации между ними.

Ответ 7

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