Нещодавно я зіткнувся з проблемою, яка вимагає хоча б базового ступеня обробки зображень, чи можу я це зробити в Python, і якщо так, то з чим?
Відповіді:
Найвідоміша бібліотека - PIL . Однак, якщо ви просто виконуєте базові маніпуляції, вам, мабуть, краще з прив'язками Python для ImageMagick , що буде набагато ефективніше, ніж написання перетворень на 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 (також частина "наукової трилогії") робить показ зображень досить простим .
SciPy все ще активно підтримується, тому це хороша інвестиція на майбутнє. Крім того, SciPy в даний час також працює з Python 3, тоді як бібліотека зображень Python (PIL) - ні.
import scipy
без встановлення PIL ( import Image
не вдається з ImportError
).
Щоб заповнити список: opencv http://opencv.willowgarage.com/documentation/python/index.html
Насправді існує чудова бібліотека зображень Python (PIL) . Це дає вам можливість змінювати існуючі зображення, включаючи можливості згладжування, і створювати нові зображення з текстом тощо. Ви також можете знайти гідний вступний підручник у довіднику з PIL, що міститься на згаданому вище веб-сайті.
Якщо ви створюєте власний ефект обробки зображень, вам може виявитися корисним PythonPixels. http://halfhourhacks.blogspot.com/2008/03/pythonpixels.html Призначений для написання та експериментів з обробкою зображень.
VIPS повинен бути швидким і використовувати кілька процесорів:
https://github.com/libvips/libvips/wiki/Speed-and-memory-use