Intel® Distribution of OpenVINO™ Toolkit
Community support and discussions about the Intel® Distribution of OpenVINO™ toolkit, OpenCV, and all things computer vision-related on Intel® platforms.
5852 Discussions

mvNCCompile fails on Tensorflow's meshgrid ops.

idata
Community Manager
440 Views

hello,

 

im deploying my yolov3 implementation (here is the link) onto the ncs1 and is getting this error:

 

anhminh@ubuntu-os:~/Workspace/YOLOw$ mvNCCompile -s 12 frozen_yolow.pb -in input -on detections/output mvNCCompile v02.00, Copyright @ Movidius Ltd 2016 /usr/local/lib/python3.5/dist-packages/tensorflow/python/framework/ops.py:766: DeprecationWarning: builtin type EagerTensor has no __module__ attribute EagerTensor = c_api.TFE_Py_InitEagerTensor(_EagerTensorBase) /usr/local/lib/python3.5/dist-packages/tensorflow/python/util/tf_inspect.py:45: DeprecationWarning: inspect.getargspec() is deprecated, use inspect.signature() instead if d.decorator_argspec is not None), _inspect.getargspec(target)) 2019-02-20 02:35:15.605786: E tensorflow/core/common_runtime/executor.cc:643] Executor failed to create kernel. Invalid argument: NodeDef mentions attr 'index_type' not in Op<name=Fill; signature=dims:int32, value:T -> output:T; attr=T:type>; NodeDef: detections/yolov3/meshgrid_2/ones = Fill[T=DT_FLOAT, index_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"](detections/yolov3/meshgrid_2/ones/packed, detections/yolov3/meshgrid/ones/Const). (Check whether your GraphDef-interpreting binary is up to date with your GraphDef-generating binary.). [[Node: detections/yolov3/meshgrid_2/ones = Fill[T=DT_FLOAT, index_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"](detections/yolov3/meshgrid_2/ones/packed, detections/yolov3/meshgrid/ones/Const)]] 2019-02-20 02:35:15.725922: E tensorflow/core/common_runtime/executor.cc:643] Executor failed to create kernel. Invalid argument: NodeDef mentions attr 'index_type' not in Op<name=Fill; signature=dims:int32, value:T -> output:T; attr=T:type>; NodeDef: detections/yolov3/meshgrid/ones = Fill[T=DT_FLOAT, index_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"](detections/yolov3/meshgrid/ones/packed, detections/yolov3/meshgrid/ones/Const). (Check whether your GraphDef-interpreting binary is up to date with your GraphDef-generating binary.). [[Node: detections/yolov3/meshgrid/ones = Fill[T=DT_FLOAT, index_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"](detections/yolov3/meshgrid/ones/packed, detections/yolov3/meshgrid/ones/Const)]] Traceback (most recent call last): File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/client/session.py", line 1323, in _do_call return fn(*args) File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/client/session.py", line 1302, in _run_fn status, run_metadata) File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/framework/errors_impl.py", line 473, in __exit__ c_api.TF_GetCode(self.status.status)) tensorflow.python.framework.errors_impl.InvalidArgumentError: NodeDef mentions attr 'index_type' not in Op<name=Fill; signature=dims:int32, value:T -> output:T; attr=T:type>; NodeDef: detections/yolov3/meshgrid/ones = Fill[T=DT_FLOAT, index_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"](detections/yolov3/meshgrid/ones/packed, detections/yolov3/meshgrid/ones/Const). (Check whether your GraphDef-interpreting binary is up to date with your GraphDef-generating binary.). [[Node: detections/yolov3/meshgrid/ones = Fill[T=DT_FLOAT, index_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"](detections/yolov3/meshgrid/ones/packed, detections/yolov3/meshgrid/ones/Const)]] During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/mvNCCompile", line 118, in <module> 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 276, in parse_tensor res = outputTensor.eval(feed_dict={inputnode + ':0' : input_data}) File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/framework/ops.py", line 570, in eval return _eval_using_default_session(self, feed_dict, self.graph, session) File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/framework/ops.py", line 4455, in _eval_using_default_session return session.run(tensors, feed_dict) File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/client/session.py", line 889, in run run_metadata_ptr) File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/client/session.py", line 1120, in _run feed_dict_tensor, options, run_metadata) File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/client/session.py", line 1317, in _do_run options, run_metadata) File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/client/session.py", line 1336, in _do_call raise type(e)(node_def, op, message) tensorflow.python.framework.errors_impl.InvalidArgumentError: NodeDef mentions attr 'index_type' not in Op<name=Fill; signature=dims:int32, value:T -> output:T; attr=T:type>; NodeDef: detections/yolov3/meshgrid/ones = Fill[T=DT_FLOAT, index_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"](detections/yolov3/meshgrid/ones/packed, detections/yolov3/meshgrid/ones/Const). (Check whether your GraphDef-interpreting binary is up to date with your GraphDef-generating binary.). [[Node: detections/yolov3/meshgrid/ones = Fill[T=DT_FLOAT, index_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"](detections/yolov3/meshgrid/ones/packed, detections/yolov3/meshgrid/ones/Const)]] Caused by op 'detections/yolov3/meshgrid/ones', defined at: File "/usr/local/bin/mvNCCompile", line 118, in <module> 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 211, in parse_tensor tf.import_graph_def(graph_def, name="") File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/framework/importer.py", line 313, in import_graph_def op_def=op_def) File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/framework/ops.py", line 2956, in create_op op_def=op_def) File "/usr/local/lib/python3.5/dist-packages/tensorflow/python/framework/ops.py", line 1470, in __init__ self._traceback = self._graph._extract_stack() # pylint: disable=protected-access InvalidArgumentError (see above for traceback): NodeDef mentions attr 'index_type' not in Op<name=Fill; signature=dims:int32, value:T -> output:T; attr=T:type>; NodeDef: detections/yolov3/meshgrid/ones = Fill[T=DT_FLOAT, index_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"](detections/yolov3/meshgrid/ones/packed, detections/yolov3/meshgrid/ones/Const). (Check whether your GraphDef-interpreting binary is up to date with your GraphDef-generating binary.). [[Node: detections/yolov3/meshgrid/ones = Fill[T=DT_FLOAT, index_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"](detections/yolov3/meshgrid/ones/packed, detections/yolov3/meshgrid/ones/Const)]]

 

searching hardly around the forum seems to hint me that ncsdk support for Tensorflow ops is still limited (because I used several meshgrid, split and concat ops etc.) nor it allowing for multiple output nodes in the compiled graph (as yolov3 architecture outputs at 3 different layers), could anyone help me get around this problem?

 

thanks in advance.

0 Kudos
1 Reply
idata
Community Manager
119 Views

Hi @anhminh3105

 

Yolov3 has not been validated on the NCSDK. However, the OpenVINO toolkit just added support for Yolo V3 in the R5 release. I recommend giving OpenVINO a try, you can find the release notes at the following link. https://software.intel.com/en-us/articles/OpenVINO-RelNotes

 

Hope this helps!

 

Regards,

 

Jesus
Reply