Detecting Deepfakes with OpenCV and SVM

Intermediate Python, Beginner scikit-learn and scikit-image, Basics of OpenCV
skills learned
Binary classification and evaluation of binary classifiers, SVM classification, Facial image processing
Pavel Korshunov
4 weeks · 6-10 hours per week · INTERMEDIATE
Look inside
In this liveProject, you’ll step into the role of a forensics consultant. You’re investigating a ring of cyber criminals who are blackmailing prominent social media personalities with scandalous “deepfake” videos. These videos use a deep learning model to splice a victim’s face onto an actor, creating highly realistic content that can be indistinguishable from the real thing. Your boss wants you to develop a method to efficiently detect these deepfakes from a huge data set of online videos. The method needs to be fast, and also run without needing GPU resources which are in short supply. Your challenges include gathering your datasets, training a support-vector machine (SVM) classifier to detect image artifacts left behind in deepfakes, and reporting your results to your superiors.
This project is designed for learning purposes and is not a complete, production-ready application or solution.

book resources

When you start your liveProject, you get full access to the following books for 90 days.

project author

Pavel Korshunov
Pavel Korshunov is a researcher at Idiap Research Institute, Switzerland, working on detection of audio-visual inconsistencies and Deepfakes. Previously, he worked on problems related to high dynamic range imaging, crowdsourcing, and visual privacy. He received PhD from National University of Singapore and MSc from St. Petersburg State University, Russia. He has over 70 research papers with several best paper awards and is a co-editor of JPEG XT standard.


This liveProject is for developers who know Python, the basics of machine learning, and the basics of processing image data. To begin this liveProject, you will need to be familiar with:

  • Basics of Jupyter notebooks
  • Basics of OpenCV
  • Basics of scikit-learn
  • Basics of matplotlib
  • Basics of scikit-image
  • Basic signal and image processing
  • Basic image feature and metrics computation
  • Basic understanding of how classification systems are evaluated
  • Basic understanding of classification with linear support vector machine

you will learn

In this liveProject, you’ll learn techniques and tools for image processing, face detection, and training a SVM classifier. These skills are easily transferable to common computer vision challenges you’ll face in industry.

  • Video and image processing
  • Binary classification and the evaluation of binary classifiers
  • Implementing SVM classification with scikit-learn
  • Reading videos and detecting faces with OpenCV
  • Facial image processing with scikit-image
  • Interpretation of evaluation results
  • Producing actionable reports


You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Get Help
While within the liveProject platform, get help from other participants and our expert mentors.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
book resources
Get full access to select books for 90 days. Permanent access to excerpts from Manning products are also included, as well as references to other resources.

project outline


Prerequisites Test

Introduction Video

Get Started

1. Processing Videos and Face Detection

1.1. Getting the Data

1.2. Processing the Videos

1.3. Detect Faces in Videos

1.4. Submit Your Work

2. Feature Extraction

2.1. Compare Two Images

2.2. Define Features

Data Representations for Neural Networks

2.3. Submit Your Work

3. Training the Classifier

3.1. Features for Training Set

3.2. Train SVM Classifier

Support Vector Machines

3.3 Submit Your Work

4. Evaluating the System

4.1. Evaluate the Trained Model on the Test Set

4.2. Analyze the Results

Evaluating Models

4.3 Submit Your Work


Project Conclusions

Look inside

placing your order...

Don't refresh or navigate away from the page.
liveProject $35.00 $49.99 self-paced learning
Detecting Deepfakes with OpenCV and SVM (liveProject) added to cart
continue shopping
go to cart

Prices displayed in rupees will be charged in USD when you check out.