Computer Vision Principles, Algorithms, Applications, Learning