香!用一行命令实现文本检索电脑图片

新闻 前端
让你从7万张照片里面,找一张猫的照片。最近,一位外国小哥就搞出了个神器——只要1行代码,就能轻松搞定这种海底捞针的事儿。

[[420299]]

本文经AI新媒体量子位(公众号ID:QbitAI)授权转载,转载请联系出处。

让你从7万张照片里面,找一张猫的照片。

崩溃不?

可就在最近,一位外国小哥就搞出了个神器——只要1行代码,就能轻松搞定这种海底捞针的事儿。

就比如刚说的找“猫片”:

装上神器,终端进入你存照片的文件夹,输入“rclip cat”——

很快,10张跟猫有关的照片就列出来了!

当然,文字显示不直观,加个命令就能在图片查看器中预览:

再来一个抽象的:找跟“love”有关的。

几秒钟后四张人类或动物相拥的照片(以及一张三朵“相拥”的向日葵)就出来了。

是不是挺好使?

看到这,你有可能会说目前已有一些程序可以实现用文字检索图像。

不过,小哥发现它们大多都只能用有限的预设词来搜索——而他这个工具和它们最大的区别就在这了。

下面就试试。

找一只正在打哈欠的狗,你就可以输入“a yawning dog”。

搞定!

再来一个,“woman jumping in the mountains”:

完美!结果都非常准确。

emmm,如果你发现不准,很有可能是你描述有问题。

比如你想找一些肖像,但如果直接输入“portrait”,可能会出来一堆有人有狗有猫的“肖像”:

这肯定不是你想要的,这样描述:a portrait of person,结果就对了:

心动不?

就是CLIP的一个简单接口,你也可以试试

此工具被小哥命名为“rclip”。

看名字你也知道了,这就是用那个能实现图像与文本的精准匹配的CLIP做的。(rclip代表recursion CLIP,也就是递归CLIP)

更确切地说,rclip就是CLIP的一个简单接口。

当你输入查询文本后,它所要做的就是加载模型,提取你所选目录中所有图像的特征向量,将它们存储在数据库(小哥用的SQLite)。

其中,提取操作只进行一次,也就是你第一次检索的时候。

然后它再从你输入的查询文本中提取特征向量,计算它与你的图像特征向量库之间的相似性,最后输出最相似的图像。

下面是安装与使用方法:

首先去GitHub上下载rclip最新的AppImage文件:

对,目前该工具只支持Linux x86_64……

如果你正在使用Linux,下载好之后,执行下面两行就可以使用了:

  1. $ chmod +x rclip-v1.0.0-x86_64.AppImage 
  2.  
  3. $ sudo mv rclip-v1.0.0-x86_64.AppImage /usr/local/bin/rclip 

安好以后,就可以cd进入你存图片的目录,开始“rclip + ‘关键字’ ”的检索了。

首次使用提取所有图片的特征向量需要花一些时间,这取决于你所存图片的数量还有你的CPU性能。

ps.小哥的72769张照片是在性能较低的英特尔Celeron J3455处理器上跑了一天。

如果你只想要前5张照片并在本地默认的图片查看器上预览,可以用下面的命令:

  1. $ rclip -nf -t 5 “kitty” | xargs -d ‘\n’ -n 1 xdg-open 

最后,在线等一个能在Windows/Mac上实现这个功能的工具,大家有没有!

GitHub:

https://github.com/yurijmikhalevich/rclip

demo视频:

https://www.youtube.com/watch?v=tAJHXOkHidw

[[420300]]

 

 

责任编辑:张燕妮 来源: 量子位
相关推荐

2022-04-09 09:11:33

Python

2021-10-19 17:52:16

Git命令算数

2018-01-02 09:26:28

Ubuntuzzupdate版本升级

2020-01-10 22:56:56

Python图像处理Linux

2020-08-19 10:30:25

代码Python多线程

2021-04-22 11:27:24

Python命令水印

2022-05-13 09:36:06

Python水印命令

2020-08-24 08:25:48

Python开发工具

2023-01-12 08:07:03

Python代码版权

2020-02-19 15:02:23

代码开发工具

2022-09-28 10:12:50

Python代码可视化

2017-11-20 14:46:27

命令代码

2016-12-02 08:53:18

Python一行代码

2024-02-05 22:41:53

2020-10-13 17:30:45

Python代码内存

2017-04-05 11:10:23

Javascript代码前端

2014-02-12 13:43:50

代码并行任务

2021-11-11 23:02:16

电脑垃圾软件

2022-05-03 17:04:08

CSS前端

2020-08-18 13:30:01

Python命令数据分析
点赞
收藏

51CTO技术栈公众号