Image segmentation | Python semantic segmentation
Thistutorialfocusesonthetaskofimagesegmentation,usingamodifiedU-Net[1].Whatisimagesegmentation?Inanimageclassificationtask,thenetworkassignsalabel(orclass)toeachinputimage.However,supposeyouwanttoknowtheshapeofthatobject,whichpixelbelongstowhichobject,etc.Inthiscase,youneedtoassignaclasstoeachpixeloftheimage—thistaskisknownassegmentation.Asegmentationmodelreturnsmuchmoredetailedinformationabouttheimage.Imagesegmentationhasmanyapplicationsinmedicalimaging,self-drivingcarsandsatelliteimaging,j...
This tutorial focuses on the task of image segmentation, using a modified U-Net[1].
What is image segmentation?In an image classification task, the network assigns a label (or class) to each input image. However, suppose you want to know the shape of that object, which pixel belongs to which object, etc. In this case, you need to assign a class to each pixel of the image—this task is known as segmentation. A segmentation model returns much more detailed information about the image. Image segmentation has many applications in medical imaging, self-driving cars and satellite imaging, just to name a few.
This tutorial uses the Oxford-IIIT Pet Dataset[2] (Parkhi et al, 2012[3]). The dataset consists of images of 37 pet breeds, with 200 images per breed (~100 each in the training and test splits). Each image includes the corresponding labels, and pixel-wise masks. The masks are class-labels for each pixel. Each pixel is given one of three categories: