度学习的发展使得在此之前以机器学习为主流算法的相关实现变得简单,而且准确率更高,效果更好,在图像检索这一块儿,目前有谷歌的以图搜图,百度的以图搜图,而百度以图搜图的关键技术叫做“感知哈希算法”,这是一个很简单且快速的算法,其原理在于针对每一张图片都生成一个特定的“指纹”,然后采取一种相似度的度量方式得出两张图片的近似程度。

而深度学习在图像领域的快速发展,在于它能学习到图片的相关特征,评价一个深度模型的好坏往往在于它学习到有用的特征程度的多少,在提取特征这方面而言,目前神经网络有着不可替代的优势。而图像检索往往也是基于图像的特征比较,看特征匹配的程度有多少,从而检索出相似度高的图片。

  

基于DenseNet网络提取图像特征

  我们都知道,vgg、DenseNet卷积网络在图像领域有着广泛的应用,后续许多层次更深,网络更宽的模型都是基于此扩展的,vgg网络能很好的提取到图片的有用特征,本次实现是基于Keras实现的,提取的是最后一层卷积特征。

项目代码获取方式:

关注微信公众号 datayx  然后回复  图像匹配  即可获取。

AI项目体验地址 https://loveai.tech

提取特征

图像匹配,基于深度学习DenseNet实现以图搜图功能_机器学习

将特征以及对应的文件名保存为h5文件

图像匹配,基于深度学习DenseNet实现以图搜图功能_相似度_02

选一张测试图片测试检索效果

相似度采用余弦相似度度量

图像匹配,基于深度学习DenseNet实现以图搜图功能_相似度_03

以一张小鸟的图片为例测试结果如下:

图像匹配,基于深度学习DenseNet实现以图搜图功能_深度学习_04

第一张为测试图片,后面三张为检索图片,可以看出效果相当好了。

图像匹配,基于深度学习DenseNet实现以图搜图功能_深度学习_05

如果想用Resnet或者Densenet提取特征,只需针对上述代码做出相应的修改,去掉注释修改部分代码即可。



不断更新资源

深度学习、机器学习、数据分析、python

 搜索公众号添加: datayx  

图像匹配,基于深度学习DenseNet实现以图搜图功能_python_06

长按图片,识别二维码,点关注