Computer vision is one of the most widely studied sub-fields of computer science. It has several important applications, such as face detection, image searching, artistic image conversion and with the popularity of deep learning methods, many recent applications of computer vision are in self-driving cars, robotics, medicine, virtual reality and augmented reality. Sometimes computer vision tries to mimic human vision and uses data & statistical approaches or uses geometry to solve real-world problems.