Photograph of an Elephant With All Objects Detected With a Bounding Box and Mask

How to Perform Object Detection in Photographs Using Mask R-CNN with Keras

Object detection is a task in computer vision that involves identifying the presence, location, and type of one or more objects in a given photograph. It is a challenging problem that involves building upon methods for object recognition (e.g. where are they), object localization (e.g. what are their extent), and object classification (e.g. what are […]

Continue Reading 5
A Gentle Introduction to Object Recognition With Deep Learning

A Gentle Introduction to Object Recognition With Deep Learning

It can be challenging for beginners to distinguish between different related computer vision tasks. For example, image classification is straight forward, but the differences between object localization and object detection can be confusing, especially when all three tasks may be just as equally referred to as object recognition. Image classification involves assigning a class label […]

Continue Reading 2
How to Develop a Convolutional Neural Network to Classify Satellite Photos of the Amazon Rainforest

How to Develop a Deep CNN to Classify Satellite Photos of the Amazon Rainforest

The Planet dataset has become a standard computer vision benchmark that involves classifying or tagging the contents satellite photos of Amazon tropical rainforest. The dataset was the basis of a data science competition on the Kaggle website and was effectively solved. Nevertheless, it can be used as the basis for learning and practicing how to […]

Continue Reading 10
Plot of the First Nine Photos of Cats in the Dogs vs Cats Dataset

How to Develop a Convolutional Neural Network to Classify Photos of Dogs and Cats (with 97% accuracy)

The Dogs vs. Cats dataset is a standard computer vision dataset that involves classifying photos as either containing a dog or cat. Although the problem sounds simple, it was only effectively addressed in the last few years using deep learning convolutional neural networks. While the dataset is effectively solved, it can be used as the […]

Continue Reading 4
How to Use Transfer Learning when Developing Convolutional Neural Network Models

How to Use Transfer Learning when Developing Convolutional Neural Network Models

Deep convolutional neural network models may take days or even weeks to train on very large datasets. A way to short-cut this process is to re-use the model weights from pre-trained models that were developed for standard computer vision benchmark datasets, such as the ImageNet image recognition tasks. Top performing models can be downloaded and […]

Continue Reading 6
Line Plots of Learning Curves for Baseline Model With Increasing Dropout, Data Augmentation, and Batch Normalization on the CIFAR-10 Dataset

How to Develop a Convolutional Neural Network From Scratch for CIFAR-10 Photo Classification

The CIFAR-10 small photo classification problem is a standard dataset used in computer vision and deep learning. Although the dataset is effectively solved, it can be used as the basis for learning and practicing how to develop, evaluate, and use convolutional deep learning neural networks for image classification from scratch. This includes how to develop […]

Continue Reading 18
Plot of a Subset of Images From the Fashion-MNIST Dataset

How to Develop a Deep Convolutional Neural Network From Scratch for Fashion MNIST Clothing Classification

The Fashion-MNIST clothing classification problem is a new standard dataset used in computer vision and deep learning. Although the dataset is relatively simple, it can be used as the basis for learning and practicing how to develop, evaluate, and use deep convolutional neural networks for image classification from scratch. This includes how to develop a […]

Continue Reading 2
Plot of a Subset of Images From the MNIST Dataset

How to Develop a Deep CNN for MNIST Digit Classification

How to Develop a Convolutional Neural Network From Scratch for MNIST Handwritten Digit Classification. The MNIST handwritten digit classification problem is a standard dataset used in computer vision and deep learning. Although the dataset is effectively solved, it can be used as the basis for learning and practicing how to develop, evaluate, and use convolutional […]

Continue Reading 6
Visualization of the Feature Maps Extracted From the First Convolutional Layer in the VGG16 Model

How to Visualize Filters and Feature Maps in Convolutional Neural Networks

Deep learning neural networks are generally opaque, meaning that although they can make useful and skillful predictions, it is not clear how or why a given prediction was made. Convolutional neural networks, have internal structures that are designed to operate upon two-dimensional image data, and as such preserve the spatial relationships for what was learned […]

Continue Reading 21
Best Practices for Preparing and Augmenting Image Data for Convolutional Neural Networks

Best Practices for Preparing and Augmenting Image Data for Convolutional Neural Networks

It is challenging to know how to best prepare image data when training a convolutional neural network. This involves both scaling the pixel values and use of image data augmentation techniques during both the training and evaluation of the model. Instead of testing a wide range of options, a useful shortcut is to consider the […]

Continue Reading 0