Лучший из возможных вариантов Dithering, который только можно реализовать для человеческого глаза, Blue Noise с использованием сложнейшего алгоритма генерации Void-and-Cluster, который создаёт текстуру шума, идеальную для изображения, поскольку генерации текстуры Blue Noise основывается на входном изображении. Только в 2021 году этот алгоритм был реализован на GPU, и теперь может использоваться для дизеринга любого изображения и палитры. Обычно текстуру генерируют как есть, просто, обычная png используемая для всего, но теперь её можно генерировать специально для изображения, что делает её локально-идеальной.
Изначальная моя идея в том, что, 2д карты для майнкрафта имеют всего 61 возможный цвет, при стандартном плоском размещении, но люди выбирают сложный трёхмерный мап-арт с над-блоками, потому что он даёт больше палитру и качество. Так вот, меня это раздражает, всегда смотря на эти гига-шизо-арты, меня не покидала мысль, что челы занимаются какой то хуетой, и что чилл размещение обычного 2д арта должно быть лучше чем сейчас...
Ну и вот, я это сделал, теперь есть код, который создаёт арт по сложнейшему Blue Noise вычисляемый на основе входного арта, подбирая силу дизеринга на основе психовизуальной метрики butteraugli, сразу в палитру 61 цвета которую можно "как есть" загружать на сайт для генерации мапартов https://rebane2001.com/mapartcraft/ и Единственная сложность в том, что, изображение создаётся на основе всей палитры блоков, а в случаи если вам нужно ограниченное количество например из 10-20 блоков, палитру нужно задать вручную, потому что просто убрать блоки из готового изображения будет хуже, надо всё генерировать с нуля, все инструменты для этого сделаны.
Важно, Void-and-Cluster сверх-сложный алгоритм, генерация шума для арта 128x128 может занять пару секунд, для 256x256 минуты, для 1024x1024 часы. Напрямую зависит от мощности видеокарты.
Изначальная моя идея в том, что, 2д карты для майнкрафта имеют всего 61 возможный цвет, при стандартном плоском размещении, но люди выбирают сложный трёхмерный мап-арт с над-блоками, потому что он даёт больше палитру и качество. Так вот, меня это раздражает, всегда смотря на эти гига-шизо-арты, меня не покидала мысль, что челы занимаются какой то хуетой, и что чилл размещение обычного 2д арта должно быть лучше чем сейчас...
Ну и вот, я это сделал, теперь есть код, который создаёт арт по сложнейшему Blue Noise вычисляемый на основе входного арта, подбирая силу дизеринга на основе психовизуальной метрики butteraugli, сразу в палитру 61 цвета которую можно "как есть" загружать на сайт для генерации мапартов https://rebane2001.com/mapartcraft/ и Единственная сложность в том, что, изображение создаётся на основе всей палитры блоков, а в случаи если вам нужно ограниченное количество например из 10-20 блоков, палитру нужно задать вручную, потому что просто убрать блоки из готового изображения будет хуже, надо всё генерировать с нуля, все инструменты для этого сделаны.
Важно, Void-and-Cluster сверх-сложный алгоритм, генерация шума для арта 128x128 может занять пару секунд, для 256x256 минуты, для 1024x1024 часы. Напрямую зависит от мощности видеокарты.
— Оригинальный арт
— 2д арт без дизеринга
— 2д с Floyd–Steinberg
— мой blue noise 2д арт
— 3д арт без дизеринга
— 3д арт с Floyd–Steinberg
— 2д арт без дизеринга
— 2д с Floyd–Steinberg
— мой blue noise 2д арт
— 3д арт без дизеринга
— 3д арт с Floyd–Steinberg
Контент -_-
Photo
На основе алгоритма Void-and-Cluster в 2022 году так же был создан алгоритм Gaussian Blue Noise
Исключительно бинарный алгоритм который создаёт идеально возможную картинку используя 1-бит цвет
Исключительно бинарный алгоритм который создаёт идеально возможную картинку используя 1-бит цвет
Завтра последний день.
Вы все дела успели сделать?
Вы все дела успели сделать?
Final Results
11%
Успел
31%
Не успел
26%
Дел не было
51%
кэтдиспаир
Контент -_-
На основе алгоритма Void-and-Cluster в 2022 году так же был создан алгоритм Gaussian Blue Noise Исключительно бинарный алгоритм который создаёт идеально возможную картинку используя 1-бит цвет
Serial Gaussian Blue Noise Stippling x64 Win build by DZgas.7z
4 MB
Пол года назад создатели написали альтернативно-идентичный алгоритм специально для работы на CPU, намного быстрее чем оригинальная реализация при том же качестве.
—Я добавил поддержку PNG на вход.
—Ну и скомпилировал для разных наборов инструкций, даже для x64 SSE2.
—Я добавил поддержку PNG на вход.
—Ну и скомпилировал для разных наборов инструкций, даже для x64 SSE2.
stipple_AVX2.exe input.png 10000 1000 output_points.txt output_image.png