Niveaux de gris de l'image d'un tableau NumPy pour la transformée de Fourier

Actuellement, je suis à l'aide de PIL et NumPy. J'ai une couleur png image et que je veux:

  1. Lire en niveaux de gris
  2. Convertir un tableau NumPy
  3. Effectuer une FFT sur le tableau
  4. Afficher l'image

C'est ce que j'essaie (dans IPython w/--pylab drapeau):

In [1]: import Image

In [2]: img = Image.open('ping.png').convert('LA')

In [3]: img_as_np = np.asarray(img)

In [4]: img_as_np
Out[4]: array(<Image.Image image mode=LA size=1000x1000 at 0x105802950>, dtype=object)

In [5]: img_fft = fft.fft2(img_as_np) // IndexError: index out of range for array
Une raison pour l'utilisation de la LA mode (niveaux de gris avec alpha) ?
Après vous revoir, la réponse est stackoverflow.com/a/14472089/1832154 montre comment afficher correctement le résultat d'une transformée de Fourier.
J'ai lu quelque part que LA mode permettez-moi d'utiliser imshow() en niveaux de gris, je me rends compte maintenant L met en niveaux de gris, mais j'ai juste besoin d'ajouter un argument à imshow() pour s'assurer qu'il montre bien que les niveaux de gris. J'ai appris (à partir de réponses ci-dessous) A est d'empêcher la conversion se passe bien.. mon erreur 🙂 Merci!

OriginalL'auteur adelbertc | 2013-01-29