13

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?

yogi
  • 1,327
  • 2
  • 12
  • 33

1 Answers1

21

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]
bogatron
  • 18,639
  • 6
  • 53
  • 47