OpenCVのpythonでは、cv2.imreadで画像を読み取り、BGR numpy配列を取得するとします。次に、cv2.inRangeコマンドでマスクを生成します。マスクは同じ幅/高さを持ち、各マスクピクセルは黒または白です。opencv python BGR画像領域にマスク領域(黒または白のピクセル)をコピーする
マスク(黒と白のピクセルのイメージとして撮影された)からカラーイメージの領域に領域をコピーしたいとします。
どうすればよいですか?これは動作しません
img[10:20,10:20] = mask[10:20,10:20]
最初にマスクをBGRイメージに変換する必要がありますか?もしそうなら、どのように?
編集:画像全体にapply mask to color imageのようにマスク全体を適用したくありません。私が望むものを言うもう一つの方法:マスクを白黒のイメージとして見てください。その画像の領域を(黒または白のピクセルのセットとして)別の画像にコピーしたいと思います。結果として得られる画像は、黒または白のピクセルのみを含む1つの小さな矩形領域を除いて、カラー画像になります。結果は、PhotoshopのIが白黒画像の矩形領域をコピーし、その長方形をカラー画像の領域にコピーした場合と似ています。
(私はOpenCVのに新たなんだ)
「マスクから領域をコピーする」とはどういう意味ですか?あなたはイメージを使ってそれを見せることができますか? –
マスクはバイナリです。私は、マスク領域(座標)の黒または白の各ピクセルを、画像内の同じピクセル領域にコピー(置き換え)したいと考えています。同様に、私がPhotoshopの場合、1つの画像上で長方形の領域を選択してコピーし、別の画像に貼り付けます。 – cv2asker
[マスクをカラーイメージに適用する](0120-18753) –