All course material has been moved to the College e-Learning environment (Blackboard). Please go to mymodule.tcd.ie once you are enrolled in this course. For those considering taking the course some information is provided here....
Why take Computer Vision?
- The future. This is a course about one of the most interesting current and future technologies which will impact on the development of the computer. The camera. Cameras are appearing everywhere: the webcams on your machines; the surveillance cameras around the campus; the cameras built in to your mobile phones; new speed cameras; cameras on satellites; cameras taking medical images such as ultrasound and X-ray; the list keeps expanding. At present most of these images are just looked at by people (e.g. most webcams are just used for teleconferencing). However the processing of images from all these cameras can (and will) be automated allowing us to do things never before considered: the webcam as a tracking device in place of the mouse; the surveillance cameras used to identify bicycle thieves and alert security; the camera on your phone used to capture images of signs and automatically translate them; medical cameras used to diagnose conditions more reliably than the best expert; and someday cameras on robots allowing them to interact with the world just like us!
- The motivation. The motivation for developing computer vision is the human vision system which is richest sense that we have. To us vision seems easy, but in reality we are processing around 60 images per second with millions of points (pixels) in each image. In fact, over half the human brain is involved in processing visual information, and this seems a good indication that this is a very complex task. On top of this, only the photoreceptors in the middle of the eye are sensitive to colour and there is a big blind spot in the retina where the optic nerve is connected, yet somehow we think we see a complete image. Clearly there is more going on here than meets the eye ;-) Ultimately computer vision wants to emulate human vision but this goal is still a very long way away. In the meantime we are applying computer vision to progressly more complex applications.
- Interesting and intuitive applications. The course is literally illustrated with applications as the best way to understand something is usually in context. Hence we look at real applications such as auto-drivers for cars (like an autopilot!), advanced user interfaces (using face tracking), license plate recognition (for issuing automatically issuing speeding tickets), augmented reality (for allowing objects to be realistically added into movies), etc.
What's in this course?
- Techniques. The techniques used in computer vision are many and varied. A broad sample of them is presented in this course ranging from basic image processing right through to the extraction of three dimensions from images (using stereo). Experience of using computer vision techniques is provided through use of the industry standard OpenCV libraries.
- Applications. The techniques are best explained using practical examples, and also (if you think about it) the whole idea is to solve problems. Hence lots of examples are given and the tutorials address problem solving using the techniques that you will have learnt. The exam takes a similar form!
Road Sign Recognition,
Colour & Histograms,
Binary region identification,
License Plate Recognition
Statistical Pattern Recognition
Lane Following for cars
Edge based segmentation
Hough (edge based segmentation)
Particle Filters (Haar)
- Mathematics. Computer Vision techniques have mainly been developed in a rather ad hoc fashion, and afterwards (when we know that they work) they are formalised using mathematics. Hence there is a fair amount of mathematics in the course (although none of it should really bother you), but it is always preceded by explanations and examples.
- Programming. Computer Vision is also a practical subject and the course attempts to make you aware of how difficult image processing & analysis actually is. It does so by getting you (the student) to write programs (using the OpenCV libraries in C++ under Microsoft Developer Studio) for some of the well known methodologies that have been developed.
What do previous students have to say?
- Some students comments from 2014/15 (the CS4053 course)
- "I think the module is interesting and well taught."
- Overall I enjoyed this module and would be interested in studying further into this field as it seems to be interesting and technologicaly relevant. Feedback on assignments is always good, tutorials are run well, lectures are interesting and there is always a useful application with the techniques so we see how and where they are used."
- V Good, competent in lecturing and course structure in a way that is kind of unusual in cs."
- Interesting topic presented in an accessible way. Would've done my final year project on something vision related had I of not been doing an internship instead next semester."
- As an erasmus student, I already had seen some of the subjects but it was really well explained and I got to understand things I didn't in my home university. The tutorials and the coursework made the theory really understandable and helped to see how to apply all the techniques."
- I think the topic of the module was very interesting and didn't disappoint me (the opposite), since I didn't know exactly how would it be, before start. Also I think the concepts of the module are a bit difficult to understand, but well explained. For me it was very helpful that we had the OpenCVExample, and a lot of code, so it was more easy to do the assignments. Because, the assignments were already difficult, so this helped."
- I enjoyed the lecturers approach and enthusiasm to teaching. The module was interesting and gave insights into many real world applications."
- Some students comments from 2013/14 (the CS4053 course)
- "Very good, easily one of the best courses I've ever had during my undergrad degree."
- "Perfect combination of lectures/tutorials and assignments. You actually give assignments that are related to what we learn. My favourite module by miles."
- "Very interesting, well grounded in real would applications."
- "A great module. Well taught & fascinating."
- "Very good. Best 4th year course."
- Some students comments from 2012/13 (the combined CS4053/CS4D4A/CS7008 course)
- "Lectures were Engaging. Material is very interesting. Notes were provided online, in full, at beginning of term."
- "Lecturer always wanted to make sure the information was understood."
- "I didn't know much about computer vision before but this module has really sparked my interest in it and I would like to pursue it further."
- "The detailed notes provided along with the lecture slides are very useful and I wish more modules offered this approach."
- "The lecturer was very good at applying the material into real life situations, which made it much easier to learn."
- Some students comments from 2011/12 (the combined CS4053/CS4D4A/CS7008 course)
- "Probably the best prepared and presented course I've taken in 4 years in College."
- "Very interesting and relevant topics. Enjoyable course."
- "Really interesting in thinking, how methods learned can be applied to real world problems."
- "Very good course, and I would not place myself very high in the class, but taught in a very approachable way."
- "This is a great course. The lecturer made it very interesting! Assignments were time consuming, but necessary to really help understand the material."
- "Very well taught! Very well structured. modular topics."
- "Really enjoyed it. Found the material to be very interesting and highly applicable. Considering seeking further education in this subject."
- Some Masters students comments from 2010/11
- "Extremely well presented course, interesting material, & relevant coursework. Encourages problem-solving thinking to solve real-world problems."
- "Good, interesting module."
- "Very good, could be a 2-semester course."
- "Very interesting subject, and encouraging me to explore this field."
- "The course is very interesting. The labs helped understand the material better."
- "It's a very interesting course, although some material are difficult, but the lecturer can explain them well and make them easy to understand."
- "Very interesting course, has lots connection with real-life activities. Looking forward to learn more."
- "Very interesting. Very different to anything I have done before"
- Some final year students comments from Michaelmas semester 2010/11 (weeks 1-6; which corresponds to the material to be covered in 2011-12)
- "Genuinely the most interesting course I've come across in my 4 years here."
- "really interesting; learnt a lot; coursework was fun"
- "Well taught, interesting material, engaging lectures."
- "Much more interesting than I thought it was going to be. Explains very well something that easily could have become confusing/ difficult."
- The course is surveyed using a number of questions on a five point scale (together with free comments). Some of the average results of the five point scale questions are worth pointing out... (bearing in mind that 3 is the middle of the range from 1-5)...
- Course lectures are interesting (4.5 out of 1-5), not too difficult or easy (3.0 out of 1-5), well organised (4.5 out of 1-5), well prepared (4.4 out of 1-5), well illustrated (4.5 out of 1-5), time well spent (4.4 out of 1-5) and contain not too much or too little maths (3.0 out of 1-5).
- The coursework is not too much or too little (3.4 out of 5.0), very relevant (4.9 out of 1-5), not too difficult or too easy (3.3 out of 1-5), and most importantly is time well spent (4.5 out of 1-5).
- Detailed notes are provided which are useful (4.5 out of 1-5), well illustrated (4.0 out of 1-5), easy to read (4.0 out of 1-5), and easy to understand (4.2 out of 1-5).
- Tutorials are run to consider how to apply the techniques taught. The tutorials are useful (4.5 out of 1-5), well organised (3.9 out of 1-5), very relevant (4.3 out of 1-5), just right in terms of difficulty (3.0 out of 1-5) and time well spent (4.0 out of 1-5).
- No comments available fom 2009/10 as Kenneth Dawson-Howe was on research leave.
- Some Masters students comments from 2008/9
- "Very applicable & interesting."
- "Very interesting - my facourite subject."
- "Very useful and well organized. We can learn more than knowledge in this course."
- "One of the most interesting courses in Computere Science, with practical applications on what you've learned. The lecturer is one of the few lecturers that a whole class can understand. Overal -> very good."
- "It was really interesting + well presented introduction to computer vision (a subject I was not at all familiar with before hand) - which I fell I'm reasonably familiar with now (or at least I now know the extend on my ignorance)."
- Some final year students comments from Michaelmas term 2008/9
- "Extremely well laid-out, with a noticable thread of continuity connecting each subject. it is easy to see how each section relates to the others."
- "Interesting and worthwhile."
- "Very well organised, well presented."
- "Good, interesting course. Lots of new concepts well presented and made easy enough to understand."
- "Would like to do a Masters in that."
- "Good course that doesn't get bogged down in little details unlike other courses."
- "Our best organized and lectured course."
- Some Masters students comments from 2007/8
- "A well organised and presented course."
- "Really enjoyed the course."
- "Could be very useful for dissertation topices and for future studies"
- "Very well prepared and makes a hard topic easier."
- "Well put together as not a new course. Tailored to practical application which is great."
- "Outstanding. Good organisation."
- "Detailed notes are good. V. helpful."
- "Great course. Well planned. Great notes. Wouldn't change it."
- Some final year students comments from Michaelmas term 2007/8
- "Favourite course of the year so far."
- "Love it, very good course."
- "Good course, like the fact that its up to date"
- "Probably the most well run course we have had in computer science. Assignments are a challenge but always interesting, very enjoyable and it's nice to see such visual results."
- "Excellent - one of the most interesting and well organised that I've taken. Wish all courses could be as well thought out."
- "A difficult course at first because of all the new material but very interesting and well taught. I'm very impressed with the course so far and glad I chose it"
- "A very well taught course that was unlike anything we'd done before, very interesting"
- Some final year students comments from 2005/6
- "Courses like this one are the reason I choose Computer Science - Learning techniques and ideas behind cutting edge technology. The course presentation is execllent, both lectures and notes are concise and clear."
- "Interesting subjects, motivated teacher. Course gives a good impression of Computer Vision, what is involved and what aspects play an important role."
- "Told all the current 3rd years to take it."
- "Very enjoyable course, run very well. Quite a hard course but I'm definitely glad I took the subject."
- Some final year students comments from 2004/5
- "It's a very interesting coures with lots of useful information. It widens my horizons on computer science."
- "Very interesting and well taught."
- "I enjoyed the course - it's an interesting topic. The course work was very practical and hands on which was nice. The style of the tutorials was good, in that a large portion of vision seems to be aimed at solving specific problems.."
- "One of the two best courses this year, small group, good presentation, clear structure."
- Some final year students comments from 2003/4
- "Very good course."
- "Nice course with a lot of examples and a very critical view of the presented vision techniques."
- "It is the most professionally run course over all four years of courses... A pleasure to partake in."
- "I liked the coursework as it showed interesting things without spending too much time. The things learnt to time spent ratio was good."
- "I really enjoyed the manner in which the problem of computer vision is presented... It leaves you asking questions and seeking answers which inexorably lead you to discover the true difficulty of the subject..."
- Some final year students comments from 2002/3
- "By far the most interesting course in 4th year. An awful lot of material covered but tied in well to real world scenarios/problems. Taught in an interesting manner with all the issues/queries dealt with in detail thus avoiding any confusion."
- "V. good course overall. Like the idea of getting coursework done in the 1st term as able to tackle it better and give more time to them. Big change from other courses in 4th year that you have to perservere through."
- "A good mix of topics with helpful demonstrations and tutorials."
- "The only interesting course this year although the pace is rather fast."
- "Excellent. Happy I picked the subject"
- Some final year students comments from 2001/2
- "Very interesting. Science fiction becomes a reality. Well worth it."
- "The course is very interesting. Coursework is good because I do understand the
topic after doing the assignment. (Definitely the only course that I haven't fallen asleep at!)."
- "If only all courses were this well organised. Lecturer is obviously passionate & well
informed on the topic."
- "Very good course. Lots of maths (which I don't like), but well-taught and extremely
well prepared and organised."
- "It's good. Interesting & detailed. I liked it, even though it is challenging
and I have a lot of study to do in the next while."
How is the course taught?
- All presentations are made using a combination of Powerpoint, HTML and various movie formats.
All lectures are presented on 'hi-beam' projectors (i.e. directly from a computer).
- Copies of all Powerpoint lecture presentations are provided electronically through Blackboard (the College e-Learning system).
- The course is example-based. Techniques are always introduced in the context of examples (most of which work on the provided software system).
- As much hands-on experience of computer vision operations as possible is given through the course. We make use of an industry standard package called OpenCV which provides hands-on experience with many of the operations as well as providing a platform on which to develop your own vision operations.
- Lecture slides are provided through Blackboard (Trinity's eLearning portal).
- In addition to the lecture notes links to useful tutorials on the web are provided for most topics.
- The course is based on a text which was published by Wiley in May 2014:
A Practical Introduction to Computer Vision with OpenCV3 by Kenneth Dawson-Howe.
- Application of techniques are worked on in group tutorials throughout the semester (around one every 2 weeks).
- The coursework is all based in C++ using the industry standard OpenCV package. It is supported by labs around once every 2 weeks.
Presentation to Junior Sophister students