是否可以在elasticsearch集群中存储图像?如果是,那么是否有关于工作流程的资源?我检查了以下链接:https://github.com/kzwang/elasticsearch-image因为我们必须处理大的图像文件(超过500gb),所以我们计划使用hdfs。
fykwrbwg1#
将整个图像存储在elasticsearch中并不是很有好处,因为如果图像被缩放/裁剪,然后用作查询,则会给出不正确的结果。你需要什么取决于你为什么要索引这些图片。在我的例子中,我需要找到一个经过缩放或裁剪的图像在我的数据库中是否有一个接近的匹配。我正在提取图像的局部描述符(sift/surf),并使用它们建立一个elasticsearch索引。这将减少图像索引大小,因为只存储少数特征,而不是存储整个图像。我将在s3上存储所有这些图像,elasticsearch将存储这些图像的ID以及从中提取的特征。关于elasticsearch图片:这个插件已经有一段时间没有更新了,对问题的最新回应来自去年。这个插件集成了lire和elasticsearch,lire提供了多图像指纹提取器的功能。可能的解决方案:集成库opencv(用于计算图像的特征向量)和elasticsearch,并使用这些图像特征构建自己的索引,而不是存储整个图像。对于产品架构,您可以在这里得到一些提示。使用旧版本的elasticsearch和兼容版本的elasticsearch图像。升级elasticsearch image以使用最新版本的elasticsearch。您还可以使用solr和liresolr插件与liresolr库集成。update:- this 是图像检索任务的更新,您需要在其中搜索接近的图像匹配。我建议你通过这个链接https://paperswithcode.com/task/image-retrieval. 最好的解决方案-深层局部特征已经集成在tensorflow中。
1条答案
按热度按时间fykwrbwg1#
将整个图像存储在elasticsearch中并不是很有好处,因为如果图像被缩放/裁剪,然后用作查询,则会给出不正确的结果。你需要什么取决于你为什么要索引这些图片。
在我的例子中,我需要找到一个经过缩放或裁剪的图像在我的数据库中是否有一个接近的匹配。我正在提取图像的局部描述符(sift/surf),并使用它们建立一个elasticsearch索引。这将减少图像索引大小,因为只存储少数特征,而不是存储整个图像。我将在s3上存储所有这些图像,elasticsearch将存储这些图像的ID以及从中提取的特征。
关于elasticsearch图片:这个插件已经有一段时间没有更新了,对问题的最新回应来自去年。这个插件集成了lire和elasticsearch,lire提供了多图像指纹提取器的功能。
可能的解决方案:
集成库opencv(用于计算图像的特征向量)和elasticsearch,并使用这些图像特征构建自己的索引,而不是存储整个图像。对于产品架构,您可以在这里得到一些提示。
使用旧版本的elasticsearch和兼容版本的elasticsearch图像。
升级elasticsearch image以使用最新版本的elasticsearch。
您还可以使用solr和liresolr插件与liresolr库集成。
update:- this 是图像检索任务的更新,您需要在其中搜索接近的图像匹配。我建议你通过这个链接https://paperswithcode.com/task/image-retrieval. 最好的解决方案-深层局部特征已经集成在tensorflow中。