原文地址 http://www.douban.com/group/topic/30286342
Sphinx 的 SetGeoAnchor方法,(LinkWith:http://sphinxsearch.com/docs/manual-0.9.9.html#api-func-setgeoanchor)
coreseek提供的中文翻译手册:
function SetGeoAnchor ( $attrlat, $attrlong, $lat, $long )
为地表距离计算设置锚点,并且允许使用它们。$attrlat 和$attrlong 是字符串,分别指定了对应经度和纬度的属性名称。$lat 和$long 是浮点值,
指定了锚点的经度和纬度值,以角度为单位。一旦设置了锚点,您就可以在您的过滤器和/或排序表达式中使用@geodist 特殊属性。Sphinx 将在每一次全文检索中计算给定经纬度与锚点之前的地表距离,并把此距离附加到匹配结果
上去。SetGeoAnchor 和索引属性数据中的经纬度值都是角度。而结果会以米为单位返回,因此地表距离 1000.0 代表 1 千米。一英里大约是 1609.344 米。
coreseek这部分翻译有个问题,原文说的是弧度,而coreseek翻译成了角度,这是个错误。
一般由GPS提供的经纬度格式(角度)如:longitude:111.177579, latitude:53.051679 ,转换成弧度,公式为 (角度*Pi)/180,
首先在做索引的时候 ,得将经纬度数据源转换成弧度。
SQL:select id, radians(longitude) as longitude, radians(latitude) as latitude from locations
PHP:
$long = (float)$_GET['longitude'];
$lat = (float)$_GET['latitude'];
$radius = (float) 10000.0 * 1.61; //搜索10公里以内的地点
$cl = new SphinxClient();
$cl->SetServer("localhost", 3312);
$cl->SetMatchMode(SPH_MATCH_ANY);
$cl->SetArrayResult(true);
$cl->SetLimits(0, 100);
$cl->SetGeoAnchor('latitude', 'longitude', (float) deg2rad($long), (float) deg2rad($lat)); //角度转换成弧度
$cl->SetSortMode(SPH_SORT_EXTENDED, '@geodist asc'); // 按距离正向排序
$cl->SetFilterFloatRange('@geodist', 0.0, $radius); // 过滤掉大于10公里的地点
$result = $cl->Query('', '*');
分享到:
相关推荐
本文档介绍Sphinx4在Windows下的中文训练过程及注意事项,与本文档配套的是我自己的训练实例bergtrain和用到的软件。 本文档编写日期 2013-04-23 1、为什么要训练? sphinx4目前的版本中仅提供了英文等语音识别库。...
sphinx系统是一个拥有悠久历史的语音识别系统,李开复自称第一个sphinx是他写的。 传说 中是第一个实用的10数字语音系统。 是由卡奈基.美隆大学研发。 sphinx3.x是基于C语言的最新版本,sphinx和 sphinx2请大家...
Coreseek 全文检索服务器 2.0 (Sphinx 0.9.8)参考手册和源程序 手册內容: 文档版本:v0.9 目录 1. 简介 1.1. 什么是 Sphinx 1.2. Sphinx 的特性 1.3. 如何获得 Sphinx 1.4. 许可协议 1.5. 作者和贡献者 1.6. ...
Python 语音识别 03使用PocketSphinx实现语音转换为文本.mp4
node-pocketsphinx, node.js的Pocketsphinx绑定 用于 Node.js的 PocketSphinx这里 MODULE 旨在通过使用PocketSphinx在便携设备上实现基本语音识别。安装Windows 安装尚不支持。要构建这里 MODULE,你需要具有以下...
Sphinx overview Sphinx is an open-source full-text search server, designed from the ground up with performance, relevance (aka search quality), and integration simplicity in mind. Sphinx lets you ...
Sphinx JAVA接口 Sphinx JAVAAPI
Sphinx-完整中文手册 Sphinx-完整中文手册 Sphinx-完整中文手册
sphinx4需要使用连续的声学模型,官网上下载下来的中文声学模型全是半连续的,这里提供能够在sphinx4中使用的中文声学模型
php7中sphinx扩展,包含coreseek源码,用于安装libsphinxclient来解决libsphinxclient报错问题。
Sphinx中文手册 sphinx的安装与使用技巧
Pocketsphinx.js 是一个在浏览器上通过纯 JavaScript 实现语音识别的功能,支持 Chrome 和 Firefox 浏览器。提供录音的功能。 特性: 100% 纯 JavaScript API, 可通过 Web Workers 录制 支持 PocketSphinx 所...
5.4.5. SetGeoAnchor 5.5. GROUP BY 设置 5.5.1. SetGroupBy 5.5.2. SetGroupDistinct 5.6. 搜索 5.6.1. Query 5.6.2. AddQuery 5.6.3. RunQueries 5.6.4. ResetFilters 5.6.5. ResetGroupBy 5.7. 额外的...
sphinx资源安装包
sphinx-gui, 用于编辑Sphinx文档的桌面界面 Pre alpha sphinx用于查看和编辑ReStructuredText中的Sphinx文档的桌面 GUI 。 用 PySide ( http://www.pyside.org ) 制作。 文档http://sphinx-gui.rtfd.
全文检索sphinx支持discuz包,好东西,请大家下载
cmu sphinx语音识别,中文语音包,官网下载重新打的zip包
sphinx的Linux安装包
sphinx Linux 中文分词
pocketsphinx-android-demo资源包,可以直接用Android Studio打开运行。根据提示输入关键词识别