Сегментація зображення за допомогою маски
Маючи бінарну маску, ви можете використати її, щоб виділити об'єкт — кішку — із зображення.
Для цього потрібно завантажити оригінальне зображення та перетворити його на тензор. Далі створіть тензор об'єкта, замаскувавши оригінальне зображення. Насамкінець відобразьте результат.
transforms з torchvision вже імпортовано, а binary_mask, яку ви створили в попередній вправі, доступна для використання.
Ця вправа є частиною курсу
Глибоке навчання для зображень із PyTorch
Інструкції до вправи
- Створіть
image_tensor, застосувавши перетворенняToTensor(), визначене якtransform, до сирого зображення. - Сегментуйте зображення, замаскувавши
image_tensorза допомогоюbinary_mask, і запишіть результат уobject_tensor. - Застосуйте вже визначене перетворення
to_pil_imageдоobject_tensor, щоб відобразити його.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Load image and transform to tensor
image = Image.open("images/Egyptian_Mau_123.jpg")
transform = transforms.Compose([transforms.ToTensor()])
image_tensor = ____
# Segment object out of the image
object_tensor = ____
# Convert segmented object to image and display
to_pil_image = ____
object_image = to_pil_image(object_tensor)
plt.imshow(object_image)
plt.show()