2016-08-16 12 views
1

私はループで問題を解決しましたが、それはゆっくりとうっとりしていません。私はマスクのソリューションを探しています。特定のチャンネルの値を持つピクセルに興味があれば、それは簡単です:特定の色の2Dマスク

img[img[:,:,0]==64] = [0,0,0] 

これらをすべて黒にすることができます。特定の色を変更したいと思います。 [192,0,128]、だから私はすべての3つのチャネル、img[ img[:,:,0]==192 and img[:,:,1]==0 and img[:,:,2]==128]=[0,0,0]のようなものが必要ですが、もちろんこれは間違っています。私もnp.all(img==[192,0,128])を試しましたが、うまくいきませんでした。

答えて

0

OK、私はちょうどnumpy.logical_and()を使用し、それはトリックでした!

1

あなたはほとんどありました:

np.all(img == [192,0,128], axis=-1) 

は、あなたが探しているものを提供します。次元削減を行う軸を指定する必要があります。これは、ここでの色チャネル軸に相当します。

関連する問題