Course Code |
CSC3910 |
Course Title |
Computer Vision |
Credit Hours |
3+0 |
Prerequisites by Course(s) and Topics |
None |
Assessment Instruments with Weights (homework, quizzes, midterms, final, programming assignments, lab work, etc.) |
SESSIONAL (Quizzes, Assignments, Presentations) =25 %
Midterm Exam =25 %
Final Exam = 50%
|
Course Coordinator |
Ms. Gulshan Saleem |
URL (if any) |
http://cs231n.stanford.edu/ |
Current Catalog Description |
|
Textbook (or Laboratory Manual for Laboratory Courses) |
Szeliski R., Computer Vision - Algorithms and Applications, Springer, 2011. J. R. Parker, Algorithms for Image Processing and Computer Vision, Willey Publishing Inc. 2011. |
Reference Material |
Computer Vision - A Modern Approach, by D. Forsyth and J. Ponce, Prentice Hall, 2003. |
Course Goals |
This course is to provide a combined theoretical and development background in Computer Vision to improve students’ learning outcomes: Understand and explain the field of computer vision in general for different applications, etc. Understand and implement Feature Image Descriptor Implement different algorithms for spatial and Temporal filtering, feature detection, image segmentation, and pose estimation Construct and Standardize Image/ Video Classification model and deploy model |
Course Learning Outcomes (CLOs): |
At the end of the course the students will be able to: | Domain | BT Level* |
Explain the field of computer vision in general for different applications, etc. |
C |
2 |
Implement Feature Image Descriptor |
C |
3 |
Implement different algorithms for spatial and Temporal filtering, feature detection, image segmentation, and pose estimation |
P |
4 |
Construct Image/ Video Classification model and deploy model |
P |
5 |
* BT= Bloom’s Taxonomy, C=Cognitive domain, P=Psychomotor domain, A= Affective domain |
|
|
|
Topics Covered in the Course, with Number of Lectures on Each Topic (assume 15-week instruction and one-hour lectures) |
Week | Lecture | Topics Covered |
Week 1 |
1 |
Introduction to Computer Vision |
|
2 |
Image classification Pipeline Linear Classification |
Week 2 |
3 |
Feature Detection & Matching Introduction to Harris Corner Detector Introduction to SIFT (Scale-Invariant Feature Transform) Introduction to SURF (Speeded-Up Robust Features) |
|
4 |
Feature Detection & Matching Introduction to Harris Corner Detector Introduction to SIFT (Scale-Invariant Feature Transform) Introduction to SURF (Speeded-Up Robust Features) |
Week 3 |
5 |
Introduction to CNN and Implementation Why Do We Need CNN? How Does Filters Work in CNN? Parameter Sharing and Local Connectivity in CNN |
|
6 |
Introduction to CNN and Implementation Understanding CNN Architecture What is Pooling in CNN? |
Week 4 |
7 |
Introduction to Transfer Learning & CNN Visualization |
|
8 |
Introduction to Transfer Learning & CNN Visualization Math Behind Convolutional Neural Networks Image Classification Tutorial using CNN Introduction to Separable Convolutions |
Week 5 |
9 |
Overview of Pretrained Models AlexNet VGG16 Implement VGG |
|
10 |
Overview of Pretrained Models Data loaders using Pytorch Implementing VGG16 using Dataloaders Inception |
Week 6 |
11 |
ResNets Understanding Residual Blocks |
|
12 |
ResNets Building Your Own Residual Block from Scratch |
Week 7 |
13 |
Implement ResNet Understand ResNet 34Build ResNet34 from Scratch with Python! |
|
14 |
Implement ResNet Different Versions of ResNet |
Week 8 |
1 hours |
Mid Term |
Week 9 |
15 |
Introduction to Object Detection Introduction to Object Detection |
|
16 |
Introduction to Object Detection Bounding Box Evaluation: (Intersection over union) IOU Calculating IOU |
Week 10 |
17 |
Mid term Exam |
|
18 |
Mid Term Exam |
Week 11 |
19 |
Single Stage Networks Single Shot Detector |
|
20 |
Single Stage Networks Custom Object Detection |
Week 12 |
21 |
Object Detection Models The Versions of YOLO Face Detection |
|
22 |
Object Detection Models Introduction to Face Detection Why is Face Alignment Important for Face Recognition? |
Week 13 |
23 |
Object Tracking Introduction to Object Tracking |
|
24 |
Object Tracking Object Tracking Applications |
Week 14 |
25 |
Image Segmentation Introduction to Image Segmentation Different Types of Image Segmentation |
|
26 |
Image Segmentation Implementing Background removal Image Segmentation Algorithms |
Week 15 |
27 |
Introduction to Image Generation Introduction to Image Generation What are Generative models? Understanding GANs |
|
28 |
Introduction to Image Generation Implementing Texture Generation using GANs Better GAN Architectures |
Week 16 |
29 |
|
|
30 |
|
Week 17 |
2 hours |
Final Term |
|
Laboratory Projects/Experiments Done in the Course |
Yes |
Programming Assignments Done in the Course |
Yes |