U-Net is a convolutional neural network that was developed for biomedical image segmentation. The network is based on a fully convolutional network whose architecture was modified and extended to work with fewer training images and yield more precise segmentation.
U-Net was first proposed in a research paper published in 2015.
U-net architecture is symmetric and consists of two major parts: * The left part is called the contracting path, constituted by the general convolutional process.
The image is input at the beginning of the network (left-top). The data is then propagated through all possible paths and, in the end, the segmentation map comes out.
The main idea is to supplement a usual contracting network by successive layers, where upsampling operators replace pooling operations. Hence these layers increase the resolution of the output. What’s more, a successive convolutional layer can then learn to assemble a precise output based on this information.
U-Net learns segmentation in an end-to-end setting.
You input a raw image and get a segmentation map as the output.
U-Net is able to precisely localize and distinguish borders.
Performs classification on every pixel so that the input and output share the same size.
U-Net uses very few annotated images.
Data augmentation with elastic deformations reduces the number of annotated images required for training.
You can find the U-net implementation, trained networks, and supplementary material here.