收集好数据之后,就可以进行训练了。这里可以参考我之前写的一篇博客,利用预训练模型进行迁移训练,详见【开发日记】马桶识别之马桶分类,通过迁移学习进行马桶分类
通过上述博客组织好数据结构,然后调用以下代码即可:
python E:\Python35\Lib\site-packages\tensorflow\examples\image_retraining\retrain.py --image_dir F:\AI\proj\data
通过一段时间训练,就可以得到训练好的模型。但是默认使用的模型是Inception V3,测试精度可以达到97.5%,但是模型大小有83M,而且时间会比较长。为了适应树莓派的环境(计算力低,内存小),可以使用Mobilenet进行训练,通过运行以下代码即可
python E:\Python35\Lib\site-packages\tensorflow\examples\image_retraining\retrain.py --image_dir F:\AI\proj\data --architecture mobilenet_0.50_128
上述调用的代码是使用预训练的mobilenet_0.50_128模型,训练完的模型大小只有5M多,而且精度也可以达到97.5%(和Inception V3精度一样,可能是因为本项目比较简单),运算速度更快。
可能由于网络问题,上述用到的预训练模型无法下载,这里也提供了百度网盘,可以移步这里进行下载:
链接:https://pan.baidu.com/s/1o9dNprG 密码:pikw