Abstract: Recognizing what is in an image is a common task. Applications range from simple classification to extracting multiple objects even in video.
On one hand we will use OpenCV for classic image processing and on the other hand we have TensorFlow with its Keras API for machine learning to do pattern matching.
In this hands-on workshop you will learn when to use which library and how to use it. The workshop assumes that you have a basic knowledge of Python.
All hands-on exercises are on Colab notebooks, so all you need is a laptop, a recent version of a Chrome browser, and a Google account.
This workshop is split into two parts of approx. 90 minutes each. Each part has well prepared hands-on exercises and short lectures.
The first part covers classic image processing with OpenCV. We will use it to extract objects from complex images and remove noise and other artefacts.
In the second part we train a classifier using the extracted objects and make it generalize to previously unseen objects. For this part we will use standard convolutional neural network architectures provided by the Keras API on top of TensorFlow. That means we do not go into the details of the network architecture, but rather how to use it, what options you have, and how to know if you are doing well.
- Getting started (30 min)
- introduction to image recognition
- scope of the libraries
- preparing hands-on: setting it up on Colab or local machine (repo ready to be cloned)
- Classic Image Processing with OpenCV (60 min)
- internal structures of images
- regions of interest (ROI)
- filtering and detection
- hands-on: detect and extract ROIs from images
- Deep Learning using TensorFlow (90 min)
- when do we need deep learning
- from filters to convolutional networks
- hands-on: understanding convolutional neural networks
- what architecture to use
- how to know if we are fitting the right parts
- hands-on: using neural networks to classify ROIs
- Closing (30 min)
- wrap up
- what else is there? from Transformers to DALL-E
- open questions
Solid understanding of Python and Notebooks, basic understanding of TensorFlow
Bio: Oliver is a software developer from Hamburg Germany and has been a practitioner for more than 3 decades. He specializes in frontend development and machine learning. He is the author of many video courses and textbooks.