167 votes

Le module scipy.misc n'a pas d'attribut imread ?

J'essaie de lire une image avec scipy. Cependant, il n'accepte pas l'option scipy.misc.imread partie. Quelle pourrait être la cause de ce phénomène ?

>>> import scipy
>>> scipy.misc
<module 'scipy.misc' from 'C:\Python27\lib\site-packages\scipy\misc\__init__.pyc'>
>>> scipy.misc.imread('test.tif')
Traceback (most recent call last):
  File "<pyshell#11>", line 1, in <module>
    scipy.misc.imread('test.tif')
AttributeError: 'module' object has no attribute 'imread'

10voto

kshitij_p Points 101

Comme répondu misc.imread est déprécié dans SciPy 1.0.0, et sera supprimé dans 1.2.0. imageio est une option, il retournera un objet de type :

<class 'imageio.core.util.Image'>

mais à la place de imageio, utilisez cv2

import cv2
im = cv2.imread('astronaut.png')

im sera de type : <class 'numpy.ndarray'>

Comme les tableaux numpy sont plus rapides à calculer.

9voto

Josh Hansen Points 718

Vous avez besoin de la Python Imaging Library (PIL) mais hélas ! le projet PIL semble avoir été abandonné. En particulier, il n'a pas été porté sur Python 3. Donc si vous voulez la fonctionnalité PIL dans Python 3, vous ferez bien d'utiliser Oreiller qui est le fork semi-officiel de PIL et semble être activement développé. En fait, si vous avez besoin d'une implémentation moderne de PIL, je vous recommande Pillow. C'est aussi simple que pip install pillow . Comme il utilise le même espace de noms que PIL, il s'agit essentiellement d'un remplacement immédiat.

A quel point cette fourche est-elle "semi-officielle" ? vous pouvez vous demander. Le site À propos de La page de la documentation de Pillow dit ceci :

Plus le temps s'écoule depuis la dernière publication d'un LIP, plus la probabilité d'une d'un nouveau LIP diminue. Cependant, nous n'avons pas encore entendu une annonce officielle "LIP est mort". Donc, si vous voulez toujours soutenir LIP, veuillez signaler d'abord les problèmes ici, puis ouvrir les tickets Pillow correspondants ici.

Veuillez fournir un lien vers le premier ticket afin que nous puissions suivre le(s) problème(s). en amont.

Cependant, le plus récent communiqué de LIP sur la Site officiel du LIP est daté du 15 novembre 2009. Je pense que nous pouvons proclamer sans risque que Pillow est le successeur de PIL après (au moment où nous écrivons ces lignes) près de huit ans sans nouvelles versions. Donc, même si vous n'avez pas besoin du support de Python 3, je vous suggère d'éviter l'ancienne distribution PIL 1.1.6 disponible dans PyPI et d'installer Pillow frais, à jour et compatible.

7voto

Steve Points 1048

Installez la bibliothèque Pillow en suivant les commandes suivantes :

pip install pillow

Attention, la réponse sélectionnée est périmée. Voir les docs de SciPy

Notez que Pillow ( https://python-pillow.org/ ) n'est pas une dépendance de SciPy, mais les fonctions de manipulation d'images indiquées dans la liste ci-dessous ne sont pas disponibles sans lui.

5voto

Dhananjay Mehta Points 51

Imread utilise la bibliothèque PIL, si la bibliothèque est installée, utilisez :

from scipy.ndimage import imread

Fuente: http://docs.scipy.org/doc/scipy-0.17.0/reference/generated/scipy.ndimage.imread.html

3voto

python -m pip install pillow

Cela a marché pour moi.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X