参考链接:https://hackernoon.com/creating-insanely-fast-image-classifiers-with-mobilenet-in-tensorflow-f030ce0a2991
- 利用迁移学习获得模型:
- git源码https://github.com/tensorflow/tensorflow
- 利用image_retraining下的retrain.py文件进行训练(用的是mobilenet模型):
python xx/xx/retrain.py --image_dir /img/flower --learning_rate=0.0001 --testing_percentage=20 --validation_percentage=20 --train_batch_size=32 --validation_batch_size=-1 --flip_left_right True --random_scale=30 --random_brightness=30 --eval_step_interval=100 --how_many_training_steps=600 --architecture mobilenet_1.0_224
- 模型训练完成:训练完成后会在/tmp文件夹下生成output_graph.pb和output_labels.txt文件。
- 模型测试:从源码中找到label_image.py文件进行测试。
python xx/xx/label_image.py --graph=output_graph.pb --labels=output_labels.txt --image=xx.jpg --input_layer=Placeholder --output_layer=final_result --input_mean=128 --input_std=128 --input_width=299 --input_height=299
- 用tensorflow提供的android demo写android应用。具体build the demo using android studio参考链接https://www.tensorflow.org/lite/tfmobile/android_build。需要修改几个参数:
- 打开build.gradle文件,修改
def nativeBuildSystem='none'
;
- 把output_graph.pb和output_labels.txt文件拷贝到assets文件夹下。
- 打开ClassifierActivity.java文件,修改
INPUT_SIZE=229,IMAGE_MEAN=128,IMAGE_STD=128,INPUT_NAME="Placeholder",OUTPUT_NAME="final_result",MODEL_FILE="file:///android_asset/output_graph.pb",LABEL_FILE="file:///android_asset/output_labels.txt"
- 打包成apk文件(未完成)
浏览量:
292