Wykrywanie obiektów
W tym ćwiczeniu użyjesz tego samego zbioru danych flickr, co poprzednio – zawiera on 30 000 obrazów z powiązanymi opisami. Tym razem znajdziesz ramki ograniczające (bounding boxes) obiektów wykrytych przez model.

Przykładowy obraz (image) oraz moduł potoku (pipeline) zostały już wczytane.
To ćwiczenie jest częścią kursu
Modele multimodalne z Hugging Face
Instrukcje do ćwiczenia
- Wczytaj potok
object-detectionz wytrenowanym modelemfacebook/detr-resnet-50. - Znajdź etykietę (
label) wykrytego obiektu. - Znajdź powiązany wynik pewności (
score) wykrytego obiektu. - Znajdź współrzędne ramki ograniczającej (
box) wykrytego obiektu.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Load the object-detection pipeline
pipe = pipeline("____", "____", revision="no_timm")
pred = pipe(image)
outputs = pipe(image)
for n, obj in enumerate(outputs):
# Find the detected label
label = ____
# Find the confidence score of the prediction
confidence = ____
# Obtain the bounding box coordinates
box = ____
plot_args = {"linewidth": 1, "edgecolor": colors[n], "facecolor": 'none'}
rect = patches.Rectangle((box['xmin'], box['ymin']), box['xmax']-box['xmin'], box['ymax']-box['ymin'], **plot_args)
ax.add_patch(rect)
print(f"Detected {label} with confidence {confidence:.2f} at ({box['xmin']}, {box['ymin']}) to ({box['xmax']}, {box['ymax']})")
plt.show()