用YOLOv5和CLIP做了一个找图神器,搜图、裁剪一步到位,在线可试用

2022-03-04 12:11:07 浏览数 (1)

关注并星标

从此不迷路

计算机视觉研究院

公众号IDComputerVisionGzq

学习群扫码在主页获取加入方式

计算机视觉研究院专栏

作者:Edison_G


给 Crop-CLIP 一个口令,就能自动搜图,还能帮忙裁剪出图片中的关键部分。


转自《机器之心》经常找图的人都知道,根据检索关键词组寻找理想中的照片是件很麻烦的事情。

打开搜索引擎或无版权图片网站,输入关键词,如果幸运的话,可能会在第一页或前 N 个检索结果中找到想要的图像。这种搜索方式仍然是基于图片标签进行的。

自从 2021 年 1 月,OpenAI 推出了名为 CLIP 的神经网络,找图就进入了语义搜索时代。CLIP 建立在零样本迁移、自然语言监督、多模态学习的大量工作基础之上,因此它可以从自然语言监督中有效地学习视觉概念。

语义搜索不会试图为输入短语中的单词找到精确匹配,而是捕获上下文和单词之间的更广泛的关系,然后检索与搜索查询的上下文密切相关的结果。

近日,一位开发者将 YOLOv5 和 CLIP 结合起来,在使用关键词检索图片内容的同时,直接精确裁剪出包含检索主题的那一部分。

在这张图中,检索的关键词是「Whats the time」。

  • 项目地址:https://github.com/vijishmadhavan/Crop-CLIP
  • 在线试用地址:https://huggingface.co/spaces/Vijish/Crop-CLIP

先看几个示例,比如你输入关键词「卫衣男」,效果如下图:

关键词「威士忌酒瓶」:

输入关键词「计算机」,就不会包含水杯和耳机:

惊喜的是,它也能认出「Jeff Dean」:

怎么实现的?

CLIP 是用大量带有对应标题的图像进行训练的,因此它学会了理解哪个标题与哪个图片相匹配。

用户可以给出一个随机图像,并在向量空间中找到该图像的余弦相似度,其中包含两个短语向量:「这是狗的照片吗?」、「这是猫的照片吗?」。模型会查看哪一个具有最高的相似度,然后找到图像的类别。某种程度上说,CLIP 具有像 GPT-2 和 GPT-3 一样的零样本分类能力。

图源:OpenAI CLIP 博客。

和目标检测器 YOLOv5 相结合之后,CLIP 在语义搜索图像的基础上增加了裁剪能力,变身 Crop-CLIP。

  • 检测和裁剪对象 (yolov5s)
  • 使用 CLIP 对裁剪后的图像进行编码
  • 使用 CLIP 编码搜索查询
  • 找到最佳匹配部分

Crop-CLIP 也可用于创建数据集,需要在代码中进行一些更改,进行批量搜索查询。如下图所示,Jack Daniels 威士忌酒瓶的图像已被裁剪并保存。

项目作者 Vijish Madhavan 是一位自由开发者,现居英国,是利物浦约翰摩尔斯大学的硕士生。

但作者也提到了一点「限制」,Crop-CLIP 严重依赖目标检测器 YOLOv5,鉴于 YOLOv5 是在 COCO 数据集上进行预训练的目标检测架构和模型,因此 Crop-CLIP 检测过程中的类别会依赖于 COCO 中的类别。

所以在机器之心编辑部的试用过程中,也会出现不同程度的翻车事故。

想要草莓,结果却是金桔:

想要猫咪,结果却是螃蟹:

这两张输出结果,刘能看了也要叹气:

至少,这个项目是一种有趣的创新,在后续的优化中,相信作者也会对数据集等方面进行改进,实现更好的搜图效果。

© THE END 

转载请联系本公众号获得授权

计算机视觉研究院学习群等你加入!

计算机视觉研究院主要涉及深度学习领域,主要致力于人脸检测、人脸识别,多目标检测、目标跟踪、图像分割等研究方向。研究院接下来会不断分享最新的论文算法新框架,我们这次改革不同点就是,我们要着重”研究“。之后我们会针对相应领域分享实践过程,让大家真正体会摆脱理论的真实场景,培养爱动手编程爱动脑思考的习惯!

扫码关注

计算机视觉研究院

公众号ID|ComputerVisionGzq

学习群|扫码在主页获取加入方式

0 人点赞