概述

近几年由于AI的迅速发展,语音相关的自然语言处理NLP项目也变多了,新的技术也越来越成熟,其中TTS(语音生成)和ASR(语音识别)是NLP中非常重要的环节。

今天我们介绍一个开源的ASR项目vosk,以及vosk的简单应用方法。

Vosk是开源的语音识别工具包。Vosk支持的事情包括:

1.      支持十九种语言 - 中文,英语,印度英语,德语,法语,西班牙语,葡萄牙语,俄语,土耳其语,越南语,意大利语,荷兰人,加泰罗尼亚语,阿拉伯, 希腊语, 波斯语, 菲律宾语,乌克兰语, 哈萨克语。

2.      移动设备上脱机工作-Raspberry Pi,Android,iOS。

3.      使用简单的 pip3 install vosk 安装。

4.      每种语言的手提式模型只有是50Mb, 但还有更大的服务器模型可用。

5.      提供流媒体API,以提供最佳用户体验(与流行的语音识别python包不同)。

6.      还有用于不同编程语言的包装器-java / csharp / javascript等。

7.      可以快速重新配置词汇以实现最佳准确性。

8.      支持说话人识别。

环境

centos:CentOS release 7.0 (Final)或以上版本

VOSK服务器

vosk服务器的部署非常简单,有发布好的docker镜像可以直接使用。

使用docker启动VOSK服务器,选择中文模型kaldi-cn。

docker run -d -p 2700:2700 alphacep/kaldi-cn:latest

测试

客户端的连接支持多种方式,包括grpc、mqtt、webrtc、websocket等,我们可以通过git上的源代码查找到合适的样例。

下载vosk-server源代码

git clone https://github.com/alphacep/vosk-server

cd vosk-server/websocket

./test.py test1.wav

注意事项:语音文件test1.wav的格式必须8khz 16bit mono PCM(8000采样率,16位采样精度,单声道,pcm)。

可以在屏幕上看到服务器返回的识别结果,结果是json格式。

{

  "result" : [{

      "conf" : 0.993990,

      "end" : 0.510000,

      "start" : 0.090000,

      "word" : "语音"

    }, {

      "conf" : 0.936422,

      "end" : 1.080000,

      "start" : 0.510000,

      "word" : "测试"

    }, {

      "conf" : 0.821353,

      "end" : 1.950000,

      "start" : 1.350000,

      "word" : "天天"

    }, {

      "conf" : 0.866125,

      "end" : 2.190000,

      "start" : 1.950000,

      "word" : "是"

    }, {

      "conf" : 0.657369,

      "end" : 2.400000,

      "start" : 2.190000,

      "word" : "二"

    }, {

      "conf" : 0.657369,

      "end" : 2.610000,

      "start" : 2.400000,

      "word" : "零"

    }, {

      "conf" : 0.651791,

      "end" : 2.820000,

      "start" : 2.610000,

      "word" : "二"

    }, {

      "conf" : 0.994422,

      "end" : 3.180000,

      "start" : 2.820000,

      "word" : "一年"

    }, {

      "conf" : 1.000000,

      "end" : 3.600000,

      "start" : 3.180000,

      "word" : "八月"

    }, {

      "conf" : 0.985209,

      "end" : 3.930000,

      "start" : 3.600000,

      "word" : "二十"

    }, {

      "conf" : 0.985209,

      "end" : 4.410000,

      "start" : 3.930000,

      "word" : "五号"

    }],

  "text" : "语音 测试 天天 是 二 零 二 一年 八月 二十 五号"

}

总结

从vosk中文库的识别结果看,还有不少的问题存在,包括识别率,分词,分段等等,和目前市面上的商业ASR引擎还是有差距的。

当然,vosk的识别库模型也支持自定义和优化,有兴趣的同学可以去官网深入的了解一下。

vosk官网:https://alphacephei.com

OK,今天我们对vosk的介绍到此结束。


空空如常

求真得真

