Duration
28 hours (usually 4 days including breaks)
Requirements
One of the following:
- C++
- Java
- Python
- MATLAB
- CUDA
- OpenCL
And basic knowledge of machine learning. Knowledge of linear algebra, statistics, probability are helpful.
Overview
OpenCV (Open Source Computer Vision Library: http://opencv.org) is an open-source BSD-licensed library that includes several hundreds of computer vision algorithms.
Audience
This course is directed at engineers and architects seeking to utilize OpenCV for computer vision projects
Course Outline
Introduction
- Setting up OpenCV
- API concepts
Main Modules
- The Core Functionality(Core Module)
- Image Processing(Imgproc Module)
- High Level GUI and Media (highgui module)
- Image Input and Output (imgcodecs module)
- Video Input and Output (videoio module)
- Camera calibration and 3D reconstruction (calib3d module)
- 2D Features framework (feature2d module)
- Video analysis (video module)
- Object Detection (objdetect module)
- Machine Learning (ml module)
- Computational photography (photo module)
- OpenCV Viz
Bonus topics
- GPU-Accelerated Computer Vision (cuda module)
- OpenCV iOS
Bonus topics are not available as a part of a remote course. They can be delivered during classroom-based courses, but only by prior agreement, and only if both the trainer and all participants have laptops with supported NVIDIA GPUs (for the CUDA module) or MacBooks, Apple developer accounts and iOS-based mobile devices (for the iOS topic). NobleProg cannot guarantee the availability of trainers with the required hardware.
Duration
14 hours (usually 2 days including breaks)
Requirements
- Programming experience with Python
Overview
Computer Vision is a field that involves automatically extracting, analyzing, and understanding useful information from digital media. Python is a high-level programming language famous for its clear syntax and code readibility.
In this instructor-led, live training, participants will learn the basics of Computer Vision as they step through the creation of set of simple Computer Vision application using Python.
By the end of this training, participants will be able to:
- Understand the basics of Computer Vision
- Use Python to implement Computer Vision tasks
- Build their own face, object, and motion detection systems
Audience
- Python programmers interested in Computer Vision
Format of the course
- Part lecture, part discussion, exercises and heavy hands-on practice
Course Outline
Introduction
Understanding Computer Vision Basics
Installing OpenCV with Python Wrappers
Introduction to Using OpenCV
Using Media with Python
- Loading Images
- Converting Color to Grayscale
- Using Metadata
Applying Image Theory with Python
- Understanding Images as Multidimensional Arrays
- Understanding the Color Space
- Overview of Pixels and Coordinates
- Accessing Pixels
- Changing Pixels in Images
- Drawing Lines and Shapes
- Applying Text on Images
- Resizing Images
- Cropping Images
Exploring Common Computer Vision Algorithms and Methods
- Thresholding
- Finding Contours
- Background Subtraction
- Using Detectors
Implementing Feature Extraction with Python
- Using Feature Vectors
- Understanding the Color-mean Features Theory
- Extracting Histogram Features
- Extracting Grayscale Histogram Features
- Extracting Texture Features
Implementing an App to Detect Image Similarity
Implementing a Reverse Image Search Engine
Creating an Object Detection App Using Template Matching
Creating a Face Detection App Using Haar Cascade
Implementing an Object Detection App Using Keypoints
Capturing and Processing Video through a WebCam
Creating a Motion Detection System
Troubleshooting
Summary and Conclusion
Duration
14 hours (usually 2 days including breaks)
Requirements
Knowlege of the following languages:
Overview
SimpleCV is an open source framework — meaning that it is a collection of libraries and software that you can use to develop vision applications. It lets you work with the images or video streams that come from webcams, Kinects, FireWire and IP cameras, or mobile phones. It’s helps you build software to make your various technologies not only see the world, but understand it too.
Audience
This course is directed at engineers and developers seeking to develop computer vision applications with SimpleCV.
Course Outline
Getting Started
Tutorials & Examples
- SimpleCV Shell
- SimpleCV Basics
- The Hello World program
- Interacting with the Display
- Loading a Directory of Images
- Macro’s
- Kinect
- Timing
- Detecting a Car
- Segmenting the Image and Morphology
- Image Arithmetic
- Exceptions in Image Math
- Histograms
- Color Space
- Using Hue Peaks
- Creating a Motion Blur Effect
- Simulating Long Exposure
- Chroma Key (Green Screen)
- Drawing on Images in SimpleCV
- Layers
- Marking up the Image
- Text and Fonts
- Making a Custom Display Object