Learn_Computer_Vision
This is the curriculum for "Learn Computer Vision" by Siraj Raval on Youtube
Course Objective
This is the Curriculum for this video on Learn Computer Vision by Siraj Raval on Youtube. After completing this course, start your own startup, do consulting work, or find a full-time job related to Computer Vision.
Remember to believe in your ability to learn. You can learn CV , you will learn CV, and if you stick to it,
eventually you will master it.
Find a study buddy
Join the #Computer_Vision_curriculum channel in our Slack channel to find one http://wizards.herokuapp.com
Components each week
- Video Lectures
- Reading Assignments
- Project(s)
Course Length
- 8 weeks
- 2-3 Hours of Study per Day
- Python, OpenCV, Tensorflow
Prerequisites
Part 1: Low Level Vision (image > image)
Week 1 ( Basic Image Processing Techniques)
- Luminance (Brightness, contrast, gamma, histogram equalization)
- Linear Filtering (enhance image - blur & sharpen, edge detect, image countours, convolution)
- Non Linear Filtering (Median, Bilateral Filter, morphology )
- Color processing (B&W, Saturation, White Balance)
- Dithering (Quantization, Ordered Dither, Floyd-Steinberg)
- Blending (Image pyramids)
- Texture Analysis
- Template Matching (find object in an image)
Video Lectures
Reading Assignments
Project
- Detect an object in an image via the OpenCV Library
Week 2 (Motion and Optical Flow)
- Motion Analysis
- Optical Flow
Video Lectures
Reading Assignments
Project
- Track a moving object in a video frame with OpenCV
Part 2: Mid Level Vision (image > features)
Week 3 (Basic Segmentation)
- Segmentation and clustering algorithms like watershed, grabcut
- Interactive segmentation
- Hough transform (detect circles, lines)
- Foreground Extraction
Video Lectures
Reading Assignments
Project
- Segment Lane lines in a road image with OpenCV
Week 4 (Fitting)
- Fitting lines and curves
- Robust fitting, RANSAC
- Deformable contours
Video Lectures
Reading Assignments
Project
- Compute Vanishing Points in a hallway image with OpenCV
Part 3: Multiple Views
Week 5 (Multiple Images)
- Local invariant feature detection and description
- Image transformations and alignment
- Planar homography
- Epipolar geometry and stereo
- Object instance recognition
Video Lectures
Reading Assignments
Project
- Turn a set of images into a 3D Object with OpenCV
Week 6 (3D Scenes)
- Stereo Vision, Dense Motion and Tracking;. 3d Objects
- 3D Scene understanding
- 3D Segmentation and Modeling
Video Lectures
Reading Assignments
Google and read the following papers
-
- N. Dalal, Histograms of oriented gradients for human detection
-
- G. Csurka et al. (Bag of Visual Words - a brilliant representation of cross field research) Visual categorization with bags of keypoints
-
- S Lazebnik, C Schmid, J Ponce, Beyond bags of features: Spatial pyramid matching for recognizing natural scene categories
-
- Jegou et al. Aggregating local image descriptors into compact codes.
Project
- Perform Object Segmentation in a 3D Scene with OpenCV
Part 4: High Level Vision (Features > Analysis)
Week 7 (Object Detection & Classification)
- Object/scene/activity categorization (semantic segmentation)
- Object detection (Non max suppression , sliding windows, Boundary boxes and anchors, counting)
- YOLO and Darknet, region proposal networks
- Supervised classification algorithms
- Probabilistic models for sequence data
- Visual attributes
- Optical Character Recognition
- Facial Detection
Video Lectures
Reading Assignments
Project
- Classify a car in an image with Tensorflow
Week 8 (Modern Deep Learning)
- Active learning
- Dimensionality reduction
- Non-parametric methods and big data
- U-Net
- Transfer learning
- Avoiding Overfitting
- GANs
Video Lectures
Reading Assignments
Project
- Build a Generative Adversarial Network to detect faces