This course teaches the foundation of neural network models of the human visual system. The application is in synthetic and artificial vision, visual perception, visual intelligence for robots and automatic system. This course will teach how to use and write software models of the human visual system, retinal pre-processing, and vision sub-blocks. We will teach machine- and deep-learning neural networks system to learn to segment, track, categorize, classify, objects of interest in the scene. The course will also focus on techniques to perform full-scene understanding of a video stream, both with static and dynamic (motion) filters. We will discuss the training supervised and unsupervised of large networks for general-purpose robotic vision systems. Hardware implementation projects are also going to be a component of the course.