Exemples de comment retourner / inverser une image avec numpy sous python:
Obtenir une image retournée avec pillow
Pour retourner une image avec pillow une solution est d'utiliser la fonction rotate(), exemple:
from PIL import Imageim = Image.open("eiffel_tower.jpg")im = im.rotate(180)im.save("eiffel_tower_fliped_vertically.jpg")
On peut aussi utiliser la fonction flip():
from PIL import Imagefrom PIL import ImageOpsim = Image.open("eiffel_tower.jpg")im = ImageOps.flip(im)im.save("eiffel_tower_fliped_vertically.jpg")
Obtenir une image retournée avec numpy
Autre solution, utiliser numpy et la fonction flipud, illustration:
import numpy as npimport matplotlib.pyplot as pltimport matplotlib.image as mpimgimg = mpimg.imread('eiffel_tower.jpg')img2 = np.flipud(img)plt.imshow(img2)plt.savefig("eiffel_tower_fliped_vertically.png", dpi=200)plt.show()
Note: pour sauvegarder une figure avec matplotlib sans les axes voir: Comment sauver une image seule sans les contours ou les labels avec matplotlib ?
Références
| Liens | Site |
|---|---|
| numpy.flipud | numpy doc |
| Comment sauver une image seule sans les contours ou les labels avec matplotlib ? | science-emergence article |
| Image Module | illow.readthedocs.io |
| ImageOps Module | pillow.readthedocs.io |
| Flopped image | wikipedia |
| Flipped image | wikipedia |
| Flip An Image | docs.gimp.org |
| PIL - Images not rotating | stackoverflow |
| Image rotation in Pillow | stackoverflow |
| pixabay | pixabay |
