Real-time facial landmark detection with OpenCV, Python, and dlib

Over the past few weeks we have been discussing facial landmarks and the role they play in computer vision and image processing. We’ve started off by learning how to detect facial landmarks in an image. We then discovered how to label and annotate each of the facial regions, such as eyes, eyebrows, nose, mouth, and jawline. Today […]

Continue Reading 50

Detect eyes, nose, lips, and jaw with dlib, OpenCV, and Python

Today’s blog post is part three in our current series on facial landmark detection and their applications to computer vision and image processing. Two weeks ago I demonstrated how to install the dlib library which we are using for facial landmark detection. Then, last week I discussed how to use dlib to actually detect facial landmarks in […]

Continue Reading 41

How to install dlib

Two weeks ago I interviewed Davis King, the creator and chief maintainer of the dlib library. Today I am going to demonstrate how to install dlib with Python bindings on both macOS and Ubuntu. I highly encourage you to take the time to install dlib on your system over the next couple of days. Starting next week we’ll […]

Continue Reading 76

ImageNet: VGGNet, ResNet, Inception, and Xception with Keras

A few months ago I wrote a tutorial on how to classify images using Convolutional Neural Networks (specifically, VGG16) pre-trained on the ImageNet dataset with Python and the Keras deep learning library. The pre-trained networks inside of Keras are capable of recognizing 1,000 different object categories, similar to objects we encounter in our day-to-day lives with high […]

Continue Reading 40

Text skew correction with OpenCV and Python

Today’s tutorial is a Python implementation of my favorite blog post by Félix Abecassis on the process of text skew correction (i.e., “deskewing text”) using OpenCV and image processing functions. Given an image containing a rotated block of text at an unknown angle, we need to correct the text skew by: Detecting the block of text in the […]

Continue Reading 19