整个流程稍微有点长,但是如果走通后再来新的任务就很简单了。大概分为以下几个步骤:
- 训练SSD
- 转tflite
- 在android应用中运行
训练SSD
1.代码下载
https://github.com/tensorflow/models.git
我们会使用ROOT/research/object_detection下的代码来训练SSD。
2.环境配置
除了tensorflow外还需要安装下面这些模块
pip install --user Cython
pip install --user contextlib2
pip install --user pillow
pip install --user lxml
pip install --user jupyter
pip install --user matplotlib
也可以后面使用的时候根据错误提示,缺了什么再安装对应的模块。
另外还需要配置protoc,下载地址,下载后解压放在ROOT/research目录下,将文件夹的名字更改为protoc,然后运行
./protoc/bin/protoc object_detection/protos/*.proto --python_out=.
运行之后在ROOT/research/object_detection/protos/下会生成很多python文件,后面代码中会使用这些python文件。
为了验证我们环境或者python文件是否正确,可以运行下面的命令
export PYTHONPATH=$PYTHONPATH:`pwd`:`pwd`/slim
python object_detection/builders/model_builder_test.py
如果出现下面的结果就表示准备好了
......................
----------------------------------------------------------------------
Ran 22 tests in 0.191s
OK
3.准备训练数据
标记数据
使用labelImg工具(下载地址)对数据进行标记