0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

百度飛槳PP-YOLOE ONNX 在LabVIEW中的部署推理(含源碼)

LabVIEW深度學(xué)習(xí)實(shí)戰(zhàn) ? 來源: LabVIEW深度學(xué)習(xí)實(shí)戰(zhàn) ? 作者: LabVIEW深度學(xué)習(xí)實(shí) ? 2023-05-26 14:01 ? 次閱讀

前言

PP-YOLOE是百度基于其之前的PP-YOLOv2所改進(jìn)的卓越的單階段Anchor-free模型,超越了多種流行的YOLO模型。如何使用python進(jìn)行該模型的部署,官網(wǎng)已經(jīng)介紹的很清楚了,但是對于如何在LabVIEW中實(shí)現(xiàn)該模型的部署,筆者目前還沒有看到相關(guān)介紹文章,所以筆者在實(shí)現(xiàn)PP-YOLOE ONNX 在LabVIEW中的部署推理后,決定和各位讀者分享一下如何使用LabVIEW實(shí)現(xiàn)PP-YOLOE的目標(biāo)檢測。


一、什么是PP-YOLO

在這里插入圖片描述
PP-YOLOE是百度基于其之前的PP-YOLOv2所改進(jìn)的卓越的單階段Anchor-free模型,超越了多種流行的YOLO模型。PP-YOLOE,有更高的檢測精度且部署友好。
PP-YOLOE基于anchor-free的架構(gòu),使用強(qiáng)大的backbone和neck,引入了CSPRepResStage,ET-head 和動態(tài)標(biāo)簽分配算法TAL。針對不同應(yīng)用場景,提供了不同大小的模型。即s/m/l/x,可以通過width multiplier和depth multiplier配置。PP-YOLOE避免了使用諸如Deformable Convolution或者M(jìn)atrix NMS之類的特殊算子,以使其能輕松地部署在多種多樣的硬件上。
在這里插入圖片描述
PP-YOLOE-l在COCO test-dev2017達(dá)到了51.6的mAP, 同時其速度在Tesla V100上達(dá)到了78.1 FPS。
PP-YOLOE提供了一鍵轉(zhuǎn)出 ONNX 格式,可順暢對接 ONNX 生態(tài)。本文主要實(shí)現(xiàn)百度PP-YOLOE ONNX 在LabVIEW上的部署推理。


二、環(huán)境搭建

1、部署本項目時所用環(huán)境

  • 操作系統(tǒng):Windows10
  • python:3.6及以上
  • LabVIEW:2018及以上 64位版本
  • AI視覺工具包:techforce_lib_opencv_cpu-1.0.0.73.vip
  • onnx工具包:virobotics_lib_onnx_cuda_tensorrt-1.0.0.16.vip【1.0.0.16及以上版本】

2、LabVIEW工具包下載及安裝


三、模型的獲取與轉(zhuǎn)化

注意:本教程已經(jīng)為大家提供了PP-YOLOE的模型,可跳過本步驟,直接進(jìn)行步驟四-推理。若是想要了解PP-YOLO的onnx模型如何獲取,則可繼續(xù)閱讀本部分內(nèi)容。

PP-YOLOE并沒有直接提供onnx模型,但是我們可以通過paddle2onnx實(shí)現(xiàn)onnx模型的導(dǎo)出。

1、安裝paddle

  • PPYOLO需要使用百度paddle框架,我們打開百度飛槳官網(wǎng):https://www.paddlepaddle.org.cn/,在下方的快速安裝選擇適合自己版本的paddlepaddle

在這里插入圖片描述

  • cmd中執(zhí)行以下命令安裝:
python -m pip install paddlepaddle-gpu==2.3.1.post112 -f https://www.paddlepaddle.org.cn/whl/windows/mkl/avx/stable.html

2、安裝依賴的庫

  • 從github上下載PaddleDetection并解壓到目錄,下載地址:https://github.com/PaddlePaddle/PaddleDetection ,將paddledetection根目錄添加到環(huán)境變量。
  • 在PaddleDetection-release-2.4文件夾中打開cmd,輸入以下指令安裝需要的庫
pip3 install -U pip && pip3 install -r requirements.txt

3、安裝pycocotools

pip install pycocotools

若安裝pycocotools時遇到ERROR: Could not build wheels for pycocotools ……,則可以使用以下指令來安裝:

pip install pycocotools-windows

4、導(dǎo)出onnx模型

(1)導(dǎo)出推理模型

