Google Colab 开发记录(3)YOLOv5 环境搭建、训练、推理
        【摘要】 前言本文是实践记录,首先搭建YOLOv5 开发环境,然后训练模型,最后推理,查看效果。本文分为精简版和详细版,精简版是由简介和命令组成的;详细版是由简介、命令、过程信息记录 组成的。前提挂载谷歌云盘、来到自己的谷歌云盘下的目录。from google.colab import drivedrive.mount('/content/gdrive')在云盘中,创建一个名为YOLOv5的目录,然后...
    
    
    
    前言
本文是实践记录,首先搭建YOLOv5 开发环境,然后训练模型,最后推理,查看效果。本文分为精简版和详细版,精简版是由简介和命令组成的;详细版是由简介、命令、过程信息记录 组成的。
前提
挂载谷歌云盘、来到自己的谷歌云盘下的目录。
  from google.colab import drive
 
 
 
  drive.mount('/content/gdrive')
 
 
在云盘中,创建一个名为YOLOv5的目录,然后进入目录
  cd /content/gdrive/MyDrive/YOLOv5/
 
 
精简版——YOLOv5 环境搭建、训练、推理
1)查看当前文件目录
  !pwd
 
 
显示:/content/gdrive/My Drive/YOLOv5
2)查看分配了什么GPU、内存多大
首先点击“修改”,选择“笔记本设置”,硬件加速----GPU加速
  !nvidia-smi
 
 
 
    from psutil import virtual_memory
   
 
   
    ram_gb = virtual_memory().total / 1e9
   
 
   
    print('Your runtime has {:.1f} gigabytes of available RAM\n'.format(ram_gb))
   
 
   3)下载YOLOv5官方代码
     !git clone https://github.com/ultralytics/yolov5
    
 
   4)查看当前目录有哪些文件
     !ls
    
 
    5)进入YOLOv5目录
      cd yolov5
     
 
     
        !pwd
       
 
       
        这两调命令需要分开执行;
       
 
       6)安装YOLOv5的开发环境
         pip install -r requirements.txt
        
 
        7)测试开发环境是否正常
          import torch
         
 
         
          # Model
         
 
         
          model = torch.hub.load('ultralytics/yolov5', 'yolov5s')  # yolov5s or yolov5m, yolov5l, yolov5x, custom
         
 
         
          # Images
         
 
         
          img = 'https://ultralytics.com/images/zidane.jpg'  # or file, Path, PIL, OpenCV, numpy, list
         
 
         
          # Inference
         
 
         
          results = model(img)
         
 
         
          # Results
         
 
         
          results.print()  # or .show(), .save(), .crop(), .pandas(), etc.
         
 
        8)复制模型到指定目录下
上面下载了torch.hub.load的离线模型yolov5s,这保存起来,方便后面使用。
      cp /root/.cache/torch/hub/ultralytics_yolov5_master/yolov5m.pt /content/gdrive/MyDrive/YOLOv5/yolov5/detect_models/
     
 
     
        !pwd
       
 
       
        !ls
       
 
       9)推理
有几种输入方式:
         默认图片文件夹推理
        
 
        
           !python detect.py
          
 
          
           单张图片推理
          
 
          
           !python detect.py --source 'https://ultralytics.com/images/zidane.jpg'
          
 
          
           视频推理
          
 
          
             !python detect.py --source 'https://youtu.be/Zgi9g1ksQHc'
            
 
            
             相机推理
            
 
            
             !python detect.py --source  0 
             
              
              
            
 
            10)下载COCO数据集---128
              !curl -L https://github.com/ultralytics/yolov5/releases/download/v1.0/coco128.zip -o coco128.zip
             
 
             
                !pwd
               
 
               
                !ls
               
 
               
                  !unzip -q coco128.zip -d ../datasets
                 
 
                 
                      !ls /content/gdrive/MyDrive/YOLOv5/datasets/coco128
                     
 
                     11)训练模型
                       !pwd
                      
 
                      
                       !ls
                      
 
                      
                       训练YOLOv5s模型
                      
 
                      
                         !python train.py --data coco128.yaml --cfg yolov5s.yaml --weights '' --batch-size 64 --epochs 300
                        
 
                        
                      其他模型
                     
 
                     
                       详细版——YOLOv5 环境搭建、训练、推理
前提
挂载谷歌云盘、来到自己的谷歌云盘下的目录。
                        from google.colab import drive
                       
 
                       
                        drive.mount('/content/gdrive')
                       
 
                      执行命令后,需要点击链接,获取验证信息,然后输入执行命令下方的框框中。
