在b站搜索肆十二的“手把手教你使用YOLOv5训练自己的目标检测模型”,然后可以在csdn中下载代码,我用的数据集是安全帽检测,在这个过程中遇到的问题:
1、环境配置,他在B站中用的是cpu版的pytorch,完完全全的按照他的步骤一步一步来,最后环境没有配置成功。首先还是的找到自己电脑的版本驱动,在搜索中输入NVIDAI控制面板,点击系统信息,点击组件就能看到驱动版本了。下面是我电脑的gpu版本,cuda 12.1。
再在pytorch官网中点击Previous versions of PyTorch,找到对应的pytorch版本。
在下载pytorch之前,可以在终端激活虚拟环境后,导入镜像源,在将对应的代码输入到终端。
这是我环境配置中遇到的问题,其余跟着视频走就行。
2、数据集的大小,刚开始我导入的数据集比较大,总是出错,原因是有的图片格式不对,然后选取了一部分图片,这个错误解决了
3、代码运行错误,其中有一个np.int,把代码中对应的这些改为int。
4、损失函数中的公式,数据类型转换出现错误,将下面的代码
indices.append((b, a, gj.clamp_(0, gain[3] - 1), gi.clamp_(0, gain[2] - 1)))
改为
indices.append((b, a, gj.clamp(0, gain[3] - 1).to(torch.int64), gi.clamp(0, gain[2] - 1).to(torch.int64)))
即可。