caffe 轉caffe2模型出現的問題
阿新 • • 發佈:2019-01-03
剛開始接觸caffe,用Nvidia TX2跑了SSD模型,達到8~9幀。
把caffe模型轉caffe2模型時,轉到reshape層時出現錯誤ValueError: Unknown argument type: key=values value=[..........
發現是protobuffer 版本問題,參考https://github.com/caffe2/caffe2/issues/482
原來裝的是2.6.1,升級到3.3.0即可。但按照原文采用pip upgrade安裝完,protoc --version 依然為2.6.1
解決方法如下:
1.下載protobuf 原始碼
wget
https://github.com/google/protobuf/releases/protobuf-python-3.3.0.tar.gz
2.解壓,編譯,安裝
tar
zxvf protobuf-python-3.3.0.tar.gz
cd
protobuf-python-3.3.0.tar.gz
./configure
make
sudo make install
當然,如果之前protobuf 版本未解除安裝,這時輸入protoc version 依然為2.6.1。
這時需要把新安裝的版本protoc拷貝過去,覆蓋原來檔案。
之後,重新編譯caffe2,轉換模型,出現新問題:
TypeError: __init__() got an unexpected keyword argument 'syntax'
原因是protoc和python-protobuf版本不一致
解決方法如下:
1.cd ./python
2.python setup.py build
3.python setup.py install
再轉換模型,well
done!驗證模型成功