开源ASR服务器vosk概述近几年由于AI的迅速发展,语音相关的自然语言处理NLP项目也变多了,新的技术也越来越成熟,其中TTS(语音生成)和ASR(语音识别)是NLP中非常重要的环节。今天我们介绍一个开源的ASR项目vosk,以及vosk的简单应用方法。Vosk是开源的语音识别工具包。Vosk支持的事情包括:1.支持十九种语言 - 中文,英语,印度英语,德语,法语,西班牙语,葡萄牙语,俄语,土耳其语,越南语,意大利语,荷兰人,加泰罗尼亚语,阿拉伯, 希腊语, 波斯语, 菲律宾语,乌克兰语, 哈萨克语。2.移动设备上脱机工作-Raspberry Pi,Android,iOS。3.使用简单的 pip3 install vosk 安装。4.每种语言的手提式模型只有是50Mb, 但还有更大的服务器模型可用。5.提供流媒体API,以提供最佳用户体验(与流行的语音识别python包不同)。6.还有用于不同编程语言的包装器-java / csharp / javascript等。7.可以快速重新配置词汇以实现最佳准确性。8.支持说话人识别。
环境centos:CentOS release 7.0 (Final)或以上版本
VOSK服务器vosk服务器的部署非常简单,有发布好的docker镜像可以直接使用。使用docker启动VOSK服务器,选择中文模型kaldi-cn。docker run -d -p 2700:2700 alphacep/kaldi-cn:latest
测试客户端的连接支持多种方式,包括grpc、mqtt、webrtc、websocket等,我们可以通过git上的源代码查找到合适的样例。下载vosk-server源代码git clone https://github.com/alphacep/vosk-servercd vosk-server/websocket./test.py test1.wav
注意事项:语音文件test1.wav的格式必须8khz 16bit mono PCM(8000采样率,16位采样精度,单声道,pcm)。
可以在屏幕上看到服务器返回的识别结果,结果是json格式。{  "result" : [{      "conf" : 0.993990,      "end" : 0.510000,      "start" : 0.090000,      "word" : "语音"    }, {      "conf" : 0.936422,      "end" : 1.080000,      "start" : 0.510000,      "word" : "测试"    }, {      "conf" : 0.821353,      "end" : 1.950000,      "start" : 1.350000,      "word" : "天天"    }, {      "conf" : 0.866125,      "end" : 2.190000,      "start" : 1.950000,      "word" : "是"    }, {      "conf" : 0.657369,      "end" : 2.400000,      "start" : 2.190000,      "word" : "二"    }, {      "conf" : 0.657369,      "end" : 2.610000,      "start" : 2.400000,      "word" : "零"    }, {      "conf" : 0.651791,      "end" : 2.820000,      "start" : 2.610000,      "word" : "二"    }, {      "conf" : 0.994422,      "end" : 3.180000,      "start" : 2.820000,      "word" : "一年"    }, {      "conf" : 1.000000,      "end" : 3.600000,      "start" : 3.180000,      "word" : "八月"    }, {      "conf" : 0.985209,      "end" : 3.930000,      "start" : 3.600000,      "word" : "二十"    }, {      "conf" : 0.985209,      "end" : 4.410000,      "start" : 3.930000,      "word" : "五号"    }],  "text" : "语音 测试 天天 是 二 零 二 一年 八月 二十 五号"}
总结从vosk中文库的识别结果看,还有不少的问题存在,包括识别率,分词,分段等等,和目前市面上的商业ASR引擎还是有差距的。当然,vosk的识别库模型也支持自定义和优化,有兴趣的同学可以去官网深入的了解一下。vosk官网:https://alphacephei.comOK,今天我们对vosk的介绍到此结束。
空空如常求真得真

