Sorry, this page is no longer available
We may earn an affiliate commission when you visit our partners.
Course image
Abhilash Nelson

Hi There.

welcome to my new course 'YOLO Custom Object Detection Quick Starter with Python'. This is the fourth course from my Computer Vision series.

As you know Object Detection is the most used applications of Computer Vision, in which the computer will be able to recognize and classify objects inside an image.

We will be specifically focusing on (YOLO), You only look once which is an effective real-time object recognition algorithm which is featured in Darknet, an open source neural network framework

Read more

Hi There.

welcome to my new course 'YOLO Custom Object Detection Quick Starter with Python'. This is the fourth course from my Computer Vision series.

As you know Object Detection is the most used applications of Computer Vision, in which the computer will be able to recognize and classify objects inside an image.

We will be specifically focusing on (YOLO), You only look once which is an effective real-time object recognition algorithm which is featured in Darknet, an open source neural network framework

This course is equally divided into two halves. The first half will deal with object recognition using a predefined dataset called the coco dataset which can classify 80 classes of objects. And the second half we will try to create our own custom dataset and train the YOLO model. We will try to create our own coronavirus detection model.

Let's now see the list of interesting topics that are included in this course.

At first we will have an introductory theory session about YOLO Object Detection system.

After that, we are ready to proceed with preparing our computer for python coding by downloading and installing the anaconda package and will check and see if everything is installed fine.

Most of you may not be coming from a python based programming background. The next few sessions and examples will help you get the basic python programming skill to proceed with the sessions included in this course. The topics include Python assignment, flow-control, functions and data structures.

Then we will install install OpenCV, which is the Open Source Computer Vision library in Python.

Then we will have an introduction to Convolutional Neural Networks , its working and the different steps involved.

Now we will proceed with the part 1 that involves Object Detection and Recognition using YOLO pre-trained model. we will have an overview about the yolo model in the next session and then we will implement yolo object detection from a single image.

Often YOLO gives back more than one successful detection for a single object in an image. This can be fixed using

a technique called as NMS or Non Maxima Suppression. We will implement that in our next session.

And using that as the base, we will try the yolo model for object detection from a real time webcam video and we will check the performance. Later we will use it for object recognition from the pre-saved video file.

Then we will proceed with part 2 of the course in which we will attempt to train a darknet YOLO model. A model which can detect coronavirus from an electron microscope image or video output.

Before we proceed with the implementation, we will discuss the pros and cons of using a pre-trained dataset model and a custom dataset trained model. Also about the free GPU offered by google colab and its features.

In the next session we will start with phase 1 of our custom model in which we will do the preparation steps to implement custom model. We will at first download the darknet source from github and prepare it. We will then download the weight files required for both testing and training. And then we will edit the required configurations files to make it ready for our custom coronavirus detector.

In the second phase for our custom model, we will start collecting the required data to train the model. We will collect coronavirus images from the internet as much as we could and organize them into folder. Then we will label or annotate the coronavirus object inside these images using an opensource annotation tool called labelImg. Then we will split the gathered dataset, 80% for training and 20% for testing. And finally will edit the prepare the files with the location of training and testing datasets.

Now that we have all our files ready, in our third  phase, we will zip and upload them into google drive. After that we will create a google colab notebook and configure the colab runtime to use the fast, powerful, yet free GPU service provided by google. Then we will mount our google drive to our colab runtime and unzip the darknet zip we uploaded.

Sometimes files edited in non unix environments may be having problems when compiling the darknet. We have to convert the encoding from dos to unix as our next step. Then we will complile the darknet framework source code and proceed with testing the darknet framework with a sample image in our fourth phase.

The free GPU based runtime provided by google colab is volatile. It will get reset every 12 hours. So we need to save our weights periodically during training to our google drive which is a permanent storage. So in our phase five, we will link a backup folder in google drive to the colab runtime.

Finally in our phase 6, we are ready to proceed with training our custom coronavirus model. We will keep on monitoring the loss for every iteration or epoch as we call it in nerual network terms. Our model will automatically save the weights every 100th epoch securely to our google drive backup folder.

We can see a continues decrease in the loss values as we go through the epoch. And after many number of iterations, our model will come into a convergence or flatline state in which there is no further improvement in loss. at that time we will obtain a final weight

Later we will use that weight to do prediction for an image that contains coronavirus in it. We can see that our model clearly detects objects. We will even try this with a video file also.

We cannot claim that its a fully fledged flawless production ready coronavirus detection model. There is still room for improvement. But anyway, by building this custom model, we came all the way through the steps and process of making a custom yolo model which will be a great and valuable experience for you.

