2010-02-04 2 views
17

Python에서 이미지를 읽는 표준 방법을 찾지 못했습니다. 거기에는 정말로 아무 것도 없기 때문에 (너무 많은 맞춤 기능을위한 기능이 너무 많아서 이미지를 읽을 수있는 기능이 없다는 것이 정말로 궁금합니다.) 또는 그것은 무엇입니까? (MacOSX 표준 설치와 Linux 배포판의 최신 버전에서 사용 가능해야합니다.)Python : PNG 이미지를 읽는 기본/공통 방법

아무 것도없는 경우 가장 일반적인 lib는 무엇입니까?

많은 검색 결과가 나를 Python Imaging Library로 안내합니다. 이것이 이미지를 읽는 데 잘 알려진 Python-lib 인 경우, 왜 Python에 포함되어 있지 않습니까?

+3

모든 것이 표준 라이브러리에 포함되어 있지는 않습니다. 사실 이미 너무 많습니다. –

답변

23

아니요, 이미지를 직접 읽고 쓰기/처리하기위한 표준 라이브러리에는 모듈이 없습니다. 하지만 가장 일반적인 라이브러리는 PIL (Python Imaging Library) 일 수 있습니다. 대부분의 프로젝트는 표준 라이브러리에 포함되어 있지 않습니다. 1) 완전히 선택적이며 2) 소수의 Python 핵심 개발자가 유지 관리 할 수 ​​없기 때문입니다.

+1

Python 이미징 라이브러리가 무의미합니다. – Mark

+1

글쎄, 정규식, 압축 풀기, http, imap, ftp 등 모든 것들을 볼 수 없다. (나에게 잘못을주지 말라. 나는 정말로 행복하다.) 그러나 단순한 이미지 로딩 기능은 아니다. 하지만 알았어, 그 정보 주셔서 감사합니다! – Albert

+1

Lennart Regebro는 이미 지적했습니다. Python의 표준 라이브러리에는 1) 사용되지 않았거나 2) 표준 라이브러리에 속하지 않거나 3) 질의 가능한 품질의 물건이 많이 포함되어 있습니다. 다행히도 파이썬 4.x에서 더 많은 정리 작업이 진행될 것입니다. – AndiDog

0

제안 된 PIL은 인터레이스 PNG를 지원하지 않습니다. 다른 기원의 많은 PNG를 다룰 때 꽤 어려울 수 있습니다. 그들을 열 수는 있지만 헤더 정보 만 읽을 수는 있지만 다른 모든 작업은 실패합니다.

+0

그래서 다른 제안이 있습니까? 최고의 라이브러리는 무엇입니까? – Albert

+2

글쎄, 필자는 파이썬에서 PIL 외에 다른 그래픽 라이브러리를 사용하지 않았지만 [pypng] (http://code.google.com/p/pypng/)는 모든 유형의 PNG 파일을 지원한다고 주장합니다. 그것의 순수한 파이썬 그래서 그것은 PNGs를 여는 가장 빠른 방법이 아니며 매우 제한된 API를 가지고 있습니다. 인터레이스 PNG를 PIL에로드하는 데 사용할 수있을 것 같습니다. PNG가 Image 클래스의 "info"dict에 인터레이스되었는지 확인할 수 있습니다. 게다가 [ImageMagick]에 대한 Python 바인딩이 있습니다 (http://www.imagemagick.org/script/api.php). – user266458

2

, 난 강력하게

ImageMagick를 좀 더 강력한 라이브러리도 꽤 (... 지팡이가 좀 더 빨리 알 것이다, 내 테스트에서 잘 작동)을 Python interfaces to the ImageMagick 라이브러리 중 하나를 제안 파티에 늦게 오는 많은 언어에 걸친 사실상의 표준입니다. 더 넓은 기반에 호소하는 동시에 결과적으로 더 넓은 개발자 기반을 갖게됩니다.

관련 문제