Pulkit Sharma — Published On January 9, 2020 and Last Modified On September 25th, 2023
Computer Vision Deep Learning Infographics Intermediate Interview Questions Learning Path Resource

Introduction

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.

computer_vision_learning_path

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.

Our Framework for the Computer Vision Learning Path

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:

  • Objective: What will you learn in that month? What are the key takeaways? How will your computer vision journey progress? We mention this at the start of each month to ensure you know where you stand and where you will be at the end of that particular month
  • Time Suggested: How much time on average you should spend on that section per week
  • Resources to Learn: A collection of the top resources for the computer vision topics you will learn in that month. This includes articles, tutorials, videos, research papers, and other similar resources

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:

Month 1 – Covering the Basics: Python & Statistics

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:

Month 2 – Solving an Image Classification Problem using Machine Learning

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

Month 3 – Introduction to Keras & Neural Networks

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.

fundamentals of neural network

Time Suggested: 4-5 Hours per Week

Getting Comfortable with Keras:

Introduction to Neural Networks:

  • Neural Networks by 3Blue1Brown:

Project: Identify the Apparels

Month 4 – Understanding Convolutional Neural Networks (CNNs), Transfer Learning & Building your profile

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.

CNN using PyTorch

Time Suggested: 6-7 Hours per Week

Introduction to Convolutional Neural Networks (CNNs):

Introduction to Transfer Learning:

Project: Identify the Digits

Build your profile: Participate in competitions:

Month 5 – Solving Object Detection problems

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.

Month 6 – Understanding Image Segmentation & Attention Models

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:

Month 7 – Explore Deep Learning Tools

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:

Month 8 – Understanding the Basics of NLP and Image Captioning

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):

  • Word Embeddings by Stanford:
  • Introduction to Recurrent Neural Networks (RNNs):

Understanding Image Captioning

Project: COCO Captioning Challenge

Month 9 – Getting Familiar with Generative Adversarial Networks (GANs)

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.

GANs

Time Suggested: 6-7 Hours per Week

Understanding Generative Adversarial Networks (GANs):

  • Generative Adversarial Networks (GANs) by Ian Goodfellow:

Month 10 – Introduction to Video Analytics

Objective: Video analytics is a thriving application of computer vision. The demand for this skill is only going to increase in 2023 (and beyond) so it’s a good idea to at least have a working knowledge of how to work with video datasets.

video_object_detection_removal

Time Suggested: 5-6 Hours per Week

Introduction to Video Analytics:

Month 11 & 12 – Solving Projects & Building your Profile

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

Infographic – Computer Vision Learning Path for 2023

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:

Conclusion

In conclusion, mastering computer vision is a rewarding but multifaceted journey. Starting with a strong foundation in mathematics and programming, particularly in Python, and gradually delving into libraries like OpenCV and advanced concepts like machine learning and deep learning is essential. It’s a path that requires dedication, hands-on projects, and continuous learning. Still, the potential to unlock the world of visual intelligence makes it a journey well worth embarking on for aspiring computer vision enthusiasts.

Frequently Asked Questions

Q1. What is the path of learning for computer vision engineer?

A. Becoming a computer vision engineer involves mastering math fundamentals, learning programming (Python), exploring libraries like OpenCV, and progressing to machine learning and deep learning, all while gaining hands-on experience.

Q2. How long does it take to learn computer vision?

A. The time to learn computer vision varies; basic understanding takes months, and proficiency demands a year or more with consistent learning and project work.

Q3. Should I learn C++ for computer vision?

A. Learning C++ for computer vision is beneficial but not mandatory. Proficiency in Python is crucial, but C++ can expand your capabilities and job opportunities in high-performance scenarios.

Q4. Is it hard to learn computer vision?

A. Computer vision’s difficulty varies. It’s multidisciplinary, involving math, programming, and image processing, demanding commitment and practical projects. Feedback and mentorship can ease the learning journey.

About the Author

Pulkit Sharma
Pulkit Sharma

My research interests lies in the field of Machine Learning and Deep Learning. Possess an enthusiasm for learning new skills and technologies.

Our Top Authors

Download Analytics Vidhya App for the Latest blog/Article

5 thoughts on "Here’s your Learning Path to Master Computer Vision in 2023"

brainwiz
brainwiz says: January 20, 2020 at 2:20 pm
Information you provided is very helpgul. Thank you. Reply
Pulkit Sharma
Pulkit Sharma says: January 20, 2020 at 2:35 pm
Thank you for your feedback!! Happy Learning. Reply
Akira
Akira says: January 23, 2020 at 11:33 pm
What are some good competitions to participate in? Reply
Pulkit Sharma
Pulkit Sharma says: January 24, 2020 at 11:19 am
Hi Akira, You can check out the Handwritten Grapheme Classification by kaggle. Reply
Zoya
Zoya says: September 04, 2020 at 11:19 pm
Great Journey........ Reply

Leave a Reply Your email address will not be published. Required fields are marked *