Skip to content Skip to sidebar Skip to footer

Python Numpy How To Reshape This List Of Arrays/images Into A Collage?

I've got the following list of 25 mini black-and-white images representing patterns: imgs.shape (25, 3, 3, 1) I.e. there are 25 different 3x3 black and white image patterns. What I

Solution 1:

Answer :

imgs.reshape(5, 5, 3, 3, 1).swapaxes(1, 2).reshape(15, 15, 1)

Examples:

# test data # each 3x3 image consists of the 9 identical digits

A = np.stack([
    np.full((3, 3, 1), i)
    for i in range(1, 26)
])

with_swap = A.reshape(5, 5, 3, 3, 1).swapaxes(1, 2).reshape(15, 15, 1)
print(with_swap[...,-1])

without_swap = A.reshape(15, 15, 1)
print(without_swap[...,-1])

With swap:

[[ 1  1  1  2  2  2  3  3  3  4  4  4  5  5  5][ 1  1  1  2  2  2  3  3  3  4  4  4  5  5  5][ 1  1  1  2  2  2  3  3  3  4  4  4  5  5  5][ 6  6  6  7  7  7  8  8  8  9  9  9 10 10 10][ 6  6  6  7  7  7  8  8  8  9  9  9 10 10 10][ 6  6  6  7  7  7  8  8  8  9  9  9 10 10 10][11 11 11 12 12 12 13 13 13 14 14 14 15 15 15][11 11 11 12 12 12 13 13 13 14 14 14 15 15 15][11 11 11 12 12 12 13 13 13 14 14 14 15 15 15][16 16 16 17 17 17 18 18 18 19 19 19 20 20 20][16 16 16 17 17 17 18 18 18 19 19 19 20 20 20][16 16 16 17 17 17 18 18 18 19 19 19 20 20 20][21 21 21 22 22 22 23 23 23 24 24 24 25 25 25][21 21 21 22 22 22 23 23 23 24 24 24 25 25 25][21 21 21 22 22 22 23 23 23 24 24 24 25 25 25]]

Without swap:

[[ 1  1  1  1  1  1  1  1  1  2  2  2  2  2  2][ 2  2  2  3  3  3  3  3  3  3  3  3  4  4  4][ 4  4  4  4  4  4  5  5  5  5  5  5  5  5  5][ 6  6  6  6  6  6  6  6  6  7  7  7  7  7  7][ 7  7  7  8  8  8  8  8  8  8  8  8  9  9  9][ 9  9  9  9  9  9 10 10 10 10 10 10 10 10 10][11 11 11 11 11 11 11 11 11 12 12 12 12 12 12][12 12 12 13 13 13 13 13 13 13 13 13 14 14 14][14 14 14 14 14 14 15 15 15 15 15 15 15 15 15][16 16 16 16 16 16 16 16 16 17 17 17 17 17 17][17 17 17 18 18 18 18 18 18 18 18 18 19 19 19][19 19 19 19 19 19 20 20 20 20 20 20 20 20 20][21 21 21 21 21 21 21 21 21 22 22 22 22 22 22][22 22 22 23 23 23 23 23 23 23 23 23 24 24 24][24 24 24 24 24 24 25 25 25 25 25 25 25 25 25]]

Post a Comment for "Python Numpy How To Reshape This List Of Arrays/images Into A Collage?"