web-dev-qa-db-fra.com

Lecture d'images en python

J'essaie de lire une image png en python. La fonction imread dans scipy est en train d'être obsolète et ils recommandent d'utiliser la bibliothèque imageio.

Cependant, je préférerais limiter mon utilisation des bibliothèques externes aux bibliothèques scipy, numpy et matplotlib. Ainsi, utiliser imageio ou scikit image n'est pas une bonne option pour moi. 

Existe-t-il des méthodes en python ou scipy, numpy ou matplotlib pour lire des images, qui ne sont pas obsolètes?

10
Gerges Dib

Avec matplotlib, vous pouvez utiliser (comme indiqué dans matplotlib documentation )

import matplotlib.pyplot as plt
import matplotlib.image as mpimg

img=mpimg.imread('image_name.png')

Et tracez l'image si vous voulez

imgplot = plt.imshow(img)
12
Shai Lèger

Pour une meilleure réponse, vous pouvez utiliser ces lignes de code . Voici l'exemple peut-être vous aider:

image = cv2.imread('/home/pictures/1.jpg')
plt.imshow(image)
plt.show()

Dansimread()vous pouvez passer le répertoire. Ainsi, vous pouvez également utiliser str() et + pour combiner des répertoires dynamiques et des répertoires fixes comme ceci:

path = '/home/pictures/'
for i in range(2) :
    image = cv2.imread(str(path)+'1.jpg')
    plt.imshow(image)
    plt.show()

Les deux sont les mêmes.

2
Eshagh Moutabi

Vous pouvez également utiliser Oreiller comme ceci:

from PIL import Image
image = Image.open("image_path.jpg")
image.show()
2
tsveti_iko

Si vous voulez juste lire une image en Python en utilisant le .__ spécifié. bibliothèques seulement, j'irai avec matplotlib

Dans matplotlib: 

import matplotlib.image
read_img = matplotlib.image.imread('your_image.png')
1
0x48piraj