Computer Vision: YOLO Custom Object Detection with Colab GPU

所在平台: Udemy

课程主页: https://www.udemy.com/course/computer-vision-yolo-custom-object-detection-with-colab-gpu/

课程评论:没有评论

第一个写评论        关注课程

课程简介

课程名称:计算机视觉:使用Colab GPU进行YOLO自定义目标检测 课程概述: 欢迎参加我的新课程《YOLO自定义目标检测快速入门与Python》。这是我的计算机视觉系列的第四门课程。目标检测是计算机视觉中应用最广泛的领域之一,计算机能够识别和分类图像中的物体。我们将专注于YOLO(You Only Look Once),这是一种高效的实时物体识别算法,属于开源神经网络框架Darknet。 本课程分为两部分。第一部分主要使用预定义的数据集——COCO数据集,该数据集能够分类80种物体。第二部分将创建我们自己的自定义数据集,以训练YOLO模型。我们将尝试创建一个新冠病毒检测模型。 课程主要内容包括: - 理论介绍YOLO目标检测系统。 - 安装Anaconda软件包,准备Python开发环境。 - 学习Python基础知识,包括赋值、控制流、函数和数据结构。 - 安装OpenCV库,并了解卷积神经网络的基本概念与步骤。 在第一部分中,我们将使用YOLO的预训练模型进行目标检测与识别,演示如何对单幅图像进行检测,以及使用非极大值抑制(NMS)来处理多重检测结果。接着,我们将实现实时摄像头视频的目标检测,并应用于预先保存的视频文件。 第二部分将训练一个darknet YOLO模型,用于从电子显微镜图像或视频中检测新冠病毒。我们会探讨预训练数据集模型与自定义数据集模型的优缺点,以及Google Colab提供的免费GPU服务。 在这一部分中: - 下载darknet源代码,准备所需的权重文件并修改配置文件。 - 收集新冠病毒图像,使用labelImg工具进行标注,并将数据集分为80%训练集和20%测试集。 - 配置Google Colab,以利用其免费GPU服务进行模型训练,并在Colab中监测训练过程中的损失值以判断模型的收敛性。 最终,经过多次迭代模型得到最终权重后,使用这些权重进行图像和视频的预测。虽然可能无法声称这是一个完善的生产就绪模型,但通过构建这个自定义模型的过程将为您提供宝贵的经验。同时,课程最后会讨论其他可以实现自定义YOLO模型的案例研究。 完成课程后,您将获得课程完成证书,为您的个人作品增添价值。期待在课堂上与您见面,祝您学习愉快!

课程评论(0条)

课程详情

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 frameworkThis 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 weightLater 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.

课程标签

0人关注该课程

主题相关的课程