CST310: Computer Graphics and Imaging

This course is an exploration into computer graphics and imaging. Delve into fundamental concepts like basic raster and vector graphics, scan conversion algorithms for lines, circles, and ellipses, and various filling techniques. Uncover the secrets of geometrical transformations, including 2D and 3D transformations, homogeneous coordinates, and matrix representation. The syllabus also covers projections, visible surface determination, illumination and shading models, and the mathematics behind planar geometric projections. Gain hands-on experience in implementing these concepts through a variety of algorithms, including z-buffer, list priority, scan line, area subdivision, and ray tracing. Additionally, discover the magic of curves with parametric cubic curves, Hermite, Bezier, and Bspline curves. This course equips you with a comprehensive understanding of computer graphics principles and their practical applications.

Course Instructor:

sometext

Sadbhawna

Contact: sadbhawnathakur [at] gmail [dot] com

profile photo

Prerequisites:

  • Must be fluent in Python.
  • Fundamental knowledge of the following mathematical topics:
    • Vectors, vector operations, and vector spaces
    • Matrices
    • Basic linear algebra such as solving a system of linear equations


Textbook:
"Fundamentals of Computer Graphics, 4th Edition"
by Steve Marschner and Peter Shirley, A K Peters/CRC Press, 2015.


Lectures:
Tuesday Wednesday Friday
Week 1 16/01 1. Introduction to Computer Graphics     17/01 2. Digital Image Fundamentals     19/01 3. Linear Transformations-1    
Week 2 23/01 4. Linear Transformations-2     24/01 5. Linear Transformations-3     26/01 Republic Day Holiday    
Week 3 30/01 6. Affine Transformation     31/01 7. Introduction to Viewing Transformations     02/02 MNIT Blitzschlag Festival   
Week 4 06/02 8. Projective Transformation (Homography)     07/02 9. Perspective Projection     09/02 10. Coordinates Transformation    
Week 5 13/02 11. Camera Calibration     14/02 12. Scan conversion algorithms for Line     16/02 13. Doubts clarification and discussions    
Week 6 20/02 13. Scan conversion algorithm for Circle and Ellipse     21/02 15. Seed and Polygon Filling     23/02 16. Clipping Lines and Polygons    
Week 7 27/02 ***Mid-sem Exams*** 28/02 ***Mid-sem Exams*** 01/03 ***Mid-sem Exams***
Week 8 05/03 17. 3D Object Representations     06/03 18. Curves     08/03 Holiday
Week 9 12/03 19. Curves(cont.)     13/03 20. Bezier Curves     15/03 21. Bspline Curves    
Week 10 19/03 22. Visible Surface Detection     20/03 23. Painter's Algorithm     22/03 24. BSP tree onwards    
Week 11 26/03 25. Illumination Models     27/03 26. Polygon Shading     29/03 Holiday
Week 12 02/04 27. Ray Tracing-1: Introduction     03/04 28. Ray Tracing-2: Ray-Sphere Intersection     05/04 29. Quiz-1    
Week 13 09/04 30. Ray Plane Intersection and BVH     10/04 31. Witted Ray Tracing     12/04 32. Barycentric Coordinates    
Week 14 16/04 33. Möller-Trumbore algorithm     17/04 34.     19/04 Holiday
Week 15 23/04 35. Quiz-2 24/04 36.     26/04 ***End-sem Exams***

Assignments and Question Papers:

Computer Graphics Assignment    

Mid-Sem Questions     Mid-Sem Answer Key    


Lab Assignments:
Lab Assignment
Week 1 Linear Transformations     test1.png     test2.png
Week 2 Composition and Decomposition of Linear Transformations    
Week 3 Affine and Projective Transformation     test1.png     test2.png     test3.png
Week 4 Calibrate your phone camera    
Week 5 Mid-sem_A1     Mid-sem_A2     Mid-sem_A3     Mid-sem_A4     test_mid.jpg     paris_1.jpg     paris_2.jpg
Week 6 ***Mid-sem Exams***
Week 7 Scan conversion and filling    
Week 8 Introduction to OpenGL    
Week 9 3D Object using PyOpenGL    
Week 10 ***Holidays***
Week 11 Introduction to Blender and Sculpting    
Week 12 Phong Illumination Model in Blender     phong_model.blend
Week 13 Shadow Ray Tracing in Blender     shadow_ray_tracing.blend
Week 14 End-sem Evaluation    


Last updated on January 11, 2024