Я остановился на этой визуализации и назвал Word Portrait:
Мой вопрос: как это сделать? Есть ли учебник или документ, который описывает это?
Я остановился на этой визуализации и назвал Word Portrait:
Мой вопрос: как это сделать? Есть ли учебник или документ, который описывает это?
Я новичок видел это, но я сделал растровое изображение для конвертера ASCII в прошлом, что похоже. поэтому, с моей точки зрения, я вижу это так:
возьмите серо-масштабное изображение и сегментируйте его (по прямоугольным областям с фиксированным соотношением сторон)
Соотношение сторон определяется входной текстовой фразой и используемым шрифтом. Это даст вам список прямоугольников со схожими цветами, чтобы вычислить средний цвет для них. Также хорошей идеей является ограничение минимального и максимального размера сегментов
заменить сегменты прямоугольника текстом
Размер шрифта ограничен заполненной областью (размером прямоугольника), чтобы текст в нее вписывался. Средний цвет текста должен быть таким же, как средний цвет сегмента прямоугольника
text_color=rectangle_avg_color*(ink_pixels+paper_pixels)/ink_pixels
ink_pixels
и paper_pixels
- количество пикселей в текстовой фразе. Если вы хотите реализовать цветные изображения, тогда просто вычислите значения R, G, B отдельно и смешайте их вместе или сегментируйте по цветам и интенсивности сразу
Смотрите Изображение в ASCII Art conversion, это может помочь вам получить некоторые новые идеи...
Проверьте мой репозиторий Github: ArtWork.
Мы реализовали этот алгоритм для университетского проекта.
Как работает этот алгоритм.