CommencerCommencer gratuitement

Prétraitement d’images

Dans cet exercice, vous utiliserez le jeu de données flickr, qui contient 30 000 images et leurs légendes associées, pour effectuer des opérations de prétraitement sur des images. Ce prétraitement est nécessaire pour rendre les données image adaptées à l’inférence avec des tâches de modèles Hugging Face, comme la génération de texte à partir d’images. Ici, vous allez générer une légende textuelle pour cette image :

Photo de 2 personnes dont 1 joue de la guitare

Le jeu de données (dataset) a été chargé avec la structure suivante :

Dataset({
    features: ['image', 'caption', 'sentids', 'split', 'img_id', 'filename'],
    num_rows: 10
})

Le modèle de légendage d’images (model) a été chargé.

Cet exercice fait partie du cours

Modèles multimodaux avec Hugging Face

Afficher le cours

Instructions

  • Chargez l’image à partir de l’élément d’indice 5 du jeu de données.
  • Chargez le processeur d’images (BlipProcessor) du modèle préentraîné : Salesforce/blip-image-captioning-base.
  • Exécutez le processeur sur image, en veillant à demander des tenseurs PyTorch (pt).
  • Utilisez la méthode .generate() pour créer une légende avec le model.

Exercice interactif pratique

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

# Load the image from index 5 of the dataset
image = dataset[5]["____"]

# Load the image processor of the pretrained model
processor = ____.____("Salesforce/blip-image-captioning-base")

# Preprocess the image
inputs = ____(images=____, return_tensors="pt")

# Generate a caption using the model
output = ____(**inputs)
print(f'Generated caption: {processor.decode(output[0])}')
print(f'Original caption: {dataset[5]["caption"][0]}')
Modifier et exécuter le code