目前市面上假酒层出不穷,那么我们怎么去用深度学习的方法鉴别真假酒呢?
下面是真假就的对比图:1、真酒 2、假酒
大家从这两张图可以看出有什么不同吗?
对茅台酒进行鉴别,首先从图像入手的话,肯定会联想到酒瓶上面的图案会有差异,我们先从茅台图标入手,这里的图片为2048 x 2048的分辨率图像,仔细观察图中标注的点,可以发现有细微的不同
我的处理办法是首先用目标检测将几处特征点检测出来,再对检测框内的图像进行裁剪,得到只包含特征点的小图像,之后再去对小图像进行分类,即可分辨出该特征图是真酒还是假酒。
当然如果图像分辨率特别高的话,也可以将整个商标特征图直接去分类,效果也很好。
作者这里因为有大量的高分辨率的商标图像(真假均包含),直接使用resnet152进行训练,源码可以参考:
https://github.com/bubbliiiing/classification-pytorch
这里是引用B导的源码
这里我们训练完成之后,直接使用best_epoch_weights.pth权重进行predict
输入要预测的图片路径
可以看到这张图属于normal(真酒),我们看看预测结果:
可以看到预测结果100%属于normal,准确率还可以的。
作者这里的数据集较少,只包含了图标的图片真假标签各520张,当然如果有兴趣的话大家也可以对其小特征点制作数据集训练模型去进行分类,并且也可以尝试拍不同角度的照片去丰富训练集,这样可以使模型在不同场景下的准确率更高。