点击我爱计算机视觉标星,更快获取CVML新技术


今天跟大家推荐一个刚刚开源的使用tf.Keras深度学习技术构建图像搜索引擎的开源项目,对于了解基于文本查询和基于图像查询的图像搜索都很有价值。

项目地址:

https://github.com/CVxTz/image_search_engine

项目开发者为法国FORTIA Financial Solutions公司的数据科学家Youness MANSAR。

基于文本查询和基于图像实例进行图像搜索是图像检索的两种主要方式,面对仅有描述文本的弱监督信息的海量互联网图像,如何建立两者之间的关系,同时实现上述两种图像检索方法,是很具有实用价值的技术。

作者在该项目中构建了两种模型:

1. CV模型:ImageNet上预训练的Resnet50 + GlobalMaxpooling2D,用于实现图像信息编码;

2. NLP模型:GRU+GlobalMaxpooling1D,用于实现文本信息编码;

作者设计了一个整体模型,将图像信息编码和与之对应的文本信息编码结合起来,使其欧式距离尽量靠近,而图像和文本信息不对应的数据,使他们得到的编码欧式距离尽可能远离。这就是作者设计的Loss的核心思想。

在测试的使用:

1. 使用文本查询时,使用NLP模型将文本映射到编码空间,寻找与其距离接近的图像编码,进而索引出近似图像;

2. 使用图像查询时,使用CV模型将图像映射到图像编码空间,直接比较图像间的编码信息欧式距离,进而索引出近似图像。

作者使用了50万幅电子商务场景下的服饰图像和对应描述进行实验。

http://jmcauley.ucsd.edu/data/amazon/

下图展示了,作者将训练得到的模型两种编码信息降维到2维的可视化结果(使用TSNE):

蓝色代表图像编码信息,红色代表文本编码信息,绿色连线代表他们是一对一的关系。连线方向很一致,表明作者设计的模型很好的实现了相似图像的聚拢、图像和文本关系的关联。

下图为使用文本查询的结果:

返回的结果还是很明显是强相关的。

下图为使用图像查询的结果:

检索出得结果,款式和类别都是正确的,证明模型的确很有效。

这个项目还是很有意思的,将CV和NLP联系了起来,利用了互联网上常见的数据信息,属于自监督学习的范畴,实现了还不错的文本和图像商品检索效果。

感谢作者开源,希望对你有帮助!

项目地址:

https://github.com/CVxTz/image_search_engine

欢迎文末点个在看!


图像视频检索交流群

学习交流最前沿的图像和视频检索技术,扫码添加CV君拉你入群,如已为CV君其他账号好友请直接私信,

(请务必注明:检索):

喜欢在QQ交流的童鞋可以加52CV官方QQ群:805388940。

(不会时时在线,如果没能及时通过还请见谅)


长按关注我爱计算机视觉

CV+NLP,使用tf.Keras构建图像搜索引擎相关推荐

  1. TensorFlow2.0(二)--Keras构建神经网络分类模型

    Keras构建分类模型 1. tf.keras简介 2. 利用tf.keras构建神经网络分类模型 2.1 导入相应的库 2.2 数据读取与展示 2.3 数据归一化 2.4 构建模型 2.5 模型的编 ...

  2. 使用 Python 构建图片搜索引擎

    引言 我们经常使用搜索引擎.当我们需要查询时,我们可以使用像 Google 这样的搜索引擎来检索最相关的答案. 大多数查询格式是基于文本的.但并不是大多数时候,文本对于找到相关的答案是非常有用的. 例 ...

  3. 深度学习框架 TensorFlow:张量、自动求导机制、tf.keras模块(Model、layers、losses、optimizer、metrics)、多层感知机(即多层全连接神经网络 MLP)

    日萌社 人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度学习实战(不定时更新) 安装 TensorFlow2.CUDA10.cuDNN7.6. ...

  4. TensorFlow2.0(三)--Keras构建神经网络回归模型

    Keras构建神经网络回归模型 1. 前言 1. 导入相应的库 2. 数据导入与处理 2.1 加载数据集 2.2 划分数据集 2.3 数据归一化 3. 模型构建与训练 3.1 神经网络回归模型的构建 ...

  5. 【tf.keras】官方教程一 Keras overview

    目录 Sequential Model:(the simplest type of model) Getting started with the Keras Sequential model Spe ...

  6. 构建可以查找相似图像的图像搜索引擎的深度学习技术详解

    来源:DeepHub IMBA 本文约3400字,建议阅读7分钟 本文为你介绍如何查找相似图像的理论基础并且使用一个用于查找商标的系统为例介绍相关的技术实现. 在本文中将介绍如何查找相似图像的理论基础 ...

  7. 图片基础与tf.keras介绍

    图片基础与tf.keras介绍 1.1 图像基本知识 回忆:之前在特征抽取中如何将文本处理成数值. 思考:如何将图片文件转换成机器学习算法能够处理的数据? 我们经常接触到的图片有两种,一种是黑白图片( ...

  8. 使用估算器、tf.keras 和 tf.data 进行多 GPU 训练

    文 / Zalando Research 研究科学家 Kashif Rasul 来源 | TensorFlow 公众号 与大多数 AI 研究部门一样,Zalando Research 也意识到了对创意 ...

  9. 使用tf.keras搭建mnist手写数字识别网络

    使用tf.keras搭建mnist手写数字识别网络 目录 使用tf.keras搭建mnist手写数字识别网络 1.使用tf.keras.Sequential搭建序列模型 1.1 tf.keras.Se ...

最新文章

  1. 我国网络安全人才培养缺口巨大
  2. Sampling Procedure 和 Sample-drawing Procedure, SAP QM里的双胞胎?
  3. 【 C 】指向数组的指针(数组指针)(行指针)
  4. VMProtect SDK完全避坑指南
  5. 小心ASP.NET 2.0 的Skin特性伤害到您!
  6. SAP CRM WebClient UI上UI标签文本的显示逻辑
  7. 提升Azure App Service的几个建议
  8. 单片机设计时钟程序c语言,单片机电子时钟程序设计
  9. 建立自己的唱机前置放大器
  10. LTE学习:空口降低时延关键技术
  11. CentOS 6.5 端口转发
  12. MyCat分片规则之ASCII码取模范围分片
  13. Linux屏幕取词翻译 - 思路及实现过程
  14. python菜鸟教程 pdf-菜鸟教程 python pdf/Python菜鸟教程怎么样
  15. web前端设计与开发大作业(五)----期末设计报告
  16. 统计学(第七版)贾俊平课后习题数据
  17. 南京服务器修复,南京戴尔服务器数据恢复
  18. C64+系列DSP的总结
  19. AIX补丁中TL、SP、CSP、IF、PTF的含义
  20. bps和pps各自是什么意思?

热门文章

  1. leetcode169. 多数元素——pygo
  2. Django--模板语言
  3. 设计模式学习笔记——组合(Composite)模式
  4. [Editor][002][Emacs] 从零到高级的进阶 - 实践开发 - 帮助菜单主页
  5. python静默打印pdf_前端静默打印实现 html pdf集合
  6. 小于三位的正整数 正则式_正则表达式
  7. weex android app例子,weex中修改android app图标和欢迎页
  8. oracle定时关闭job,Oracle job定时操作
  9. Ubuntu16.04安装MySQL5.7
  10. golang基础之初识