最近在看轻量化目标检测模型,看到一个应该是目前最轻量,最小的目标检测模型YOLOFastestV2,YOLOFastestV 在模型架构上进行了精简,减少了卷积层的数量,采用了更小的卷积核,以及更紧凑的设计。这种设计允许模型在较低的计算资源下运行,同时保持较高的检测性能。考虑到实时应用的需求,Yolo-FastestV2 设计为能在 ARM 架构(常见于嵌入式系统和移动端)上流畅运行,实现了真正的边缘计算能力。这意味着它可以在无人机、智能摄像头或移动设备等平台上实现即时物体检测。github链接:https://gitcode.com/dog-qiuqiu/Yolo-FastestV2。通过阅读源码,绘制了Fastest-YOLO模型的结构。整个模型的参数量为0.25M(Yolov5s的参数量为7.3M,仅为其1/30)。

手上有一块Atlas200 DK,正好可以测试在边缘端的推理速度,将项目目录下Yolo-FastestV2/modelzoo/coco2017-0.241078ap-model.pth模型转换为.onnx模型上传到开发板上,使用ais_bench推理工具测试推理速度(遇到问题可以去https://gitee.com/ascend/ait/wikis/ait_security_error_log_solution/path_permission_error_log_solution)。使用ATC工具将onnx模型转换为om模型,使用推理脚本om_infer.py进行推理(需要修改输入图片大小为352×352),测试推理完整图片耗时。

图1 Yolo-FastestV2在NPU上推理耗时

图2 Yolo-FastestV2推理完整图片耗时
作为对比,我还测试yolov5s的推理时间。

图3 yolov5s在NPU上推理耗时

图4 yolov5s推理完整图片耗时

图5 推理结果
表1 推理结果对比表
通过对比,Yolo-FastestV2推理速度比yolov5s快200%以上,虽然Yolo-FastestV2的精度不如yolov5s,但是用在一些对精度要求不高对速度有要求的场景还是非常不错的。总结:YOLO-FastestV2是个牺牲一定精度,大幅提升速度的目标检测模型。
最近在看轻量化目标检测模型,看到一个应该是目前最轻量,最小的目标检测模型YOLOFastestV2,YOLOFastestV 在模型架构上进行了精简,减少了卷积层的数量,采用了更小的卷积核,以及更紧凑的设计。这种设计允许模型在较低的计算资源下运行,同时保持较高的检测性能。考虑到实时应用的需求,Yolo-FastestV2 设计为能在 ARM 架构(常见于嵌入式系统和移动端)上流畅运行,实现了真正的边缘计算能力。这意味着它可以在无人机、智能摄像头或移动设备等平台上实现即时物体检测。github链接:https://gitcode.com/dog-qiuqiu/Yolo-FastestV2。通过阅读源码,绘制了Fastest-YOLO模型的结构。整个模型的参数量为0.25M(Yolov5s的参数量为7.3M,仅为其1/30)。
手上有一块Atlas200 DK,正好可以测试在边缘端的推理速度,将项目目录下Yolo-FastestV2/modelzoo/coco2017-0.241078ap-model.pth模型转换为.onnx模型上传到开发板上,使用ais_bench推理工具测试推理速度(遇到问题可以去https://gitee.com/ascend/ait/wikis/ait_security_error_log_solution/path_permission_error_log_solution)。使用ATC工具将onnx模型转换为om模型,使用推理脚本om_infer.py进行推理(需要修改输入图片大小为352×352),测试推理完整图片耗时。
图1 Yolo-FastestV2在NPU上推理耗时
图2 Yolo-FastestV2推理完整图片耗时
作为对比,我还测试yolov5s的推理时间。
图3 yolov5s在NPU上推理耗时
图4 yolov5s推理完整图片耗时
图5 推理结果
表1 推理结果对比表
通过对比,Yolo-FastestV2推理速度比yolov5s快200%以上,虽然Yolo-FastestV2的精度不如yolov5s,但是用在一些对精度要求不高对速度有要求的场景还是非常不错的。总结:YOLO-FastestV2是个牺牲一定精度,大幅提升速度的目标检测模型。