背景
我在“SQLite”上设置了一个 SQL 数据库表,其中以颜色空间参数L, a, b
( https://en.wikipedia.org/wiki/Lab_color_space ) 的形式存储了超过 100,000 个颜色代码。
手头的任务:
我们希望将随机选择的颜色 ( L_rand, a_rand and b_rand
) 与这个大型数据库中最接近的颜色进行匹配。
我们想要实现这一点的方法是使用Delta E CIE 2000来计算随机选择的颜色和颜色数据库之间的差异。我们想将这种计算策略实现到 SQL 中(之前已经由 @Jaza 实现和共享),并且已经在其中一篇文章(Delta E(CIE 实验室)在 SQL 中计算和排序的性能)中对此进行了讨论,主要是@Jaza 和 @hruske 之前。
问题:
参考@hruske 帖子的最佳但高级解决方案部分:您能否提供一些提示,说明我们如何使用自定义 GiST 索引将 Delta E 查询实现为 K-Nearest-Neighbor 搜索?换句话说,我如何使用btree-gist PostGRE SQL 扩展 我很抱歉,因为我是 SQL 的新手,我想要一个可以使用的方向。
提前致谢。