CommencerCommencer gratuitement

Préparer votre image d’entrée

Le modèle ResNet50 original a été entraîné avec des images de 224 × 224 pixels et plusieurs opérations de prétraitement, comme la soustraction de la valeur moyenne des pixels du jeu d’entraînement pour toutes les images. Vous devez prétraiter de la même manière les images sur lesquelles vous souhaitez faire des prédictions.

Lorsque vous prédisez sur une seule image, elle doit correspondre à la forme d’entrée du modèle, qui ici ressemble à : (batch-size, width, height, channels). np.expand_dims avec le paramètre axis = 0 ajoute la dimension batch-size, indiquant qu’une seule image sera transmise à la prédiction. Cette valeur de batch-size est 1, puisque nous ne faisons une prédiction que sur une image.

Vous allez suivre ces étapes de prétraitement pour préparer la photo de ce chien (prénommé Ivy) afin qu’elle puisse être classée par ResNet50.

Cet exercice fait partie du cours

Introduction au Deep Learning avec Keras

Afficher le cours

Instructions

  • Importez image depuis tensorflow.keras.preprocessing et preprocess_input depuis tensorflow.keras.applications.resnet50.
  • Chargez l’image avec le bon target_size pour votre modèle.
  • Transformez-la en tableau avec image.img_to_array().
  • Prétraitez img_expanded de la même manière que les images d’entraînement originales de ResNet50 avec preprocess_input().

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# Import image and preprocess_input
from tensorflow.keras.____ import ____
from tensorflow.keras.____.____ import ____

# Load the image with the right target size for your model
img = image.load_img(img_path, target_size=(____, ____))

# Turn it into an array
img_array = image.____(____)

# Expand the dimensions of the image, this is so that it fits the expected model input format
img_expanded = np.expand_dims(img_array, axis = 0)

# Pre-process the img in the same way original images were
img_ready = ____(____)
Modifier et exécuter le code