转换代码如下:
tflite_convert --graph_def_file=/home/sir/project/models/faster/frozen_inference_graph.pb --output_file=/home/sir/project/models/faster/foo.tflite --input_arrays=image_tensor --output_arrays=detection_boxes,detection_classes --input_shape=1,299,299,3
这时会报错:Converting unsupported operation,具体报错很多。这里做个记录,证明无法将faster RCNN模型成功转化为tflite版本,从而移植到终端设备上。
sir@ubuntu:~/project/tensorflow-master$ tflite_convert --graph_def_file=/home/sir/project/models/faster/frozen_inference_graph.pb --output_file=/home/sir/project/models/faster/foo.tflite --input_arrays=image_tensor --output_arrays=detection_boxes,detection_classes --input_shapes=1,299,299,3
/home/sir/anaconda3/lib/python3.6/site-packages/h5py/__init__.py:36: FutureWarning: Conversion of the second argument of issubdtype from `float` to `np.floating` is deprecated. In future, it will be treated as `np.float64 == np.dtype(float).type`.
from ._conv import register_converters as _register_converters
2018-09-06 18:09:48.919804: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 FMA
Traceback (most recent call last):
File "/home/sir/anaconda3/bin/tflite_convert", line 11, in <module>
sys.exit(main())
File "/home/sir/anaconda3/lib/python3.6/site-packages/tensorflow/contrib/lite/python/tflite_convert.py", line 370, in main
app.run(main=run_main, argv=sys.argv[:1])
File "/home/sir/anaconda3/lib/python3.6/site-packages/tensorflow/python/platform/app.py", line 125, in run
_sys.exit(main(argv))
File "/home/sir/anaconda3/lib/python3.6/site-packages/tensorflow/contrib/lite/python/tflite_convert.py", line 366, in run_main
_convert_model(tflite_flags)
File "/home/sir/anaconda3/lib/python3.6/site-packages/tensorflow/contrib/lite/python/tflite_convert.py", line 143, in _convert_model
output_data = converter.convert()
File "/home/sir/anaconda3/lib/python3.6/site-packages/tensorflow/contrib/lite/python/lite.py", line 374, in convert
dump_graphviz_video=self.dump_graphviz_video)
File "/home/sir/anaconda3/lib/python3.6/site-packages/tensorflow/contrib/lite/python/convert.py", line 246, in toco_convert
input_data.SerializeToString())
File "/home/sir/anaconda3/lib/python3.6/site-packages/tensorflow/contrib/lite/python/convert.py", line 106, in toco_convert_protos
(stdout, stderr))
RuntimeError: TOCO failed see console for info.
b'2018-09-06 18:09:55.727315: I tensorflow/contrib/lite/toco/import_tensorflow.cc:1096] Converting unsupported operation: TensorArrayV3\n2018-09-06 18:09:55.727393: I tensorflow/contrib/lite/toco/import_tensorflow.cc:1096] Converting unsupported operation: Enter\n2018-09-06 18:09:55.727410: I tensorflow/contrib/lite/toco/import_tensorflow.cc:1096] Converting unsupported operation: TensorArrayV3\n2018-09-06 18:09:55.727422: I tensorflow