1. 程式人生 > >caffe 轉caffe2模型出現的問題

caffe 轉caffe2模型出現的問題

剛開始接觸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!驗證模型成功