白黒マスクの形をした透明な単色オーバーレイで画像をカバーしたい
現在、これを実装するために次のJavaコードを使用しています。
redImg = new Mat(image.size(), image.type(), new Scalar(255, 0, 0));
redImg.copyTo(image, mask);
私はpython apiに精通していません。
だから私はPythonに代替APIがあるかどうか知りたいです。より良い実装はありますか?
画像:
マスク:
私が欲しいもの:
Python、OpenCV、Numpyのすべてをしばらく扱った後、コードでこれを実装するのは非常に簡単であることがわかりました。
image[mask] = (0, 0, 255)
--------------元の答え--------------
私は次のコードでこれを解決しました:
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)