2

i have a 3D numpy array of images with the shape (imageCount, width, height).

My goal is to transform this into a 2D pixel series array with the shape (pixelPosition, imageCount).

Right now this is my solution:

timeSeries= []

for h in range(height):
    for w in range(width):
        timeSeries.append(images[:,h,w])

is there a simpler way with numpy.reshape() or something like this?

Divakar
  • 218,885
  • 19
  • 262
  • 358
White Noise
  • 373
  • 2
  • 13

1 Answers1

2

Transpose and reshape -

images.transpose(1,2,0).reshape(height*width,-1)
Divakar
  • 218,885
  • 19
  • 262
  • 358