海思hi3516dv300芯片AI圖像模塊學(xué)習(xí)(六)Caffe模型量化
據(jù)說Caffe模型轉(zhuǎn)wk模型的精度損失最小,所以不管什么模型都要先轉(zhuǎn)Caffe在導(dǎo)wk。而darknet框架據(jù)說與Caffe框架是最相似的,兩者轉(zhuǎn)化需要替換的層較少,所以官方推薦了darknet的yolov3轉(zhuǎn)caffe。但是darknet框架使用的人較少,對(duì)yolo高版本的更新較慢。
hisi通過NNIE對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行硬件加速,要調(diào)用NNIE需要將網(wǎng)絡(luò)模型轉(zhuǎn)化成在Hi3516芯片上可以運(yùn)行的wk文件。海思官方通過nnie_mapper工具進(jìn)行轉(zhuǎn)換。這個(gè)工具被集成到Windows版的IDE工具RuyiStudio上。但是就像darknet到Caffe時(shí)需要替換或增加部分層一樣,由于NNIE的限制Caffe模型中的部分層也不能在NNIE中調(diào)用,需要提前對(duì)caffee模型中的.prototxt文件提前修改。
1.RuyiStudio 安裝
1.1 編譯鏈MinGW-W64 安裝

參考:https://blog.csdn.net/xm961217/article/details/105637100
下載wget安裝包,根據(jù)猜測(cè),wget 是用于快捷搭建環(huán)境的一個(gè)小工具。然后,將剛剛安裝的目錄下的 wget.exe 所在的目錄添加到環(huán)境變量中,也就是 我的電腦右鍵 -> 屬性 -> 高級(jí)系統(tǒng)設(shè)置 -> 環(huán)境變量

運(yùn)行點(diǎn)擊ruyi_env_setup文件夾(這個(gè)文件夾不能在wget里面)下的setup_mingw.bat



setup_mingw.bat自動(dòng)編譯成功。
1.2?Python3.5+caffe?環(huán)境配置


點(diǎn)擊setup_python.bat進(jìn)行安裝,
報(bào)錯(cuò)
Failed to extract wheel-0.29.0-py35_0.tar.bz2, please check from the requirements.txt, download and extract manually?
Failed to extract zlib-1.2.11-vc14_0.tar.bz2, please check from the requirements.txt, download and extract manually;?
Failed at installing opencv_python-3.4.2.16-cp35-cp35m-win_amd64.whl, please install it by "pip install opencv_python-3.4.2.16-cp35-cp35m-win_amd64.whl" command under python35 directory;?
Failed at installing protobuf-3.6.1-cp35-cp35m-win_amd64.whl, please install it by "pip install protobuf-3.6.1-cp35-cp35m-win_amd64.whl" command under python35 directory;?
Failed at installing PyYAML-3.13-cp35-cp35m-win_amd64.whl, please install it by "pip install PyYAML-3.13-cp35-cp35m-win_amd64.whl" command under python35 directory;?
Failed at installing Cython-0.28.5-cp35-cp35m-win_amd64.whl, please install it by "pip install Cython-0.28.5-cp35-cp35m-win_amd64.whl" command under python35 directory;?
Failed at extracting, please check "D:\RuyiStudioSetup\ruyi_env_setup-2.0.41\setup.log".?
pip報(bào)錯(cuò):
pip install opencv_python-3.4.2.16-cp35-cp35m-win_amd64.whl
python -m pip install --upgrade pip -i https://pypi.douban.com/simple
用國(guó)內(nèi)鏡像更新pip ,解決。
再點(diǎn)擊setup_python.bat進(jìn)行安裝,
繼續(xù)報(bào)錯(cuò)
Start setup_extract.bat?
Failed to extract zlib-1.2.11-vc14_0.tar.bz2, please check from the requirements.txt, download and extract manually;?
Failed at extracting, please check "D:\RuyiStudioSetup\ruyi_env_setup-2.0.41\setup.log".?
End setup_extract.bat.??
zlib沒有裝上,手動(dòng)裝一下


https://anaconda.org/conda-forge/zlib/1.2.11/download/win-64/zlib-1.2.11-vc14_0.tar.bz2
在requirelist里面找到鏈接,下載之后放到python35里面,再解壓一下,搞定。
重啟電腦。
1.3?RuyiStudio啟動(dòng)


RuyiStudio可以用了。
2.Caffe模型量化轉(zhuǎn).wk
先在Ruyistudio中創(chuàng)建工程


打開cfg文件的mapper配置界面

導(dǎo)入caffe模型的prototxt和model文件:

點(diǎn)擊Mark,打開yolov3的prototxt文件的可視化網(wǎng)絡(luò)。prototxt中沒有需要提前刪掉的不支持層


制作imagin.list,路徑里不要有中文

不需要mean文件,全填好后運(yùn)行生成wk文件

自己的參數(shù),選256,多幀視頻檢測(cè)


結(jié)果

選擇inst.wk部署到板端驗(yàn)證

有效果。