最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【2023 · CANN訓(xùn)練營第一季】——根據(jù)ReadMe運(yùn)行第一個Sample例程

2023-03-26 02:12 作者:CallMeDaYao-2022  | 我要投稿

前言:

????????昇騰提供了以CANN AscendCL接口開發(fā)的樣例倉,方便開發(fā)者學(xué)習(xí)。樣例倉提供了C&C++、Python兩種語言的樣例。

????????每個樣例都有Readme,里面詳細(xì)描述了功能、準(zhǔn)備模型,準(zhǔn)備數(shù)據(jù),編譯、運(yùn)行的步驟。本筆記將根據(jù)Readme,完成resnet50_imagenet_classification工程的C++和Python兩個版本的推理應(yīng)用。

一、昇騰sample倉

?1、昇騰sample倉概述

????????CANN AscendCL(Ascend Computing Language)提供Device管理、Context管理、Stream管理、內(nèi)存管理、模型加載與執(zhí)行、算子加載與執(zhí)行、媒體數(shù)據(jù)處理等C語言API庫供用戶開發(fā)深度神經(jīng)網(wǎng)絡(luò)應(yīng)用,用于實(shí)現(xiàn)目標(biāo)識別、圖像分類等功能。用戶可以通過第三方框架調(diào)用AscendCL接口,以便使用昇騰AI處理器的計(jì)算能力;用戶還可以使用AscendCL封裝實(shí)現(xiàn)第三方lib庫,以便提供昇騰AI處理器的運(yùn)行管理、資源管理能力。

????????昇騰樣例倉就是以CANN AscendCL接口進(jìn)行開發(fā),制作的一系列給開發(fā)者進(jìn)行參考學(xué)習(xí)的樣例。這些樣例主要分成“單一功能接口樣例level1_single_api”和“推理教學(xué)樣例level2_simple_inference”,推理教學(xué)樣例又包含了:數(shù)據(jù)處理樣例、分類樣例、檢測樣例、自然語言處理樣例等,基本上囊括了AI的主要方向的推理應(yīng)用。這些例程提供了C++和Python兩種實(shí)現(xiàn),目錄如下:

2、sample倉的學(xué)習(xí)方法

????????了解了sample倉的目錄結(jié)構(gòu)后,我們就可以逐級找到自己感興趣的例程進(jìn)行學(xué)習(xí),上手跑一下例程。

????????進(jìn)入一個具體的工程,首先要看的是Readme,這里面介紹了:工程的功能、工程的目錄結(jié)構(gòu)、獲取模型和待推理的圖片、編譯和運(yùn)行的步驟、關(guān)鍵的功能介紹。我們按照Readme的步驟,一步一步做下去就可以了。

????????以resnet50_imagenet_classification的C++版為例,目錄結(jié)構(gòu)如下:

?????? ?RESNET50是一個?“圖片分類應(yīng)用”的模型,用來標(biāo)識圖片所屬的分類,流程如下:

二、運(yùn)行Resnet50圖片分類樣例——C++版

工程路徑:samples/cplusplus/level2_simple_inference/1_classification/resnet50_imagenet_classification。

????????用Visual Studio code打開工程的Readme文件,如下圖所示,按Readme里的說明一步一步即可完成第一個用例。用Mobaxtem連接到ECS上,由于sample倉已經(jīng)下載,我們直接從第三步“準(zhǔn)備模型”開始。

1、準(zhǔn)備模型

????(1)步驟一:在工程路徑下創(chuàng)建?caffe_model目錄,并進(jìn)入caffe_model目錄。caffe_model是用來存放resnet50的原始caffe模型的。mkdir?caffe_model && cd?caffe_model

? ?(2)?步驟二:下載原始網(wǎng)絡(luò)的模型文件(*.prototxt)、權(quán)重文件(*.caffemodel),根據(jù)Readme中的文件路徑,使用wget獲取對應(yīng)文件。

wget?https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/resnet50/resnet50.prototxt

?wget https://obs-9be7.obs.cn-east-2.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/resnet50/resnet50.caffemodel

? ? (3)步驟三:在工程目錄下,創(chuàng)建model目錄,用來存放轉(zhuǎn)換后om格式的離線模型。先執(zhí)行cd ..,退回到工程目錄,再mkdir model創(chuàng)建model目錄(因?yàn)榇a指定om模型路徑是工程目錄下的model目錄??截恟eadme中模型轉(zhuǎn)換命令到mobaXterm中執(zhí)行。

atc --model=caffe_model/resnet50.prototxt --weight=caffe_model/resnet50.caffemodel --framework=0 --output=model/resnet50 --soc_version=Ascend310 --input_format=NCHW --input_fp16_nodes=data --output_type=FP32 --out_nodes=prob:0

操作截圖:

2、準(zhǔn)備測試圖片

????(1)下載圖片

????????進(jìn)入data目錄,用wget命令下載待推理圖片2張。

? ? (2)轉(zhuǎn)換圖片

????????切換到“樣例目錄/data“目錄下,執(zhí)行transferPic.py腳本,將*.jpg轉(zhuǎn)換為*.bin,同時將圖片從1024*683的分辨率縮放為224*224。在“樣例目錄/data“目錄下生成2個*.bin文件。

????????python3 ../script/transferPic.py

????????執(zhí)行腳本報錯“ModuleNotFoundError: No module named 'PIL'”,則表示缺少Pillow庫,使用**pip3 install Pillow --user**命令安裝Pillow庫。

3、編譯

????????根據(jù)Readme,大致過程是:配置環(huán)境變量,用cmake工具生成Makefile,編譯程序。

4、運(yùn)行

????(1)運(yùn)行過程

????(2)運(yùn)行結(jié)果:

三、運(yùn)行Resnet50圖片分類樣例——python版

? ? ? ? 工程路徑:

/samples/python/level2_simple_inference/1_classification/resnet50_imagenet_classification

????????準(zhǔn)備模型和圖片的過程與C++版本一致,不再重復(fù)。推理結(jié)果與C++版本一致。


【2023 · CANN訓(xùn)練營第一季】——根據(jù)ReadMe運(yùn)行第一個Sample例程的評論 (共 條)

分享到微博請遵守國家法律
凤翔县| 遂川县| 沈阳市| 全南县| 霍山县| 加查县| 菏泽市| 交城县| 西安市| 沂水县| 杭锦后旗| 英吉沙县| 错那县| 承德县| 华坪县| 瓦房店市| 通江县| 沭阳县| 阜新| 四子王旗| 丹东市| 乐安县| 抚顺市| 文安县| 太康县| 黄骅市| 阜阳市| 长岛县| 新巴尔虎左旗| 方城县| 阜康市| 班戈县| 克山县| 依安县| 刚察县| 甘肃省| 镇坪县| 盈江县| 浏阳市| 那坡县| 开阳县|