最近在尝试使用caffe自带的draw_net.py绘制网络模型图,但是遇到了错误:
AttributeError: 'google.protobuf.pyext._message.RepeatedScalarConta' object has no attribute '_values'
找了好多方法,都说是peotobuf版本不对,重装了protobuf还是不行,最后改了下Caffe_root/python/caffe/draw.py中的代码,问题解决。
建议:
1.先查看一下自己的protobuf版本 protoc --version,看是否满足caffe_root/python/requirements.txt中的要求,有小于3.0(caffe之前版本不支持3.0以上的protobuf,最新的版本不清楚),如果版本太高或者太低,就重装一个protobuf
2.如果protobuf版本正确,还是存在该错误,那就进入Caffe_root/python/caffe/draw.py中,找到函数get_layer_label中,把对应的几个._value删掉,保存,再运行draw_net.py就好了!