将darknet生成的.weight转化为.pb文件

由于想把yolo生成的模型移植到android手机上,所以需要将生成的权重文件转化为.pb格式,以下为步骤:

1.安装darkflow

去该网址https://github.com/thtrieu/darkflow.git下载darkflow源码。官方介绍说只适合python3,不过我的python2.7正常使用。
打开darkflow根目录下darkflow/utils中的loader.py,将其中121行中的self.offset由16改为20:

self.offset = 20

如果是python2,则在darkflow根目录下/darkflow/net/build.py中,将171行的

os.makedirs(os.path.dirname(name), exist_ok=True)

改为

os.makedirs(os.path.dirname(name), 0777)

之后,终端在darkflow根目录下输入pip install .,显示Successfully built darkflow

更新:如果报错:

No module named cy_yolo_findboxes

那么先卸载:

pip uninstall darkflow

然后换一种方式安装:

pip install -e .

2.生成.pb文件

将darknet中你用到的cfg和生成的.weights文件拷贝到darkflow的根目录,然后输入一下命令

flow --model (你用到的).cfg --load (你生成的).weights --savepb

搞定,收工!

你可能感兴趣的:(yolo,v2)