A small tool to dump Caffe's *.caffemodel to JSON for inspection
Python
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 3 commits ahead, 33 commits behind vadimkantorov:master.
atveit Merge pull request #1 from atveit/master
removed 'preview' mode that caused bug by pruning results
Latest commit 145797b Feb 28, 2016
Permalink
Failed to load latest commit information.
LICENSE Update LICENSE Aug 13, 2015
README.md Update README.md Jan 6, 2016
caffemodel2json.py removed 'preview' mode that caused bug by pruning results Feb 28, 2016

README.md

Description

A small tool to dump Caffe's *.caffemodel to JSON for inspection (*.prototxt files is not needed). Will not print all the weights to make the output concise. This tool (with all weights output) can be used to generate json input for DeepLearningKit for conv.nets generated in Caffe.

Example

./caffemodel2json.py CAFFE_ROOT/src/caffe/proto/caffe.proto model_name.caffemodel > dump.json

Output would be something like:

protobuf: calling protoc
protobuf: generated
protobuf: imported
   model: caffemodel read in memory. Deserialization will take a few minutes. Take a coffee!
   model: deserialized
   model: json saved

ALLOK. Quitting

Dependencies

  1. Python
  2. protobuf (with Python bindings)
  3. Caffe's caffe.proto (or from a Caffe's fork, it's important if you are inspecting a model that implements new Caffe layers)

Credits

The tool reuses a function from https://github.com/dpp-name/protobuf-json. Great thanks to Paul Dovbush for making it available.