Мимика лица в нейросети: как я перестал называть эмоцию в запросе
Мимика лица в нейросети: почему «грустная девочка» выходит позой с открытки и как описать брови, веки и губы, чтобы лицо на картинке ожило и держалось.
Евгений
Дизайнер-партнёр LibraChat
6 мин чтения
Девочка сидит у серой стены, обхватив колени, подперев щёку рукой. Длинные спутанные волосы, огромный серый свитер, взгляд в пол. Грустно? Очень. Только это грусть с обложки, а не лицо конкретного ребёнка.
Так нейросеть нарисовала мой запрос «грустная девочка». Признаю, спросил я ровно так, как спрашивает почти каждый, кому нужна мимика лица на картинке: назвал эмоцию и стал ждать. Нейросеть тут ни при чём. Ошибка сидела в самом запросе, и исправлять пришлось его.
«Грустная девочка» вышла грустной позой
Запрос был в пять слов:
Нарисуй грустную девочку лет десяти.
Грусть сыграна позой, свитером и серым фоном: лицо типовое, такое подойдёт к любой грустной подписи
Пришла аккуратная картинка в мягкой фактурной манере, почти как пастель. И она честно грустная. Но посмотри, чем эта грусть сделана. Поза: колени к груди, рука под щекой. Цвет: серая стена, синий свитер, приглушённые тона. Волосы: растрёпаны, падают на лицо.
А само лицо типовое. Опущенные веки, слегка надутые губы, брови домиком. Так в картинках рисуют «грусть вообще». Закрой ладонью всё, кроме лица, и останется маска, которую можно приклеить к любой подписи от «потеряла котёнка» до «понедельник».
Для иллюстратора это главный признак слабой работы: эмоцию несёт не лицо, а антураж. Убери серый фон и мешковатый свитер, посади ту же девочку на солнечную лужайку, и от грусти почти ничего не останется. Лицо само по себе её не держит. Почему так вышло? Я дал слово «грустная», и нейросеть нарисовала самое частое, что за этим словом стоит.
Где была моя ошибка
Ту же ловушку видно и в тексте. Чуть раньше я просил LibraChat описать лицо удивлённого персонажа, и ответ был анатомически верным:
Рот приоткрыт в форме небольшой буквы «О», губы расслаблены, но без улыбки.
Всё правда. Но так выглядит любое удивление, хотя бывает удивление радостное, испуганное, обиженное. Слово-ярлык даёт среднее лицо, и картинка, и описание тянутся к смайлику.
Значит, просить надо иначе. Не «какое чувство», а «что делает лицо» и «в какой ситуации». И ещё: что человек со своим лицом пытается сделать. Скрыть, сдержать, изобразить. Чистые эмоции бывают у смайликов, у людей они почти всегда смешанные.
Движения вместо слова
Следующим запросом я запретил называть эмоцию и дал ситуацию:
Опиши мимику для картинки только через движения лица, не называя эмоцию: девочка лет десяти узнала, что поездку отменили, и старается не заплакать. Брови, веки, взгляд, губы, подбородок — в 3–4 предложениях.
Ответ стал точным:
Брови сдвинуты к переносице во внутренних уголках и слегка приподняты.
Брови, приподнятые во внутренних уголках, художники давно знают как знак горя: так лицо выглядит за секунду до слёз. А губы ответ, наоборот, сжал:
Губы плотно сжаты, уголки вытянуты по горизонтали, подбородок слегка выдвинут вперёд.
Верх лица выдаёт, низ сдерживает. На этом противоречии и держится живое выражение. Одну деталь я поправил бы: когда сдерживают слёзы, подбородок обычно поджимается и морщится, а не выдвигается вперёд. На маленькой картинке разницы не видно, на портрете она решает.
Портрет, на котором лицо держится
Из этого описания я собрал просьбу о картинке. Подбородок поправил, ситуацию вернул в начало:
Нарисуй портрет девочки лет десяти, которая старается не заплакать: брови сдвинуты к переносице и приподняты во внутренних уголках, нижние веки напряжены, взгляд опущен и чуть в сторону, губы плотно сжаты, подбородок поджат и слегка сморщен, мягкий свет из окна сбоку.
Лицо держится, а не плачет: движения из запроса на месте, но девочка выглядит старше десяти
Это уже другой уровень. Крупный портрет у окна, свет сбоку, почти фотография. Брови сведены и приподняты у переносицы, взгляд опущен в сторону, губы сжаты, подбородок напряжён. Никакой позы и никакого серого фона, а грусть читается сразу, и не грусть вообще, а именно «держусь». Закрой ладонью нижнюю половину лица: глаза почти плачут. Закрой верхнюю: рот держит.
Но одна вещь уехала. Девочка на портрете выглядит лет на пятнадцать, а не на десять. Черты лица взрослее, чем просил запрос. «Лет десяти» оказалось для картинки слабым словом, и это стоит проверять на каждом портрете. Если возраст важен, я бы дописал его приметы: круглые детские щёки, короткий нос, школьная форма или детская кофта. Такой правки я ещё не отправлял, так что это следующий ход, а не готовый рецепт. Дописать её можно ниже в этом же разговоре, заново портрет описывать не придётся.
Тот же приём для героя книги
Если нужен не портрет, а персонаж для книги или стикеров, понадобится лист эмоций: один герой с разными выражениями. Я попросил его текстом, с условием повторять внешность героя одними словами в каждой строке:
Помоги составить лист эмоций для персонажа детской книги: лис-почтальон в синей кепке. Дай четыре выражения — радость, обида, испуг, хитрость. Каждое одной строкой через брови, глаза и рот, а внешность персонажа повторяй в каждой строке одними и теми же словами.
Лучше всех вышла хитрость:
Хитрость: лис-почтальон в синей кепке с одной бровью приподнятой, прищуренными глазами и лёгкой улыбкой на рту.
Одна поднятая бровь — это асимметрия, а асимметрия и делает хитрость хитростью. Прищур добавляет расчёт, лёгкая улыбка — удовольствие от собственного плана. Три движения, и характер виден без слов.
А в строке про обиду снова проскочил ярлык: «грустные глаза» вместо движения. Я бы заменил его на «взгляд в сторону, нижние веки чуть подняты». Такие места стоит ловить в тексте, пока описание не ушло в картинку. А рисованный стиль для такого героя удобнее подбирать в разделе «Изображения», там есть, например, стиль «Эскиз». Для похожих задач с героем в нескольких кадрах пригодится разбор про комикс нейросетью, а про лицо в маленьком кружке есть текст об аватарке нейросетью.
Что я теперь пишу вместо названия эмоции
Что делает лицо, когда человек это чувствует? С этого вопроса я теперь начинаю любой запрос, где важна мимика.
Ответ почти всегда состоит из двух частей. Что лицо выдаёт: брови, веки, взгляд. И что оно пытается удержать: губы, подбородок. Если обе части в запросе, лицо получается живым. Если только слово, получается смайлик. А возраст, рост и прочие приметы, которые картинка легко теряет, я теперь описываю отдельно и проверяю первыми, ещё до мимики.
Возьми эмоцию, которую хочешь нарисовать, и опиши её через ситуацию и движения бровей, век и губ, не называя самого чувства. Отправь это в LibraChat со словом «нарисуй», а потом закрой ладонью то верх, то низ лица на картинке.
Говорят ли половины лица одно и то же или разное?
нейросеть мимика лицакартинки и видеоэмоции персонажапортрет