Przetwarzanie wstępne obrazów
W tym ćwiczeniu skorzystasz ze zbioru danych flickr, zawierającego 30 000 obrazów wraz z opisami, aby wykonać operacje przetwarzania wstępnego na obrazach. Przetwarzanie wstępne jest niezbędne, by dane obrazowe nadawały się do wnioskowania z użyciem modeli Hugging Face – na przykład do generowania tekstu na podstawie obrazu. W tym przypadku wygenerujesz tekstowy opis tego zdjęcia:

Zbiór danych (dataset) został wczytany z następującą strukturą:
Dataset({
features: ['image', 'caption', 'sentids', 'split', 'img_id', 'filename'],
num_rows: 10
})
Model do generowania opisów obrazów (model) został wczytany.
To ćwiczenie jest częścią kursu
Modele multimodalne z Hugging Face
Instrukcje do ćwiczenia
- Wczytaj obraz z elementu o indeksie
5ze zbioru danych. - Wczytaj procesor obrazów (
BlipProcessor) wstępnie wytrenowanego modelu:Salesforce/blip-image-captioning-base. - Uruchom procesor na
image, pamiętając o określeniu, że wymagane są tensory PyTorch (pt). - Użyj metody
.generate(), aby wygenerować opis z użyciemmodel.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# 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]}')