(1)yolov5_app.py for ploting moldel inference results cd kneron_hw_models python -m applications.yolov5_app (2)mAP of yolov5s(input640x640) @ coco val2017 /mnt/models/Object_models/YOLOv5/101620_yolov5/yolov5s_v2_op9_sig_batch1_input05_640x640_nearest_convert.onnx Average Precision (AP) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.356 Average Precision (AP) @[ IoU=0.50 | area= all | maxDets=100 ] = 0.549 Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.383 Average Precision (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.208 Average Precision (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.403 Average Precision (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.458 Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 1 ] = 0.299 Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 10 ] = 0.503 Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.559 Average Recall (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.367 Average Recall (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.621 Average Recall (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.702 (3)mAP of yolov5m(input640x640) @ coco val2017 /mnt/models/Object_models/YOLOv5/122220_yolov5/yolov5m_v2_op9_sig_batch1_input05_640x640_nearest_convert.onnx Average Precision (AP) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.426 Average Precision (AP) @[ IoU=0.50 | area= all | maxDets=100 ] = 0.619 Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.462 Average Precision (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.258 Average Precision (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.478 Average Precision (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.548 Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 1 ] = 0.338 Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 10 ] = 0.563 Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.617 Average Recall (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.426 Average Recall (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.676 Average Recall (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.763 (5)the parameters setting (5.1)In order to get high mAP in coco val2017, please use { "model_path": "/mnt/models/Object_models/YOLOv5/122220_yolov5/yolov5m_v2_op9_sig_batch1_input05_640x640_nearest_convert.onnx", "grid20_path": "/mnt/models/Object_models/YOLOv5/122220_yolov5/20_640x640.npy", "grid40_path": "/mnt/models/Object_models/YOLOv5/122220_yolov5/40_640x640.npy", "grid80_path": "/mnt/models/Object_models/YOLOv5/122220_yolov5/80_640x640.npy", "num_classes": 80, "imgsz_h": 640, "imgsz_w": 640, "conf_thres": 0.001, "iou_thres": 0.65, "top_k_num": 3000 } (5.2)For video usage scenarios, please use { "model_path": "/mnt/models/Object_models/YOLOv5/122220_yolov5/yolov5m_v2_op9_sig_batch1_input05_640x640_nearest_convert.onnx", "grid20_path": "/mnt/models/Object_models/YOLOv5/122220_yolov5/20_640x640.npy", "grid40_path": "/mnt/models/Object_models/YOLOv5/122220_yolov5/40_640x640.npy", "grid80_path": "/mnt/models/Object_models/YOLOv5/122220_yolov5/80_640x640.npy", "num_classes": 80, "imgsz_h": 640, "imgsz_w": 640, "conf_thres": 0.3, "iou_thres": 0.5, "top_k_num": 3000 } (5.3)The differences of above setting are (5.3.1) Video uses input (640w*352h) to run faster. Coco has high or flat wide images, so it is better to use input (640w*640h) (5.3.2) Using the yolov5 official website setting test coco val2017, the confidence setting is low "conf_thres": 0.001, and the iou setting of NMS is high "iou_thres": 0.65, which gets a better mAP. But running video needs to be set to "conf_thres": 0.3, so that there are not too many false positives, and the iou setting of NMS "iou_thres": 0.5 is more friendly to close objects (6) To generate the npy: python yolov5_generate_npy