hereと同じ方法でAndroidアプリで量子化グラフを使用しようとしました。 テンソルフローのバージョンは0.11.0rc0です。量子化グラフを使用するとAndroidアプリがクラッシュする
まず私は、次のコマンドを実行した:
bazel-bin/tensorflow/python/tools/optimize_for_inference \
--input=/Users/nikogamulin/Desktop/assets/output_flowers.pb \
--output=/Users/nikogamulin/Desktop/assets/tensorflow_inception_graph_optimized.pb \
--input_names=Mul \
--output_names=final_result
bazel-bin/tensorflow/tools/quantization/quantize_graph \
--input=/Users/nikogamulin/Desktop/assets/tensorflow_inception_graph_optimized.pb \
--output=/Users/nikogamulin/Desktop/assets/tensorflow_inception_graph_rounded.pb \
--output_node_names=final_result \
--mode=weights_rounded
bazel build //tensorflow/contrib/util:convert_graphdef_memmapped_format
bazel-bin/tensorflow/contrib/util/convert_graphdef_memmapped_format \
--in_graph=/Users/nikogamulin/Desktop/assets/tensorflow_inception_graph_rounded.pb \
--out_graph=/Users/nikogamulin/Desktop/assets/tensorflow_inception_graph_mapped.pb
output_flowers.pb私は異なるデータセットを使用した以外は、hereに記載したのと同じ方法で再トレーニングされた発端V3グラフです。
Androidアプリケーションでグラフtensorflow_inception_graph_optimized.pbを使用しようとすると、すべてうまくいきました。その後、tensorflow_inception_graph_mapped.pbまたはtensorflow_inception_graph_rounded.pbに切り替えると、アプリケーションがクラッシュします。UIが表示されるとすぐに、「残念ながら、TensorFlowデモが停止しました」というメッセージが表示されます。浮き出る。以下は
TensorFlowImageListenerクラスの始まる行は、次のとおりです。
private static final int NUM_CLASSES = 23;
private static final int INPUT_SIZE = 299;
private static final int IMAGE_MEAN = 128;
private static final float IMAGE_STD = 128;
private static final String INPUT_NAME = "Mul:0";
private static final String OUTPUT_NAME = "final_result:0";
private static final String MODEL_FILE = "file:///android_asset/tensorflow_inception_graph_mapped.pb";
private static final String LABEL_FILE = "file:///android_asset/labels_flowers.txt";
...
誰もがAndroidの中で量子化された当初v3のグラフを使用するように管理したり、問題を解決する方法を知っている場合、私は解決についての提案のために非常に感謝するでしょう問題。
スタックトレースと実際のエラーが発生する可能性がありますか? –