在云盘中,创建一个名为YOLOv5的目录,然后进入目录
                        cd /content/gdrive/MyDrive/YOLOv5/
                       
 
                       
                        运行效果如下:
                       
 
                       
                       1)查看当前文件目录
                        !pwd
                       
 
                      显示:/content/gdrive/My Drive/YOLOv5
2)查看分配了什么GPU、内存多大
首先点击“修改”,选择“笔记本设置”,硬件加速----GPU加速
                        !nvidia-smi
                       
 
                       
                          from psutil import virtual_memory
                         
 
                         
                          ram_gb = virtual_memory().total / 1e9
                         
 
                         
                          print('Your runtime has {:.1f} gigabytes of available RAM\n'.format(ram_gb))
                         
 
                         
                          3)下载YOLOv5官方代码
                           !git clone https://github.com/ultralytics/yolov5
                          
 
                         4)查看当前目录有哪些文件
                           !ls
                          
 
                          5)进入YOLOv5目录
                            cd yolov5
                           
 
                           
                              !pwd
                             
 
                             
                              这两调命令需要分开执行;
                             
 
                             
                              6)安装YOLOv5的开发环境
                              pip install -r requirements.txt
                              
 
                              
                              
                              7)测试开发环境是否正常
                              import torch
                              
 
                              
                              # Model
                              
 
                              
                              model = torch.hub.load('ultralytics/yolov5', 'yolov5s')  # yolov5s or yolov5m, yolov5l, yolov5x, custom
                              
 
                              
                              # Images
                              
 
                              
                              img = 'https://ultralytics.com/images/zidane.jpg'  # or file, Path, PIL, OpenCV, numpy, list
                              
 
                              
                              # Inference
                              
 
                              
                              results = model(img)
                              
 
                              
                              # Results
                              
 
                              
                              results.print()  # or .show(), .save(), .crop(), .pandas(), etc.
                              
 
                              
                         8)复制模型到指定目录下
上面下载了torch.hub.load的离线模型yolov5s,这保存起来,方便后面使用。
                            cp /root/.cache/torch/hub/ultralytics_yolov5_master/yolov5m.pt /content/gdrive/MyDrive/YOLOv5/yolov5/detect_models/
                           
 
                           
                              !pwd
                             
 
                             
                              !ls
                             
 
                             9)推理
有几种输入方式:
                              默认图片文件夹推理
                              
 
                              
                              !python detect.py
                              
 
                              
                              单张图片推理
                              
 
                              
                              !python detect.py --source 'https://ultralytics.com/images/zidane.jpg'
                              
 
                              
                              视频推理
                              
 
                              
                              !python detect.py --source 'https://youtu.be/Zgi9g1ksQHc'
                              
 
                              
                              相机推理
                              
 
                              
                              !python detect.py --source  0 
                              
                              
                               
                              
 
                              
                              10)下载COCO数据集---128
                              !curl -L https://github.com/ultralytics/yolov5/releases/download/v1.0/coco128.zip -o coco128.zip
                              
 
                              
                              !pwd
                              
 
                              
                              !ls
                              
 
                              
                              !unzip -q coco128.zip -d ../datasets
                              
 
                              
                              !ls /content/gdrive/MyDrive/YOLOv5/datasets/coco128
                              
 
                              
                              11)训练模型
                              !pwd
                              
 
                              
                              !ls
                              
 
                              
                              训练YOLOv5s模型
                              
 
                              
                              !python train.py --data coco128.yaml --cfg yolov5s.yaml --weights '' --batch-size 64 --epochs 300
                              
 
                              
                      
                     
                      等待训练完成即可;
                     
 
                     
                     
                     
                      训练好的模型保存在 runs/train/exp14
                     
 
                      
                    
             在此命令中 !python train.py --data coco128.yaml --cfg yolov5s.yaml --weights '' --batch-size 64 --epochs 300
            
 
            
             要点:
            
 
            - --data coco128.yaml 是指训练的数据集;
 - --cfg yolov5s.yaml 是指训练那个模型,还可以选择yolov5m.yaml、yolov5x.yaml、yolov5l.yaml
 - --weights '' 是指初始权重,可以为空,也可以输入一个xxx.pt,比如yolov5s.pt
 - --batch-size 64 是指训练批次大小,根据显存大小设置,如果显存不够可以设置32、16、8等;
 - --epochs 300 是指迭代次数,一共迭代多少轮。
 
            【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
                cloudbbs@huaweicloud.com
                
            
        
        
        
        
        
        
        - 点赞
 - 收藏
 - 关注作者
 
            
           
评论(0)