numpy 3D-image array to 2D

2020-07-04 14:28发布

问题:

I have a 3D-numpy array of a gray image, which looks something like this:

[[[120,120,120],[67,67,67]]...]

Obviously I have every R G and B the same because it is a gray image - this is redundent. I want to get a new 2D array which looks like:

[[120,67]...]

Which means to take every pixel's array [x,x,x] to just the value x

How can I do that?

回答1:

If the shape of your ndarray is (M, N, 3), then you can get an (M, N) gray-scale image like this:

>>> gray = img[:,:,0]