Как стать автором
Обновить

Генерация случайных лиц в PaperJS

Время на прочтение1 мин
Количество просмотров27K


Синтетические изображения обычно выглядят неестественно, не по-человечески, и тренированный глаз сразу их отличает от настоящих. Проект Weird Faces Study — это попытка объединить традиционную технику «человеческого» рисунка и компьютерные алгоритмы. Результат — сгенерированные компьютерные лица, каждое из которых уникально и выглядит как оригинальная авторская работа.

Генератор лиц Weird Faces Study написан на JavaScript с использованием библиотеки PaperJS в рамках обучающего курса по PaperJS, который читают в Калифорнийском университете в Лос-Анджелесе.

Собственно, алгоритм генерации лиц состоит из 9 шагов.

  1. Нарисовать форму лица.
  2. Нарисовать складку внутри формы.
  3. Найти центр фигуры, нарисовать нос.
  4. Нарисовать глаза, основываясь на местоположении носа и радиусе, чтобы они не пересекались.
  5. Нарисовать брови, основываясь на местоположении глаз и их радиусе.
  6. Нарисовать рот, основываясь на местоположении глаз и носа, чтобы они не пересекались.
  7. Нарисовать щёки, учитывая форму лица и радиус головы.
  8. Нарисовать уши снаружи лица.
  9. Нарисовать волосы снаружи лица.

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

PaperJS — одна из нескольких существующих библиотек для рисования в вебе, наряду с Processing.js и Raphaël.

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





Теги:
Хабы:
Всего голосов 44: ↑39 и ↓5+34
Комментарии20

Публикации

Истории

Ближайшие события

2 – 18 декабря
Yandex DataLens Festival 2024
МоскваОнлайн
11 – 13 декабря
Международная конференция по AI/ML «AI Journey»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань