Здравствуйте, я хочу объединить маску зеленого изображения (3 канала с квадратной фигурой, только зеленый канал равен 255) с трехканальным изображением, используя opencv в Python. Я не хочу использовать PIL.Image.composite, так как хочу от него избавиться.
В Opencv есть функция addweighted, которая делает что-то похожее на PIL.Image.composite, однако, поскольку маска является двоичной и применяется ко всему изображению, остальная часть изображения становится темнее, например, когда значения Альфа и Бета имеют значение 0,5, а Гамма делает изображение белее, но исходные цвета изображения теряются< /p>
Чтобы исправить это, мне нужно добавить в пустой массив исходное изображение без ROI и ROI со смесью маски и изображения (addWeighted), что для одного изображения может быть чем-то тривиальным, но для нескольких изображений, например 10T, это начинает отнимать больше времени.
Кто-нибудь знает, есть ли способ добавить к методу с добавленными весами (или другому методу), например, скажем лямбда-функция для добавления взвешенных значений только в том случае, если маска не имеет нулевого значения в трех каналах. Спасибо
Подробнее здесь: https://stackoverflow.com/questions/791 ... -on-opencv
Python: добавьте взвешенную сумму из другого изображения только в рентабельность инвестиций в OpenCV. ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение