There are an overwhelming number of resources out there these days to learn computer vision concepts. How do you pick and choose from a multitude of tutorials? Which is worth investing your time in?
If these questions sound familiar, you’ve come to the right place. We understand the pain and effort it takes to go through hundreds of resources and settle on the ones that are worth your time. That’s one of the primary reasons we launched learning paths in the first place.
Until last year, we focused broadly on two paths – machine learning and deep learning. But our community wanted more granular paths – they wanted a structured learning path for computer vision as well.
And that’s understandable. The demand and value of a computer vision expert is sky high in the industry. Specialize in computer vision and it’s different facets, and you will see a plethora of recruiters trying to get their hands on you.
I remember when I started my own computer vision journey. I was referring to multiple resources simultaneously – books, articles (of which there weren’t many at the time), YouTube videos, among other things. It was a scattered path to mastering computer vision.
Hence, I was delighted to get the chance to put together this structured computer vision learning path for you. Before we get into it, let’s understand the framework I’ve put together to streamline your learning journey.
Each month has a structure to it as well. This is how we have categorized the different aspects you need to know for each month:
You can download the corresponding infographic of this learning path here.
Looking for other learning paths in data science? Don’t worry – we have you covered:
Objective: By the end of the first month, you will have a basic understanding of what computer vision is. You will also be comfortable with Python and Statistics – both core topics in your computer vision journey.
Time Suggested: 5-6 Hours per Week
Introduction and Motivation for Computer Vision: SAS tutorial on Computer Vision: What it is and why it matters.
Prerequisites:
Objective: You will have a basic understanding of Machine Learning. You should be comfortable with different image pre-processing techniques and will be able to solve image classification problems using Machine Learning models.
Time Suggested: 5-6 Hours per Week
Basics of Machine Learning:
Image Preprocessing:
Image Classification using Machine Learning:
Project: Identify the Apparels
Objective: You will learn one of the most commonly used deep learning tools – Keras. You will also understand what neural networks are and how they work. By the end of March, you will be able to solve image classification problems using neural networks.
Time Suggested: 4-5 Hours per Week
Getting Comfortable with Keras:
Introduction to Neural Networks:
Objective: I like to call this the “moving” month in your computer vision journey. This is where things move up a notch with the introduction to convolutional neural networks (CNNs). These CNNs are behind a lot of the recent computer vision applications we see around us, including object detection. At this point in your journey, you should also start building your profile by participating in competitions.
Time Suggested: 6-7 Hours per Week
Introduction to Convolutional Neural Networks (CNNs):
Project: Identify the Digits
Build your profile: Participate in competitions:
Objective: Object detection is a widely used computer vision technique (perhaps THE most widely used). This is what drew me to computer vision in the first place! This month is all about getting familiar with the different object detection algorithms. Additionally, I highly recommend writing articles on the concepts you have learned so far.
Time Suggested: 6-7 Hours per Week
Solving Object Detection Problems:
Project:
Start writing articles to engage with the community, build your profile, and solidify your own understand of topics.
Objective: In June, you will learn how to solve image segmentation problems. You will also understand what attention models are (both theoretically as well as in a practical manner). This is where your deep dive into computer vision really starts to pay off.
Time Suggested: 6-7 Hours per Week
Introduction to Image Segmentation:
Project: COCO Segmentation Challenge
Attention Models:
Objective: A really fun learning month! We have covered a lot of computer vision concepts so far – now it’s time to get hands-on with state-of-the-art deep learning frameworks! This comes down to choice, but we recommend the two most common ones in the industry right now – PyTorch and TensorFlow. Try to implement all the concepts that you have covered till now in either of these tools.
Time Suggested: 6-7 Hours per Week
PyTorch:
TensorFlow:
Objective: This is where your specialization begins. Here’s a chance to combine your deep learning knowledge with Natural Language Processing (NLP) concepts to solve image captioning projects.
Time Suggested: 6-7 Hours per Week
Basics of Natural Language Processing (NLP):
Understanding Image Captioning
Project: COCO Captioning Challenge
Objective: In September, you will understand about Generative Adversarial Networks (GANs). GANs have exploded since Ian Goodfellow’s officially introduced them in 2014. There are a lot of real-world applications of GANs these days, including inpainting, generating images, etc.
Time Suggested: 6-7 Hours per Week
Understanding Generative Adversarial Networks (GANs):
Objective: Video analytics is a thriving application of computer vision. The demand for this skill is only going to increase in 2020 (and beyond) so it’s a good idea to at least have a working knowledge of how to work with video datasets.
Time Suggested: 5-6 Hours per Week
Introduction to Video Analytics:
Objective: The final two months are all about gaining practical experience and participating in multiple projects and competitions. We have so far covered projects alongside learning concepts – now is the time to unleash your learning on real-world datasets.
Time Suggested: 5-6 Hours per Week
Tracking your progress as you learn new things is key to a structured learning process. I like to keep a checklist as I learn – ticking off things as I dive deeper into the domain. And what better checklist than an illustrated one with a month-by-month breakdown of this computer vision learning path? Here you go:
Lorem ipsum dolor sit amet, consectetur adipiscing elit,
Information you provided is very helpgul. Thank you.
Thank you for your feedback!! Happy Learning.
What are some good competitions to participate in?
Hi Akira, You can check out the Handwritten Grapheme Classification by kaggle.