Qt очень хорошо работает с графикой. На мой взгляд, он более универсален, чем PIL.
Вы получаете все функции, необходимые для работы с графикой, но есть также векторная графика и даже поддержка реальных принтеров. И все это в одном унифицированном API QPainter.
Для использования Qt вам нужна привязка Python: PySide или PyQt4 .
Они оба поддерживают Python 3.
Вот простой пример, который загружает изображение JPG, рисует сглаженный круг радиуса 10 в координатах (20, 20) с цветом пикселя, который был в этих координатах, и сохраняет измененное изображение в виде файла PNG:
По состоянию на 30 марта 2012 года я пытался и не смог получить sloonz fork на GitHub для открытия изображений. Я получил это, чтобы скомпилировать нормально, но на самом деле это не сработало. Я также попытался собрать библиотеку Гольке, и она тоже скомпилировалась, но не смог открыть ни одного изображения. Кто-то упоминал PythonMagick выше, но он компилируется только в Windows. Смотрите PythonMagick в wxPython wiki .
Последнее обновление PIL произошло в 2009 году, и хотя на его веб-сайте написано, что они работают над портом Python 3, прошло уже 3 года, и список рассылки остыл.
Чтобы решить мою проблему манипулирования изображениями в Python 3, я использую subprocess.call()для выполнения команд оболочки ImageMagick. Этот метод работает.
В зависимости от того, что необходимо, scikit-image может быть лучшим выбором, с манипуляциями, выходящими далеко за пределы PIL и текущей версии Pillow. Очень ухоженный, по крайней мере, столько же, сколько и Подушка. Кроме того, базовые структуры данных взяты из Numpy и Scipy, что делает его код невероятно совместимым. Примеры, которые подушка не может обработать:
Вы можете увидеть его силу в галерее . Эта статья дает хорошее введение в это. Удачи!
Если вы используете Python3, вы также можете использовать библиотеку PILasOPENCV, которая работает в Python 2 и 3. Вызовы API-функций такие же, как в PIL или подушке, но внутренне она работает с OpenCV и Numpy для загрузки, сохранения и манипулирования изображениями. Загляните на https://github.com/bunkahle/PILasOPENCV или установите его с помощью pip install PILasOPENCV. Не все функции PIL были смоделированы, но работают наиболее распространенные функции.
Pillow
из PyPI, который должен быть заменойPIL
; это предпочтительный пакет на Python 2 тоже.Ответы:
Подушка "Friendly PIL fork" работает на Python 2 и 3 . Проверьте проект Github для матрицы поддержки и так далее.
источник
pip3 install Image
(я использовал подушку, не зная), и выfrom PIL import Image
. Он также поддерживает все основные платформы в настоящее время. При поиске PIL для python3, это определенно выбор.Кристофу Гольке удалось собрать PIL (только для Windows) для версий Python до 3.3: http://www.lfd.uci.edu/~gohlke/pythonlibs/
Я попробовал его версию PIL с Python 3.2 и открыть изображение / создать / манипулировать пикселями / сохранить всю работу.
источник
Qt очень хорошо работает с графикой. На мой взгляд, он более универсален, чем PIL.
Вы получаете все функции, необходимые для работы с графикой, но есть также векторная графика и даже поддержка реальных принтеров. И все это в одном унифицированном API
QPainter
.Для использования Qt вам нужна привязка Python: PySide или PyQt4 .
Они оба поддерживают Python 3.
Вот простой пример, который загружает изображение JPG, рисует сглаженный круг радиуса 10 в координатах (20, 20) с цветом пикселя, который был в этих координатах, и сохраняет измененное изображение в виде файла PNG:
Но учтите, что это решение довольно «тяжеловесное», потому что Qt является большой платформой для создания приложений с графическим интерфейсом.
источник
По состоянию на 30 марта 2012 года я пытался и не смог получить sloonz fork на GitHub для открытия изображений. Я получил это, чтобы скомпилировать нормально, но на самом деле это не сработало. Я также попытался собрать библиотеку Гольке, и она тоже скомпилировалась, но не смог открыть ни одного изображения. Кто-то упоминал PythonMagick выше, но он компилируется только в Windows. Смотрите PythonMagick в wxPython wiki .
Последнее обновление PIL произошло в 2009 году, и хотя на его веб-сайте написано, что они работают над портом Python 3, прошло уже 3 года, и список рассылки остыл.
Чтобы решить мою проблему манипулирования изображениями в Python 3, я использую
subprocess.call()
для выполнения команд оболочки ImageMagick. Этот метод работает.См. Документацию модуля подпроцесса .
источник
Вы можете использовать мой пакет mahotas на Python 3. Он основан на numpy, а не на PIL.
источник
Вам нужна библиотека Pillow , вот как установить ее на Python 3:
Если это не работает для вас (это должно), попробуйте нормально
pip
:источник
В зависимости от того, что необходимо, scikit-image может быть лучшим выбором, с манипуляциями, выходящими далеко за пределы PIL и текущей версии Pillow. Очень ухоженный, по крайней мере, столько же, сколько и Подушка. Кроме того, базовые структуры данных взяты из Numpy и Scipy, что делает его код невероятно совместимым. Примеры, которые подушка не может обработать:
Вы можете увидеть его силу в галерее . Эта статья дает хорошее введение в это. Удачи!
источник
Если вы используете Python3, вы также можете использовать библиотеку PILasOPENCV, которая работает в Python 2 и 3. Вызовы API-функций такие же, как в PIL или подушке, но внутренне она работает с OpenCV и Numpy для загрузки, сохранения и манипулирования изображениями. Загляните на https://github.com/bunkahle/PILasOPENCV или установите его с помощью pip install PILasOPENCV. Не все функции PIL были смоделированы, но работают наиболее распространенные функции.
источник