Image classification is a critical component in computer vision tasks and has numerous applications. Traditional methods for image classification involve feature extraction and classification in feature space. Current state-of-the-art methods utilize end-to-end learning with deep neural networks, where feature extraction and classification are integrated into the model. Understanding traditional image classification is important because many of its design concepts directly correspond to components of a neural network. This knowledge can help demystify the behavior of these networks, which may seem opaque at first sight.
The book starts from introducing methods for model-driven feature extraction and classification, including basic computer vision techniques for extracting high-level semantics from images. A brief overview of probabilistic classification with generative and discriminative classifiers is then provided. Next, neural networks are presented as a means to learn a classification model directly from labeled sample images, with individual components of the network discussed. The relationships between network components and those of a traditional designed model are explored, and different concepts for regularizing model training are explained. Finally, various methods for analyzing what a network has learned are covered in the closing section of the book.
The topic of image classification is presented as a thoroughly curated sequence of steps that gradually increase understanding of the working of a fully trainable classifier. Practical exercises in Python/Keras/Tensorflow have been designed to allow for experimental exploration of these concepts. In each chapter, suitable functions from Python modules are briefly introduced to provide students with the necessary tools to conduct these experiments.
The book starts from introducing methods for model-driven feature extraction and classification, including basic computer vision techniques for extracting high-level semantics from images. A brief overview of probabilistic classification with generative and discriminative classifiers is then provided. Next, neural networks are presented as a means to learn a classification model directly from labeled sample images, with individual components of the network discussed. The relationships between network components and those of a traditional designed model are explored, and different concepts for regularizing model training are explained. Finally, various methods for analyzing what a network has learned are covered in the closing section of the book.
The topic of image classification is presented as a thoroughly curated sequence of steps that gradually increase understanding of the working of a fully trainable classifier. Practical exercises in Python/Keras/Tensorflow have been designed to allow for experimental exploration of these concepts. In each chapter, suitable functions from Python modules are briefly introduced to provide students with the necessary tools to conduct these experiments.