前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >梗图搜索神器来了!还能搜视频,网友:六年没找到的梗图这里两分钟找到了

梗图搜索神器来了!还能搜视频,网友:六年没找到的梗图这里两分钟找到了

作者头像
量子位
发布2023-02-28 14:01:05
5110
发布2023-02-28 14:01:05
举报
文章被收录于专栏:量子位量子位
Pine 发自 凹非寺 量子位 | 公众号 QbitAI

重度互联网爱好者们福利来了!

你是否遇到过这种情况:一个梗图寻遍全网都还没找到。

现在外网一位小哥搞出了一个互联网规模的Meme搜索引擎,库里有近两千万个梗图,涵盖各种小众文化。

检索关键词,或者上传相似图片,结果就能秒出

若遇到Meme库里没有的梗图,还可共享上传。

网友六年都没找到的梗图,在这个小哥的网站上2分钟就找到了。

然鹅这样一个秒秒钟出梗图的背后的装置确实酱婶儿的:

(这不会有点太简陋了吧)

这时候可能就有盆友好奇,这个粗糙的装置是如何做到快速检索梗图的?

那不妨一起来看看这个“Meme搜索引擎”是如何搭建的~

灵感来自iPhone图片识别

要编写一个Meme搜索引擎,最重要也是最先面临的一个问题就是:如何准确识别梗图中的文字信息?

用专业一点的话来讲就是:如何拥有一个可伸缩的OCR(光学字符识别 )?

OCR的解决方案倒是有现成的,不过现有的要么就是遇到比较抽象的梗图识别效果不太好,要么就是太贵。

举个简单的栗子

,比如说用Tesseract OCR来提取图像中的文字,测试时,只能用非常标准的字体和配色方案识别Meme图,不然的话就会出现下面这种情况。

这是原图:

这是识别出来的文字:

30 BLUE man41;? S4-5?’flew/ — V [IL ‘ . “,2; g” .’Sj /B”f;T”EArmDand [red] mvslmunlm: sawmills

emmmmmm

不过灵感很快就来了,小哥偶然间在iPhone给别人发一个验证码图片时。

这是验证码图片:

这是复制过来的文字:

并且iPhone的这个功能已经在iOS Vision框架中公开了,可伸缩OCR的问题这不就有解决办法了嘛~

不过关于Vision框架目前还没有现成的开源代码插件,只能自己写了,具体代码小哥目前还没公布。

BUT,小哥还是总结了一下自己写代码时的方法经验,而且是针对一个从未用Swift写过任何正经东西的小白:

  • 遇事不决Google之
  • Github上逆向工程各种Swift回购协议
  • 请教懂iOS的朋友解决Xcode问题 ……

最终东拼西凑,搞出了一个可行的解决方案:iOS Vision OCR服务器,仅在一部iPhone上就能运行。

识别文字信息这趴搞定了,接下来就轮到搜索环节了,相较于上一趴,这部分就简单多了。

小哥用的是ElasticSearch(已开源)和Postgres。

ElasticSearch拥有多节点能够有效避免故障的发生,并且能够在保证速度的情况下容纳数百万个Meme,不过这都是在牺牲了可靠性之后得到的。

Postgres能够保证搜索结果的可靠性,但在超过一百万张图片的范围时,就会变得特别慢。

一个能保证速度,一个能保证质量,那……

Done!

在这其中,小哥用到了PGSync,它是一件中间件,可以用于同步从Postgres到Elasticsearch/OpenSearch的数据,具体的搜索流程如下:

到这里,整个搜索引擎的搭建已初见雏形,但还没结束……

视频Meme也能支持

因为Meme不仅仅靠梗图来传递,有时候还会有视频。

这倒也简单,直接将视频分割成截图集,之后就能像普通的Meme图一样被识别了。

具体来说,小哥编写了一个小型微服务,通过ffmpeg(它可以执行音频和视频多种格式的录影、转换、串流功能),从视频中截取10个均匀间隔的图片。

然后将截图文件发送到iPhone OCR服务,最终视频文件中会有每个屏幕截图OCR后的结果集。

不过拥有视频检索功能后,毫无疑问OCR服务的负载就重了,一个视频OCR的工作量几乎是一般梗图的10倍。

虽然说OCR应用服务器的速度很快,但也禁不住这样薅,于是iOS OCR服务升级了(多加几台手机),于是最终的装置就变开头图中的那样了。

最终具体的流程图小哥也贴心地给出来了:

小哥的这个Meme搜索引擎出来之后,网友们也都直呼太棒了。

当然也有网友给出了一些建议,认为当前的搜索引擎太文本化了,而很多Meme图本身就没多少文字,更多时候都是“意会”。

对此,小哥本人也作出了回应,称之后还会继续优化搜索引擎:

考虑将图像转换为描述的文本……

不过值得一提的是,目前这个搜索引擎还不太支持中文,中文的梗图搜索效果不是很好,但既然小哥已经将构建方法给出来了,就期待一波万能的网友吧。(手动狗头)

如果你对这个项目感兴趣的话,可以戳下文链接~

传送门: https://findthatmeme.com/ 参考链接: https://findthatmeme.com/blog/2023/01/08/image-stacks-and-iphone-racks-building-an-internet-scale-meme-search-engine-Qzrz7V6T.html

百度研究院、阿里达摩院、量子位智库

年度十大科技报告

总结2022,预见2023。来自百度研究院、阿里达摩院和量子位智库的年度十大科技报告均已发布,点击下方图片即可跳转查看。

百度研究院

阿里达摩院

量子位智库

点这里👇关注我,记得标星哦~

一键三连「分享」、「点赞」和「在看」

科技前沿进展日日相见 ~ 

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2023-01-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 量子位 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 灵感来自iPhone图片识别
  • 视频Meme也能支持
相关产品与服务
文字识别
文字识别(Optical Character Recognition,OCR)基于腾讯优图实验室的深度学习技术,将图片上的文字内容,智能识别成为可编辑的文本。OCR 支持身份证、名片等卡证类和票据类的印刷体识别,也支持运单等手写体识别,支持提供定制化服务,可以有效地代替人工录入信息。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档