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

Как мы обучили нейросеть генерировать тени на фотографии

Время на прочтение22 мин
Количество просмотров10K
Всего голосов 29: ↑28 и ↓1+27
Комментарии17

Комментарии 17

Результат впечатляет, но возник вопрос — если сеть работает в AR-контексте (то-есть 3D-рендер есть "по умолчанию") — почему бы не ограничить сеть выводом "light estimation" и настраивать параметры рендера так, чтобы тень отрисовывал движок? Этим методом "за компанию" решается сомнительная реалистичность в размытии тени.

Согласен, с реалистичностью возникают сложности. В том числе из-за отсутствия хороших метрик для оценки качества изображений (кроме FID).
Мощная работа!!!
Интересно и очень подробно!
Круто все расписал, надо потестить. Сюда бы еще прикрутить, чтобы вставляемый объект подгонялся под окружающую среду (inpainting типа).
Спасибо за код!
Спасибо!
Прикольная идея, попробуем :)
Очень занимательное чтиво! Одна из тех статей, которую приятно глазам читать! Скорее жду новых увлекательных публикаций на подобную тематику, очень актуальное направление в настоящее время.
Спасибо, за такую работу) На саму картинку свет не накладывается, только на поверхность куда вставляется?
Да, механизм внимания как раз для контроля этого. Маски позволяют указать сети, где тени генерировать, а где нет.

Спасибо, доходчиво объяснили.
А на каком разрешении обучали модель?

Брали картинки из ShadowAR-датасета, разрешением 256x256.
Спасибо за интересную статью, достойная работа!
Спасибо огромное за код и пояснения! Очень полезно
Интересная статья! Только не очень поняла, а что дает Refinement модуль?
Refinement модуль уточняет тень, он состоит из BatchNorm2d, ReLU и Conv2d. Авторы пробовали обучать без него — тени получаются менее правильной формы.
Интересная работа!
А можно ли было обучать вместе, не разделяя отдельно на attention и shadow generation блоки?
Да, конечно, но тогда ресурсов требуется больше, ведь, сеть, обучаемая за раз, станет больше.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации