Разъяснение по внедрению цвета в Fractal Flame IFS

Я наткнулся на этот файл PDF и хотел написать свой собственный генератор Fractal Flame. Я пытаюсь понять, что пытаются сказать в разделах "Отображение плотности журнала", "Цвет" и "Гамма-фактор". На данный момент я думаю, что он говорит об использовании этого алгоритма для определения значения [0-255] каждого цветового канала для непрозрачного изображения:

var log_log = log(pixel_counter)/log(max_counter),
    alpha_gamma_factor = color_channel*log_log^(1/gamma),
    color_gamma_factor = log_log*color_channel^(1/gamma),
    vibrant_color = vibrancy*alpha_gamma_factor+(1-vibrancy)*color_gamma_factor,
    corrected_color_channel = floor(256*vibrant_color);

куда vibrancy а также color_channel равны [0, 1), счетчики являются целыми числами, и gamma это значение между sqrt(5) а также sqrt(16) (или ~2,2 и 4).

Пожалуйста, дайте мне знать, если это правильно, а если нет, как мне изменить алгоритм. Я также хотел бы сделать вариант алгоритма, который поддерживает полупрозрачность, поскольку на выходе будут файлы PNG. Каким будет алгоритм наивысшего качества для альфа-канала для [0, 255] (от прозрачного до непрозрачного соответственно) в этом случае?

0 ответов

Другие вопросы по тегам