Python Numpy Получить зеленую маску, даже если значения пикселей не все 0 в другом канале - PullRequest
1 голос
/ 07 февраля 2020

Код ниже в основном получает зеленый цвет из изображения:

green_mask = np.all(label==[0,255,0], axis=-1)

Но как мне изменить эту строку, чтобы я мог получить маску, даже если, скажем, первый канал содержит пиксели больше 0, НО все еще меньше чем 255?

Итак, я хочу что-то вроде этого:

green_mask = np.all((label[:,:,0]<255 and label[:,:,1]==255 and label[:,:,0]<255), axis=-1)

Но это дает мне ошибку: «Значение истинности массива с более чем одним элементом неоднозначно. Используйте a.any () или a.all ().

1 Ответ

1 голос
/ 07 февраля 2020

То, что я закончил, было:

green_mask = (label[:,:,0]<255) & (label[:,:,1]==255) & (label[:,:,0]<255)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...