语音识别

关于语音合成和识别

匿名 (未验证) 提交于 2019-12-03 00:37:01
最近研究了下语音合成和语音识别。分别看了一些文章,也下载jdk写了些代码测试了下。 发现,对于语音合成。中文来说,百度语音和科大讯飞,基本都差不多。 英文的话,百度合成出来的效果不佳。科大讯飞稍好点。但是总体都没有国外语音合成好。比如 iSpeech、FreeTTS,可能国外的主语都是英语的缘故吧。 百度日调用额度比较多,据说有2万额度。讯飞每天就500,有点少。iSpeech 是要收费的。FreeTTS 可以离线使用。 百度识别和合成代码: public class SoundAPI { private static final Logger logger = LoggerFactory.getLogger(SoundAPI.class); final static String FILE_PATH = Config.getString("download.folder"); // 设置APPID/AK/SK private static final String APP_ID = "你的APP ID"; private static final String API_KEY = "你的key"; private static final String SECRET_KEY = "你的秘钥"; // 初始化一个AipSpeech private static AipSpeech

NLP-对话式交互技术

匿名 (未验证) 提交于 2019-12-03 00:22:01
对话式交互技术原理及流程揭秘 http://www.infoq.com/cn/articles/alibaba-AI-voic?useSponsorshipSuggestions=true&utm_source=articles_about_AI&utm_medium=link&utm_campaign=AI 语音识别 ASR ASR(Automatic Speech Recognition)直译为自动语音识别,是一种通过声学模型和语言模型,将人的语音识别为文本的技术。近年来,随着深度学习在语音识别中的广泛使用,识别的准确率大大提高,让这项技术能被广泛地应用于语音输入、语音搜索、实时翻译、智能家居等领域,让人与机器的语音交互变为可能。 语义理解 NLU 语音识别只是知道我们说了什么,但真正要理解我们说的是什么,就需要依靠NLU这项技术。NLU(Natural Language Understand)直译为自然语言理解,是NLP(Natural Language Processing,自然语言处理)的一个子集,专注于“口语表达和对话”方向的自然语言处理。我们首先快速了解一下NLP,NLP研究主要用来解决下面这些问题: 分词:中文的书写词语之间不会用空格等符号来分割,分词就是将汉字序列切分成词序列,因为在汉语中,词是承载语义的基本单元。比如从北京飞上海这句话的分词为:从 北京 飞 上海

百度语音识别初探

匿名 (未验证) 提交于 2019-12-02 23:38:02
最近了解了一下百度语音识别的api,写下一些东西做个记录吧(主要是省的以后忘了。。。。) 1、 登录百度ai开放平台,没有账号的自己去注册,反正不要钱 2、因为语音识别是HTTP/POST 的方式调用的所以平台不重要,但是为了方便调用也是有SDK的,但是离线包主要针对Android平台和iOS平台开放(WTF!!),所以只下载了C#版的(也有Linux C++版正在试,后续可能会写写)。 3、因为是在unity平台下用,所以要去github上下载sdk的源码地址https://github.com/Baidu-AIP/dotnet-sdk 4、直接把包解压到unity工程中的一个目录下,简单粗暴 因为是公司项目贴一些非业务核心代码 (2)以下是上传函数 (3)下面的是将返回的结果合成语音的代码 (4) 用unity录音的网上有很多资料自己去查吧 最后说一说我的感觉吧,这个 人工智障 文章来源: https://blog.csdn.net/u012805073/article/details/90765547

让App“长耳朵”,Android语音识别解决方案实例

≡放荡痞女 提交于 2019-12-01 21:44:16
由于最近在做智能家居方向的产品,需要在App上对机器人实现一个简单的语音控制,于是开始寻找相应的解决方案,由于某种原因,google自己的语音识别API并不能在国内发挥作用,所以我们选择国内的科大讯飞语音识别服务; 示例源码下载地址在博客结尾,不用分 最后实现的效果: 对特定的语音指令能够做出相应的响应,对非指令集中的指令这提示错误; 具体实现: 1.获得SDK并加入到项目中: 在科大讯飞的开放平台 http://www.xfyun.cn/注册帐号,并创建应用,下载语音相关的SDK 开发包是根据创建的应用生成的,我们只需要将包中的 导入即可,官方只给出了Eclipse的导入方法; 在Android Studio中导入方法如下: 先将Msc.jar 和armeabi文件夹复制到libs Msc.jar包通过File ->Project Structure -> Dependencies导入即可 armeabi包导入,在gradle(Module的)文件的Android下加入: sourceSets { main { jniLibs.srcDirs = ['libs'] } } 然后make project,这样讯飞语音的SDK就集成到项目中了; 我们如果需要语音输入是能有动画效果,官方也提供了一个解决方案: 将开发包下的iflytek文件夹加入到assets下: 2

如何利用python进行在线语音识别

£可爱£侵袭症+ 提交于 2019-12-01 21:37:53
如何利用python实现在线语音识别 本篇文章主要介绍使用 python 借助 百度人工智能 实现在线的 语音识别 功能。 学习经历 在正式介绍如何进行在线语音识别功能之前我想先分享一下我自己的学习顺序: 首先对核心内容语音识别模块进行编写,在编写的过程中发现音频文件需要使用 pcm格式 ,于是下载了百度AI的范例pcm文件,并且完成了语音识别,接下来学习转码,用手机录音,然后用 ffmpeg 将录音从mp3文件转换为pcm文件,开始使用cmd手动输入实现转码,顺利转码后改为学习用python调用cmd自动执行。最后是学习python录音,录音得到的文件是wav格式,于是又把mp3->pcm的代码改为wav->pcm,最后按顺序将录音,转码,识别三个模块串在一起,形成了一个在线语音识别的程序。程序可以实现固定时长的录音(说话前预设时间,中途无法中断或延长时间)保存录音文件并将录音文件转码成pcm格式,然后将pcm音频上传到百度AI平台(这就意味着必须保证网络的畅通),进行识别后传输回识别内容。 作为一个初学者在决定学习这项功能时觉得任务非常繁重,网上能搜集到的资料驳杂而零碎,但通过不断的拼凑与尝试,最终完成了程序的编写。现在将我的实现方法分享给大家,希望可以与大家互相交流学习! 逻辑顺序 用python实现在线语音识别,我们首先需要一段语音,这段语音的格式是 .pcm

基于树莓派的语音机器人

為{幸葍}努か 提交于 2019-12-01 21:34:58
近年来语音识别发展迅速也带动了人工智能的发展。曾经渴望自己做一个机器人,但是无奈,心有余而力不足,经过多年的积累,小白的我也能用站着巨人的肩膀上玩下机器人了。 准备工作:树莓派,音频模块,stm32单片机,百度语音识别接口,喇叭。 整体思路: 1. 由于树莓派没有ADC模块,所以这里借助于stm32的ADC模块来实现将语音信号转换成数字信号,然后通过串口传 输 到树莓派你中,树莓派你将数据组装成wave文件,便于语音识别。 2. 通过http协议将组装的语音文件上传到百度语音识别平台进行识别。 文档说明 (免费调用) 3. 根据识别结果做出相应的处理。 4. 对于需要播放语音时,根据百度语音合成接口合成语音然后使用mplayer播放出来。mplayer安装参考 博客 部分代码: 将音频转换成wave文件 #include <stdio.h> #include <stdlib.h> #include <stdint.h> #include <wiringPi.h> #include <wiringSerial.h> #include <unistd.h> #include <fcntl.h> #include <sys/types.h> #include <sys/ioctl.h> #include "listen.h" //gcc -o uart uart.c -lwiringPi

海思HI35xx语音识别方案

狂风中的少年 提交于 2019-12-01 21:34:30
前言 语音识别是智能化应用的一个重要分支,也是语音交互功能的基础。语音识别基于神经网络算法,借助大数据进行模型训练,据科大讯飞相关数据报道,它们已经能够实现98%以上的准确识别率,同时支持多种外语及国内的一些方言。从语音技术实现方式分类可以分为本地识别和云识别,本地识别主要是借助语音芯片诸如LD3320等,而云识别目前国内比较火的有科大讯飞、百度AI等云服务提供,它们提供友好的API接口,支持多种开发语言,相比于本地语音识别,它的识别准确率更高,应用场景更为灵活。 海思HI35xx音频知识 海思音频模块包含音频输入(AI)、音频输出(AO)、音频编码(AENC)、音频解码(ADEC)这四个模块,这几个模块实现了声音采集、声音播放以及声音编解码的功能。原始的音频信号是模拟信号,通过pcm方式进行数字化,常用音频采样频率有8khz、16khz、32khz、48khz。根据香农采样定理, 为了不失真地恢复模拟信号,采样频率应该不小于模拟信号频谱中最高频率的 2 倍 ,而人能听到的声音频率范围在 20~20000hz ,而且听力敏感区是集中在中频区段,所以用 16khz 频率采样作为语音识别原始数据既能保持音质,也能降低数据运算复杂度。 根据笔者的经验,海思音频模块硬件实现方式有两种,一种是将音频芯片集成到芯片内部,作为片上资源使用,另一种是外接音频芯片方式,如wm9874

使用百度API实现语音识别——in python

笑着哭i 提交于 2019-12-01 21:34:04
前几天研究了一下在树莓派上使用麦克风,目的是实现树莓派上的语音识别。 现在要实现语音识别不需要自己实现算法,只要能把声音通过网络传给语音识别服务提供商就可以了,语音识别在服务提供商的服务器上完成,然后把结果返回过来。这种模式对于我这种不追求自主知识产权的人来说已经足够了。 目前语音识别服务主要有百度、科大讯飞、google。 百度提供ios、安卓、linux等的sdk,同时还提供基于http的访问接口,用户只要能实现http post method就可以了,可以说非常的方便。百度的开放平台审核效率还是很高的,我在大年初一申请语音识别API权限,他们初三就审核通过了!大年初三!通过了!!!用起来也很简单,半天时间就可以调通的了。 科大讯飞也提供各主流平台的sdk,另外有树莓派的sdk可供申请(还没拿到,不知道是不是基于http的)。讯飞能做到目前的程度,一定有其过人之处,希望有机会能试用一下。 google,呵呵,国内不要用了吧。 下面记录一下百度语音识别API的开发过程: 1. 在百度开放平台新建工程,申请到ID、API key、secret key以及开发文档等。 2. 用上面的数据到百度oauth获取access token。 3. 把要识别的语音数据按照百度文档中的格式传到其服务器上。我使用的是隐式上传,需要对语音数据做base64编码,和另外一些格式信息组成json数据

SAPI 语音识别 Grammar的设置

跟風遠走 提交于 2019-12-01 15:53:22
应用程序可以利用SpSharedRecoContext接口创建不同的与语音识别引擎的连接。每一个连接都可以使用各自的事件并且使用不同的语音识别语法(grammars)。每一个基于SAPI语音识别的应用程序必须具有至少一个SpSharedRecoContext接口。 第一种方法: 自己定义Grammar using System; using System.Collections; using System.ComponentModel; using System.Drawing; using System.Data; using System.Windows.Forms; using System.Diagnostics; using SpeechLib; namespace WindowsFormsApplication3 { public partial class Form1 : Form { private SpeechLib.ISpeechGrammarRule menuRule = null; private SpeechLib.SpSharedRecoContext objRecoContext; private ISpeechRecoGrammar grammar; public Form1() { InitializeComponent(); } private

华为语音转文字怎么设置,如何完成在线音频转文字

笑着哭i 提交于 2019-11-30 03:19:55
使用华为手机的朋友一定有感觉到手机上有太多的功能能够帮助我们快速的完成工作,那么华为手机上有一个能够将语音转换成文字的功能你知道如何使用吗?如果还不知道的话下面我们就来一起学习下如何使用手机上的语音识别功能快速的将语音识别成文字! 那么我们在想要将语音识别转换成文字的时候,就可以在手机的备忘录里面点击右下角的“+”按钮 在点击后就会进入到“编辑笔记”的界面,在底部有一个语音的功能,点击后就可以开始将说话的内容识别转换成文字 可以看到语音识别的内容在稍等片刻之后就转换出文字显示了出来。 那么如果你的手机不支持这个功能但是想要将语音转换成文字应该如何简单轻松的将语音转换成文字呢。 其实在我们的手机应用市场里面有一个专业的能够将语音转换成文字的应用“录音转文字助手”。 在应用市场好做直接浏览器搜索找到这个应用将它安装在手机之后,想要将语音转换成文字就可以在它的界面点击选择“录音实时转写”来将语音实时转换成文字 在点击功能之后,就可以在录音识别的界面按下录音按钮将语音内容识别转换出文字 当然在文字转换出来后想要将文字进行翻译,复制或者导出都可以直接在界面按下对应的按钮来进行操作。 语音转换成文字的方法是不是非常的简单,相信聪明的你一定能够轻松学会语音识别文字的功能,那么需要的配音赶快去试试吧。 来源: https://my.oschina.net/u/4204826/blog