Transformations

Traitement d'images en Python

Rebeca Gonzalez

Data Engineer

Pourquoi transformer des images ?

  • Préparer les images pour les modèles de classification Machine Learning
  • Optimisation et compression des images
  • Enregistrer les images en gardant les proportions

Image d'un chat en traitement, réduite

Traitement d'images en Python

Rotation

Deux chiens qui jouent et marchent

Photo de deux chiens qui jouent et marchent, tournée de 90 degrés vers la droite

Traitement d'images en Python

Rotation

Deux chiens qui jouent et marchent

Deux chiens qui jouent et marchent, tournée de 90 degrés vers la gauche

Traitement d'images en Python

Rotation vers la droite

from skimage.transform import rotate

# Tourner l'image de 90 degrés vers la droite image_rotated = rotate(image, -90)
show_image(image, 'Original') show_image(image_rotated, 'Tournée de 90 degrés vers la droite')

Photo originale des chiens à côté de la version tournée

Traitement d'images en Python

Rotation vers la gauche

from skimage.transform import rotate

# Tourner l'image de 90 degrés vers la gauche image_rotated = rotate(image, 90)
show_image(image, 'Original') show_image(image_rotated, 'Tournée de 90 degrés vers la gauche')

Photo originale des chiens à côté de la version tournée à 90 degrés

Traitement d'images en Python

Rééchantillonnage

Image originale de deux chiens de 3000 pixels à côté d'une version réduite à 800 pixels

Traitement d'images en Python

Rééchantillonnage

Réduction
from skimage.transform import rescale

# Rééchantillonner l'image pour la rendre 4 fois plus petite image_rescaled = rescale(image, 1/4, anti_aliasing=True, multichannel=True)
show_image(image, 'Image originale') show_image(image_rescaled, 'Image rééchantillonnée')
Traitement d'images en Python

Rééchantillonnage

Image originale de deux chiens de 3000 pixels à côté d'une version réduite à 800 pixels

Traitement d'images en Python

Crénelage dans les images numériques

Image de la lettre A sans crénelage à côté d'une image de la lettre A avec crénelage

Traitement d'images en Python

Crénelage dans les images numériques

Image rééchantillonnée de deux chiens avec crénelage à côté d'une version rééchantillonnée sans crénelage

Traitement d'images en Python

Redimensionnement

Image originale de 3000 pixels à côté d'une image redimensionnée à 800 pixels

Traitement d'images en Python

Redimensionnement

from skimage.transform import resize

# Hauteur et largeur pour le redimensionnement height = 400 width = 500
# Redimensionner l'image image_resized = resize(image, (height, width), anti_aliasing=True)
# Afficher l'image originale et le résultat show_image(image, 'Image originale') show_image(image_resized, 'Image redimensionnée')
Traitement d'images en Python

Redimensionnement

Image originale de deux chiens de 3000 pixels à côté d'une image redimensionnée, non proportionnelle

Traitement d'images en Python

Redimensionner proportionnellement

from skimage.transform import resize

# Définir une hauteur proportionnelle : 4 fois plus petite height = image.shape[0] / 4 width = image.shape[1] / 4
# Redimensionner l'image image_resized = resize(image, (height, width), anti_aliasing=True)
show_image(image_resized, 'Image redimensionnée')
Traitement d'images en Python

Redimensionner proportionnellement

Image originale de deux chiens de 3000 pixels à côté d'une image redimensionnée proportionnellement à 800 pixels

Traitement d'images en Python

Passons à la pratique !

Traitement d'images en Python

Preparing Video For Download...