Computer Vision: Algorithms and Applications Richard Szeliski August 18, 2010 draft