Rhino SpeechtoContent引擎演示。

pvrhinodemo的Python项目详细描述


Rhino Speech to Intent引擎演示

加拿大温哥华制造

此软件包包含用于处理实时音频(即麦克风)和音频文件的演示和命令行实用程序 使用Rhino Speech to Intent引擎。在

犀牛

Rhino是Picovoice的语音对意图引擎。它直接从给定上下文中的口头命令推断出意图 实时感兴趣。例如,给出一个口头命令

Can I have a small double-shot espresso?

Rhino推断用户并发出以下推断结果:

{"isUnderstood":"true","intent":"orderBeverage","slots":{"beverage":"espresso","size":"small","numberOfShots":"2"}}

犀牛是:

  • 使用在现实环境中训练的深层神经网络。在
  • 结构紧凑,计算效率高。它非常适合物联网。在
  • 自助服务。开发人员可以使用Picovoice Console训练自定义模型。在

兼容性

  • Python3
  • 可在Linux(x86_64)、Mac(x86_64)、Windows(x86_64)、Raspberry Pi(所有变体)和BeagleBone上运行。在

安装

麦克风演示使用PyAudio录制输入音频。咨询 安装指南位于PyAudio。在

^{pr2}$

使用

文件演示

它允许在音频文件的语料库上测试Rhino。演示主要用于量化性能 标杆管理。它接受16kHz的音频文件。如果立体声文件是 前提是它只处理第一个(左)通道。注意,只有相关的口头命令应该出现在 文件和其他讲话。另外,在文件结尾处至少要有一秒钟的静默。在

rhino_demo_file --input_audio_path ${AUDIO_PATH} --context_path ${CONTEXT_PATH}

麦克风演示

它从麦克风打开音频流,并在口头命令中执行推理:

rhino_demo_mic --context_path ${CONTEXT_PATH}

PyAudio识别的默认音频输入设备可能不是正在使用的设备。有一对 为了解决这个问题,在演示应用程序中加入了调试工具。首先,在控制台中键入以下内容:

rhino_demo_mic --show_audio_devices

它提供有关盒子上各种音频输入设备的信息。在Linux机器上,这是控制台输出

'index': '0', 'name': 'HDA Intel PCH: ALC892 Analog (hw:0,0)', 'defaultSampleRate': '44100.0', 'maxInputChannels': '2'
'index': '1', 'name': 'HDA Intel PCH: ALC892 Alt Analog (hw:0,2)', 'defaultSampleRate': '44100.0', 'maxInputChannels': '2'
'index': '2', 'name': 'HDA NVidia: HDMI 0 (hw:1,3)', 'defaultSampleRate': '44100.0', 'maxInputChannels': '0'
'index': '3', 'name': 'HDA NVidia: HDMI 1 (hw:1,7)', 'defaultSampleRate': '44100.0', 'maxInputChannels': '0'
'index': '4', 'name': 'HDA NVidia: HDMI 2 (hw:1,8)', 'defaultSampleRate': '44100.0', 'maxInputChannels': '0'
'index': '5', 'name': 'HDA NVidia: HDMI 3 (hw:1,9)', 'defaultSampleRate': '44100.0', 'maxInputChannels': '0'
'index': '6', 'name': 'HDA NVidia: HDMI 0 (hw:2,3)', 'defaultSampleRate': '44100.0', 'maxInputChannels': '0'
'index': '7', 'name': 'HDA NVidia: HDMI 1 (hw:2,7)', 'defaultSampleRate': '44100.0', 'maxInputChannels': '0'
'index': '8', 'name': 'HDA NVidia: HDMI 2 (hw:2,8)', 'defaultSampleRate': '44100.0', 'maxInputChannels': '0'
'index': '9', 'name': 'HDA NVidia: HDMI 3 (hw:2,9)', 'defaultSampleRate': '44100.0', 'maxInputChannels': '0'
'index': '10', 'name': 'Logitech USB Headset: Audio (hw:3,0)', 'defaultSampleRate': '44100.0', 'maxInputChannels': '1'
'index': '11', 'name': 'sysdefault', 'defaultSampleRate': '48000.0', 'maxInputChannels': '128'
'index': '12', 'name': 'front', 'defaultSampleRate': '44100.0', 'maxInputChannels': '0'
'index': '13', 'name': 'surround21', 'defaultSampleRate': '44100.0', 'maxInputChannels': '0'
'index': '14', 'name': 'surround40', 'defaultSampleRate': '44100.0', 'maxInputChannels': '0'
'index': '15', 'name': 'surround41', 'defaultSampleRate': '44100.0', 'maxInputChannels': '0'
'index': '16', 'name': 'surround50', 'defaultSampleRate': '44100.0', 'maxInputChannels': '0'
'index': '17', 'name': 'surround51', 'defaultSampleRate': '44100.0', 'maxInputChannels': '0'
'index': '18', 'name': 'surround71', 'defaultSampleRate': '44100.0', 'maxInputChannels': '0'
'index': '19', 'name': 'pulse', 'defaultSampleRate': '44100.0', 'maxInputChannels': '32'
'index': '20', 'name': 'dmix', 'defaultSampleRate': '48000.0', 'maxInputChannels': '0'
'index': '21', 'name': 'default', 'defaultSampleRate': '44100.0', 'maxInputChannels': '32'

可以看出,最后一个设备(索引21)被认为是默认的。但在这台机器上,耳机被用作 索引为10的输入设备。找到正确的索引后,可以按如下方式调用演示应用程序

rhino_demo_mic --context_path ${CONTEXT_PATH} --audio_device_index 10

如果问题仍然存在,我们建议将录制的音频存储到文件中以供检查。这可以通过

rhino_demo_mic --context_path ${CONTEXT_PATH} --audio_device_index 10 --output_path ~/test.wav

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Eclipse:提取方法功能失败   java如何检查用户是否安装了应用程序?   java Axis2 WSDL2Java:生成的存根中缺少noarg操作   java SonarQube。检测超类中带有特定注释的重写方法的情况。(此外部API)   bash如何在没有通配符扩展的情况下将*传递给java程序?   java无法解析符号“R”&无法解析菜单\u主xml中的符号   Android(Java)通过递归方法填充ArrayList   java Kafka通过微服务订阅不存在的主题   SVNKit中的java查询   scala在OSX上运行“play test”会导致java应用程序出现在dock中   J2ME中的java URL编码?   java找不到符号getInstance NetBeans   java Tang在进入另一个二维码扫描活动时停止   unix Amazon Web服务Java类路径   如何创建用Java创建的数据类型的副本?