【CANN訓練營第三季】基於Caffe ResNet-50網路實現圖片分類
【 CANN訓練營第三季】基於Caffe ResNet-50網路實現圖片分類
一、雲伺服器的使用
為了更好的讓我們能夠了解並學習昇騰的相關知識,華為 CANN訓練營第三季給予了一定的雲伺服器資源,申請映象: https://devcloud.huaweicloud.com/expertmobile/qtn?id=37c0f1996ab744d0aecfc3209c843d95
申請代金券:
關於雲伺服器的使用簡單總結如下:
找到共享映象如下步驟:
申請
ESC彈性雲伺服器->獲取彈性公網IP->運用SSH遠端訪問雲伺服器->正常按照ubuntu系統的終端命令來操作使用伺服器
資源連結:
遠端終端軟體推薦
Xshell
:
進入終端後為 root使用者,需要進入HwHiAiUser使用者
指令:
cd / home /
su - HwHiAiUser
可以使用 ls 或者 ll 指令隨意瀏覽系統中已有的檔案情況。
$ ls -al
二、基於 Caffe ResNet-50網路實現圖片分類
準備工作完成,
開始
正式實驗!可以按照倉庫裡的
readme檔案所述步驟一步步操作,此處也僅僅簡單給出實驗的步驟和實驗圖。
倉庫資源連結:
https://gitee.com/ascend/samples/tree/master/cplusplus/level2_simple_inference/1_classification/resnet50_imagenet_classification
1、下載樣例程式碼
克隆 sample倉裡的程式碼
git clone https :// gitee . com / ascend / samples . git
進入到
resnet50_imagenet_classification樣例的資料夾中
c d samples / cplusplus / level2_simple_inference / 1 _classification / resnet50_imagenet_classification
2、獲取ResNet-50預訓練模型
先建立一個用來儲存該模型的資料夾 caffe_model, 進入 資料夾
mkdir caffe_model
cd caffe_model
從網頁直接透過命令下載預訓練模型:權重檔案( resnet50.caffemodel)和模型檔案(resnet50.prototxt)
$ wget https://modelzoo-train-atc.obs.cn-north-4.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/resnet50/resnet50.prototxt
$ wget https://modelzoo-train-atc.obs.cn-north-4.myhuaweicloud.com/003_Atc_Models/AE/ATC%20Model/resnet50/resnet50.caffemodel
3、模型轉換
上述下載的預訓練模型需要首先運用
ATC模型轉換工具將該模型轉換成昇騰AI處理器支援的離線模型(.om)
流程:
首先先切換到樣例目錄下(接著上面的操作就是上一級目錄)
cd .. /
然後執行模型轉換工具 atc ( atc 命令找不到解決辦法: )
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
成功
開啟
model資料夾可以看到resnet50.om已經轉換完成了
ls -al model/
4、下載測試圖片
進入 data資料夾,並下載兩張ImageNet資料集中存在類別的圖片
cd . / data /
wget https :// c7xcode . obs . cn - north - 4. myhuaweicloud . com / models / aclsample / dog1_1024_683 . jpg
wget https :// c7xcode . obs . cn - north - 4. myhuaweicloud . com / models / aclsample / dog2_1024_683 . jpg
5、圖片格式轉換
下載的圖片是
JPEG格式的,需要轉換成適合模型輸入要求格式的二進位制檔案(.bin)
在
data目錄下,執行transferPic.py指令碼,將*.jpg轉換為*.bin,同時將圖片從1024 * 683的解析度縮放為224 * 224。
如果執行指令碼報錯 “ModuleNotFoundError: No module named 'PIL'”,則表示缺少Pillow庫,請使用 pip3 install Pillow --user 命令安裝Pillow庫。
python3 .. / script / transferPic . py
6、編譯執行
進入 “cplusplus/level2_simple_inference/1_classification/resnet50_imagenet_classification”樣例目錄
cd .. /
設定臨時的環境變數,配置程式編譯依賴的標頭檔案與庫檔案路徑
export DDK_PATH = $ HOME / Ascend / ascend - toolkit / latest
export NPU_HOST_LIB = $ DDK_PATH / acllib / lib64 / stub
建立
build資料夾,準備編譯程式碼檔案
mkdir - p build / intermediates / host
進入
build資料夾,編譯.cpp檔案
cd build / intermediates / host
cmake .. / .. / .. / src - DCMAKE_CXX_COMPILER = g ++ - DCMAKE_SKIP_RPATH = TRUE
make
可以在樣例目錄(
cplusplus/level2_simple_inference/1_classification/resnet50_imagenet_classification)下的out資料夾中找到編譯好的可執行main檔案,接下來我們直接執行main檔案
cd .. / .. / .. / out /
. / main
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70025312/viewspace-2928662/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- CANN訓練營第三季_基於昇騰PyTorch框架的模型訓練調優_讀書筆記PyTorch框架模型筆記
- 原始碼分析——遷移學習Inception V3網路重訓練實現圖片分類原始碼遷移學習
- 【機器學習PAI實踐十】深度學習Caffe框架實現影象分類的模型訓練機器學習AI深度學習框架模型
- 1.CNN圖片單標籤分類(基於TensorFlow實現基礎VGG16網路)CNN
- (13)caffe總結之訓練和測試自己的圖片
- 【CANN訓練營第三季】昇騰AI入門課知識點整理和彙總AI
- NSURLConnection類實現下載網路圖片
- 【CANN訓練營第三季】進階班AI目標屬性編輯應用-筆記AI筆記
- 用神經網路訓練一個文字分類器神經網路文字分類
- Caffe 訓練mnist資料
- 看照片挑民宿:Airbnb如何重新訓練ResNet50,實現房間圖片分類最佳化AI
- 基於Pytorch實現貓狗分類PyTorch
- Caffe訓練模型時core dump模型
- caffe for windows 訓練cifar10Windows
- Caffe學習記錄:Cifar-10 自定義網路訓練記錄
- 程式碼隨想錄演算法訓練營第52天 | 圖論基礎1演算法圖論
- 圖卷積神經網路分類的pytorch實現卷積神經網路PyTorch
- 基於React Hook實現圖片的裁剪ReactHook
- 學習SVM(一) SVM模型訓練與分類的OpenCV實現模型OpenCV
- TF2.keras 實現基於卷積神經網路的影象分類模型TF2Keras卷積神經網路模型
- TF2.keras 實現基於卷積神經網路的影像分類模型TF2Keras卷積神經網路模型
- 2.CNN圖片多標籤分類(基於TensorFlow實現驗證碼識別OCR)CNN
- 網店分類圖片生成軟體
- 【嚴肅臉】使用caffe實現色情圖片的識別
- 神經網路實現鳶尾花分類神經網路
- 基於PaddlePaddle的圖片分類實戰 | 深度學習基礎任務教程系列深度學習
- TF2.keras 實現基於深度可分離卷積網路的影象分類模型TF2Keras卷積模型
- TF2.keras 實現基於深度可分離卷積網路的影像分類模型TF2Keras卷積模型
- 人工智慧的預訓練基礎模型的分類人工智慧模型
- 手把手教你基於華為雲,實現MindSpore模型訓練模型
- 【python實現卷積神經網路】開始訓練Python卷積神經網路
- Android 載入網路圖片 以及實現圓角圖片效果Android
- AI打遊戲-貳(收集訓練圖片)AI遊戲
- 基於canvas實現波浪式繪製圖片Canvas
- ACM訓練方案-POJ題目分類ACM
- matlab練習程式(神經網路分類)Matlab神經網路
- 零基礎入門深度學習(一):用numpy實現神經網路訓練深度學習神經網路
- 基於html2canvas實現網頁儲存為圖片及圖片清晰度優化HTMLCanvas網頁優化