GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - onlyphantom/cvessentials: Tutorial Series (60 hour course): Essentials of computer vision

BranchesTags
Open more actions menu

Latest commit

 

History

50 Commits
50 Commits

Folders and files

NameName
Last commit message
Last commit date
assets
assets
 
 
digitrecognition
digitrecognition
 
 
edgedetect
edgedetect
 
 
summarynotes
summarynotes
 
 
transformation
transformation
 
 
.gitignore
.gitignore
 
 
README.md
README.md
 
 
quiz.md
quiz.md
 
 
requirements.txt
requirements.txt
 
 

Repository files navigation

Essentials of Computer Vision

A math-first approach to learning computer vision in Python. The repository will contain all HTML, PDF, Markdown, Python Scripts, data, and media assets (images or links to supplementary videos). If you wish to contribute, I need translations for Bahasa Indonesia. Please submit a Pull Request.

Study Guide

Chapter 1

  • Affine Transformation
    • Definition
      • Mathematical Definitions
    • Practical Examples
    • Motivation
    • Getting Affine Transformation
      • Trigonometry Proof
    • Code Illustrations
    • Summary and Key Points
    • Optional video
      • Rotation Matrix Explained Visually
        • w/ Bahasa Indonesia voiceover
    • References and learn-by-building modules

Chapter 2

  • Kernel Convolutions
    • Definition
      • Optional video
        • Kernel Convolutions Explained Visually
      • Mathematical Definitions
      • Padding
    • Smoothing and Blurring
    • A Note on Terminology
      • Kernels or Filters?
      • Correlations vs Convolutions?
    • Code Illustrations: Mean Filtering
    • Role in Convolution Neural Networks
    • Handy Kernels for Image Processing
      • Gaussian Filtering
      • Sharpening Kernels
      • Gaussian Kernels for Sharpening
      • Unsharp Masking
    • Summary and Key Points
    • References and learn-by-building modules

Chapter 3

  • Edge Detection
    • Definition
    • Gradient-based Edge Detection
      • Sobel Operator
        • Discrete Derivative
        • Code Illustrations: Sobel Operator
      • Gradient Orientation & Magnitude
    • Image Segmentation
      • Intensity-based Segmentation
        • Simple Thresholding
        • Adaptive Thresholding
      • Edge-based Contour Estimation
        • Contour Retrieval and Approximation
    • Canny Edge Detector
      • Edge Thinning
      • Hysteresis Thresholding
    • References and learn-by-building modules

Chapter 4

  • Digit Classification
    • A Note on Deep Learning
      • Why not MNIST?
    • Region of Interest
      • ROI identification
      • Arc Length and Area Size
        • Dive Deeper: ROI
      • ROI extraction
    • Morphological Transformations
      • Erosion
      • Dilation
      • Opening and Closing
      • Learn-by-building: Morphological Transformation
    • Seven-segment display
      • Practical Strategies
        • Contour Properties
    • References and learn-by-building modules

Chapter 5

  • Facial Recognition

Approach and Motivation

The course is foundational to anyone who wish to work with computer vision in Python. It covers some of the most common image processing routines, and have in-depth coverage on mathematical concepts present in the materials:

  • Math-first approach
  • Tons of sample python scripts (.py)
    • 45+ python scripts from chapter 1 to 4 for plug-and-play experiments
  • Multimedia (image illustrations, video explanation, quiz)
    • 57 image assets from chapter 1 to 4 for practical illustrations
    • 4 PDFs, and 4 HTMLs, one for each chapter
  • Practical tips on real-world applications

The course's only dependency is OpenCV. Getting started is as easy as pip install opencv-contrib-python and you're set to go.

Question: What about deep learning libraries?

No; While using deep learning for images made for interesting topics, they are probably better suited as an altogether separate course series. This course series (tutorial series) focused on the essentials of computer vision and, for pedagogical reasons, try not to be overly ambitious with the scope it intends to cover.

There will be similarity in concepts and principles, as modern neural network architectures draw plenty of inspirations from "classical" computer vision techniques that predate it. By first learning how computer vision problems are solved, the student can compare that to the deep learning equivalent, which result in a more comprehensive appreciation of what deep learning offer to modern day computer scientists.

Course Materials Preview:

Python scripts

PDF and HTML

Workshops

I conduct in-person lectures using the materials you find in this repository. These workshops are usually paid because there are upfront costs to afford a venue and crew. Not just any venue, but a learning environment that is fully equipped (audio, desks, charging points for everyone, massive screen projector, walking space fo teaching assistants, dinner).

You can follow me on LinkedIn to be updated about the latest workshops. I also make long-form programming tutorials and lessons on computer vision on my YouTube channel

Introduction to AI in Computer Vision

  • 4th January 2020, Jakarta
    • Kantorkuu, Citywalk sudirman, Jakarta Pusat
    • Time: 1300-1600
    • 3 hour
    • Fee: Free for Algoritma Alumni, 100k IDR for public

Computer Vision: Principles and Practice

  • 21st and 22nd January 2020, Jakarta

    • Accelerice, Jl. Rasuna Said, Jakarta Selatan
    • Time: 1830-2130
    • 6 Hour
    • Fee: Free for Algoritma Alumni, 1.5m IDR for public
  • 24th and 25th Feburary 2020, Bangkok

    • JustCo, Samyan Mitrtown
    • Time: 1830-2130
    • 6 Hour
    • Fee: Free for Algoritma Alumni, 9000 THB for public

Image Assets

  • car2.png, pen.jpg, lego.jpg and sudoku.jpg are under Creative Commons (CC) license.

  • sarpi.jpg, castello.png, canal.png and all other photography used are taken during my trip to Venice and you are free to use them.

  • All assets in Chapter 4 (the digitrecognition folder) are mine and you are free to use them.

  • All other illustrations are created by me in Keynote.

  • Videos are created by me, and Bahasa Indonesia voice over on my videos is by Tiara Dwiputri

New to programming? 50-minute Quick Start

Here's a video: Computer Vision Essentials 1 I created to get you through the installation and taking the first step into this lesson path.

If you need help in the course, attend my in-person workshops on this topic (Computer Vision Essentials, free) throughout the course of the year.

Follow me

  • YouTube
  • LinkedIn
  • GitHub

About

Tutorial Series (60 hour course): Essentials of computer vision

Topics

computer-visioncoursecourse-materialscvcv2deep-learningmachine-learningmachinelearningmachinelearning-pythonpythontutorialworkshops

Resources

Readme
Activity

Stars

195 stars

Watchers

18 watching

Forks

62 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.