Vision is perhaps the most important sense for humans. It consists of processing images of scenes so as to make explicit what needs to be known about them. Among the different complex tasks accomplished by the Human Visual System, the tasks of representing and understanding the content of an observed scene are fundamental; these tasks, indeed, allow to humans the interpretation of their surroundings. Computer vision aims to build robust and reusable vision systems that act taking into account the visual content of images and videos. Just as learning is an essential component of biological visual systems, the design of machine vision systems that learn and adapt represent an important challenge in modern computer vision research. This book focuses on some key ingredients useful to represent images for scene recognition, image retrieval and content based learning.