ПочатиПочніть безкоштовно

Попередня обробка зображень

У цій вправі ви використаєте набір даних flickr, який містить 30 000 зображень з підписами, щоб виконати попередню обробку зображень. Вона потрібна, щоб підготувати дані зображень до інференсу в задачах моделей Hugging Face, наприклад, для генерування тексту на основі зображень. У цьому прикладі ви згенеруєте текстовий підпис до цього зображення:

Photo of 2 people with 1 playing the guitar

Набір даних (dataset) завантажено з такою структурою:

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

Модель для підписів до зображень (model) завантажено.

Ця вправа є частиною курсу

Багатомодальні моделі з Hugging Face

Переглянути курс

Інструкції до вправи

  • Завантажте зображення з елемента з індексом 5 у наборі даних.
  • Завантажте процесор зображень (BlipProcessor) для попередньо натренованої моделі: Salesforce/blip-image-captioning-base.
  • Запустіть процесор на image, обов'язково вкажіть, що потрібні тензори PyTorch (pt).
  • Використайте метод .generate(), щоб створити підпис за допомогою model.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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]}')
Редагувати та запускати код