Visual recognition is essential for most everyday tasks including navigation, reading and socialization. Visual pattern recognition is also important for many engineering applications such as automatic analysis of clinical images, face recognition by computers, security tasks and automatic navigation. In spite of the enormous increase in computational power over the last decade, humans still outperform the most sophisticated engineering algorithms in visual recognition tasks. In this course, we will examine how circuits of neurons in visual cortex represent and transform visual information. The course will cover the following topics: functional architecture of visual cortex, lesion studies, physiological experiments in humans and animals, visual consciousness, computational models of visual object recognition, computer vision algorithms.