編集別の画像の上に不透明度のあるレイヤー画像。 - 同様の問題とOpenCVの
誰もが - 私は別見つかっSO numpyのの速度を活用素晴らしいのpython溶液でhereに答えます。私は両方とも同じサイズ、2枚の画像を持っている
:
は、次のような問題を考慮してください。
そして第二に、ブルーno不透明度を有する赤色よりも小さい正方形が、それを囲む白:一つは、不透明度の変化する層を有する赤の正方形です。
私はこのプロジェクトのためのOpenCVのPythonバインディングを使用して、これまで(午前透かしhereについて読んだ後、私はこの持っている:
:次の出力を生成し
redSquare = cv2.imread('redSquare.png', cv2.IMREAD_UNCHANGED)
(rH, rW) = redSquare.shape[:2]
blueSquare = cv2.imread('blueSquare.png')
(h, w) = blueSquare.shape[:2]
blueSquare = np.dstack([blueSquare, np.ones((h,w), dtype = 'uint8') * 255])
overlay = np.zeros((h,w,4), dtype = 'uint8')
overlay[0:rH, 0:rW] = redSquare
output = blueSquare .copy()
cv2.addWeighted(overlay, 0.5, output, 0.5, 0, output)
cv2.imwrite('imageAdded.png', output)
私は重み付け加算を使用することで理解していますが、それぞれ0.5を使用していますが、実際にはそれぞれ1.0が必要ですが、両方の重みを増やしてみると1つだけ増え、もう1つは減少します。
誰かが私がこれをどのようにして達成できるかについての洞察力がありますが、Pythonの方が望ましいですが、C++の方法を知っていれば、私はそれを複製できます。
ありがとうございました。
アルファチャンネルで赤い画像を入力してください。 – sturkmen
確かに、私に秒を与えて、私は編集します。 – Aphire