And then later in a quick session, we will also discuss few other case studies in which we can implement a custom trained YOLO model, the changes we may  need to make for training those models etc.

That's all about the topics which are currently included in this quick course. The code, images and weights used in this course has been uploaded and shared in a folder. I will include the link to download them in the last session or the resource section of this course. You are free to use the code in your projects with no questions asked.

Also after completing this course, you will be provided with a course completion certificate which will add value to your portfolio.

So that's all for now, see you soon in the class room. Happy learning and have a great time.

Enroll now

What's inside

Learning objectives

  • Python based yolo object detection using pre-trained dataset models as well as custom trained dataset models. case study of coronavirus detector using yolo
  • Yolo custom training
  • Yolo v4 object detection
  • Yolo v4 object recognition

Syllabus

Course Introduction and Table of Contents
An Introduction to YOLO Object Detection
Introduction to YOLO Object Detection
Environment Setup - Installing Anaconda
Read more

With anaconda installed, You may install labelImg using pip. Open Anaconda Prompt

pip install labelImg Then after installing, type labelImg

The troubleshooting step at the video timeline 1:22 should be done only if you are getting the prescribed error.

Else do not do those steps. (The latest version darknet do not need those troubleshooting steps)

Traffic lights

Read about what's good
what should give you pause
and possible dealbreakers
Uses YOLO, a popular real-time object recognition algorithm, providing practical experience with a widely used technology in computer vision
Covers training a custom YOLO model, allowing learners to adapt the technology to detect objects beyond the standard pre-trained datasets
Leverages Google Colab's free GPU service, making it accessible for learners without high-end hardware to train object detection models
Includes practical exercises such as setting up the environment, collecting data, labeling images, and training the YOLO model
Features a case study on building a coronavirus detection model, providing a real-world application of YOLO object detection
Includes introductory sessions on Python programming, covering basic concepts like assignment, flow control, functions, and data structures

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Yolo custom object detection with colab

According to learners, this course provides a practical, hands-on approach to understanding and implementing YOLO for object detection, with a strong focus on training custom models. Students particularly appreciate the use of Google Colab and its free GPU, which significantly lowers the barrier to entry by simplifying the environment setup. While the course is praised for its clear, step-by-step explanations and provided code samples that facilitate following along, some reviewers note that the code may occasionally require minor updates due to library version changes. The depth is geared more towards practical application than extensive theory, making it suitable for getting started quickly, though some desiring deeper theoretical dives or advanced topics like optimization might find it less comprehensive.
Focuses more on practice than theory.
"Wish there was more depth on hyperparameter tuning or dataset augmentation, but for a quick start, it's good."
"Good overview but not for deep understanding."
"The depth is geared more towards practical application than extensive theory."
Concepts explained clearly step-by-step.
"Instructor explains clearly."
"Loved the practical approach. The instructor's voice is clear, and the pace is good."
"The explanations are clear and easy to follow."
"The course is praised for its clear, step-by-step explanations..."
Leverages free GPU via Google Colab.
"Using Colab was a smart choice. Got my detector working for my project."
"The Colab setup makes it easy to get started without local dependency hell."
"Students particularly appreciate the use of Google Colab and its free GPU, which significantly lowers the barrier to entry."
"Everything worked in Colab. Having the code provided saved a lot of time."
Detailed steps for custom YOLO model training.
"The step-by-step guide to custom object detection using Colab was exactly what I needed."
"Fantastic introduction to YOLO! The pre-trained part was good, but the custom training section is gold."
"Solid course for getting into YOLO custom training. The data labeling process was clearly shown."
"Covers the core steps well... Training the custom model was insightful."
Strong emphasis on hands-on coding.
"Excellent hands-on course! The step-by-step guide to custom object detection using Colab was exactly what I needed."
"Loved the practical approach. The instructor's voice is clear, and the pace is good."
"Good course, covers the core steps well. The custom training section is insightful."
"Really enjoyed the hands-on approach and building a custom detector."
Code may need updates for current libraries.
"Code provided was great, only minor tweaks needed for the latest OpenCV version."
"The code had errors that took a while to fix based on forum posts, though maybe it's fixed now."
"Note that the code may occasionally require minor updates due to library version changes."

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Computer Vision: YOLO Custom Object Detection with Colab GPU with these activities:
Review Convolutional Neural Networks (CNNs)
Solidify your understanding of CNNs, as they are fundamental to YOLO's object detection capabilities. Refreshing this knowledge will make the YOLO architecture and its training process easier to grasp.
Show steps
  • Review the basic architecture of CNNs.
  • Understand the concepts of convolution, pooling, and activation functions.
  • Explore different CNN architectures like AlexNet, VGGNet, or ResNet.
