Как найти максимум массива вокруг оси = 0, исключая кортежи 0 с? - PullRequest
0 голосов
/ 09 сентября 2018

У меня есть массив n, который равен 3 x 2048 X 2048. У меня есть следующий код, чтобы найти максимум r с осью = 0.

maximum = r.max(axis=0) 

Как я могу выполнить ту же задачу, что и выше, но исключить кортежи 0 с (черные пиксели) при поиске максимума?

1 Ответ

0 голосов
/ 09 сентября 2018

Я понимаю ваш вопрос следующим образом: ваш графоподобный массив может содержать для одного пикселя значение [0,0,0], и если это произойдет, вы не захотите включать его в определение максимума. Или по-другому: вы не хотите нулевое значение в maximum.

Если это то, что вы хотите, то вы можете просто замаскировать все нули следующим образом:

maximum = r.max(axis=0) # maximum has shape (2048, 2048)
maximum = maximum[maximum>0] # now maximum is 1d with length 2048^2-(number of "black pixels")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...