这将会是一系列的文章,介绍自己开发一个APP用于马桶型号的识别,这是我的第一个机器学习项目。
开发背景
深度学习也已经学习了不少日子,是时候从头到尾开始一个机器学习项目。从数据的收集、整理,到神经网络的训练,部署,APP的开发。一来,可以对自己的学习成果做一个检验;二来,也可以提高自己解决问题的能力。之所以选择“马桶型号识别”,跟我现在的工作有很大的关系。我们公司的马桶有很多的型号,即使我是做马桶研发的,但是我也弄不清楚这个马桶是属于哪个型号。另一方面,公司开发了一个“秒懂”的APP,用于门店店员,根据马桶型号来查询马桶的具体规格信息,价格。如果店员能够通过手机扫描马桶得到马桶的型号,这样就可以避免输入型号的麻烦,逼格也提高不少。对于消费者来说,如果他去朋友家,发现他家里的马桶不错,扫一扫马桶,就可以得到信息,甚至可以链接到淘宝上,直接下单购买,岂不是可以增加销量。远一点来说,这种应用可以用在市场上很多产品的销售上,比如运动鞋、衣服、水龙头等等。
这是一个典型的计算机视觉问题,是一个分类问题。
系统目标
这里先定几个目标,以监督自己的落实情况,并激励自己不断前进
1. 最终成果是开发一个手机APP(Android或者ios都可),打开摄像头,对着马桶拍,可以识别出正确的型号。(鉴于这是第一个项目,而且是学习项目,这里的马桶型号个数设定为4个:即型号1,型号2,型号3,型号4)
2. 识别精度达到98%以上
3. 识别时间在1s以内(指从拍摄结束到返回结果)
项目结构
本项目分为以下4个模块:
1. 数据收集、整理
2. 神经网络训练
3. 神经网络部署
4. APP开发
开发环境
1. Python 3.5
2. Tensorflow(或keras,待定)
文件结构和命名
数据集:
train_toilet.h5
test_toilet.h5