开源ASR服务器vosk的更多相关文章

  1. SIP协议&开源SIP服务器搭建和客户端安装

    1. SIP SIP 是一个应用层的控制协议,可以用来建立,修改,和终止多媒体会话,例如Internet电话 SIP在建立和维持终止多媒体会话协议上,支持五个方面: 1)   用户定位: 检查终端用户 ...

  2. 部署rfc5766-turn-server--谷歌推荐的开源穿透服务器 [复制链接]

    谷歌推荐的开源穿透服务器,包含trun和stun服务,主页:https://code.google.com/p/rfc5766-turn-server/(个人觉得可以利用这个来进一步搭建VPN,有兴趣 ...

  3. 搭建自己的SIP服务器:开源sip服务器opensips的搭建及终端TwInkle的使用

    搭建自己的SIP服务器:开源sip服务器opensips的搭建及终端TwInkle的使用 分类: linux编译相关2013-01-05 21:38 17983人阅读 评论(24) 收藏 举报 先下载 ...

  4. Windows下免费、开源邮件服务器hMailServer

    Windows下免费.开源邮件服务器hMailServer 一.Windows下搭建免费.开源的邮件服务器hMailServer 二.邮件服务器hMailServer管理工具hMailServer A ...

  5. 开源流媒体服务器SRS学习笔记(1) - 安装、推流、拉流

    SRS(Simple RTMP Server)  是国人写的一款非常优秀的开源流媒体服务器软件,可用于直播/录播/视频客服等多种场景,其定位是运营级的互联网直播服务器集群. 一.安装 官网提供了3种安 ...

  6. Leaf - 一个由 Go 语言编写的开发效率和执行效率并重的开源游戏服务器框架

    转自:https://toutiao.io/posts/0l7l7n/preview Leaf 游戏服务器框架简介 Leaf 是一个由 Go 语言(golang)编写的开发效率和执行效率并重的开源游戏 ...

  7. NodeJS版本EasyDarwin开源流媒体服务器开发心得

    title: Node版本EasyDarwin开发心得 date: 2018-03-27 22:46:15 tags: 年后着手Node版本EasyDarwin的开发工作,截止到今天2018年03月2 ...

  8. EasyDarwin开源流媒体服务器Golang版本:服务端录像功能发布

    EasyDarwin开源流媒体服务器(www.easydarwin.org)现在使用Go版本实现了.最新的代码提交,已经支持了推流(或者拉流)的同时进行本地存储. 本地存储的原理,是在推流的同时启动f ...

  9. EasyDarwin开源流媒体服务器Golang版本:拉转推功能之拉流实现方法

    EasyDarwin开源流媒体服务器(www.easydarwin.org),拉转推是一个很有意义的功能,它可将一个独立的RTSP数据源"拉"到服务器,再通过转发协议转发给多个客户 ...

随机推荐

  1. Spring源码解析之ConfigurationClassPostProcessor(一)

    ConfigurationClassPostProcessor 在前面一个章节,笔者和大家介绍了在构造一个应用上下文时,spring会执行到PostProcessorRegistrationDeleg ...

  2. 题解 matrix

    传送门 无比毒瘤的dp题,而且伪装地好像很可做的样子 考场上我给它氪了差不多一个小时最后还是只能扔了个20pts状压走人 以下思路基本均来源于题解: 对于此题,题面中三个限制条件: (1)第 i 行第 ...

  3. JavaScript之BOM和DOM及其兼容操作详细总结

    BOM(浏览器对象模型) 所有浏览器都支持window对象,他表示浏览器窗口. 所有js全局对象,函数,变量均自动成为window对象的成员. 全局变量是window对象的属性. 全局函数是windo ...

  4. 狂神说SpringBoot02:运行原理初探

    狂神说SpringBoot系列连载课程,通俗易懂,基于SpringBoot2.2.5版本,欢迎各位狂粉转发关注学习. 微信公众号:狂神说(首发)    Bilibili:狂神说Java(视频) 未经作 ...

  5. 刷题-力扣-213. 打家劫舍 II

    213. 打家劫舍 II 题目链接 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/house-robber-ii/ 著作权归领扣网络所有.商业 ...

  6. dpkg:处理 xxx (--configure)时出错解决办法,也可用于卸载软件出错的情况

    dpkg:处理 xxx (--configure)时出错解决办法今早安装nfs时出现问题,找到该文,备份留用.然后在网上找到了这片文章,按步骤走就解决了,中间会提示自动卸载一下,执行那个命令就好了,我 ...

  7. idea控制台中文乱码解决办法

    也可以通过idea右下角的设置,但是properties文件是不能设置的,这个只能在file->setting->file encodings 设置

  8. Mysql for Mac 安装及环境配置

    一.下载及安装 首先去官网下载mac对应版本的Mysql,尾缀为.dmg的程序包 下载地址:https://dev.mysql.com/downloads/mysql/ 下载完毕后,一步步傻瓜式安装即 ...

  9. openresty(nginx) 配置 http与https使用同一个端口,禁止 IP 直接访问

    准备好工作目录 mkdir work cd work mkdir conf logs 准备好 conf/nginx.conf 配置文件, 把 your.domain 换成你自己的域名 user abc ...

  10. Systemd Journald占用资源过多

    journald占用过多磁盘空间 方法一 检查当前journal使用磁盘量 journalctl --disk-usage 清理方法可以采用按照日期清理,或者按照允许保留的容量清理,只保存2天的日志, ...