图像识别之麻将识别源码( 二 )

图像识别之麻将识别源码( 二 )

未经过允许不得转载,转载请联系我,如何联系,点我头像。

连载已经完结,

百度网盘测试APP下载地址:

链接:https://pan.baidu.com/s/1grwUcLkI9i3OABsLtB5h3Q 

提取码:pkbl 

先见效果图,另外我已经上传到了抖音视频,想看NB效果,可以点击链接直接观看:

http://v.douyin.com/roLnjL/ 

       本人从事机器学习有一些时间,感觉与一般做APP应用也没有啥差别,现在每天就是准备样本 ,调整参数,训练,验证结果。可能是我还没有达到哪些教授的水平能设计神经网络吧,感觉也就是一般马龙该做的杂七杂八事情。另外我更加关注移动设备AI的实现与效果,体验一样重要,识别的速度要快!

       接下来的博客开始记录我研究过程,过程是:采集样本->标注->训练->测试。

     上一章讲的样本数收集,本章将样本数据预处理和标注。

标注使用的labelImg ,可以用百度搜索下载。软件运行截图​

图像识别之麻将识别源码( 二 )_第1张图片

通过标注软件可以生产一个对应的xml文件。

图像识别之麻将识别源码( 二 )_第2张图片

如图 标注后所有的麻将图片和xml标注都放在对应的2bing文件夹 里面。

接下来就需要分开测试样本和训练样本,一般来说对于训练数据比较少,建议测试样本大于1/3. 比如100张样本,建议测试样本30张左右。但是图片都在文件夹里面,如果手动去筛选那肯定很累。想想咋们既然是‘马龙’ 那就用脚本解决吧,难道还一个一个去选? (* ̄︶ ̄)。

图像识别之麻将识别源码( 二 )_第3张图片

       算法思想是 遍历所有麻将文件夹里面的 类似‘2bing’ 文件夹。再通过 随机函数 random.randint(1,3), 然后不停的while循环直到找到对应的测试样本数量才停住,接下来就将找到的测试样本和训练样本数据放在对应的文件夹里面。

       接下来用xml_to_csv.py将xml格式的数据转化问csv数据格式的标注。

       然后用generate_tfrecord.py将csv的数据转化为tfrecord数据格式,这个数据格式是TensorFlow标准格式,主要是训练的将比较快适合它那个标准吧。

     在转换前将标签与index对应起来。修改generate_tfrecord里面的地方如下:


图像识别之麻将识别源码( 二 )_第4张图片

接下来新建一个labelmap.pbtxt标签文件。


item {

  id: 1

  name: '1bing'

}

item {

  id: 2

  name: '1tiao'

}

item {

  id: 3

  name: '1wan'

}

item {

  id: 4

  name: '2bing'

}

...

在准备object detection中的config 网络文件。这里使用的是ssd mobile模型,需要修改ssd_mobilenet_v1_pets.config里面对应文件里面的测试样本和训练样本路径,修改class数量为麻将的数量。

到此为止所有数据前的准备已经结束。下一章将训练过程和训练结果。

你可能感兴趣的:(图像识别之麻将识别源码( 二 ))