YOLOv6 是美團視覺智慧部研發的一款目標檢測框架,致力於工業應用。如何使用python進行該模型的部署,官網已經介紹的很清楚了,但是對於如何在LabVIEW中實現該模型的部署,筆者目前還沒有看到相關介紹文章,所以筆者在實現YOLOv6 ONNX 在LabVIEW中的部署推理後,決定和各位讀者分享一下如何使用LabVIEW實現YOLOv6的目標檢測。
YOLOv6 是美團視覺智慧部研發的一款目標檢測框架,致力於工業應用。本框架同時專注於檢測的精度和推理效率,在工業界常用的尺寸模型中:YOLOv6-nano 在 COCO 上精度可達 35.0% AP,在 T4 上推理速度可達 1242 FPS;YOLOv6-s 在 COCO 上精度可達 43.1% AP,在 T4 上推理速度可達 520 FPS。在部署方面,YOLOv6 支援 GPU(TensorRT)、CPU(OPENVINO)、ARM(MNN、TNN、NCNN)等不同平臺的部署,極大地簡化工程部署時的適配工作。
從模型效能對比圖來看,YOLOv6的效能也是再創新高。YOLOv6-s在COCO上精度達到了43.1%AP,在T4上推理速度也高達520FPS!
YOLOv6提供了支援 ONNX、TensorRT、NCNN 和 Openvino 的部署版本。今天我們一起來看一下如何在LabVIEW中部署YOLOv6 ONNX。
注意:本教學已經為大家提供了YOLOV6的模型,可跳過本步驟,直接進行步驟四-推理。若是想要了解YOLOV6的onnx模型如何獲取,則可繼續閱讀本部分內容。
下面我們來介紹兩種模型獲取的方式(以yolov6s為例,想要獲取其他模型的方式也一樣,只需要修改名字即可)
具體地址如下:https://github.com/meituan/YOLOv6/tree/main/deploy/ONNX
單擊YOLOv6-s,可直接下載yolov6s.onnx
1、下載並安裝YOLOv6所依賴的庫
在https://github.com/meituan/YOLOv6中下載YOLOv6原始碼並解壓
在YOLOv6-main資料夾中開啟cmd,輸入以下指令安裝需要的庫:
pip3 install -U pip && pip3 install -r requirements.txt
注意:YOLOv6比V5多了一個addict庫,如果之前已經安裝過了YOLOv5的相關庫,也可以只下載一個addict
2、安裝pycocotools
pip install pycocotools
!!!注:若安裝pycocotools時遇到ERROR: Could not build wheels for pycocotools ……,則使用以下指令來安裝:
pip install pycocotools-windows
3、從基準表下載標準預訓練模型
https://github.com/meituan/YOLOv6
將模型放置到如下路徑」\YOLOv6-main\」
4、將標準模型pt轉化為onnx
切換到YOLOv6-main資料夾路徑下,執行以下指令實現模型的轉換
python ./deploy/ONNX/export_onnx.py --weights yolov6s.pt --img 640 --batch 1
輸出如下,得到yolov6s.onnx
本專案整體的檔案結構如下圖所示,各位讀者可在文章末尾連結處下載整個專案原始碼。
本例中使用LabVIEW ONNX工具包中的Create_Session.vi載入onnx模型,可選擇使用cpu,cuda進行推理加速。
我們可以使用netron 檢視ppyoloe_crn_s_300e_coco.onnx的網路結構,瀏覽器中輸入連結:https://netron.app/,點選Open Model,開啟相應的網路模型檔案即可。
檢視模型屬性,可看到模型的輸入輸出如下圖所示:
我們發現,該模型輸出和YOLOx輸出一直,均為1x8400x85
將我們已經轉化好的onnx模型放置到model資料夾中,開啟yolov6_onnx_camera.vi,在前面板中修改程式中載入的模型路徑為實際模型路徑,本專案中已經將YOLOV6 onnx模型【yolov6s.onnx】放置到了model資料夾中,如需其他模型,讀者也可自行放置到model檔案及下,實現模型的載入。執行程式,可得到目標檢測的結果。
主程式原始碼如下(可以選擇使用CUDA或者TensorRT進行推理加速):
執行結果如下:
連結:https://blog.csdn.net/virobotics/article/details/126356929?spm=1001.2014.3001.5501
以上就是今天要給大家分享的內容。大家可根據連結下載相關原始碼與模型。
如果有問題可以在評論區裡討論,提問前請先點贊支援一下博主哦,如您想要探討更多關於LabVIEW與人工智慧技術,歡迎加入我們的技術交流群:705637299。進群請備註:LabVIEW機器學習
**如果文章對你有幫助,歡迎✌關注、