My Review of (CS6475) Computational Photography
Grade: B
Difficulty: 4/10
Rating: 8/10
Time commitment: 8 hours/week
-------------------------------
Overall
I took this course because I was interested in photography. It delivers quality lectures on computational techniques involved with modern digital photography. The course starts off with lessons on the inner mechanics of how a camera captures an image, e.g. lens, optical sensor, aperture, exposure, shutter, ISO sensitivity, focal length adjustment. Then moves onto computational algorithms for feature detection and image transformation.e.g. Harris Laplacian algorithm that can detect features (such as corners and edges) in scale invariant way.
e.g. Fourier transformation for signal reconstruction (feature extraction) out of noisy image.
They touch on some linear algebra but they don't test you directly on the math in the exam. The focus is mostly on coding and implementation.
After taking this course, you will be able to explain technical details of HDR, video stabilization, and all the fancy filters available in photo apps, which will clearly make you popular at parties. You will be dating an instagram model in no time.
Assignments
- Homework: Relatively easy. Each homework took no more than several hours. Mostly just implementing Python code to do some image processing you learned in the lecture. It can get tricky and time consuming sometimes because you need to find good input image data. e.g. for edge detection homework, you need photos that at least have good edges so your code can produce meaningful results.
- Quiz: They tried to make questions unnecessarily complicated but it's only a few % of overall course grade.
- Project: In my semester they gave a list of topics to choose from & to implement. I didn't like the open-ended nature of the project. I just did the bare minimum.
- Exam: One final exam. It was reasonable difficulty. Most questions were directly from the lecture, but some were from the assigned papers.
- Portfolio: It's just copy & paste from the homework/project, and making it look pretty.
Grading
For the homework, as long as you implemented correctly, you get 90~100%. Exam is also manageable. Portfolio is automatic 100%. The project grading was random due to TA's subjective judgement. I got unlucky with TA: I was scoring 90+% on everything, and then got killed on the project grade, dragging me down to overall course grade B.Thoughts
Overall I found the course interesting & rewarding. The lecture contents and the homework assignments are really well linked that translated into good learning.In terms of administration, the course was mostly run by TAs and it was somewhat disorganized. Nothing catastrophic, but typical sloppy jobs such as ambiguous project instructions and clarification given in several different places, some are in random Piazza threads, while others are in latex report template files, so on. Also TA messed up a submission page config on some assignments so students couldn't resubmit even before deadline. These little things added a bit of stress.