本文为[365天深度学习训练营学习记录博客
参考文章:365天深度学习训练营
原作者:[K同学啊]
文章来源:[K同学的学习圈子](https://www.yuque.com/mingtian-fkmxf/zxwb45)
目标:在YOLOv5s网络模型中,修改common.py、yolo.py、yolov5s.yaml文件,将C2模块插入第2层与第3层之间,且跑通YOLOv5s。
操作步骤:
class C2(nn.Module):
# CSP Bottleneck with 3 convolutions
def __init__(self, c1, c2, n=1, shortcut=True, g=1, e=0.5): # ch_in, ch_out, number, shortcut, groups, expansion
super().__init__()
c_ = int(c2 * e) # hidden channels
self.cv1 = Conv(c1, c_, 1, 1)
self.cv2 = Conv(c1, c_, 1, 1)
self.cv3 = Conv(2 * c_, c2, 1) # optional act=FReLU(c2)
self.m = nn.Sequential(*(Bottleneck(c_, c_, shortcut, g, e=1.0) for _ in range(n)))
def forward(self, x):
return self.cv3(torch.cat((self.m(self.cv1(x)), self.cv2(x)), 1))
2.修改yolo.py文件,改动模型框架
def parse_model(d, ch): # model_dict, input_channels(3)
# Parse a YOLOv5 model.yaml dictionary
LOGGER.info(f"\n{'':>3}{'from':>18}{'n':>3}{'params':>10} {'module':<40}{'arguments':<30}")
anchors, nc, gd, gw, act = d['anchors'], d['nc'], d['depth_multiple'], d['width_multiple'], d.get('activation')
if act:
Conv.default_act = eval(act) # redefine default activation, i.e. Conv.default_act = nn.SiLU()
LOGGER.info(f"{colorstr('activation:')} {act}") # print
na = (len(anchors[0]) // 2) if isinstance(anchors, list) else anchors # number of anchors
no = na * (nc + 5) # number of outputs = anchors * (classes + 5)
layers, save, c2 = [], [], ch[-1] # layers, savelist, ch out
for i, (f, n, m, args) in enumerate(d['backbone'] + d['head']): # from, number, module, args
m = eval(m) if isinstance(m, str) else m # eval strings
for j, a in enumerate(args):
with contextlib.suppress(NameError):
args[j] = eval(a) if isinstance(a, str) else a # eval strings
n = n_ = max(round(n * gd), 1) if n > 1 else n # depth gain
if m in {
Conv, GhostConv, Bottleneck, GhostBottleneck, SPP, SPPF, DWConv, MixConv2d, Focus, CrossConv,
BottleneckCSP, C3, C3TR, C3SPP, C3Ghost, nn.ConvTranspose2d, DWConvTranspose2d, C3x}:
c1, c2 = ch[f], args[0]
if c2 != no: # if not output
c2 = make_divisible(c2 * gw, 8)
args = [c1, c2, *args[1:]]
if m in {BottleneckCSP, C3, C3TR, C3Ghost, C3x}:
args.insert(2, n) # number of repeats
n = 1
elif m is nn.BatchNorm2d:
args = [ch[f]]
elif m is Concat:
c2 = sum(ch[x] for x in f)
# TODO: channel, gw, gd
elif m in {Detect, Segment}:
args.append([ch[x] for x in f])
if isinstance(args[1], int): # number of anchors
args[1] = [list(range(args[1] * 2))] * len(f)
if m is Segment:
args[3] = make_divisible(args[3] * gw, 8)
elif m is Contract:
c2 = ch[f] * args[0] ** 2
elif m is Expand:
c2 = ch[f] // args[0] ** 2
else:
c2 = ch[f]
m_ = nn.Sequential(*(m(*args) for _ in range(n))) if n > 1 else m(*args) # module
t = str(m)[8:-2].replace('__main__.', '') # module type
np = sum(x.numel() for x in m_.parameters()) # number params
m_.i, m_.f, m_.type, m_.np = i, f, t, np # attach index, 'from' index, type, number params
LOGGER.info(f'{i:>3}{str(f):>18}{n_:>3}{np:10.0f} {t:<40}{str(args):<30}') # print
save.extend(x % i for x in ([f] if isinstance(f, int) else f) if x != -1) # append to savelist
layers.append(m_)
if i == 0:
ch = []
ch.append(c2)
return nn.Sequential(*layers), sorted(save)
函数用于将模型的模块拼接起来,搭建完成的网络模型。后续如果需要动模型框架的话,需要对这个函数做相应的改动。
修改前:
修改后:
3.yolov5s.yaml文件中加入C2层
4.命令窗运行
python train.py --img 900 --batch 2 --epoch 100 --data D:/yolov5-master/data/ab.yaml --cfg D:/yolov5-master/models/yolov5s.yaml --weights yolov5s.pt
运行结果:
D:\yolov5-master>python train.py --img 900 --batch 2 --epoch 100 --data D:/yolov5-master/data/ab.yaml --cfg D:/yolov5-master/models/yolov5s.yaml --weights yolov5s.pt
train: weights=yolov5s.pt, cfg=D:/yolov5-master/models/yolov5s.yaml, data=D:/yolov5-master/data/ab.yaml, hyp=data\hyps\hyp.scratch-low.yaml, epochs=100, batch_size=2, imgsz=900, rect=False, resume=False, nosave=False, noval=False, noautoanchor=False, noplots=False, evolve=None, bucket=, cache=None, image_weights=False, device=, multi_scale=False, single_cls=False, optimizer=SGD, sync_bn=False, workers=8, project=runs\train, name=exp, exist_ok=False, quad=False, cos_lr=False, label_smoothing=0.0, patience=100, freeze=[0], save_period=-1, seed=0, local_rank=-1, entity=None, upload_dataset=False, bbox_interval=-1, artifact_alias=latest
github: skipping check (not a git repository), for updates see https://github.com/ultralytics/yolov5
YOLOv5 2023-10-15 Python-3.10.7 torch-2.0.1+cpu CPU
hyperparameters: lr0=0.01, lrf=0.01, momentum=0.937, weight_decay=0.0005, warmup_epochs=3.0, warmup_momentum=0.8, warmup_bias_lr=0.1, box=0.05, cls=0.5, cls_pw=1.0, obj=1.0, obj_pw=1.0, iou_t=0.2, anchor_t=4.0, fl_gamma=0.0, hsv_h=0.015, hsv_s=0.7, hsv_v=0.4, degrees=0.0, translate=0.1, scale=0.5, shear=0.0, perspective=0.0, flipud=0.0, fliplr=0.5, mosaic=1.0, mixup=0.0, copy_paste=0.0
Comet: run 'pip install comet_ml' to automatically track and visualize YOLOv5 runs in Comet
TensorBoard: Start with 'tensorboard --logdir runs\train', view at http://localhost:6006/
Overriding model.yaml nc=80 with nc=4
from n params module arguments
Traceback (most recent call last):
File "D:\yolov5-master\train.py", line 647, in
main(opt)
File "D:\yolov5-master\train.py", line 536, in main
train(opt.hyp, opt, device, callbacks)
File "D:\yolov5-master\train.py", line 130, in train
model = Model(cfg or ckpt['model'].yaml, ch=3, nc=nc, anchors=hyp.get('anchors')).to(device) # create
File "D:\yolov5-master\models\yolo.py", line 185, in __init__
self.model, self.save = parse_model(deepcopy(self.yaml), ch=[ch]) # model, savelist
File "D:\yolov5-master\models\yolo.py", line 319, in parse_model
BottleneckCSP, C2, C3, C3TR, C3SPP, C3Ghost, nn.ConvTranspose2d, DWConvTranspose2d, C3x}:
NameError: name 'C2' is not defined. Did you mean: 'c2'?
D:\yolov5-master>python train.py --img 900 --batch 2 --epoch 100 --data D:/yolov5-master/data/ab.yaml --cfg D:/yolov5-master/models/yolov5s.yaml --weights yolov5s.pt
train: weights=yolov5s.pt, cfg=D:/yolov5-master/models/yolov5s.yaml, data=D:/yolov5-master/data/ab.yaml, hyp=data\hyps\hyp.scratch-low.yaml, epochs=100, batch_size=2, imgsz=900, rect=False, resume=False, nosave=False, noval=False, noautoanchor=False, noplots=False, evolve=None, bucket=, cache=None, image_weights=False, device=, multi_scale=False, single_cls=False, optimizer=SGD, sync_bn=False, workers=8, project=runs\train, name=exp, exist_ok=False, quad=False, cos_lr=False, label_smoothing=0.0, patience=100, freeze=[0], save_period=-1, seed=0, local_rank=-1, entity=None, upload_dataset=False, bbox_interval=-1, artifact_alias=latest
github: skipping check (not a git repository), for updates see https://github.com/ultralytics/yolov5
YOLOv5 2023-10-15 Python-3.10.7 torch-2.0.1+cpu CPU
hyperparameters: lr0=0.01, lrf=0.01, momentum=0.937, weight_decay=0.0005, warmup_epochs=3.0, warmup_momentum=0.8, warmup_bias_lr=0.1, box=0.05, cls=0.5, cls_pw=1.0, obj=1.0, obj_pw=1.0, iou_t=0.2, anchor_t=4.0, fl_gamma=0.0, hsv_h=0.015, hsv_s=0.7, hsv_v=0.4, degrees=0.0, translate=0.1, scale=0.5, shear=0.0, perspective=0.0, flipud=0.0, fliplr=0.5, mosaic=1.0, mixup=0.0, copy_paste=0.0
Comet: run 'pip install comet_ml' to automatically track and visualize YOLOv5 runs in Comet
TensorBoard: Start with 'tensorboard --logdir runs\train', view at http://localhost:6006/
Overriding model.yaml nc=80 with nc=4
from n params module arguments
0 -1 1 3520 models.common.Conv [3, 32, 6, 2, 2]
1 -1 1 18560 models.common.Conv [32, 64, 3, 2]
2 -1 1 18816 models.common.C3 [64, 64, 1]
3 -1 1 18816 models.common.C2 [64, 64, 1]
4 -1 1 73984 models.common.Conv [64, 128, 3, 2]
5 -1 2 115712 models.common.C3 [128, 128, 2]
6 -1 1 295424 models.common.Conv [128, 256, 3, 2]
7 -1 3 625152 models.common.C3 [256, 256, 3]
8 -1 1 1180672 models.common.Conv [256, 512, 3, 2]
9 -1 1 1182720 models.common.C3 [512, 512, 1]
10 -1 1 656896 models.common.SPPF [512, 512, 5]
11 -1 1 131584 models.common.Conv [512, 256, 1, 1]
12 -1 1 0 torch.nn.modules.upsampling.Upsample [None, 2, 'nearest']
13 [-1, 6] 1 0 models.common.Concat [1]
14 -1 1 361984 models.common.C3 [512, 256, 1, False]
15 -1 1 33024 models.common.Conv [256, 128, 1, 1]
16 -1 1 0 torch.nn.modules.upsampling.Upsample [None, 2, 'nearest']
17 [-1, 4] 1 0 models.common.Concat [1]
18 -1 1 90880 models.common.C3 [256, 128, 1, False]
19 -1 1 147712 models.common.Conv [128, 128, 3, 2]
20 [-1, 14] 1 0 models.common.Concat [1]
21 -1 1 329216 models.common.C3 [384, 256, 1, False]
22 -1 1 590336 models.common.Conv [256, 256, 3, 2]
23 [-1, 10] 1 0 models.common.Concat [1]
24 -1 1 1313792 models.common.C3 [768, 512, 1, False]
25 [17, 20, 23] 1 38097 models.yolo.Detect [4, [[10, 13, 16, 30, 33, 23], [30, 61, 62, 45, 59, 119], [116, 90, 156, 198, 373, 326]], [256, 384, 768]]
YOLOv5s summary: 232 layers, 7226897 parameters, 7226897 gradients, 17.2 GFLOPs
Transferred 49/379 items from yolov5s.pt
WARNING --img-size 900 must be multiple of max stride 32, updating to 928
optimizer: SGD(lr=0.01) with parameter groups 62 weight(decay=0.0), 65 weight(decay=0.0005), 65 bias
train: Scanning D:\yolov5-master\Y2\train... 1 images, 0 backgrounds, 159 corrupt: 100%|██████████| 160/160 [00:13<00:0
train: WARNING D:\yolov5-master\Y2\images\fruit1.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit1.png'
train: WARNING D:\yolov5-master\Y2\images\fruit10.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit10.png'
train: WARNING D:\yolov5-master\Y2\images\fruit100.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit100.png'
train: WARNING D:\yolov5-master\Y2\images\fruit102.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit102.png'
train: WARNING D:\yolov5-master\Y2\images\fruit103.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit103.png'
train: WARNING D:\yolov5-master\Y2\images\fruit104.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit104.png'
train: WARNING D:\yolov5-master\Y2\images\fruit106.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit106.png'
train: WARNING D:\yolov5-master\Y2\images\fruit108.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit108.png'
train: WARNING D:\yolov5-master\Y2\images\fruit109.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit109.png'
train: WARNING D:\yolov5-master\Y2\images\fruit11.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit11.png'
train: WARNING D:\yolov5-master\Y2\images\fruit110.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit110.png'
train: WARNING D:\yolov5-master\Y2\images\fruit111.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit111.png'
train: WARNING D:\yolov5-master\Y2\images\fruit113.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit113.png'
train: WARNING D:\yolov5-master\Y2\images\fruit114.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit114.png'
train: WARNING D:\yolov5-master\Y2\images\fruit115.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit115.png'
train: WARNING D:\yolov5-master\Y2\images\fruit116.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit116.png'
train: WARNING D:\yolov5-master\Y2\images\fruit117.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit117.png'
train: WARNING D:\yolov5-master\Y2\images\fruit118.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit118.png'
train: WARNING D:\yolov5-master\Y2\images\fruit119.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit119.png'
train: WARNING D:\yolov5-master\Y2\images\fruit12.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit12.png'
train: WARNING D:\yolov5-master\Y2\images\fruit120.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit120.png'
train: WARNING D:\yolov5-master\Y2\images\fruit121.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit121.png'
train: WARNING D:\yolov5-master\Y2\images\fruit122.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit122.png'
train: WARNING D:\yolov5-master\Y2\images\fruit123.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit123.png'
train: WARNING D:\yolov5-master\Y2\images\fruit124.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit124.png'
train: WARNING D:\yolov5-master\Y2\images\fruit125.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit125.png'
train: WARNING D:\yolov5-master\Y2\images\fruit127.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit127.png'
train: WARNING D:\yolov5-master\Y2\images\fruit129.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit129.png'
train: WARNING D:\yolov5-master\Y2\images\fruit13.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit13.png'
train: WARNING D:\yolov5-master\Y2\images\fruit130.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit130.png'
train: WARNING D:\yolov5-master\Y2\images\fruit131.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit131.png'
train: WARNING D:\yolov5-master\Y2\images\fruit132.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit132.png'
train: WARNING D:\yolov5-master\Y2\images\fruit133.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit133.png'
train: WARNING D:\yolov5-master\Y2\images\fruit134.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit134.png'
train: WARNING D:\yolov5-master\Y2\images\fruit135.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit135.png'
train: WARNING D:\yolov5-master\Y2\images\fruit136.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit136.png'
train: WARNING D:\yolov5-master\Y2\images\fruit138.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit138.png'
train: WARNING D:\yolov5-master\Y2\images\fruit14.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit14.png'
train: WARNING D:\yolov5-master\Y2\images\fruit142.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit142.png'
train: WARNING D:\yolov5-master\Y2\images\fruit143.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit143.png'
train: WARNING D:\yolov5-master\Y2\images\fruit144.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit144.png'
train: WARNING D:\yolov5-master\Y2\images\fruit145.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit145.png'
train: WARNING D:\yolov5-master\Y2\images\fruit147.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit147.png'
train: WARNING D:\yolov5-master\Y2\images\fruit148.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit148.png'
train: WARNING D:\yolov5-master\Y2\images\fruit149.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit149.png'
train: WARNING D:\yolov5-master\Y2\images\fruit15.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit15.png'
train: WARNING D:\yolov5-master\Y2\images\fruit151.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit151.png'
train: WARNING D:\yolov5-master\Y2\images\fruit152.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit152.png'
train: WARNING D:\yolov5-master\Y2\images\fruit155.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit155.png'
train: WARNING D:\yolov5-master\Y2\images\fruit156.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit156.png'
train: WARNING D:\yolov5-master\Y2\images\fruit157.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit157.png'
train: WARNING D:\yolov5-master\Y2\images\fruit158.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit158.png'
train: WARNING D:\yolov5-master\Y2\images\fruit159.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit159.png'
train: WARNING D:\yolov5-master\Y2\images\fruit16.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit16.png'
train: WARNING D:\yolov5-master\Y2\images\fruit161.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit161.png'
train: WARNING D:\yolov5-master\Y2\images\fruit162.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit162.png'
train: WARNING D:\yolov5-master\Y2\images\fruit163.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit163.png'
train: WARNING D:\yolov5-master\Y2\images\fruit164.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit164.png'
train: WARNING D:\yolov5-master\Y2\images\fruit165.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit165.png'
train: WARNING D:\yolov5-master\Y2\images\fruit167.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit167.png'
train: WARNING D:\yolov5-master\Y2\images\fruit168.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit168.png'
train: WARNING D:\yolov5-master\Y2\images\fruit169.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit169.png'
train: WARNING D:\yolov5-master\Y2\images\fruit17.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit17.png'
train: WARNING D:\yolov5-master\Y2\images\fruit170.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit170.png'
train: WARNING D:\yolov5-master\Y2\images\fruit171.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit171.png'
train: WARNING D:\yolov5-master\Y2\images\fruit172.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit172.png'
train: WARNING D:\yolov5-master\Y2\images\fruit173.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit173.png'
train: WARNING D:\yolov5-master\Y2\images\fruit174.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit174.png'
train: WARNING D:\yolov5-master\Y2\images\fruit175.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit175.png'
train: WARNING D:\yolov5-master\Y2\images\fruit176.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit176.png'
train: WARNING D:\yolov5-master\Y2\images\fruit177.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit177.png'
train: WARNING D:\yolov5-master\Y2\images\fruit178.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit178.png'
train: WARNING D:\yolov5-master\Y2\images\fruit179.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit179.png'
train: WARNING D:\yolov5-master\Y2\images\fruit18.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit18.png'
train: WARNING D:\yolov5-master\Y2\images\fruit180.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit180.png'
train: WARNING D:\yolov5-master\Y2\images\fruit181.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit181.png'
train: WARNING D:\yolov5-master\Y2\images\fruit182.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit182.png'
train: WARNING D:\yolov5-master\Y2\images\fruit183.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit183.png'
train: WARNING D:\yolov5-master\Y2\images\fruit184.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit184.png'
train: WARNING D:\yolov5-master\Y2\images\fruit185.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit185.png'
train: WARNING D:\yolov5-master\Y2\images\fruit186.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit186.png'
train: WARNING D:\yolov5-master\Y2\images\fruit187.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit187.png'
train: WARNING D:\yolov5-master\Y2\images\fruit188.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit188.png'
train: WARNING D:\yolov5-master\Y2\images\fruit19.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit19.png'
train: WARNING D:\yolov5-master\Y2\images\fruit196.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit196.png'
train: WARNING D:\yolov5-master\Y2\images\fruit197.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit197.png'
train: WARNING D:\yolov5-master\Y2\images\fruit198.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit198.png'
train: WARNING D:\yolov5-master\Y2\images\fruit199.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit199.png'
train: WARNING D:\yolov5-master\Y2\images\fruit2.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit2.png'
train: WARNING D:\yolov5-master\Y2\images\fruit200.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit200.png'
train: WARNING D:\yolov5-master\Y2\images\fruit202.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit202.png'
train: WARNING D:\yolov5-master\Y2\images\fruit208.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit208.png'
train: WARNING D:\yolov5-master\Y2\images\fruit209.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit209.png'
train: WARNING D:\yolov5-master\Y2\images\fruit211.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit211.png'
train: WARNING D:\yolov5-master\Y2\images\fruit22.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit22.png'
train: WARNING D:\yolov5-master\Y2\images\fruit23.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit23.png'
train: WARNING D:\yolov5-master\Y2\images\fruit25.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit25.png'
train: WARNING D:\yolov5-master\Y2\images\fruit26.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit26.png'
train: WARNING D:\yolov5-master\Y2\images\fruit27.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit27.png'
train: WARNING D:\yolov5-master\Y2\images\fruit28.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit28.png'
train: WARNING D:\yolov5-master\Y2\images\fruit29.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit29.png'
train: WARNING D:\yolov5-master\Y2\images\fruit3.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit3.png'
train: WARNING D:\yolov5-master\Y2\images\fruit30.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit30.png'
train: WARNING D:\yolov5-master\Y2\images\fruit31.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit31.png'
train: WARNING D:\yolov5-master\Y2\images\fruit33.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit33.png'
train: WARNING D:\yolov5-master\Y2\images\fruit34.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit34.png'
train: WARNING D:\yolov5-master\Y2\images\fruit35.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit35.png'
train: WARNING D:\yolov5-master\Y2\images\fruit36.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit36.png'
train: WARNING D:\yolov5-master\Y2\images\fruit38.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit38.png'
train: WARNING D:\yolov5-master\Y2\images\fruit39.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit39.png'
train: WARNING D:\yolov5-master\Y2\images\fruit4.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit4.png'
train: WARNING D:\yolov5-master\Y2\images\fruit40.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit40.png'
train: WARNING D:\yolov5-master\Y2\images\fruit43.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit43.png'
train: WARNING D:\yolov5-master\Y2\images\fruit44.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit44.png'
train: WARNING D:\yolov5-master\Y2\images\fruit45.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit45.png'
train: WARNING D:\yolov5-master\Y2\images\fruit46.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit46.png'
train: WARNING D:\yolov5-master\Y2\images\fruit49.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit49.png'
train: WARNING D:\yolov5-master\Y2\images\fruit50.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit50.png'
train: WARNING D:\yolov5-master\Y2\images\fruit51.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit51.png'
train: WARNING D:\yolov5-master\Y2\images\fruit52.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit52.png'
train: WARNING D:\yolov5-master\Y2\images\fruit53.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit53.png'
train: WARNING D:\yolov5-master\Y2\images\fruit54.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit54.png'
train: WARNING D:\yolov5-master\Y2\images\fruit55.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit55.png'
train: WARNING D:\yolov5-master\Y2\images\fruit57.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit57.png'
train: WARNING D:\yolov5-master\Y2\images\fruit59.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit59.png'
train: WARNING D:\yolov5-master\Y2\images\fruit6.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit6.png'
train: WARNING D:\yolov5-master\Y2\images\fruit60.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit60.png'
train: WARNING D:\yolov5-master\Y2\images\fruit61.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit61.png'
train: WARNING D:\yolov5-master\Y2\images\fruit62.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit62.png'
train: WARNING D:\yolov5-master\Y2\images\fruit63.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit63.png'
train: WARNING D:\yolov5-master\Y2\images\fruit65.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit65.png'
train: WARNING D:\yolov5-master\Y2\images\fruit66.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit66.png'
train: WARNING D:\yolov5-master\Y2\images\fruit68.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit68.png'
train: WARNING D:\yolov5-master\Y2\images\fruit69.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit69.png'
train: WARNING D:\yolov5-master\Y2\images\fruit7.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit7.png'
train: WARNING D:\yolov5-master\Y2\images\fruit70.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit70.png'
train: WARNING D:\yolov5-master\Y2\images\fruit71.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit71.png'
train: WARNING D:\yolov5-master\Y2\images\fruit73.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit73.png'
train: WARNING D:\yolov5-master\Y2\images\fruit74.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit74.png'
train: WARNING D:\yolov5-master\Y2\images\fruit75.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit75.png'
train: WARNING D:\yolov5-master\Y2\images\fruit77.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit77.png'
train: WARNING D:\yolov5-master\Y2\images\fruit78.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit78.png'
train: WARNING D:\yolov5-master\Y2\images\fruit79.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit79.png'
train: WARNING D:\yolov5-master\Y2\images\fruit80.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit80.png'
train: WARNING D:\yolov5-master\Y2\images\fruit81.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit81.png'
train: WARNING D:\yolov5-master\Y2\images\fruit82.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit82.png'
train: WARNING D:\yolov5-master\Y2\images\fruit83.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit83.png'
train: WARNING D:\yolov5-master\Y2\images\fruit85.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit85.png'
train: WARNING D:\yolov5-master\Y2\images\fruit86.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit86.png'
train: WARNING D:\yolov5-master\Y2\images\fruit87.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit87.png'
train: WARNING D:\yolov5-master\Y2\images\fruit88.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit88.png'
train: WARNING D:\yolov5-master\Y2\images\fruit89.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit89.png'
train: WARNING D:\yolov5-master\Y2\images\fruit90.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit90.png'
train: WARNING D:\yolov5-master\Y2\images\fruit91.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit91.png'
train: WARNING D:\yolov5-master\Y2\images\fruit94.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit94.png'
train: WARNING D:\yolov5-master\Y2\images\fruit95.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit95.png'
train: WARNING D:\yolov5-master\Y2\images\fruit97.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit97.png'
train: WARNING D:\yolov5-master\Y2\images\fruit98.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit98.png'
train: WARNING D:\yolov5-master\Y2\images\fruit99.png: ignoring corrupt image/label: [Errno 22] Invalid argument: ' D:\\yolov5-master\\Y2\\images\\fruit99.png'
train: WARNING Cache directory D:\yolov5-master\Y2 is not writeable: [WinError 183] : 'D:\\yolov5-master\\Y2\\train.cache.npy' -> 'D:\\yolov5-master\\Y2\\train.cache'
val: Scanning D:\yolov5-master\Y2\val.cache... 1 images, 0 backgrounds, 19 corrupt: 100%|██████████| 20/20 [00:00
你可能感兴趣的:(YOLO,python,算法)