Jiangyangya
Jiangyangya
# 按照存在物体的置信度排序 _, conf_sort_index = torch.sort(detections_class[:, 4]*detections_class[:, 5], descending=True) detections_class = detections_class[conf_sort_index] # 进行非极大抑制 max_detections = [] while detections_class.size(0): # 取出这一类置信度最高的,一步一步往下判断,判断重合程度是否大于nms_thres,如果是则去除掉 max_detections.append(detections_class[0].unsqueeze(0)) if len(detections_class) == 1: break ious = bbox_iou(max_detections[-1],...
我调用了confluence_process替换NMS之后,因为yolo层处理prediction的七维数据,而conf函数是六维(obj_conf和class_conf相乘合并了),我就把obj_conf和class_conf重新拆开并调试好了参数之后,预测效果相对于NMS变差了,想请教下原因,是p_thres这个阈值设置的问题吗,我设置的confidence是0.6,p_thres是0.8
今天打印了值看了一下,最终输出的结果都是第一个出现的检测框,即使它不是最高的,应该是confluence算法后面的判断写的有问题吧?也可能是我修改代码之后出现了问题
好的,我再看看,谢谢!
这个处理我做了很早了,忘了具体操作了,作者的代码confluence_process中的for循环有一个x[:, 5:]*=x[:,4:5]提前将obj_conf和cls_conf进行相乘了,然后再cat的时候进行合并了,所以是六维数据,yolo的输出基本使用的是七维数据,你可以在合并之前做一个克隆,用原始的数据进行cat,因为代码目前不在我这,所以只能这样给你提供一个思路了 ------------------ 原始邮件 ------------------ 发件人: "Huangdebo/Confluence" ***@***.***>; 发送时间: 2021年9月29日(星期三) 下午4:06 ***@***.***>; ***@***.******@***.***>; 主题: Re: [Huangdebo/Confluence] 评价指标问题 (#5) 我调用了confluence_process替换NMS之后,因为yolo层处理prediction的七维数据,而conf函数是六维(obj_conf和class_conf相乘合并了),我就把obj_conf和class_conf重新拆开并调试好了参数之后,预测效果相对于NMS变差了,想请教下原因,是p_thres这个阈值设置的问题吗,我设置的confidence是0.6,p_thres是0.8 你好,我使用的YOLO的prediction输出也是7维的,请问你是怎样改confluence_process的 — You are receiving this because you authored the thread. Reply to this email...
暂时解决了,之前是用了flask部署的web服务,多并发调用会出现数据冲突问题,后续更改为fastapi已经可以平稳运行了,谢谢!