Skip to content

josegcpa/u-net-tf2

Repository files navigation

U-Net implementation in TF2.0

The U-Net model needs barely any introduction, but it was first introduced by Ronneberger in 2014/2015 (paper here) and then later repackaged in 2018 for a much deserved Nature methods paper.

The core concept of the U-Net is fairly simple - a fully convolutional network which combines a U-shaped/encoder-decoder/hourglass-shaped architecture (features are retrieved sequentially until a rich representation is achieved, followed by a reconstruction of the initial resolution) with skip-connections (earlier layers in the encoder are concatenated to later layers in the decoder and convolved) for segmentation. It has recurringly been the most popular option for a number of segmentation tasks in biological problems. This implementation is fairly standard and features few additions (squeeze and excite layers being one of them).

The code for training in this repository relies on the creation of a SegmentationDataset stored in hdf5 format which reduces latency in the I/O (segmentation_to_h5py.py {path to folder with images} {path to folder with masks} {output path for hdf5 file}, image names in both input folders should be identical). In the creation of this dataset, weight maps, as well as bounding boxes, are calculated for all the image-mask pairs.

About

U-Net implementation in Tensorflow2.0

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published