前面我们已经运行过HelloWorld这个Demo了,今天我们简单分析一下它的流程。1、创建ConfigurationManager对象,并传入一个xml的配置文件路径。整个Sphinx4都是采用配置文件的方式来管理对象之间的关系,有点类似Spring框架,这样做的最大好处就是灵活,如果你要改变某个对象的行为,只需修改一下配置文件即可,而不必修改源代码。ConfigurationManager c
原创 2013-07-13 11:15:54
2229阅读
sphinx4最大的优点就是跨平台和灵活,它应用到了很多优秀的设计思想,如注解,设计模式等。下面总结一下它的特点:1、高度可配置的前端点处理2、支持孤立词,n-gram,context free语法3、支持任意unit context sizes来提高识别率4、允许使用新的搜索和裁剪算法sphinx4的架构图:从大的范围来说,可以分为3个部分:前端点,解码器和基础知识。大致的识别流程如下:1、首先
原创 2013-07-12 09:17:52
3809阅读
sphinx4的属性管理中,PropertySheet的作用实在是太重大了,以至于不得不单独进行介绍。先来看一下PropertySheet的成员变量:// 保存了属性的注解信息private Map<String, S4PropWrapper> registeredProperties = new HashMap<String, S4PropWrapper>();// 保
原创 2013-07-16 08:54:30
958阅读
getComponent的作用是得到依赖的其他对象信息,下面分析一下它的调用流程:1、得到组件对应的注解信息:S4PropWrapper s4PropWrapper = getProperty(name, S4Component.class);S4Component s4Component = (S4Component) s4PropWrapper.getAnnotation();Class&lt
原创 2013-07-16 09:50:20
645阅读
前面只是简单介绍了sphinx4如何通过配置文件中的实例名称,利用反射来创建对象。对象的创建本身比较简单,但是对象属性之间的依赖关系就变得很复杂了。一个对象往往会引用到很多其他属性,而属性的类型可以是基本类型,也可以是类类型。在sphinx4中,一个对象依赖的属性是通过<property>和<propertyList>这两个标签来实现的。我们主要介绍一下<proper
原创 2013-07-14 16:54:22
1072阅读
1点赞
回顾一下sphinx4的整体架构:从上面我们看到,应用程序的输入Input(一般是录音数据),首先经过前端(FrontEnd)处理。前端处理有一序列的步骤,最后会得到声音对应的特征值,也就是所谓的Feature。然后将得到的feature传给解码器Decoder中的Scorer模块进行处理。今天我们从整体上分析一下FrontEnd的处理流程。我们还是以HelloWorld这个为例,先来看一下它的配
原创 2013-07-17 10:09:08
1487阅读
1点赞
2评论
回顾一下,要得到一个对象,首先是创建ConfigurationManager,同时在构造方法中传入一个xml文件的路径,然后调用ConfigurationManager的lookup方法。那么sphinx4内部是如何解析xml文件的呢?首先我们看下 ConfigurationManager 带有一个String类型的构造函数// 构造函数,传入一个xml配置文件的名称,内部自行转为URL格式pub
原创 2013-07-13 11:56:38
1178阅读
随着移动互联网的飞速发展,尤其是在苹果的Siri推出之后,语音识别已经成为一个热门。虽然语音识别是一个门槛相对比较高的行业,但也不是想象中的那么难,而且现在已经有很多优秀的开源项目了。比较有名的主要是剑桥的HTK,还有就是接下来我要研究学习的CMU的sphinx。目前sphinx的最新版本是sphinx4,采用java重新编写。采用java编写的好处是跨平台,且非常的灵活,很容易替换其中的某些模块
原创 2013-07-11 20:28:30
9212阅读
前一篇我们介绍了XML文件的解析过程,解析后的数据保存在rawPropertyMap这个Map中,数据解析完后,那么是sphinx4是如何进行创建对象的呢?回顾我们的HelloWorld Demo,是通过ConfigurationManager的lookup方法来得到某个组件的:Recognizer recognizer = (Recognizer) cm.lookup("recogni
原创 2013-07-14 14:27:31
1000阅读
sphinx 是模拟mysql数据库协议,所以在安装sphinx之前要先装好mysql相关服务。1.去sphinx官网下载需要的包  地址:  http://sphinxsearch.com/downloads/    Release  是稳定版本。 Beta是测试版本, 根据自己的情况自行下载。 然后编译指定安装路径 ./co
转载 2023-07-31 14:06:52
135阅读
Sphinx是一个非常快的搜索引擎,提供了非常好的搜索接口, Thinking Sphinx(A Ruby connector between Sphinx and ActiveRecord)是一个非常容易使用的链接ActiveRecord到Sphinx服务器的ruby库,用来管理Sphinx配置与搜索的ruby接口. 用Sphinx,无限快!!! 首先安装Sphinx: [r
原创 2011-11-10 10:42:04
666阅读
1、环境架构:ip:192.168.0.200os:redhat5.4(64位)2、安装复制代码代码示例:#cd /usr/local/src#yum-y install mysql-devel #安装mysql头文件支持mysql#wget http://sphinxsearch.com/files/sphinx-0.9.9.tar.gz#tar -xvzf sphinx-0.9.9.tar.g
转载 精选 2014-02-28 11:54:41
215阅读
原创 2022-03-23 09:48:20
425阅读
Sphinx 是由俄罗斯人Andrew Aksyonoff开发的一个全文检索引擎。意图为其他应用提供高速、低空间占用、高结果 相关度的全文搜索功能。Sphinx可以非常容易的与SQL数据库和脚本语言集成。当前系统内置MySQL和PostgreSQL 数据库数据源的支持,也支持从标准输入读取特定格式 的XML数据。通过修改源代码,用户可以自行增加新的数据源(例如:其他类型的DBMS 的原生支持)1.
转载 精选 2014-02-28 15:01:07
304阅读
sphinx编译安装:./configure --prefix=/usr/local/sphinx --with-msyql=/usr/local/mysql使用mysql作为数据源  静sphinx监听在9312端口,给其他程序提供调用sphinx 索引词 --> 词所对应的文本IDphp请求sphinx一个词语,shpinx去索引检索这个词语所对应的文本ID,然后返回文本ID,
原创 2014-07-13 16:14:14
941阅读
sphinx使用步骤:1、安装 windows 直接解压就可以了 linux 源码安装2、配置 SQL 结构化查询语言   MYSQL数据库  oracle数据库 sqlserver数据库 但是这三个数据库都要遵循SQL规则 理解配置文件的结构 source ecshop{ } index mygoods{ } source ecshop1{ } index mygo
原创 2015-04-24 15:38:35
867阅读
2点赞
Welcome What users say: “Cheers for a great tool that actually makes programme
原创 2022-12-19 16:39:59
108阅读
简介:Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口,如PHP,Python,Perl,Ruby等,同时为MySQL也设计了一个存储引擎插件。 Sphinx 单一索引最大可包含1亿条记录,在1千万条记录情况下的查询速度为0
本文介绍 win10 + ubuntu on win 下如何使用Sphinx。1. 写在前面文中使用的Sphinx的版本信息如下:➜ Pictures sphinx-build --version sphinx-build 3.2.12. 安装Sphinx和Pandoc2.1 安装 Sphinx安装手册安装 python3安装 pip3打开windows终端win+r安装 Sphinxpip i
  • 1
  • 2
  • 3
  • 4
  • 5