logo资料库

unity语音识别总结.docx

第1页 / 共11页
第2页 / 共11页
第3页 / 共11页
第4页 / 共11页
第5页 / 共11页
第6页 / 共11页
第7页 / 共11页
第8页 / 共11页
资料共11页,剩余部分请下载后查看
unity 百度语音识别课程设计开发总结 一:简介及流程: 1.1 课题背景及相关概念 随着现代科学的发展,移动江联网己迅速成为当今世界发展最快、规模鉍大的 市 场前景最好的行业。但由于现有的移动终端设备交互方式存在 i#多局限性,譬 如键盘 太小,输入文字不便;以及无法处理特定场景下的交丌,如驾:午:和步行等 愔形。所 以人们在与机器的佔总交流中,需要一种更加方便、自然的方式,而语 言是人类 MM 要、M 有效、最常川和 M 方便的通佶方式。自从人类可以制造各种 机器以来,人们 就有一个理想,那就是 U:各种机器能‘‘听愦”人类的语音并能按 人的口头命令来 行动,从而实现人机的语言交流。这就很容易 lh 人们想到能否川 人类的自然语吉代 替传统的人机交互方式(如键盘、W 标等)。 语音识别技术,也被称力自动语音识別(Automatic Speech Recognition 简称 AS R),其目标是将人类的语音中的同汇内容转换力计算机可读的输入,例如按键、 二进制 编码或#字符序列,也就是让机器通过 Ui 別和理解把语音信号转变力相应 的文本或命 令的技术。自动语音识別技术所要解决的 M 题是 U:计算机能够“听傾” 人类的语 吉,将语言屮包含的文字信总“提取”出来。ASR 技术的出现,使人类希 望机器“听 愤”人类的语言的理想得以实现。 1.2 课题研究意义 语音识别技术是一门交叉学科,语音识别正逐步成为信息技术中人机交互的 关键 技术,语音识别技术与语音合成技术的结合,开启了人机交互方式的新时代, 它将彻 底解放用户的双手与眼睛,使人们能够甩掉键盘,通过语音命令进行操作。 语音技术 的应用己经成为一个具有竞争性的新兴高技术产业。当今,语音识别产 品在人机交互 应用中占到越来越大的比例。可以预见,语音操作将会是未来很长 一段时间内智能终 端继键盘和触摸操作之后的必然发展趋势。 1.3 研究现状 语音识别的研究工作可以追溯到 20 世纪 50 年代 AT&T 贝尔实验室的 Audry 系 统,它是一个可以识别十个英文数字的语音识别系统。
1.4 程序编写流程 1.unity 环境。 2.百度注册账号获取自己的账号密码。(在程序中通过网络访问百度语音库时使 用)。 3.本程序未使用官方提供的 sdk 解析库文件,而是用 LitJson 进行数据的解压操 作。 4.将以上 3 个文档上拖至该位置 5.进行相应的 UI 界面设置 6.进行语音识别项目的发开 1.5 开发平台及工具 1.unity 2.C# 3.百度语音包 二:代码设计流程 1.实现图解 开始按钮 开始录音
获取访问权限 开始了录制音频 成功 上传音频 访问成功并上传 百度内部服务器进行 相应的解析,并产生 结果 2.代码详解: 1.导入相应的包并引用到程序: using System.Collections; using System.Collections.Generic; using UnityEngine; using LitJson; using UnityEngine.Networking; using UnityEngine.UI; using UnityEngine.Events; using System; using System.Text.RegularExpressions; 再次成功 post 百度服务器,成功并下 载生成的语音结果
此处为外加解析包 2.UI 界面的构建(此处省略) 3.定义百度注册访问信息变量: 4.运用 WWWForm 类进行个人访问信息的登录,并向授权服务地址 https://aip.baid ubce.com/oauth/2.0/token 发送请求(推荐使用 POST),并在 URL 中带上以下参 数: grant_type: 必须参数,固定为 client_credentials; client_id: 必须参数,应用的 API Key; client_secret: 必须参数,应用的 Secret Key; 5.获取 Access Token 请求 URL 数据格式
向授权服务地址 https://aip.baidubce.com/oauth/2.0/token 发送请求(推荐使 用 POST),并在 URL 中带上以下参数: grant_type: 必须参数,固定为 client_credentials; client_id: 必须参数,应用的 API Key; client_secret: 必须参数,应用的 Secret Key; 5.获取 json 数据 6.运用控制音频录制:
7.上传录制的音频(百度语音文字的生成) 8.服务器处理完成,向服务器发送请求并且下载数据到本地,然 后进行显示 三:运行结果:
语音未录入或录入失败:
四:代码: using System.Collections; using System.Collections.Generic; using UnityEngine; using LitJson; using UnityEngine.Networking; using UnityEngine.UI; using UnityEngine.Events; using System; using System.Text.RegularExpressions; //当你添加的一个用了 RequireComponent 组件的脚本,需要的组件将会自动被添加到 gameobject(游戏物体) [RequireComponent(typeof(AudioSource))] public class sound_con : MonoBehaviour{ //public static Action action; public Text text; public Text text1; public string AppID= "14939743"; public string APIKey= "81tv3T5vF6DNfWlPjcXwsSs2"; public string SecretKey= "3roMPqjRBIjGVPTOkkpDlyY7MzI2OZtK"; /// /// 获取相应的请求地址 /// 返回 Json 数据,每次获取的 token 数据都不相同 /// ///token 身份验证 public string GetTokenUrl= "https://aip.baidubce.com/oauth/2.0/token"; /// /// 获取到相应的 token /// public string Access_Token = ""; public Button button_click; [Header("音频录制时间")] public int record_time = 10; [Header("声频")] public int high_ = 16000; //录音状态 private bool Is_true=false; //麦克风的设备名称 public string Mic_name = "Realted High Definition Audio"; /// /// 录制的音频片段 /// public AudioClip Audio_record; /// /// 播放的音频音源 /// public AudioSource audio_source; /// /// 语音识别地址 /// public string speechrecongnition_Address = "https://vop.baidu.com/server_api"; /// /// 语音合成地址 /// public string SpeechSynthesis_Address = "http://tsn.baidu.com/text2audio"; /// /// 识别到的文字 /// //2 public string recorded_text=string.Empty; // Use this for initialization
分享到:
收藏