一部抜粋
python
1mask = np.zeros(h.shape, dtype=np.uint8) 2mask[条件式] = 255 3img = cv.bitwise_and(image, image, mask=mask)
opencvを用いて一定の色を抽出したいです。
配列を見ると条件が単純ではなくhsvの値を用いてマスクを生成したいのですが
例えば
hの値が30〜50でsが40から60vが70から80のとき、
hの値が60〜70でsが40から60vが30から60のときに
マスクを生成したいのですが良い方法が思いつきません。どのように複雑な条件のマスクを生成できますでしょうか?
(((30 <= h and h <= 50) and (40 <= s and s <= 60) and (70 <= v and v <= 80) and (60 <= h and h <= 70) and (40 <= s and s <= 60) and (30 <= v and v <= 60)))の場合
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()というエラーがでました。