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

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

    使用MindStudio進(jìn)行OSNet模型的onnx推理

    使用MindStudio進(jìn)行OSNet模型的onnx推理

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

    一、概述

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

    二、推理環(huán)境準(zhǔ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í)行推理

    注:本實(shí)驗(yàn)的腳本來(lái)源:https://www.hiascend.com/zh/software/modelzoo/detail/1/43a754e306c6461d86dafced5046121f

    用戶可以下載獲取。

    3.1創(chuàng)建工程

    點(diǎn)擊File->New->Project:

    進(jìn)入以下界面:

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

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

    3.2從開(kāi)源代碼倉(cāng)獲取OSNet源碼:

    在終端輸入代碼:

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

    獲取源碼,并cd進(jìn)入文件夾

    cd deep-person-reid/

    安裝源碼所需依賴:

    pip install -r requirements.txt

    運(yùn)行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)為二進(jìn)制info文件,用于om模型的輸入。

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

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

    選中所執(zhí)行腳本,點(diǎn)擊鼠標(biāo)右鍵,進(jìn)入Modify Run configuration

    對(duì)bounding_box_test測(cè)試集處理

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

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

    參數(shù)名稱

    解釋

    Script path

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

    Parameters

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

    Python interpreter

    運(yùn)行腳本所使用的Python解釋器

    運(yùn)行成功后:

    運(yùn)行結(jié)果顯示

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

    對(duì)gallery_prep_dataset文件夾處理

    對(duì)query_prep_dataset文件夾處理

    Parameters里的參數(shù)為:第一個(gè)參數(shù)為模型輸入的類型,第二個(gè)參數(shù)為生成的bin文件路徑,第三個(gè)為輸出的info文件,第四、第五個(gè)為寬高信息。腳本運(yùn)行結(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對(duì)onnx模型進(jìn)行簡(jiǎn)化,生成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)如下圖所示:

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

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

    進(jìn)入以下界面:

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

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

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

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

    3.5執(zhí)行離線推理

    推理benchmark工具用來(lái)針對(duì)指定的推理模型運(yùn)行推理程序,并能夠測(cè)試推理模型的性能(包括吞吐率、時(shí)延)和精度指標(biāo)。benchmark的安裝包可以通過(guò)benchmark工具用戶指南獲取。benchmark工具有兩個(gè)使用場(chǎng)景,分別是:

    純推理場(chǎng)景

    該場(chǎng)景僅用來(lái)測(cè)試推理模型的性能指標(biāo),即模型執(zhí)行的平均時(shí)間和平均吞吐率。

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

    推理場(chǎng)景

    該場(chǎng)景除了測(cè)試性能指標(biāo)之外,還可以測(cè)試模型的精度指標(biāo)。

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

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

    在終端輸入命令:

    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í)行離線推理:

    #對(duì)query_prep_bin.info進(jìn)行處理

    ./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:日志級(jí)別。
    • -soc_version:處理器型號(hào)。

    執(zhí)行成功后:

    3.6精度驗(yàn)證

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

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

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

    osnet_x1_0 R1=94.2%,mAP=82.6%

    本次實(shí)驗(yàn)所得代碼精度:R1=94.3,mAP=82.5

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

    F&Q

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

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

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

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

    source env.sh

    即可。

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

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

    相關(guān)推薦

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

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

      2022年11月27日
    • 存儲(chǔ)過(guò)程語(yǔ)法(sql server存儲(chǔ)過(guò)程語(yǔ)法)

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

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

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

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

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

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

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

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

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

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

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

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

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

      2022年11月24日
    • 明查|美國(guó)新冠后遺癥患者中有16%癥狀嚴(yán)重以致無(wú)法工作?

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

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

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

      2022年11月24日

    聯(lián)系我們

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