python tools/export_model.py -c configs/ppyoloe/ppyoloe_crn_l_300e_coco.yml --output_dir=output_inference -o weights=https://paddledet.bj.bcebos.com/models/ppyoloe_crn_l_300e_coco.pdparams

(2) 安裝paddle2onnx

pip install paddle2onnx

(3) 轉(zhuǎn)換成onnx格式

paddle2onnx --model_dir output_inference/ppyoloe_crn_l_300e_coco --model_filename model.pdmodel --params_filename model.pdiparams --opset_version 11 --save_file ppyoloe_crn_l_300e_coco.onnx

至此已成功導(dǎo)出PP-YOLOE ONNX模型

注意: ONNX模型目前只支持batch_size=1


四、在LabVIEW實(shí)現(xiàn)PP-YOLOE的部署推理

本項目整體的文件結(jié)構(gòu)如下圖所示,各位讀者可在文章末尾鏈接處下載整個項目源碼。如您想要探討更多關(guān)于LabVIEW與人工智能技術(shù),歡迎加入我們:705637299
在這里插入圖片描述

1、LabVIEW調(diào)用PP-YOLOE實(shí)現(xiàn)目標(biāo)檢測pp-yolox_main.vi

本例中使用LabvVIEW ONNX工具包中的Create_Session.vi載入onnx模型,可選擇使用cpu,cuda進(jìn)行推理加速。

(1)查看模型

我們可以使用netron 查看ppyoloe_crn_s_300e_coco.onnx的網(wǎng)絡(luò)結(jié)構(gòu),瀏覽器中輸入鏈接:https://netron.app/,點(diǎn)擊Open Model,打開相應(yīng)的網(wǎng)絡(luò)模型文件即可。
在這里插入圖片描述
查看模型屬性,可看到模型的輸入輸出如下圖所示:
在這里插入圖片描述
我們發(fā)現(xiàn),該模型有兩個輸入和兩個輸出,所以推理時候需要有兩個輸入,需要用到我們的多輸入處理vi,run.vi

  • 可以看到圖片輸入大小為640x640
  • 第一個輸出為8400x6[6分別為classese_id,cofidence,框]

(2)實(shí)現(xiàn)過程

  • 讀取圖片并進(jìn)行圖像預(yù)處理(-1到1的歸一化)
    在這里插入圖片描述
  • 初始化一個Vector_Value,新增兩個輸入tensor(圖片及scal_factor)
    在這里插入圖片描述
  • 加載模型并選擇加速類型(cpu、CUDA、tensorRt)
    在這里插入圖片描述
  • 實(shí)現(xiàn)多輸入推理
    在這里插入圖片描述
  • 獲取第一層的輸出
    在這里插入圖片描述
  • 進(jìn)行后處理
    在這里插入圖片描述
  • 繪制檢測出的目標(biāo)及及置信度
    在這里插入圖片描述

(3)項目運(yùn)行

配置本項目所需環(huán)境。在文章末尾鏈接處下載整個項目源碼,將我們已經(jīng)轉(zhuǎn)化好的onnx模型放置到model文件夾中,打開pp_yolo_main.vi,在前面板中修改程序中加載的模型路徑為實(shí)際模型路徑,本項目中已經(jīng)將PP-YOLOE onnx模型【ppyoloe_crn_s_300e_coco.onnx】放置到了model文件夾中,如需其他模型,讀者也可自行放置到model文件及下,實(shí)現(xiàn)模型的加載。修改檢測圖片的路徑為實(shí)際圖片路徑,運(yùn)行程序,可得到目標(biāo)檢測的結(jié)果。

  • 主程序源碼如下:
    在這里插入圖片描述
  • 運(yùn)行結(jié)果如下:
    1.png
    大家也可以檢測其他圖片來測試檢測效果。

2、LabVIEW調(diào)用PP-YOLOE實(shí)現(xiàn)實(shí)時目標(biāo)檢測ppyolo_camera.vi

實(shí)時檢測過程,我們可以選擇使用CUDA實(shí)現(xiàn)推理加速,整個程序的實(shí)現(xiàn)過程和加載圖片進(jìn)行檢測基本一致。

(1)LabVIEW調(diào)用PP-YOLOE實(shí)時目標(biāo)檢測源碼

在這里插入圖片描述

(2)LabVIEW調(diào)用PP-YOLOE實(shí)現(xiàn)實(shí)時目標(biāo)檢測結(jié)果

