Мне очень трудно визуализировать изменение формы 4D 5D массивов в numpy / pytorch.(Я предполагаю, что оба изменяют форму в подобном шаблоне, я использую pytorch в настоящее время!)* num видео x каналов видео x кадров видео x высотавидео x ширина видео )
Предположим, я хочу преобразовать видео в кадры как [Н х С х В х Ш], как следуетЯ продолжаю в форме.
Простое применение x = x.reshape(N*D, C, H, W)
на самом деле не делает этого, оно дает неправильный порядок элементов.
Можете ли вы помочь мне с тем, как это сделать, и любой небольшой интуиции шаблона, который вы использовали?
Если у меня есть одно видео (если предположить, что 1x3x100x256x256), я использую:
следующий код:
x = x.squeeze(0).T.reshape((100,3,256,256))[:,:,None,:,:]
и это работает
отлично. Не могу найти более 1 видео.
Спасибо!
Согласно запросу:
input = np.random.randn(N,C,D,H,W)
output = np.zeros((N*D,C,H,W))
Согласнозапрос кода для цикла, чтобы показать, что я хочу
for h in range(N):
for i in range(D):
for j in range(C):
for k in range(H):
for l in range(W):
output[h*D + i,j,k,l] = input[h,j,i,k,l]