Segmentera en bild med en mask
Nu när den binära masken är klar kan du använda den för att segmentera ut objektet – i det här fallet katten – från bilden.
Du börjar med att läsa in originalbilden och omvandla den till en tensor. Sedan skapar du objekttensorn genom att maskera originalbilden. Slutligen visar du resultatet.
transforms från torchvision har redan importerats, och binary_mask som du skapade i föregående övning finns tillgänglig.
Den här övningen är en del av kursen
Djupinlärning för bilder med PyTorch
Övningsinstruktioner
- Skapa
image_tensorgenom att tillämpaToTensor()-transformationen, definierad somtransform, på råbilden. - Segmentera bilden genom att maskera
image_tensormedbinary_mask, och tilldela resultatet tillobject_tensor. - Tillämpa den redan definierade
to_pil_image-transformationen påobject_tensorför att visa bilden.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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()