Skip to content

Commit

Permalink
Merge pull request BVLC#5477 from lukeyeager/bvlc/test-draw-net
Browse files Browse the repository at this point in the history
[pycaffe] Fix draw_net() and add a test
  • Loading branch information
shelhamer authored Mar 31, 2017
2 parents 5ad9e53 + 179dafd commit c0597b1
Show file tree
Hide file tree
Showing 4 changed files with 39 additions and 3 deletions.
6 changes: 3 additions & 3 deletions python/caffe/draw.py
Original file line number Diff line number Diff line change
Expand Up @@ -104,11 +104,11 @@ def get_layer_label(layer, rankdir):
pooling_types_dict[layer.pooling_param.pool],
layer.type,
separator,
layer.pooling_param.kernel_size[0] if len(layer.pooling_param.kernel_size._values) else 1,
layer.pooling_param.kernel_size,
separator,
layer.pooling_param.stride[0] if len(layer.pooling_param.stride._values) else 1,
layer.pooling_param.stride,
separator,
layer.pooling_param.pad[0] if len(layer.pooling_param.pad._values) else 0)
layer.pooling_param.pad)
else:
node_label = '"%s%s(%s)"' % (layer.name, separator, layer.type)
return node_label
Expand Down
33 changes: 33 additions & 0 deletions python/caffe/test/test_draw.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
import os
import unittest

from google import protobuf

import caffe.draw
from caffe.proto import caffe_pb2

def getFilenames():
"""Yields files in the source tree which are Net prototxts."""
result = []

root_dir = os.path.abspath(os.path.join(
os.path.dirname(__file__), '..', '..', '..'))
assert os.path.exists(root_dir)

for dirname in ('models', 'examples'):
dirname = os.path.join(root_dir, dirname)
assert os.path.exists(dirname)
for cwd, _, filenames in os.walk(dirname):
for filename in filenames:
filename = os.path.join(cwd, filename)
if filename.endswith('.prototxt') and 'solver' not in filename:
yield os.path.join(dirname, filename)


class TestDraw(unittest.TestCase):
def test_draw_net(self):
for filename in getFilenames():
net = caffe_pb2.NetParameter()
with open(filename) as infile:
protobuf.text_format.Merge(infile.read(), net)
caffe.draw.draw_net(net, 'LR')
2 changes: 2 additions & 0 deletions scripts/travis/install-deps.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ source $BASEDIR/defaults.sh
apt-get -y update
apt-get install -y --no-install-recommends \
build-essential \
graphviz \
libboost-filesystem-dev \
libboost-python-dev \
libboost-system-dev \
Expand All @@ -31,6 +32,7 @@ if ! $WITH_PYTHON3 ; then
python-dev \
python-numpy \
python-protobuf \
python-pydot \
python-skimage
else
# Python3
Expand Down
1 change: 1 addition & 0 deletions scripts/travis/install-python-deps.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,5 @@ if ! $WITH_PYTHON3 ; then
else
# Python3
pip install --pre protobuf==3.0.0b3
pip install pydot
fi

0 comments on commit c0597b1

Please sign in to comment.