1.png

可以看到使用CUDA進(jìn)行推理加速,速度還是很快的。


五、完整項目下載鏈接

鏈接:https://blog.csdn.net/virobotics/article/details/126231434?spm=1001.2014.3001.5501

總結(jié)

以上就是今天要給大家分享的內(nèi)容,希望對大家有用。如果有問題可以在評論區(qū)里討論,提問前請先點(diǎn)贊支持一下博主哦。

**如果文章對你有幫助,歡迎?關(guān)注、

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • LabVIEW
    +關(guān)注

    關(guān)注

    1961

    文章

    3651

    瀏覽量

    322013
  • 目標(biāo)檢測
    +關(guān)注

    關(guān)注

    0

    文章

    200

    瀏覽量

    15578
收藏 人收藏

    評論

    相關(guān)推薦

    Graphcore攜手百度 共建全球軟硬AI生態(tài)

    2022年5月20日,中國北京——今日,Graphcore?(擬未)Wave Summit 2022深度學(xué)習(xí)開發(fā)者峰會上正式宣布加入硬件生態(tài)共創(chuàng)計劃。Graphcore和百度將基
    的頭像 發(fā)表于 05-23 11:24 ?1604次閱讀
    Graphcore攜手<b class='flag-5'>百度</b><b class='flag-5'>飛</b><b class='flag-5'>槳</b> 共建全球軟硬AI生態(tài)

    不是“重復(fù)”造輪子,百度框架2.0如何俘獲人心 精選資料分享

    ,不斷更新升級。2021 年 3 月,百度正式推出框架 2.0 正式版,實(shí)現(xiàn)了一次跨時代的升級。如今,...
    發(fā)表于 07-23 07:36

    芯微AI芯片加持百度,攜手加速AI應(yīng)用落地

    瑞芯微Rockchip正式宣布,旗下AI芯片RK1808、RK1806適配百度(PaddlePaddle)開源深度學(xué)習(xí)平臺,充分兼容
    發(fā)表于 07-06 16:01 ?646次閱讀

    Imagination和百度宣布全球人工智能(AI)生態(tài)系統(tǒng)方面開展合作

    Imagination和百度(PaddlePaddle)的合作,其IMGDNN API已集成到Paddle Lite
    發(fā)表于 02-01 15:08 ?842次閱讀

    百度Graphcore IPU上實(shí)現(xiàn)訓(xùn)練與推理全面支持

    百度是中國領(lǐng)先的產(chǎn)業(yè)級深度學(xué)習(xí)平臺,目前累計開發(fā)者數(shù)量超過406萬,服務(wù)企業(yè)數(shù)量15.7萬家,創(chuàng)建了超過47.6萬個模型,為中國AI社區(qū)的繁榮做出巨大貢獻(xiàn)。
    發(fā)表于 12-13 11:26 ?497次閱讀
    <b class='flag-5'>百度</b><b class='flag-5'>飛</b><b class='flag-5'>槳</b><b class='flag-5'>在</b>Graphcore IPU上實(shí)現(xiàn)訓(xùn)練與<b class='flag-5'>推理</b>全面支持

    NVIDIA攜手百度 共創(chuàng)多元AI開發(fā)生態(tài)

    百度所舉辦的 Wave Summit 2022 深度學(xué)習(xí)開發(fā)者峰會圓滿落幕, NVIDIA 作為百度的全球合作伙伴之一也出席了這場盛大的線上峰會。本次的主題演講, NVIDIA
    的頭像 發(fā)表于 05-27 09:41 ?1887次閱讀

    天數(shù)智芯攜手百度助力產(chǎn)業(yè)智能化轉(zhuǎn)型

    “新勢力”參會。會上,天數(shù)智芯正式宣布加入百度硬件生態(tài)共創(chuàng)計劃,利用自身產(chǎn)品技術(shù)優(yōu)勢與百度
    的頭像 發(fā)表于 05-27 16:04 ?1477次閱讀

    百度承辦的WAVE SUMMIT+2022深度學(xué)習(xí)開發(fā)者峰會即將開啟

    近日,二十多家硬件廠商紛紛官方公眾號發(fā)文,集體“拍了拍”百度,引發(fā)了近年來軟硬件企業(yè)間最受關(guān)注的聯(lián)動。 11月16日-17日,20多家硬件廠商集體“拍了拍”
    的頭像 發(fā)表于 11-22 17:01 ?1239次閱讀
    <b class='flag-5'>百度</b><b class='flag-5'>飛</b><b class='flag-5'>槳</b>承辦的WAVE SUMMIT+2022深度學(xué)習(xí)開發(fā)者峰會即將開啟

    Imagination人工智能 IP 與完成 I 級兼容性測試 致力于AI產(chǎn)業(yè)化落地

    近日, Imagination 公司的人工智能 IP PowerVR NNA 系列與百度完成 I 級兼容性測試(基于 TVM )。測試結(jié)果顯示,雙方兼容性表現(xiàn)良好,整體運(yùn)行穩(wěn)定。 產(chǎn)品兼容 性
    的頭像 發(fā)表于 11-23 09:40 ?708次閱讀

    NGC 上玩轉(zhuǎn)新一代推理部署工具 FastDeploy,幾行代碼搞定 AI 部署

    行體驗 FastDeploy! 全場景高性能 AI 部署工具 FastDeploy 人工智能技術(shù)各行各業(yè)正加速應(yīng)用落地。為了向開發(fā)者提供產(chǎn)業(yè)實(shí)踐推理部署最優(yōu)解,
    的頭像 發(fā)表于 12-13 19:50 ?1186次閱讀

    圖為科技聯(lián)合百度、英偉達(dá)共同推出AI軟硬一體快速部署方案

    基于圖為科技邊緣計算機(jī)系列產(chǎn)品,僅用三行代碼就能搞定百度AI算法的部署;讓AI算法部署變得簡單便捷,幫助企業(yè)加速AI方案落地進(jìn)程。
    的頭像 發(fā)表于 12-20 11:01 ?1205次閱讀
    圖為科技聯(lián)合<b class='flag-5'>百度</b><b class='flag-5'>飛</b><b class='flag-5'>槳</b>、英偉達(dá)共同推出AI軟硬一體快速<b class='flag-5'>部署</b>方案

    YOLOv6LabVIEW推理部署源碼

    相關(guān)介紹文章,所以筆者實(shí)現(xiàn)YOLOv6 ONNX LabVIEW部署
    的頭像 發(fā)表于 11-06 16:07 ?100次閱讀
    YOLOv6<b class='flag-5'>在</b><b class='flag-5'>LabVIEW</b><b class='flag-5'>中</b>的<b class='flag-5'>推理</b><b class='flag-5'>部署</b>(<b class='flag-5'>含</b><b class='flag-5'>源碼</b>)

    Imagination+百度模型部署實(shí)戰(zhàn) Workshop 邀您參加

    盡管人工智能、深度學(xué)習(xí)等詞匯早已被大眾熟知,但在產(chǎn)業(yè)落地的過程仍面臨著不少挑戰(zhàn),例如硬件芯片多,算法模型多、應(yīng)用場景多,而Imagination與百度的合作則希望通過軟硬件協(xié)同,
    的頭像 發(fā)表于 09-23 14:23 ?721次閱讀
    Imagination+<b class='flag-5'>百度</b><b class='flag-5'>飛</b><b class='flag-5'>槳</b>模型<b class='flag-5'>部署</b>實(shí)戰(zhàn) Workshop 邀您參加

    【報名有獎】Imagination+百度模型部署實(shí)戰(zhàn) Workshop 邀您參加

    舉辦線上Workshop,現(xiàn)已開放注冊報名。在此次的Workshop,您將學(xué)習(xí)“端到端Imagination硬件上部署模型的工作流程
    的頭像 發(fā)表于 09-28 10:20 ?521次閱讀
    【報名有獎】Imagination+<b class='flag-5'>百度</b><b class='flag-5'>飛</b><b class='flag-5'>槳</b>模型<b class='flag-5'>部署</b>實(shí)戰(zhàn) Workshop 邀您參加

    Imagination人工智能 IP 與完成 I 級兼容性測試 致力于AI產(chǎn)業(yè)化落地

    近日,Imagination公司的人工智能IPPowerVRNNA系列與百度完成I級兼容性測試(基于TVM)。測試結(jié)果顯示,雙方兼容性表現(xiàn)良好,整體運(yùn)行穩(wěn)定。產(chǎn)品兼容性證明本次I級兼容性測試
    的頭像 發(fā)表于 11-24 17:23 ?438次閱讀
    Imagination人工智能 IP 與<b class='flag-5'>飛</b><b class='flag-5'>槳</b>完成 I 級兼容性測試 致力于AI產(chǎn)業(yè)化落地