记录一下在Yolov5/Yolov5 lite上训练自己数据集报错总结记录

报错1、

UnicodeDecodeError: 'gbk' codec can't decode byte 0x8b in position 233: illegal multibyte sequence

报这个错误,通常是由于data.yaml配置文件没弄好,里面训练图片路径和验证集路径一定要对,直接重新复制一个,填入自己的文件路径就行,类别数要记得更改。

train: /root/YOLOv5-Lite/data/coco/images/train2017  # 118287 images
val: /root/YOLOv5-Lite/data/coco/images/val2017  # 5000 images
test: /root/YOLOv5-Lite/data/coco/images/test2017  # 20288 of 40670 images, submit to https://competitions.codalab.org/competitions/20794

# number of classes
nc: 80

# class names
names: [ 'person', 'bicycle', 'car', 'motorcycle', 'airplane', 'bus', 'train', 'truck', 'boat', 'traffic light',
         'fire hydrant', 'stop sign', 'parking meter', 'bench', 'bird', 'cat', 'dog', 'horse', 'sheep', 'cow',
         'elephant', 'bear', 'zebra', 'giraffe', 'backpack', 'umbrella', 'handbag', 'tie', 'suitcase', 'frisbee',
         'skis', 'snowboard', 'sports ball', 'kite', 'baseball bat', 'baseball glove', 'skateboard', 'surfboard',
         'tennis racket', 'bottle', 'wine glass', 'cup', 'fork', 'knife', 'spoon', 'bowl', 'banana', 'apple',
         'sandwich', 'orange', 'broccoli', 'carrot', 'hot dog', 'pizza', 'donut', 'cake', 'chair', 'couch',
         'potted plant', 'bed', 'dining table', 'toilet', 'tv', 'laptop', 'mouse', 'remote', 'keyboard', 'cell phone',
         'microwave', 'oven', 'toaster', 'sink', 'refrigerator', 'book', 'clock', 'vase', 'scissors', 'teddy bear',
         'hair drier', 'toothbrush' ]

报错2、

RuntimeError: result type Float can‘t be cast to the desired output

进入utils/loss.py找到以下两处位置代码
在这里插入图片描述
在另一位置:

indices.append((b, a, gj.clamp_(0, gain[3] - 1), gi.clamp_(0, gain[2] - 1)))  # image, anchor, grid 

改为:

indices.append((b, a, gj.clamp_(0, shape[2] - 1), gi.clamp_(0, shape[3] - 1)))  # image, anchor, grid

以上改完即可解决。

合理的创建标题,有助于目录的生成

直接输入1次#,并按下space后,将生成1级标题。
输入2次#,并按下space后,将生成2级标题。
以此类推,我们支持6级标题。有助于使用TOC语法后生成一个完美的目录。

报错3、

出现以下错误

OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized

在train.py 脚本中加入以下代码

import os
os.environ['KMP_DUPLICATE_LIB_OK']='True'

报错4、

wandb 重连
进入/utils/loggers/wandb/wandb_utils.py
找到以下代码,yolov5 lite 在utils/wandb_logginf/wandb_utils.py

try:
    import wandb
    from wandb import init, finish
except ImportError:
    wandb = None

直接注释,然后加wandb = None

#try:
 #   import wandb
  #  from wandb import init, finish
#except ImportError:
 #   wandb = None
    
wandb = None

以上仅仅做记录

  • 9
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
您好!感谢您的提问。Yolov5-lite是一个基于PyTorch实现的目标检测算法,它是Yolov5系列中的一个轻量级版本。训练数据集对于目标检测算法的训练非常重要,以下是一些关于训练数据集的注意事项: 1. 数据集收集:首先,您需要收集包含您感兴趣的目标类别的图像数据集。这可以通过从互联网上下载现有数据集,或者自己拍摄和标注图像来实现。 2. 标注数据:在训练Yolov5-lite之前,您需要为每个图像标注目标边界框和类别标签。常用的标注工具包括LabelImg、Labelbox和RectLabel等。 3. 数据增强:为了增加模型的鲁棒性和泛化能力,您可以使用数据增强技术来扩充数据集。常用的数据增强方法包括随机裁剪、缩放、翻转、旋转等。 4. 数据格式:Yolov5-lite使用的数据格式是YOLO格式,每个图像对应一个同名的txt文件,txt文件中包含每个目标的边界框坐标和类别标签信息。 5. 数据划分:将整个数据集划分为训练集和验证集,通常采用70%~90%的数据作为训练集,剩余的作为验证集,以评估模型的性能。 6. 训练配置:在进行训练之前,您需要编写一个训练配置文件,指定模型的参数、数据集路径、类别标签等信息。在配置文件中,您还可以设置训练的超参数,如学习率、批大小等。 7. 训练过程:最后,使用Yolov5-lite训练脚本开始训练。在训练过程中,模型将根据输入图像和标注信息进行反向传播优化权重,以提高对目标的检测精度。 希望以上信息对您有所帮助!如果您还有其他问题,请随时提问。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值