AttributeError: 'google.protobuf.pyext._message.RepeatedScalarConta' object has no attribute '_value

在尝试用caffe/python/draw_net.py 对caffe网络结构绘图时出现标题所示的错误,网上的解释是 protobuf的版本不对造成的,而按照 caffe/python/requirements.txt中描述 protobuf的版本要求要>=2.5.0 (作者目录下是这样的哈,请依据你的实际情况查看);

方法一:

如果你用pip install protobuf安装的,那么protobuf的版本可能大于3.0.0,而caffe不支持高于3.0.0的protobuf,请依据自己实际情况确认。
解决方法:用pip uninstall protobuf卸载当前的protobuf,再安装指定低版本的,比如pip install protobuf=2.5.0;结束后再编译一遍pycaffe,再次尝试用 python python/draw_net .py examples/mnist/lenet_train_test .prototxt ./sc .jpg --rankdir=BT
代码各参数解析:

draw_net.py执行的时候带三个参数

第一个参数:网络模型的prototxt文件

第二个参数:保存的图片路径及名字

第二个参数:–rankdir=x , x 有四种选项,分别是LR, RL, TB, BT 。用来表示网络的方向,分别是从左到右,从右到左,从上到小,从下到上。默认为LR。

绘制Lenet模型

python python/draw_net.py examples/mnist/lenet_train_test.prototxt ./sc.jpg --rankdir=BT
  • 1

这里写图片描述

绘制cifar10的模型

python python/draw_net.py examples/cifar10/cifar10_full_train_test.prototxt cifar10_net.jpg --rankdir=BT
  • 1


这里写图片描述

方法二:
如果实在不行,可尝试用在线网页绘制caffe网络结构的方法: 在线网页绘制caffe网络结构
把你的网络结构往网页左侧copy进去按shift+enter就有显示了
参考:https://blog.csdn.net/lanxuecc/article/details/53261058
https://blog.csdn.net/yiranyhy/article/details/55509304

猜你喜欢

转载自blog.csdn.net/c20081052/article/details/80608618