У меня есть два изображения - фон и передний план, с разными условиями освещения и цветовыми тонами.Каждый из них содержит человека.Также у меня есть альфа-маска для человека на переднем плане изображения.Я хочу смешать человека (обрезанного с помощью маски) с переднего плана с фоновым изображением так, чтобы окончательное изображение выглядело так, как если бы человек на переднем плане стоял рядом с человеком на заднем плане (т.е. реалистичное составное смешивание). У меня уже естьМаска сегментации, и я могу получить обрезанного человека с изображения на переднем плане. Похоже, нам нужно обеспечить правильное освещение, насыщенность и соответствие цветов для получения естественного смешанного ощущения. Кажется, мы можем легко сделать это с помощью фотошопа вручную ( link1 link2 ).Как можно достичь аналогичных результатов программно, учитывая два случайных фона и изображения переднего плана с человеком?
Ниже приведены подходы, которые я попробовал;но у каждого из них есть определенные проблемы, и они работают только с определенными типами изображений.
1.OpenCV Бесшовный клон - работает довольно хорошо для плоских и похожих контрастных изображений. Проблемы: - тяжелые, нечеткие, не могут быть обобщены для всехтипы изображений.
2.Фотореалистичный стиль передачи - отлично работает;но он тяжелый, требует специальной подготовки и работает только с несколькими классами изображений.Все еще могут присутствовать артефакты.
3. Fast Color Transfer (pyimagesearch) - Работает для плоского фона.Усреднение цвета фона приводит к тому, что цвета перетекают в изображение и, таким образом, теряют свой естественный вид.
Также пробовал нормальное альфа-смешение, лапласианское смешение, сопоставление гистограммы и т. Д. Кроме того, экспериментировал с такими методами, как CLAHE, гамма-коррекция, выравнивание гистограммы, смешение краев и т. Д., Чтобы скорректировать и улучшить результаты смешивания.К сожалению, ни одна из этих комбинаций не дала желаемого результата. (Примечание: - В идеале вывод не должен выглядеть так, как будто слой сложен или вставлен поверх фонового изображения). То есть нам нужна бесшовная естественная смесь.
Возможно ли это только с использованием некоторых моделей AI или существуют какие-либо более легкие методы для автоматического компостирования изображений в java, с использованием некоторых стандартных библиотек (в целом должны работать адаптивно для любых двух изображений)?
Мы пытаемся достичьчто-то похожее на следующие методы: -
https://people.csail.mit.edu/yichangshih/portrait_web/
https://arxiv.org/abs/1709.09828
https://www.cs.cornell.edu/~kb/publications/egsr18_harmonization.pdf