I tried to convert mtcnn Net to Graph by mvNCCompile, but I got the error log show as below, do you any suggestion for this problem, thanks.
another question: does movidius sdk support tf.nn.conv2d?
Ubuntu version: 16.04
Tensorflow version 1.4
Traceback (most recent call last):
File "/usr/local/bin/mvNCCompile", line 118, in
create_graph(args.network, args.inputnode, args.outputnode, args.outfile, args.nshaves, args.inputsize, args.weights)
File "/usr/local/bin/mvNCCompile", line 104, in create_graph
net = parse_tensor(args, myriad_config)
File "/usr/local/bin/ncsdk/Controllers/TensorFlowParser.py", line 361, in parse_tensor
TypeError: int returned non-int (type NoneType)
PS. Attatchment is dump network graph node name.
@joseph_shieh Thanks for providing your log. Can you provide a link to your model (pb or meta files) for debugging?
Regarding Conv2D, I can confirm that we do have support for this layer (you can check your /opt/movidius/NCSDK/ncsdk-x86_64/tk/Controllers/TensorFlowParser.py).
Thanks for your help I based on this link (https://github.com/wangbm/MTCNN-Tensorflow) to transfer movidius mvNCCompile output graph. (reference model: save_model/all_in_one).
I have reference official infor about - Only two dimensions are defined because the batch size is always 1 and the number of color planes is assumed to be 3, so that I do this step to convert model show as below:
Step1: image_pnet = tf.placeholder("float", shape=[1, pnet_size, pnet_size, 3], name='input_pnet') #change input node to 2-dims
Step2: to transfer Rnet and Onet respectively follow step1.
Step3: onet_prob_output = tf.identity('onet/conv6-3/onet/conv6-3:0', name='output_onet_prob') # I want output hidden layer
Step4: save model named convert_model.ckpt…..
My another question is, does output layer must be 1-dim?
@joseph_shieh The output can be any shape that the network is expecting. Have you taken a look at the MTCNN example on the NCAPPZOO yet? https://github.com/movidius/ncappzoo/tree/master/tensorflow/MTCNN