Implementation of Unet3+ and validation on Cityscapes dataset.
The following article describes the architecture of Unet3+ and compares it with previously developed Unet, Unet++.
https://arxiv.org/ftp/arxiv/papers/2004/2004.08790.pdf
According to the article, the Unet3+ architecture has less parameteres than Unet++ and manages to outperform it both in training time & accuracy.
The original paper describes the detailed architecture of Unet3+ in the following image:
The results of the accuracy of this model seem to be quite impressive. On liver and spleen dataset, it managed to outpeform Deepmind's state of the art DeepLab v3+ with quite higher accuracy:
- Replaced all MaxPooling layers with Conv2D + Strides.
- Replaceed all UpSampling layers with Conv2DTranspose + Strides.
- Added random Gaussian Noise at the inputs of the model, during the training time. This aims to prevent overfitting (Requires extra training time).
- Added dropout layers to the model (Requires extra training time).
You can also add all sorts of data augmentation (Zooming, Shearing, Rotation, Padding, Brightness, Contrast, Saturation, etc) to images to improve the model's robustness.