Building a UNet Convolutional Neural Network (CNN) for Semantic Segmentation

Code:

https://github.com/roovedot/UNet

<aside> ℹ️

The objective of this proyect is to segment the road out of dashcam footage, but I also took it as an opportunity to dive into CNNs (Convolutional Neural Networks) and learn how to build one of the most popular architectures for Computer Vision and Pattern Recognition: a U-Net

</aside>


Table of Contents:


References:

Reference Architecture from paper https://arxiv.org/abs/1505.04597

Reference Architecture from paper https://arxiv.org/abs/1505.04597

I took this reference for the UNet architecture from a paper called U-Net: Convolutional Networks for Biomedical Image Segmentation, written in 2015. I followed the proposed model pretty much, with small modifications as you will see

Also I have to mention this amazing article on AI Summer, very well put together and gave me a broader view on the variants and applications of the U-Net Architecture

And finally this youtube tutorial by Aladdin Persson which helped me in actually applying the model to Image Segmentation


BUILDING THE U-NET NETWORK

How different Operations affect Dimensions of the tensor:

Double Convolutional Layer

“Down Part”

“Up Part”