Brush up on Python Programming
Strengthen your Python skills, as the course heavily relies on Python for implementing YOLO. This will enable you to follow the code examples and modify them effectively.
Browse courses on Python
Show steps
  • Review Python syntax, data structures, and control flow.
  • Practice writing functions and working with libraries like NumPy and OpenCV.
  • Work through basic Python tutorials or coding exercises.
Read 'Deep Learning' by Goodfellow, Bengio, and Courville
Gain a deeper understanding of the theoretical underpinnings of deep learning and neural networks. This book will provide a solid foundation for understanding the YOLO algorithm and its applications.
View Deep Learning on Amazon
Show steps
  • Read the chapters on convolutional neural networks and object detection.
  • Focus on the mathematical foundations and the different architectures.
  • Take notes and summarize the key concepts.
Four other activities
Expand to see all activities and additional details
Show all seven activities
Practice Object Detection with Pre-trained Models
Reinforce your understanding of object detection by experimenting with pre-trained models. This will give you hands-on experience with the concepts covered in the course.
Show steps
  • Download pre-trained object detection models (e.g., from TensorFlow Hub).
  • Run the models on sample images and videos.
  • Analyze the results and understand the strengths and weaknesses of each model.
Read 'Programming Computer Vision with Python' by Jan Erik Solem
Gain a deeper understanding of computer vision concepts and techniques using Python. This book will provide a solid foundation for implementing YOLO and other object detection algorithms.
Show steps
  • Read the chapters on image processing and object recognition.
  • Focus on the Python code examples and try to replicate them.
  • Experiment with different computer vision techniques and algorithms.
Create a Simple Object Detection Application
Solidify your knowledge by building a small object detection application using YOLO. This will allow you to apply the concepts learned in the course to a real-world problem.
Show steps
  • Choose a specific object detection task (e.g., detecting cars in a video).
  • Implement the YOLO algorithm using Python and OpenCV.
  • Evaluate the performance of your application and identify areas for improvement.
Write a Blog Post on YOLO Object Detection
Deepen your understanding by explaining the YOLO algorithm in your own words. This will force you to think critically about the concepts and identify any gaps in your knowledge.
Show steps
  • Research and gather information about YOLO object detection.
  • Outline the key concepts and steps involved in the algorithm.
  • Write a clear and concise blog post explaining YOLO to a general audience.

Career center

