如何在浏览器中高效地为索引搜索散列图像
How do I efficiently hash an image for indexed search in the browser?
我正在写一个chrome扩展,从网站保存图像。除了保存文件本身,我还想将图像转换成某种类型的散列。
目标是索引数据库中的图像,以便我可以轻松确定图像是否重复(独立于大小,即缩略图和全尺寸图像将被视为重复)。我真的不担心图像有细微的差异(除了大小)。
我试过使用这个库,但是它太大了,比我想要的慢一点,而且(表面上)不再支持了。
我也尝试了一些phash
算法实现,但据我所知,它们都是为服务器端使用的。我正在使用webpack
,它无法捆绑我尝试过的任何库(很可能这是用户错误,我不是webpack pro)。
最后,我尝试将图像转换为base64,但结果是10k+字符,我不清楚这是否适用于不同大小的图像。
我会在javascript中实现一个快速字符串散列。将图像转换为base64,然后对其运行字符串散列:
https://www.npmjs.com/package/non-crypto-hash(这些在节点和浏览器中都可以工作,您可以使用browserify将其引入)
或可以转换的算法:http://landman-code.blogspot.ca/2008/06/superfasthash-from-paul-hsieh.html
假设您不需要加密安全哈希,这些可能是您最快的选择。
相关文章:
- 在JavaScript中搜索文本并获取其所有开始和结束索引
- 如何有效地搜索具有介于 jquery 之间的索引的 name 属性的输入
- 在 2D Javascript 数组中搜索值索引
- 替代使用搜索或索引
- 索引数组 JavaScript 中索引的搜索值
- ElasticSearch - 从 Javascript 搜索 3 个索引
- 如何通过搜索选择HTML表的行索引
- Javascript:使用多个索引搜索indexeddb
- 用于jqGrid搜索的任意索引(列名)
- 从索引页获取搜索位置缩放到地图页面上的位置
- 如何搜索多个索引(es)相同的值在javascript数组
- 使用javascript搜索有限的手动索引
- 使用数组索引搜索字符串字母
- 如何通过文本搜索返回JSON数组中项目的索引位置?
- 如何在浏览器中高效地为索引搜索散列图像
- 通过选项文本搜索选项索引
- 在javascript中搜索并找到多维数组中字符串的索引
- 如何使用搜索或匹配自动填充拼接(索引开始、结束)
- 在IndexedDB中搜索复合索引
- 在javascript中搜索ajax请求元素的索引