#之前改过目标检测模型,这次是第一次改分割模型,本以为一样,最后发现还是有点差别,并且在寻找原因时,网上基本上不到相同的,唯一相近的是这一句Detect‘ object has no attribute ‘m‘,相差一个字母,误认为是一类报错(导致两天时间里反反复复装了十几遍环境)#
首先改进yolov5模型,还是老三步,改yaml,yolo,common,这里就不详细的去说了,网上都有。
按照原来的习惯,yaml文件我一般是直接复制粘贴,这也是导致错误的直接原因
yolov5的检测和分割网络结构在最后一层有区别
第一个是分割模型 head: [[-1, 1, Conv, [512, 1, 1]], [-1, 1, nn.Upsample, [None, 2, 'nearest']], [[-1, 6], 1, Concat, [1]], # cat backbone P4 [-1, 3, C3, [512, False]], # 13 [-1, 1, Conv, [256, 1, 1]], [-1, 1, nn.Upsample, [None, 2, 'nearest']], [[-1, 4], 1, Concat, [1]], # cat backbone P3 [-1, 3, C3, [256, False]], # 17 (P3/8-small) [-1, 1, Conv, [256, 3, 2]], [[-1, 14], 1, Concat, [1]], # cat head P4 [-1, 3, C3, [512, False]], # 20 (P4/16-medium) [-1, 1, Conv, [512, 3, 2]],