Skip to content

Latest commit

 

History

History
 
 

> Chapter 6:

Enhancing and Segmenting Images

Convolutional neural networks can be built to output multi-dimensional data. Therefore, models can be trained to predict images. In Chapter 6, we introduced encoders-decoders and the more specific auto-encoders, demonstrating how they can be applied to the recovery of corrupted images or to per-pixel classification (i.e. semantic segmentation). From simple digit images to pictures gathered for smart-car applications, the following notebooks explain how CNNs can edit and segment data.

📓 Notebooks

(Reminder: Notebooks are better visualized with nbviewer: click here to continue on nbviewer.jupyter.org.)

📄 Additional Files

  • cityscapes_utils.py: utility functions for the Cityscapes dataset (code presented in notebook 6.4).
  • fcn.py: functional implementation of the FCN-8s architecture (code presented in notebook 6.5).
  • keras_custom_callbacks.py: custom Keras callbacks to monitor the trainings of models (code presented in notebooks 4.1 and 6.2).
  • mnist_utils.py: utility functions for the MNIST dataset, using tensorflow-datasets (code presented in notebook 6.1).
  • plot_utils.py: utility functions to display results (code presented in notebook 6.2).
  • tf_losses_and_metrics.py: custom losses and metrics to train/evalute CNNs (code presented in notebooks 6.5 and 6.6).
  • tf_math.py: custom mathematical functions reused in other scripts (code presented in notebooks 6.5 and 6.6).
  • unet.py: functional implementation of the U-Net architecture (code presented in notebook 6.3).