Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
oduvanchikov
7 лет назад

FontJoy - нейронная сеть для поиска похожих шрифтов

Проект FontJoy строит шрифтовые векторы для сотен шрифтов 

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

Извлечение векторов признаков из изображений не является абсолютно новой идеей. Суть подхода в том, что на вход подаётся изображение, прогоняется через нейронную сеть (CNN) для выделения особенностей, а на выходе получается репрезентативный вектор. 

Если хотите больше подробностей, то они весьма детально изложены в этой публикации (англ.) http://cs231n.github.io/transfer-learning/

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

Вектор шрифта - это абстрактное представление того, как выглядит шрифт. Поскольку это просто вектор, мы можем использовать весь математический аппарат для сравнения и подробного анализа разных шрифтов. Для сравнения шрифтов дизайнеры часто используют такое понятие, как «Handgloves» (англ. "перчатки") - такие буквы, как e, a и n, явно различные в разных шрифтах. 

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

Аналогично тому, какие операции позволяют проводить вектора слов word2vec, можно производить вычисления с векторами шрифтов:


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

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

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

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

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


Репозиторий проекта на GitHub

223
0.155 GOLOS
На Golos с May 2017
Комментарии (3)
Сортировать по:
Сначала старые