Book Image

Python Deep Learning Cookbook

By : Indra den Bakker
Book Image

Python Deep Learning Cookbook

By: Indra den Bakker

Overview of this book

Deep Learning is revolutionizing a wide range of industries. For many applications, deep learning has proven to outperform humans by making faster and more accurate predictions. This book provides a top-down and bottom-up approach to demonstrate deep learning solutions to real-world problems in different areas. These applications include Computer Vision, Natural Language Processing, Time Series, and Robotics. The Python Deep Learning Cookbook presents technical solutions to the issues presented, along with a detailed explanation of the solutions. Furthermore, a discussion on corresponding pros and cons of implementing the proposed solution using one of the popular frameworks like TensorFlow, PyTorch, Keras and CNTK is provided. The book includes recipes that are related to the basic concepts of neural networks. All techniques s, as well as classical networks topologies. The main purpose of this book is to provide Python programmers a detailed list of recipes to apply deep learning to common and not-so-common scenarios.
Table of Contents (21 chapters)
Title Page
About the Author
About the Reviewer
Customer Feedback

Segmenting classes in images with U-net

In the previous recipe, we focused on an object by predicting a bounding box. However, in some cases, you'll want to know the exact location of an object and a box around the object is not sufficient. We also call this segmentation—putting a mask on an object. To predict the masks of objects, we will use the popular U-net model structure. The U-net model has proven to be state-of-the-art by winning multiple image segmentation competitions. A U-net model is a special type of encoder-decoder network with skip connections, convolutional blocks, and upscaling convolutions.

In the following recipe, we will show you how to segment objects in images. Specifically, we will be segmenting the background. To implement the U-net network architecture, we will use the Keras framework. 

How to do it...

  1. We start by importing all libraries, as follows:
import numpy as np
import cv2
import matplotlib.pyplot as plt
import glob

from keras.layers import Input, merge, Conv2D...