У меня есть несколько изображений, для которых у меня также есть их маска (зеленая на картинке).Я создаю ограничивающий прямоугольник (пунктирная линия на рисунке) вокруг объекта и беру только эту часть изображения.
Теперь я хотел бы заменить серую часть пикселем, который естественным образом расширяет цвет автомобиля.Например, взять тот же цвет, что и ближайший автомобильный пиксель.В конце я хотел бы получить изображение со всеми деталями автомобиля, но без какой-либо формы.
Я попытался просто инвертировать маску, чтобы маска представляла серый пиксель вокруг автомобиля, а затем использовать функцию «inpaint» из opencv, чтобы закрасить эту новую маску адекватным цветом:
result = cv2.inpaint(car_image,new_mask,50,cv2.INPAINT_NS)
Не работает, так как мы все еще видим границы вокруг машины.
Любые советы будут с благодарностью.Я работаю над Python, и он должен быть достаточно эффективным, так как у меня огромное количество изображений.