最近在做一个检测项目对于实时性要求较高50fps,之前使用yolov3在TX2端测试为10fps不符合要求,看到Chien-Yao Wang, Alexey Bochkovskiy, Hong-Yuan Mark Liao等人又卷出了yolov7,于是测试一下
平台:Nvidia jeston AGX Xavier
测试方式:单张图像样本测试,样本为images/horses.jpg
模型:yolov7.pt
测试表格如下(inference/nms(ms))
1.功率30W 2Core ,不同分辨率和置信度测试
尺寸/置信度 | 0.25 | 0.5 | 0.6 | 0.9 |
---|---|---|---|---|
640 | 60.2/7.2 | 59.1/8.4 | 51.6/5.0 | 51.0/4.3 |
480 | 43.4/4.5 | 56.0/5.6 | 43.6/5.1 | 44.8/4.1 |
416 | 41.6/4.0 | 51.0/5.5 | 39.8/4.3 | 38.2/4.1 |
由表格得出尺寸越小、置信度越高速度越快,缩小分辨率近适用于目标尺度较大时,一味地缩小会导致目标被下采样至不可分辨。
上图为0.6置信度结果,下图为0.9置信度结果,可见过高置信度导致多个目标未被检测,则设置置信度为0.6最优
2.分辨率416,置信度0.6,不同功率设置测试
功率 | 30W2Core | 30W6Core | 30WAll | MAXN |
---|---|---|---|---|
时间 | 39.8/4.3 | 57.1/7.3 | 71.0/9.4 | 36.0/4.4 |
由上表看出在相同功率下cpu核越少反而速度越快?盲猜因为相同功率下cpu核越少则分配给gpu的功率越大。
3.yolov7-tiny测试
在看readme时看到export一节使用的是yolov7-tiny.pt,想到嵌入式端确实应该使用小型模型,因此进行测试,在功率全开情况下达到
速度还可以,但是还是不够理想,实在不行用ssd算了5555