Learn how to design robot vision systems that avoid collisions, safely work with humans and understand their environment. How do robots “see”, respond to and learn from their interactions with the world around them? This is the fascinating field of visual intelligence and machine learning. Visual intelligence allows a robot to “sense” and “recognize” the surrounding environment. It also enables a robot to “learn” from the memory of past experiences by extracting patterns in visual signals.
Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.
You will understand how Machine Learning extracts statistically meaningful patterns in data that support classification, regression and clustering. Then by studying Computer Vision and Machine Learning together you will be able to build recognition algorithms that can learn from data and adapt to new environments.
By the end of this course, part of the Robotics MicroMasters program, you will be able to program vision capabilities for a robot such as robot localization as well as object recognition using machine learning.
Projects in this course will utilize MATLAB and OpenCV and will include real examples of video stabilization, recognition of 3D objects, coding a classifier for objects, building a perceptron, and designing a convolutional neural network (CNN) using one of the standard CNN frameworks.
What you'll learn
- The fundamentals of image filtering and tracking, and how to apply those principles to face detection, mosaicking and stabilization
- How to use geometric transformations to determine 3D poses from 2D images for augmented reality tasks and visual odometry for robot localization
- How to recognize objects and the basics of visual learning and neural networks for the purpose of classification
Course Syllabus
Week 1: Camera Geometry and Color Sensing
Week 2: Geometrical Transformation, Affine, Projective
Week 3: Non-rigid Transformation, Thin Plate Spline
Week 4: Image blending, Image carving
Week 5: Image Convolution and edge detection
Week 6: Image features, corner, SIFT, HOG
Week 7: Recognition, Shape matching
Week 8: Recognition, Deformable Part Model
Week 9: Probability and Statistics
Week 10: Regression and Classification
Week 11: Perceptron and SVM
Week 12: Convolutional Neural Network
Prerequisites
- College-level introductory linear algebra (vector spaces, linear systems, matrix decomposition)
- College-level introductory calculus (partial derivatives, function gradients)
- Basic knowledge of computer programming (variables, functions, control flow) is preferred, but students may also choose to learn it on their own. The class projects will be carried out MATLAB/Python, with C++ as an option.