Hands-On Algorithms for Computer Vision