Learners who complete Computer Vision: YOLO Custom Object Detection with Colab GPU will develop knowledge and skills that may be useful to these careers:
Computer Vision Engineer
A computer vision engineer develops algorithms that enable computers to "see" and interpret images, much like the human eye. This involves tasks such as image recognition, object detection, and image classification. The skills taught in this course are directly applicable as it focuses on object detection using YOLO, You only look once, a popular real-time object recognition algorithm. By learning how to implement YOLO with both pre-trained and custom datasets, you build a strong foundation in computer vision techniques. Creating a custom coronavirus detection model further enhances your practical skills, which are highly sought after in computer vision engineering. The experience with Python and OpenCV will also be extremely valuable to a computer vision engineer.
Surveillance System Developer
A surveillance system developer designs and implements systems that monitor and analyze visual data for security and safety purposes. This course is directly applicable as it provides the skills to implement real-time object detection using YOLO. The ability to train custom models for specific objects of interest, such as identifying specific items or activities, is particularly valuable. This course provides the practical skills critical for developing intelligent surveillance systems.
Freelance Computer Vision Consultant
A computer vision consultant provides specialized expertise to businesses and organizations seeking to implement computer vision solutions. This course is applicable because it offers a practical understanding of object detection using YOLO. You will be equipped to offer services such as custom model training, real-time object recognition, and image analysis. This course provides the experience and skills you need to succeed as a computer vision consultant.
Artificial Intelligence Specialist
An artificial intelligence specialist focuses on developing and implementing AI solutions, often involving machine learning and deep learning techniques. This course is relevant as it delves into object detection using YOLO, You only look once, a key area within AI. The hands-on experience gained from training a custom coronavirus detection model is highly valuable. By mastering YOLO, you can apply AI to solve real-world computer vision problems. The practical skills you gain from this course are critical for success as an artificial intelligence specialist.
Machine Learning Engineer
A machine learning engineer designs, develops, and deploys machine learning models to solve real-world problems. This often includes tasks like data preprocessing, model training, and model evaluation. This course provides hands on experience with a vital subset of machine learning, namely object detection using YOLO. The course covers important aspects such as creating custom datasets, training models, and implementing object detection in real-time video. The experience of building a coronavirus detection model from scratch is especially helpful. This course may be useful for the specific skillset and hands on experience it provides a Machine Learning Engineer.
Data Scientist
A data scientist analyzes large datasets to extract meaningful insights and develop data-driven solutions. While data science is broad, it often intersects with computer vision and machine learning. This course is helpful as it provides a thorough understanding of object detection using YOLO, which is a valuable skill for data scientists working with image data. The course covers object recognition, custom dataset creation, model training, and real-time video object detection. You may be able to leverage this course to apply computer vision techniques to solve specific problems. The skills learned could enhance your ability to derive valuable insights from image-based datasets.
Autonomous Vehicle Engineer
An autonomous vehicle engineer develops the software and systems that enable vehicles to operate without human intervention, requiring advanced computer vision capabilities. This course is beneficial because it teaches object detection using YOLO. The ability to implement real-time object detection and train custom models are crucial for autonomous navigation and safety. You may find this course useful when building perception systems for self-driving cars.
Geospatial Analyst
A geospatial analyst uses geographic information systems to analyze spatial data and create maps, charts, and reports and may require a master's degree. This course is applicable because it provides skills in object detection using YOLO, which can be applied to satellite imagery and aerial photography. The ability to train custom models to identify land features, infrastructure components, and other objects of interest is valuable. This course may be useful in the field of geospatial analysis.
Medical Imaging Analyst
A medical imaging analyst analyzes medical images to assist in diagnosis and treatment planning. This course is relevant because it provides hands-on experience with object detection using YOLO, which can be applied to medical image analysis. The ability to train custom models for detecting specific features or anomalies in medical scans is particularly valuable. This course may be useful as it contributes to your ability to enhance diagnostic accuracy and efficiency.
Image Processing Engineer
An image processing engineer works with algorithms to manipulate and analyze digital images. The skills and knowledge covered in this course are highly relevant. The course's emphasis on object detection, particularly using YOLO, teaches how to effectively recognize and classify objects within images. The experience of creating a custom object detection model from scratch strengthens your practical expertise in image analysis. If you are working as an Image Processing Engineer, this course may be useful.
Robotics Engineer
A robotics engineer designs, builds, and programs robots for various applications, often requiring them to "see" and interact with their environment. This course in computer vision directly supports that goal. Its focus on YOLO object detection helps engineers enable robots to identify and classify objects in real-time. The ability to train custom models, as covered in the course, is especially valuable for tailoring robots to specific tasks and environments. If you are training robots, this course may be useful.
Quality Assurance Analyst
A quality assurance analyst ensures that products and systems meet specified quality standards. This course is helpful if your role involves the use of computer vision to automate quality control processes. The ability to train custom object detection models that can identify defects or anomalies can significantly improve efficiency, accuracy, and precision. This course provides the required skill set to contribute to automated quality assurance systems.
Research Scientist
A research scientist investigates scientific questions, often requiring advanced knowledge and experimentation. This course is beneficial because it provides hands-on experience with object detection using YOLO. The ability to build and train custom models for specific research applications is highly valuable. This course may be useful as it equips you with the skills to explore novel applications of computer vision.
Application Developer
An application developer designs, codes, and tests software applications for computers and mobile devices. This course is relevant if you are developing applications that require computer vision capabilities. The ability to integrate object detection using YOLO, as taught in this course, can add significant functionality such as image recognition and real-time object tracking. The practical skills in Python and OpenCV are also beneficial. This course may be useful, depending on your particular app development goals.
Data Annotation Specialist
The data annotation specialist focuses on labeling data. Usually, this role focuses on cleaning data and labeling data to allow machine learning models to be trained on it. This course is helpful because it discusses labeling data in the section titled 'YOLOv4 Custom Training Phase 2 - Image Labelling'. This section is meant to teach learners how to collect and label coronavirus images to train the YOLO model. This section may be useful because labeling data is such an important pre training step.

Reading list

We've selected two books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Computer Vision: YOLO Custom Object Detection with Colab GPU.
Provides a practical introduction to computer vision using Python. It covers fundamental concepts such as image processing, feature extraction, and object recognition. It is particularly useful for understanding the OpenCV library, which is used extensively in the course. This book great reference for implementing computer vision algorithms.
Provides a comprehensive introduction to deep learning, covering the theoretical foundations and practical applications. It is helpful for understanding the underlying principles of neural networks and convolutional neural networks, which are essential for YOLO. While not required for the course, it offers a deeper understanding of the concepts.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Similar courses are unavailable at this time. Please try again later.
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser