web-dev-qa-db-fra.com

Traitement d'image, en Python?

J'ai récemment rencontré un problème qui nécessite au moins un degré de base de traitement d'image, puis-je le faire en Python, et si oui, avec quoi?

81
akdom

La bibliothèque la plus connue est PIL . Cependant, si vous faites simplement une manipulation de base, vous êtes probablement mieux avec les liaisons Python pour ImageMagick , qui seront beaucoup plus efficaces que l'écriture des transformations dans Python.

53
Jim

Selon ce que vous entendez par "traitement d'image", un meilleur choix pourrait être dans les bibliothèques basées sur numpy: mahotas , scikits.image , ou scipy.ndimage . Tous ces travaux sont basés sur des tableaux numpy, vous pouvez donc mélanger et assortir les fonctions d'une bibliothèque à l'autre.

J'ai commencé le site Web http://pythonvision.org qui contient plus d'informations à ce sujet.

45
luispedro

Vous avez également une approche du traitement d'image basée sur des modules scientifiques "standard": SciPy a un package complet dédié au traitement d'image: scipy. ndimage . Scipy est en fait l'ensemble de calculs numériques généraux standard; il est basé sur le module de manipulation de tableaux standard de facto NumPy : les images peuvent également être manipulées comme un tableau de nombres. Quant à l'affichage des images, Matplotlib (qui fait également partie de la "trilogie scientifique") rend l'affichage des images assez simple .

SciPy est toujours activement entretenu, c'est donc un bon investissement pour l'avenir. De plus, SciPy fonctionne actuellement avec Python 3 aussi, contrairement à la bibliothèque d'imagerie Python PIL).

19
Eric O Lebigot
11
Piti Ongmongkolkul

Il y a aussi pycairo , qui pourrait être plus adapté en fonction de vos besoins.

7
sgraham

Il y a en fait une merveilleuse Python Imaging Library (PIL) . Il vous donne la possibilité de modifier les images existantes, y compris les capacités d'anticrénelage, et de créer de nouvelles images avec du texte et autres. Vous pouvez également trouver un tutoriel d'introduction décent dans le manuel PIL fourni sur le site susmentionné.

6
akdom

Si vous créez un effet de traitement d'image personnalisé, vous pouvez trouver PythonPixels utile. http://halfhourhacks.blogspot.com/2008/03/pythonpixels.html Il est destiné à l'écriture et à l'expérimentation du traitement d'image.

4
jmnben