[python] scipy.misc 모듈에 imread 속성이 없습니까?

scipy로 이미지를 읽으려고합니다. 그러나 그것은 scipy.misc.imread부분을 받아들이지 않습니다 . 그 원인은 무엇일까요?

>>> 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'



답변

Pillow (이전 PIL ) 를 설치해야합니다 . 에서 워드 프로세서scipy.misc:

Pillow는 SciPy의 종속성이 아니지만 아래 목록에 표시된 이미지 조작 기능은 SciPy 없이는 사용할 수 없습니다.

imread

Pillow를 설치 한 후 imread다음과 같이 액세스 할 수있었습니다 .

In [1]: import scipy.misc

In [2]: scipy.misc.imread
Out[2]: <function scipy.misc.pilutil.imread>


답변

imreadSciPy 1.0.0에서 더 이상 사용되지 않으며 1.2.0에서 제거됩니다. imageio.imread대신 사용하십시오 .

import imageio
im = imageio.imread('astronaut.png')
im.shape  # im is a numpy array
(512, 512, 3)
imageio.imwrite('imageio:astronaut-gray.jpg', im[:, :, 0])


답변

imread는 버전 1.2.0 이후에 감가 상각되었습니다! 따라서이 문제를 해결하려면 버전 1.1.0을 설치해야했습니다.

pip install scipy==1.1.0


답변

파이썬 3의 경우, 사용하는 것이 가장 좋습니다 imreadmatplotlib.pyplot:

from matplotlib.pyplot import imread


답변

동일한 문제가 발생하는 경우 scipy를 제거하고 scipy == 1.1.0을 설치하십시오.

$ pip uninstall scipy

$ pip install scipy==1.1.0


답변

Python Imaging Library (PIL)가 필요하지만 아쉽습니다! PIL 프로젝트는 포기 된 것 같습니다. 특히 Python 3으로 포팅되지 않았습니다. 따라서 Python 3에서 PIL 기능을 원한다면 PIL 의 반 공식 포크 인 Pillow를 사용 하는 것이 좋으며 활발하게 개발되고있는 것으로 보입니다. 실제로 최신 PIL 구현이 필요하다면 Pillow를 추천합니다. 간단합니다 pip install pillow. PIL과 동일한 네임 스페이스를 사용하므로 본질적으로 드롭 인 교체입니다.

이 포크는 얼마나 “반 공식”입니까? 당신은 물어볼 수 있습니다. Pillow 문서 의 정보 페이지는 다음과 같이 말합니다.

마지막 PIL 릴리스 이후 더 많은 시간이 지남에 따라 새 PIL 릴리스 가능성이 감소합니다. 그러나 아직 공식 “PIL이 죽었다”는 발표를 듣지 못했습니다. 그래도 PIL을 지원하려면 먼저 여기에서 문제를보고 한 다음 여기에서 해당 Pillow 티켓을여십시오.

업스트림 문제를 추적 할 수 있도록 첫 번째 티켓에 대한 링크를 제공하세요.

그러나 공식 PIL 사이트 의 가장 최근 PIL 릴리스 날짜는 2009 년 11 월 15 일입니다. 필자는 필로우가 (이 글을 쓰는 시점에서) 거의 8 년 동안 새로운 릴리스가없는 후 PIL의 후계자로 필로우를 안전하게 선포 할 수 있다고 생각합니다. 따라서 Python 3 지원이 필요하지 않더라도 PyPI에서 사용 가능한 고대 PIL 1.1.6 배포를 피하고 새롭고 호환 가능한 최신 Pillow를 설치하는 것이 좋습니다.


답변

다음 명령으로 Pillow 라이브러리를 설치하십시오.

pip install pillow

선택한 답변이 오래되었습니다. SciPy 문서보기

Pillow ( https://python-pillow.org/ )는 SciPy의 종속성이 아니지만 아래 목록에 표시된 이미지 조작 기능은 SciPy 없이는 사용할 수 없습니다.