(同时要求在sourceforge.net)
我在Ubuntu 18从源代码安装sphinxbase和pocketsphinx(官方CMU github上,而不是从sourceforge.net)
(宿主:Mac Pro的;使用VMware Fusion 11;蟒:3.6)
我从offical website复制demoapp.py。
原代码运行平稳,但它仅支持英语。
然后,为了调整它认识到中国人,我做了一些改变。
我的语言模型从这里下载:https://sourceforge.net/projects/cmusphinx/files/Acoustic%20and%20Language%20Models/Mandarin/zh_broadcastnews_64000_utf8.DMP/download我已经转换它.lm.bin和.lm格式。
这里是我的init_gst()函数(我只修改与其他功能未修改此功能)
def init_gst(self):
"""Initialize the speech components"""
self.pipeline = gst.parse_launch('autoaudiosrc ! audioconvert ! audioresample '
+ '! pocketsphinx name=asr ! fakesink')
bus = self.pipeline.get_bus()
bus.add_signal_watch()
bus.connect('message::element', self.element_message)
self.pipeline.set_state(gst.State.PAUSED)
asr = self.pipeline.get_by_name('asr'); # We previously assigned pocketsphinx element a name asr
asr.set_property('lm', '/Users/cindy/Documents/pythonworkspace/sphinxenv/chinese.lm')
asr.set_property('dict', '/Users/cindy/Documents/pythonworkspace/sphinxenv/dict/chinese_dict.dict')
这里是chinese_dict.dict文件:
GStreamer的GUI一个文本框和一个按钮成功地显示。
然而,当我点击按钮说话,说一些中国话,没有出现在文本框中。
难道是我的.lm文件太旧?(只是一些猜测,我不太清楚。)
请帮忙。
(或者,如果你能不能帮我打印一些错误信息,我会理解; GStreamer的GUI和有关的bug pycharm终端显示什么都没有。)
您需要加载与-hmm
选择中国声学模型