在线不卡日本ⅴ一区v二区_精品一区二区中文字幕_天堂v在线视频_亚洲五月天婷婷中文网站

  • <menu id="lky3g"></menu>
  • <style id="lky3g"></style>
    <pre id="lky3g"><tt id="lky3g"></tt></pre>

    使用MindStudio進行OSNet模型的onnx推理

    使用MindStudio進行OSNet模型的onnx推理

    本次實驗在Mindstudio上開展,本實驗對應(yīng)的 CANN 版本為 5.0.3,請先按照官網(wǎng)教程,配置好 Mindstudio 與其所需依賴。本文使用Mindstudio中的ATC工具,對OSNet的pytorch模型轉(zhuǎn)換成適配昇騰AI處理器的離線模型,并進行精度分析。Mindstudio是一款華為旗下的含算子、模型、開發(fā)一體的工具,內(nèi)部集成了眾多開發(fā)與推理功能模塊,可以使我們更方便的進行開發(fā)推理等工作。

    一、概述

    參考論文:[OSNet 論文](https://arxiv.org/abs/1905.00953) 作為一個實例級的識別問題,行人再識別(ReID)依賴于具有識別能力的特征,它 不僅能捕獲不同的空間尺度,還能封裝多個尺度的任意組合。這些同構(gòu)和異構(gòu)尺度的 特征為全尺度特征。本文設(shè)計了一種新穎的深度 CNN,稱為全尺度網(wǎng)絡(luò)(OSNet),用于 ReID 的全尺度特征學(xué)習(xí)。這是通過設(shè)計一個由多個卷積特征流組成的殘差塊來實現(xiàn)的, 每個殘差塊檢測一定尺度的特征。重要的是,引入了一種新的統(tǒng)一聚合門用輸入依賴 的每個通道權(quán)重進行動態(tài)多尺度特征融合。為了有效地學(xué)習(xí)空間通道相關(guān)性,避免過 擬合,構(gòu)建塊同時使用點卷積和深度卷積。通過逐層疊加這些塊,OSNet 非常輕量,可 以在現(xiàn)有的 ReID 基準上從零開始訓(xùn)練。盡管 OSNet 模型很小,但其在 6 個 Reid 數(shù)據(jù) 集上到達了 SOTA 結(jié)果。

    二、推理環(huán)境準備

    1、配置conda環(huán)境、安裝依賴包

    依賴名稱

    版本

    ONNX

    1.7.0

    torch

    1.8.1

    TorchVision

    0.9.1

    numpy

    1.18.5

    Pillow

    7.2.0

    Opencv-python

    4.2.0.34

    protobuf

    3.13.0

    onnx-simplifiler

    0.3.6

    isort

    4.3.21

    三、執(zhí)行推理

    注:本實驗的腳本來源:https://www.hiascend.com/zh/software/modelzoo/detail/1/43a754e306c6461d86dafced5046121f

    用戶可以下載獲取。

    3.1創(chuàng)建工程

    點擊File->New->Project:

    進入以下界面:

    Name為自己的項目名稱,CANN Version為本機Mindstudio所對應(yīng)的CANN版本,Project Location為項目地址,讀者根據(jù)自己實際情況進行填寫。

    選擇Pytorch Project,點擊Finish完成項目創(chuàng)建。

    3.2從開源代碼倉獲取OSNet源碼:

    在終端輸入代碼:

    git clone https://github.com/KaiyangZhou/deep-person-reid.git

    獲取源碼,并cd進入文件夾

    cd deep-person-reid/

    安裝源碼所需依賴:

    pip install -r requirements.txt

    運行setup腳本下載torchreid:

    python3.7 setup.py develop

    3.3數(shù)據(jù)預(yù)處理

    從網(wǎng)上下載數(shù)據(jù)集壓縮包,本文提供百度網(wǎng)盤下載地址:

    [Market1501數(shù)據(jù)集(百度網(wǎng)盤下載,提取碼:me3q)](https://pan.baidu.com/s/1Nl8tMEvq-MwNGd1pG4_6bg)

    本步驟是為了把輸入格式從圖片形式轉(zhuǎn)為二進制info文件,用于om模型的輸入。

    把數(shù)據(jù)集解壓到deep-person-reid文件夾里,隨后運行腳本:market1501_torch_preprocess.py,主要過程解釋如下:

    對bounding_box_test測試集與query數(shù)據(jù)集進行處理,把原始輸入的圖片的JPG格式,輸出為二進制文件格式—bin文件。

    選中所執(zhí)行腳本,點擊鼠標右鍵,進入Modify Run configuration

    對bounding_box_test測試集處理

    對query數(shù)據(jù)集處理

    運行框內(nèi)主要參數(shù)解釋:

    參數(shù)名稱

    解釋

    Script path

    從文件夾中選中需要執(zhí)行的腳本文件

    Parameters

    腳本運行所需參數(shù),本例中分別為bounding_box_test文件夾相對路徑,bin文件存放文件夾gallery_prep_dataset相對路徑;對query數(shù)據(jù)集處理時的參數(shù)為query文件夾的相對路徑和bin文件存放的文件夾query_pre_data的相對路徑

    Python interpreter

    運行腳本所使用的Python解釋器

    運行成功后:

    運行結(jié)果顯示

    接下來執(zhí)行生成數(shù)據(jù)集信息腳本,生成數(shù)據(jù)集信息文件。即分別一步所生成的gallery_prep_dataset文件夾與query_prep_dataset的bin文件轉(zhuǎn)換為數(shù)據(jù)集信息文件。

    對gallery_prep_dataset文件夾處理

    對query_prep_dataset文件夾處理

    Parameters里的參數(shù)為:第一個參數(shù)為模型輸入的類型,第二個參數(shù)為生成的bin文件路徑,第三個為輸出的info文件,第四、第五個為寬高信息。腳本運行結(jié)果生成info文件。

    3.4模型轉(zhuǎn)換

    本文模型需要做兩步轉(zhuǎn)換,即先有path->onnx,再有onnx->om

    3.4.1由path轉(zhuǎn)換onnx

    本文提供兩種方式下載訓(xùn)練好的權(quán)重文件如下:

    [OSNet訓(xùn)練pth權(quán)重文件(google下載)](https://drive.google.com/file/d/1vduhq5DpN2q1g4fYEZfPI17MJeh9qyrA/view?usp=sharing)

    [OSNet訓(xùn)練pth權(quán)重文件(百度網(wǎng)盤下載,提取碼:gcfe)](https://pan.baidu.com/s/1Xkwa9TCZss_ygkC8obsEMg)

    此步由pytorch完成轉(zhuǎn)換,執(zhí)行轉(zhuǎn)換腳本:pth2onnx.py

    Paremeters內(nèi)填入?yún)?shù)分別為參數(shù)文件名與生成的onnx模型文件名:

    osnet_x1_0_market_256x128_amsgrad_ep150_stp60_lr0.0015_b64_fb10_softmax_labelsmooth_flip.pth osnet_x1_0.onnx

    得到onnx模型文件后,在終端輸入:

    python3.7 -m onnxsim osnet_x1_0.onnx osnet_x1_0_bs1_sim.onnx –input-shape 1,3,256,128

    利用之前安裝的依賴onnx-simplify對onnx模型進行簡化,生成batch_size=1的靜態(tài)模型:onnxsim osnet_x1_0.onnx。

    3.4.2onnx轉(zhuǎn)換om

    此步轉(zhuǎn)換使用Mindstudio提供的ATC轉(zhuǎn)換工具,ATC工具功能架構(gòu)如下圖所示:

    用戶可以將開源框架網(wǎng)絡(luò)模型如本文的OSNet模型,通過ATC工具轉(zhuǎn)換為適配昇騰AI處理器的離線模型也可以將開源框架網(wǎng)絡(luò)模型轉(zhuǎn)換后的離線模型轉(zhuǎn)成json文件,方便文件查看。

    點擊導(dǎo)欄行的Ascend->Model Converter;或者點擊Mindstudio的功能欄:

    進入以下界面:

    在Model File中選中需要轉(zhuǎn)換的onnx模型,Model Name為模型名稱,Target SoC Version為需要轉(zhuǎn)換成適配的芯片類型,image為輸入圖片的batch_size。點擊圖中紅框的圖標,可以生成可視化模型流程框架:

    用戶可以在此了解每層的結(jié)構(gòu)與參數(shù)。

    點擊ok,next,即可進行模型轉(zhuǎn)換:

    點擊Finish完成模型轉(zhuǎn)換,紅框里分別是om模型存放的服務(wù)器地址與本地地址。

    3.5執(zhí)行離線推理

    推理benchmark工具用來針對指定的推理模型運行推理程序,并能夠測試推理模型的性能(包括吞吐率、時延)和精度指標。benchmark的安裝包可以通過benchmark工具用戶指南獲取。benchmark工具有兩個使用場景,分別是:

    純推理場景

    該場景僅用來測試推理模型的性能指標,即模型執(zhí)行的平均時間和平均吞吐率。

    該場景無需準備推理數(shù)據(jù)及數(shù)據(jù)集文件,只需要準備經(jīng)過ATC轉(zhuǎn)換后的模型文件即可推理。

    推理場景

    該場景除了測試性能指標之外,還可以測試模型的精度指標。

    該場景需要準備經(jīng)過預(yù)處理的推理數(shù)據(jù)及數(shù)據(jù)集文件和經(jīng)過ATC轉(zhuǎn)換后的模型文件才能推理

    本文所使用的場景是推理場景,即利用上文所處理的info數(shù)據(jù)以及轉(zhuǎn)換的om模型進行推理:

    在終端輸入命令:

    a. 設(shè)置環(huán)境變量:

    source /usr/local/Ascend/ascend-toolkit/set_env.sh

    b. 增加benchmark.{arch}可執(zhí)行權(quán)限:

    chmod u+x benchmark.x86_64

    c. 執(zhí)行離線推理:

    #對query_prep_bin.info進行處理

    ./benchmark.x86_64 -model_type=vision -device_id=0 -batch_size=1 -om_path=osnet_x1_0_bs1.om -input_text_path=./query_prep_bin.info -input_width=128 -input_height=256 -output_binary=False -useDvpp=False

    主要參數(shù)解釋如下:

    • -model:為ONNX模型文件。
    • -framework:5代表ONNX模型。
    • -output:輸出的OM模型。
    • -input_format:輸入數(shù)據(jù)的格式。
    • -input_shape:輸入數(shù)據(jù)的shape。
    • -log:日志級別。
    • -soc_version:處理器型號。

    執(zhí)行成功后:

    3.6精度驗證

    執(zhí)行osnet_metrics_market1501_bs1.py腳本:

    Parameters參數(shù)填入:result/dumpOutput_device0/ result/dumpOutput_device1/ ./ result_bs1.json,運行腳本執(zhí)行精度驗證,結(jié)果如下所示:

    OSNet開源代碼倉精度(https://kaiyangzhou.github.io/deep-person-reid/MODEL_ZOO)

    osnet_x1_0 R1=94.2%,mAP=82.6%

    本次實驗所得代碼精度:R1=94.3,mAP=82.5

    R1比代碼倉結(jié)果略高,mAP下降在1%范圍之內(nèi),故精度達標。

    F&Q

    1. 在數(shù)據(jù)預(yù)處理時,執(zhí)行market1501_torch_preprocess.py腳本時會出現(xiàn)如下錯誤:

    原因是把腳本文件置于數(shù)據(jù)集文件夾中,把腳本文件轉(zhuǎn)移到deep-person-reid文件夾下即可。

    2. 在執(zhí)行精度驗證腳本osnet_x1_0_metrics_market1501.py時會出現(xiàn)如下錯誤

    原因是沒有進行環(huán)境變量的配置,在終端輸入代碼:

    source env.sh

    即可。

    在項目上有其它問題的也可以登錄昇騰論壇,在帖子里提出自己關(guān)于項目或者Mindstudio的疑文(https://www.huaweicloud.com/s/JU1pbmRTdHVkaW_mkK3lu7ol/t_60_p_1),會有華為內(nèi)部技術(shù)人員對其進行解答,幫助你更好使用MindStudio。

    鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權(quán)歸原作者所有,如有侵權(quán)請聯(lián)系管理員(admin#wlmqw.com)刪除。
    用戶投稿
    上一篇 2022年7月3日 22:03
    下一篇 2022年7月3日 22:04

    相關(guān)推薦

    • 分享4條發(fā)微商朋友圈的方法(微商朋友圈應(yīng)該怎么發(fā))

      對于微商朋友來說,朋友圈的重要性不言而喻了。 那么微商的朋友圈到底該怎么發(fā)呢? 為什么同樣是經(jīng)營一個朋友圈,有的微商看起來逼格滿滿,實際效果也不錯;而有的卻動都不動就被屏蔽甚至拉黑…

      2022年11月27日
    • 存儲過程語法(sql server存儲過程語法)

      今天小編給各位分享存儲過程語法的知識,其中也會對sql server存儲過程語法進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧! oracle存儲過程基本語法…

      2022年11月26日
    • 什么是推廣cpa一篇文章帶你看懂CPA推廣渠道

      CPA渠道 CPA指的是按照指定的行為結(jié)算,可以是搜索,可以是注冊,可以是激活,可以是搜索下載激活,可以是綁卡,實名認證,可以是付費,可以是瀏覽等等。甲乙雙方可以根據(jù)自己的情況來定…

      2022年11月25日
    • 直播帶貨詳細腳本(直播文案策劃怎么寫)

      短視頻運營策劃方案怎么寫?涉及哪幾個方面? 我在網(wǎng)上看到好多千篇一律的文章,關(guān)于【短視頻運營策劃方案】這一塊,基本都是在講賬號的內(nèi)容本身。 你內(nèi)容做得再好,卻不掌握算法的規(guī)律,能有…

      2022年11月25日
    • 抖音直播帶貨有哪些方法技巧(抖音直播帶貨有哪些痛點)

      如今抖音這個短視頻的變現(xiàn)能力越來越突顯了,尤其是在平臺上開通直播,更具有超強的帶貨屬性,已經(jīng)有越來越多的普通人加入到其中了。不過直播帶貨雖然很火,但是也不是每個人都能做好的,那么在…

      2022年11月24日
    • 科比19歲女兒遭自稱與她生“科比式孩子”男子跟蹤騷擾

      極目新聞記者王亮亮黃佳琪 據(jù)??怂剐侣劸W(wǎng)報道,當?shù)貢r間11月21日,已故籃球巨星科比·布萊恩特的長女娜塔莉亞·布萊恩特21日向法院提交臨時限制令,聲稱這位32歲的前科從十幾歲起就騷…

      2022年11月24日
    • 銳龍97900x參數(shù)規(guī)格跑分評測 銳龍97900x屬于什么檔次

      銳龍9 7900X是銳龍7000系列處理器中性能頂尖的型號之一,它采用了這一代標配的zen4架構(gòu)和5nm制程工藝,那么它具體的參數(shù)跑分如何,在電腦上世紀發(fā)揮怎么樣呢,下面就來看看銳…

      2022年11月24日
    • 免費清理c盤的軟件(清理c盤空間不影響系統(tǒng))

      電腦用久了慢如龜速,還卡頓,這最大的原因啊就是C盤空間不足造成的。 即使電腦配置再好,或者硬盤再快,如果長時間沒有打掃C盤,打開文件或者穩(wěn)定之類的,都卡得讓人頭大。 這時候呢不要去…

      2022年11月24日
    • 明查|美國新冠后遺癥患者中有16%癥狀嚴重以致無法工作?

      點擊進入澎湃新聞全球事實核查平臺 速覽 – 網(wǎng)傳數(shù)據(jù)比例無權(quán)威信源佐證,該比例有可能是結(jié)合了美國疾病防控中心和布魯金斯學(xué)會的數(shù)據(jù)得出,但這兩個機構(gòu)的調(diào)研目的和樣本都不同…

      2022年11月24日
    • pdf虛擬打印機(添加pdf虛擬打印機)

      本文主要講的是pdf虛擬打印機,以及和添加pdf虛擬打印機相關(guān)的知識,如果覺得本文對您有所幫助,不要忘了將本文分享給朋友。 pdf虛擬打印機具體是什么功能? 電腦虛擬打印機的功能有…

      2022年11月24日

    聯(lián)系我們

    聯(lián)系郵箱:admin#wlmqw.com
    工作時間:周一至周五,10:30-18:30,節(jié)假日休息