import caffe时出错

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33144323/article/details/81280831

1.ModuleNotFoundError: no module named google

~/anaconda3/bin/pip install protobuf

安装

protobuf千万不要用conda install来安装,要用~/anaconda2/bin/pip install protobuf 安装,不然import caffe会出现ImportError: No module named google.protobuf.internal
 进行完这一步之后又出现了下面一个错误:

2.  TypeError: expected bytes,str found

Failed to include caffe_pb2, things might go wrong!
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/abc/workplace/caffe/python/caffe/__init__.py", line 4, in <module>
    from .proto.caffe_pb2 import TRAIN, TEST
  File "/home/abc/workplace/caffe/python/caffe/proto/caffe_pb2.py", line 17, in <module>
    serialized_pb='\n\x0b\x63\x61\x66\x66\x65.proto\x12\x05\x63\x61\x66\x66\x65\"\x1c\n\tBlobShape\x12\x0f\n\x03\x64i...'
  File "/home/abc/anaconda3/lib/python3.6/site-packages/google/protobuf/descriptor.py", line 824, in __new__
    return _message.default_pool.AddSerializedFile(serialized_pb)
TypeError: expected bytes, str found

原因:编译生成的caffe_pb2.py有问题 
解决:找一份正确的caffe_pb2.py替换原来的caffe/python/caffe/proto/caffe_pb2.py即可

之前我在Ubnutu安装成功了,这次是centos系统的服务器,直接把之前的caffe/python/caffe/proto/caffe_pb2.py拿过来替换了。再次import caffe 成功。替换文件我已上传到我的百度云:https://pan.baidu.com/s/1OB1KUeQvtAcyrywX4wRnlA

猜你喜欢

转载自blog.csdn.net/qq_33144323/article/details/81280831