Выберите определенную ось из массива numpy - PullRequest
0 голосов
/ 19 апреля 2020

У меня есть массив размером numpy (100, 2, 15, 27) (это 100 изображений с 2 ​​каналами размером 15x27). Я хочу разделить 2 канала, чтобы получить 2 отдельных массива размера (100, 1, 15, 27) (мне нужен этот 1 там). Как я могу это сделать? Я обычно выбираю столбец, используя [:, i], но эта более высокая размерность смущает меня. Спасибо!

Ответы [ 2 ]

0 голосов
/ 19 апреля 2020

Вы можете просто использовать moveaxis, а затем разделить их как хотите:

x = np.moveaxis(x, 1, 0)
x.shape
# (2, 100, 15, 27)
first_chanel = x[0]
second_chanel = x[0]
0 голосов
/ 19 апреля 2020

a[:,i] снова работает. Если вам нужно, вы можете добавить размеры с .reshape(100,1,15,27) или более приятным способом, np.expand_dims(a, axis=1).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...