相关文章
项目地址:YOLOv1 VOC 2007
笔者训练的权重地址:阿里云盘分享
10 秒文章速览
在模型训练结束后,对 PASCAL VOC 2007 数据集中的图片进行目标检测
IOU 计算
在这里我们在设置一个计算 iou 的函数,只不过这个函数用于最终目标的检测,而非训练。这个就不解释了
def iou(box1, box2):
x1_min, y1_min, x1_max, y1_max = box1
x2_min, y2_min, x2_max, y2_max = box2
s1 = (x1_max - x1_min)*(y1_max - y1_min)
s2 = (x2_max - x2_min)*(y2_max - y2_min)
xmin = max(x1_min, x2_min)
ymin = max(y1_min, y2_min)
xmax = min(x1_max, x2_max)
ymax = min(y1_max, y2_max)
w = max(0, xmax - xmin)
h = max(0, ymax - ymin)
a1 = w * h
a2 = s1 + s2 - a1
iou = a1 / a2
return iou
NMS
# 非极大值抑制,筛选框
def NMS(bboxes, cond_threshold=0.2, iou_threshold=0.5):
def filter_cond_score(x):
# 计算两个预测框的置信度分数
max_classes = max(x[:20])
bbox1_cond_score = max_classes * x[24]
bbox2_cond_score = max_classes * x[29]
# 返回置信度分数大的预测框
if bbox1_cond_score > bbox2_cond_score:
return x[0:20] +

最低0.47元/天 解锁文章
9016





