目标检测精度计算工具

工具安装

github.com
按照他markdown安装就行,如果conda环境装不了就手动一个一个装。

使用方法

github上也有使用方法,可以先看一下github上的,然后下面是我选择的一种方法。因为github没有给具体的转换脚本,所以后续可以用我这种方法。

第一个主要步骤是选择GT和img
在这里插入图片描述
我这里用的xml格式的标注文件,我试过了用yolo也可以。最后点一下左下角那个位置的GT评估就可以知道这一步操作对不对了,如果对的会出来一个统计label的窗口。
在这里插入图片描述
第二步是选择对应的推理结果:
在这里插入图片描述
我这里选择的推理结果格式是:
class_id, confidence,xmin,ymin,xmax,ymax

由于我选的是class_id这类格式,所以还需要一个映射class和class_id的文件,就是跟yolo格式用的那个文件一样就行了。

下面是我用trt模型推理生成推理结果的脚本:

parser = argparse.ArgumentParser()
    parser.add_argument('-i', '--image_path', default='/root/smh/trt_val/images', help='image file path',
                        required=False)
    args = parser.parse_args()
    Yolov5 = Yolov5TRT(r'/root/smh/steak/script/steak_v1.0.3_20221205_fp16.trt', 13)
    class_map = ['rdish', 'sdish', 'rsteak', 'steak','broccoli', 'potato', 'tomato', 'corn','sauce', 'logo','cut', 'iron', 'block']
    img_list = glob.glob(os.path.join(args.image_path, '*.jpg'))
    
    for img_path in img_list:
        content = []
        # out_path = img_path.split('/')[-1]
        img_name = img_path.split('/')[-1]
        t1 = time.time()
        img = cv2.imread(img_path)
        boxes, confs, classes = Yolov5.detect(img)
        for b, c, cls in zip (boxes, confs, classes):
            r = "%s %.2f %d %d %d %d\n" % (int(cls), np.float(c[0]), b[0], b[1], b[2], b[3])
            content.append(r)
        # print(boxes, confs, classes)
        # draw_results(img, boxes, confs, classes, out_path)
        t2 = time.time()
        print("Inference time: ", t2 - t1)
        with open(os.path.join('/root/smh/trt_val/det_labels', img_name.replace('.jpg', '.txt')), 'w') as f:
            # for c in content:
            #     f.writelines(c+'\n')
            f.writelines(content)

同样最后可以点一下左下角评估一下推理的结果:
在这里插入图片描述
第三步就是输出精度结果了
在这里插入图片描述
这里就是选择一下你输出的文件夹,其余的一些精度指标可以自己探索一下了,如果成功输出,文件夹会多出很多统计精度的图片。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值