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

в 6:57, , рубрики: canvas, Демосцена, обработка изображений

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

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

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

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

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

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

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

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

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

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

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

Автор: alizar

Источник

Поделиться

* - обязательные к заполнению поля