최근에 최소한 기본적인 이미지 처리가 필요한 문제를 발견했습니다. 파이썬에서이 작업을 수행 할 수 있습니까? 그렇다면 어떻게해야합니까?
답변:
가장 잘 알려진 라이브러리는 PIL 입니다. 그러나 단순히 기본 조작을 수행하는 경우 ImageMagick 에 대한 Python 바인딩을 사용하는 것이 더 나을 것입니다. 이는 Python 에서 변환을 작성하는 것보다 훨씬 효율적입니다.
"이미지 처리"가 의미하는 바에 따라 더 나은 선택은 numpy 기반 라이브러리 인 mahotas , scikits.image 또는 scipy.ndimage 입니다. 이 모든 것은 numpy 배열을 기반으로 작동하므로 한 라이브러리와 다른 라이브러리의 함수를 혼합하고 일치시킬 수 있습니다.
나는 이것들에 대한 더 많은 정보를 가지고있는 http://pythonvision.org 웹 사이트를 시작했다 .
scikit-image
현재 scikit-image.org
scipy.ndimage
링크가 죽었습니다. 현재 링크, 아마도 : scipy.github.io/devdocs/tutorial/ndimage.html
또한 "표준"과학 모듈을 기반으로 이미지 처리에 접근 할 수 있습니다. SciPy 에는 이미지 처리 전용 전체 패키지 인 scipy.ndimage가 있습니다. Scipy는 사실상 표준 일반 수치 계산 패키지입니다. 사실상 표준 배열 조작 모듈 NumPy를 기반으로합니다 . 이미지는 숫자 배열로도 조작 할 수 있습니다. 이미지 디스플레이의 경우 Matplotlib ( "과학 3 부작"의 일부)는 이미지를 매우 간단 하게 표시 합니다 .
SciPy는 여전히 활발히 유지되고 있으므로 미래를위한 좋은 투자입니다. 또한 SciPy는 현재 Python 3에서도 실행되지만 PIL (Python Imaging Library)에서는 실행되지 않습니다.
import scipy
있지 않으며 PIL 설치없이 수행 할 수 있습니다 (으로 import Image
실패 ImportError
).
목록을 완성하려면 : opencv http://opencv.willowgarage.com/documentation/python/index.html
실제로 훌륭한 Python Imaging Library (PIL)가 있습니다. 앤티 앨리어싱 기능을 포함하여 기존 이미지를 변경하고 텍스트 등으로 새 이미지를 만들 수있는 기능을 제공합니다. 앞서 언급 한 사이트에서 제공되는 PIL 핸드북에서 괜찮은 입문 자습서 를 찾을 수도 있습니다.
사용자 지정 이미지 처리 효과를 만드는 경우 PythonPixels가 유용 할 수 있습니다. http://halfhourhacks.blogspot.com/2008/03/pythonpixels.html 이미지 처리를 작성하고 실험하기위한 것입니다.
VIPS는 빠르며 여러 CPU를 사용합니다.
https://github.com/libvips/libvips/wiki/Speed-and-memory-use