【问题标题】:How to index d dimensional vector in solr using geospatial search?如何使用地理空间搜索在 solr 中索引 d 维向量?
【发布时间】:2019-07-14 11:19:16
【问题描述】:

我正在尝试为 solr 创建一个可以索引 3d 模型的插件。我将从几个不同的视图中对每个模型进行“截图”,并对这些图像进行预处理,以便它们以一维向量表示。

我想为此目的使用 lucene/solr 地理空间搜索,因为我看到有一个选项可以索引一个向量(大于 2 个维度)并根据向量的距离进行搜索(根据位置)。

不幸的是,该选项的文档上周消失了,并且没有在 google 中缓存。

如何索引维度 > 2 的位置向量?

文档的链接在这里: https://wiki.apache.org/solr

我从这里找到了它: https://lucene.apache.org/solr/guide/6_6/spatial-search.html#SpatialSearch-LatLonPointSpatialField

【问题讨论】:

标签: search solr lucene 3d-model


【解决方案1】:

地理空间搜索旨在使用 n 维点 (Lucene),但似乎 Solr 实现的维度高于 2d is not available

如果您为每个字段索引一维向量/坐标(使用双字段类型),您仍然可以使用 Solr 进行 3d 空间搜索。

然后,为了根据与给定点的距离查询和排序文档,您可以使用geodist(sfield2D,x,y),而不是使用dist()

返回 n 维中两个向量(点)之间的距离 空间。获得权力,加上两个或更多的 ValueSource 实例和 计算两个向量之间的距离。

要计算任意点 (0,0,0) 和每个文档的索引点之间的欧几里德距离,您可以使用:

dist(2, fieldx, fieldy, fieldz, 0, 0, 0) 

另见:
- Calculate distance in 3D space
- Distance Sorting or Boosting (Function Queries)
- Difference between geodist() and dist() for Geo-Spacial Search

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-02
    • 2013-05-05
    • 2017-08-04
    • 1970-01-01
    相关资源
    最近更新 更多