2017-06-14 2 views
3

Je veux couvrir une image avec une superposition de couleur unie transparente sous la forme d'un masque noir-blancOpenCV & Python: couverture d'un masque de couleur sur une image

Actuellement, je suis en utilisant le code java suivant pour implémenter ce.

redImg = new Mat(image.size(), image.type(), new Scalar(255, 0, 0)); 
redImg.copyTo(image, mask); 

Je ne connais pas l'API python.

Donc je veux savoir s'il existe une alternative api en python. Y a-t-il une meilleure implémentation?

l'image:

src img

masque:

mask

ce que je veux:

what i want

+0

Ok, pouvez-vous également montrer ce que vous avez essayé jusqu'à présent? – ZdaR

+0

Avez-vous essayé quelques permutations de fusionner les deux images? :) – Zeokav

Répondre

2

Je résolu ce problème en le code suivant:

redImg = np.zeros(image.shape, image.dtype) 
redImg[:,:] = (0,0,255) 
redMask = cv2.bitwise_and(redImg, redImg, mask=mask) 
cv2.addWeighted(redMask, 1, image, 1, 0, image)