本节需要的两个工具:

1.FFmpeg:

链接:https://pan.baidu.com/s/1jonSAa_TG2XuaJEy3iTmHg

密码:w6hk

2.baidu-aip:

pip install baidu-aip

一丶创建小机器人

目前市面上主流的AI技术提供公司有很多,比如百度,阿里,腾讯,主做语音的科大讯飞,做只能问答的图灵机器人等等

这些公司投入了很大一部分财力物力人力将底层封装,提供应用接口给我们,尤其是百度,完全免费的接口

既然百度这么仗义,咱们就不要浪费掉怎么好的资源,从百度AI入手,开启人工智能之旅

看看我大百度的AI大法,这些技术全部都是封装好的接口,看着就爽

接下来咱们就一步一步的操作一下

首先进入控制台,注册一个百度的账号(百度账号通用)

开通一下我们百度AI开放平台的授权

然后找到已开通服务中的百度语音

走到这里,想必已经知道咱们要从语音入手了,语音识别和语音合成

打开百度语音,进入语音应用管理界面,创建一个新的应用

创建一个应用

回到应用列表我们可以看到已创建的应用了

这里面有三个值 AppID , API Key , Secret Key 记住可以从这里面看到 , 在之后的学习中我们会用到

好了 百度语音的应用已经创建完成了 接下来 我会用Python 代码作为实例进行应用及讲解

一.安装百度的人工智能SDK:

首先咱们要 pip install baidu-aip 安装一个百度人工智能开放平台的Python SDK实在是太方便了,这也是为什么我们选择百度人工智能的最大原因

安装完成之后就来测试一下:

from aip importAipSpeech"""你的 APPID AK SK"""APP_ID= '15520977'API_KEY= 'DlG7q19rfg1XEgsI7KVfgZe'SECRET_KEY= 'tt12zkFdv0e2pIwCH4cSzgqu1yKDZ3B'client=AipSpeech(APP_ID, API_KEY, SECRET_KEY)

result= client.synthesis('你好呀', 'zh', 1, {'vol': 5,'spd': 3,'pit': 7,'per': 4,

})#识别正确返回语音二进制 错误则返回dict 参照下面错误码

if notisinstance(result, dict):

with open('audio.mp3', 'wb') as f:

f.write(result)

在工程目录下,就可以看到 s1.mp3 这个文件了,来听一听

上面咱们测试了一个语音合成的例子,那么就从语音合成开始入手

二.语音合成:

技术上,代码上任何的疑惑,都可以从官方文档中得到答案

baidu-aip Python SDK 语音合成技术文档 : https://ai.baidu.com/docs#/TTS-Online-Python-SDK/top

刚才我们做了一个语音合成的例子,就用这个例子来展开说明

先来看第一段代码

from aip importAipSpeech"""你的 APPID AK SK"""APP_ID= '15421977'API_KEY= 'DlG7q19rfg1X1EjsI7KVfgZe'SECRET_KEY= 'tt12zkFdv0e2pIdwH4cSzgqu1yKDZ3B'client= AipSpeech(APP_ID, API_KEY, SECRET_KEY)

这是与百度进行一次加密校验 , 认证你是合法用户 合法的应用

AipSpeech 是百度语音的客户端 认证成功之后,客户端将被开启,这里的client 就是已经开启的百度语音的客户端了

再来看第二段代码:

result = client.synthesis('你好呀', 'zh', 1, {'vol': 5,'spd': 3,'pit': 7,'per': 4,

})#识别正确返回语音二进制 错误则返回dict 参照下面错误码

if notisinstance(result, dict):

with open('audio.mp3', 'wb') as f:

f.write(result)

用百度语音客户端中的synthesis方法,并提供相关参数

成功可以得到音频文件,失败则返回一段错误信息

从参数入手分析:

按照这些参数,从新发起一个语音合成

这都是语音语调的作用 0 - 9 其实就是 御姐音 - 萝莉音

这就是人工智能中的语音合成技术,调用百度的SDK,只用了5分钟,完成了1年的开发量,哈哈哈哈

一定要自己练习一下语音合成, 别把它玩儿坏了

三.语音识别:

哎,每次到这里,我都默默无语泪两行,声音这个东西格式太多样化了,如果要想让百度的SDK识别咱们的音频文件,就要想办法转变成百度SDK可以识别的格式PCM

目前DragonFire已知可以实现自动化转换格式并且屡试不爽的工具 : FFmpeg 这个工具的下载地址是 : 链接:https://pan.baidu.com/s/1jonSAa_TG2XuaJEy3iTmHg 密码:w6hk

FFmpeg 环境变量配置:

首先你要解压缩,然后找到bin目录,我的目录是 C:\ffmpeg\bin

然后 以 windows 10 为例,配置环境变量

如果没搞明白的话,我也没有办法了,这么清晰这么明白

尝试一下,是否配置成功

看到这个界面就算配置成功了,配置成功有什么用呢, 这个工具可以将wav wma mp3 等音频文件转换为 pcm 无压缩音频文件

做一个测试,首先要打开windows的录音机,录制一段音频(说普通话)

现在假设录制的音频文件的名字为 audio.wav 放置在 D:\DragonFireAudio\

然后我们用命令行对这个 audio.wav 进行pcm格式的转换然后得到 audio.pcm

命令是 : ffmpeg -y -i audio.wav -acodec pcm_s16le -f s16le -ac 1 -ar 16000 audio.pcm

然后打开目录就可以看到pcm文件了

pcm文件已经得到了,赶紧进入正题吧

百度语音识别SDK的应用:

前提是你的audio.pcm 要与你当前的文件在同一个目录,还是分段看一下代码

读取文件的内容,file_context 是 audio.pcm 文件打开的二进制流

asr函数需要四个参数,第四个参数可以忽略,自有默认值,参照一下这些参数是做什么的

第一个参数: speech 音频文件流 建立包含语音内容的Buffer对象, 语音文件的格式,pcm 或者 wav 或者 amr。(虽说支持这么多格式,但是只有pcm的支持是最好的)

第二个参数: format 文件的格式,包括pcm(不压缩)、wav、amr (虽说支持这么多格式,但是只有pcm的支持是最好的)

第三个参数: rate 音频文件采样率 如果使用刚刚的FFmpeg的命令转换的,你的pcm文件就是16000

第四个参数: dev_pid 音频文件语言id 默认1537(普通话 输入法模型)

再来看下一段代码,打印返回结果:

成功的dict中 result 就是我们要的识别文本

失败的dict中 err_no 就是我们要的错误编码,错误编码代表什么呢?

如果err_no不是0的话,就参照一下错误码表

到此百度AI语音部分的调用就结束了,是不是感觉很简单

python如何实现人工智能应用_Python人工智能之初识接口相关推荐

  1. python开发人工智能机器人_Python人工智能?

    关于Python Python是一门计算机程序语言,目前在人工智能科学领域被广泛应用,广泛应用就表明各种库,各种相关联的框架都是以Python作为主要语言开发出来的. 谷歌的TensorFlow大部分 ...

  2. 人工智能python线上培训系统_Python人工智能学习线路

    Python有非常多优秀的深度学习库可用,比如matplotlib.Numpy.sklearn.keras等大量的库,像pandas.sklearn.matplotlib这些库都是做数据处理.数据分析 ...

  3. python人工智能就业_Python人工智能就业前景怎么样?

    Python人工智能就业前景怎么样?人工智能想必很多人都很熟悉,它已经融入到我们生活的各个领域,甚至我国将人工智能定为国家级的战略发展规划,未来人工智能市场十分庞大,总体来讲,Python人工智能前景 ...

  4. python微信自动发消息_Python使用微信itchat接口实现查看自己微信的信息功能详解...

    Python使用微信itchat接口实现查看自己微信的信息功能详解 发布时间:2020-09-09 04:20:11 来源:脚本之家 阅读:134 本文实例讲述了Python使用微信itchat接口实 ...

  5. python企业微信群聊_python调用企业微信接口发送群聊消息代码参考

    # Author: sea 2019 import requests import json import time class WebchatUtil: corpid = '必须填写你自己申请的' ...

  6. python百度ai拼接身份证_Python 百度ai身份证接口案例

    调用百度Ai 完成一个学生信息录入的网页小案例 添加图片,身份证信息对号入座 utils.py #encoding:utf-8 import requests import urllib from u ...

  7. python人工智能是什么意思_python人工智能是什么意思

    python人工智能是指基于Python平台实现人工智能.python是一门应用非常广泛的脚本程序语言,而人工智能是研究.开发用于模拟.延伸和扩展人的智能的理论.方法.技术及应用系统的一门新的技术科学 ...

  8. tensorflow和python先学哪个-前辈说先学会了这些Python知识点,再谈学习人工智能!...

    原标题:前辈说先学会了这些Python知识点,再谈学习人工智能! 首先我们看一看Python的优势: 开源,跨平台. 社区.不要小看这一点.社区意味着有很多教程.书籍,出了问题很容易google到,乃 ...

  9. 人工智能用python还是java_学会java和python语言,可以开始搞人工智能吗?

    作为一名软件开发工程师,个人认为,当你学会Java和Phthon语言使用后,不建议你直接上手人工智能.下面我来说一下个人看法: 人工智能领域门槛较高 人工智能对于一般同学而言,其入门门槛相对较高,你虽 ...

最新文章

  1. 互联网产品策划经验总结(用户端产品)
  2. mybatis文档笔记
  3. 小米云能导入到华为云吗_小米11值得买吗?小米11和华为Mate40、iPhone 12相比,哪款性价比最高?...
  4. Oracle解析XML 节点信息并转换String 类型
  5. 楼天成夺Facebook黑客杯季军,已被Facebook录用得到美国绿卡
  6. 12 个提高JavaScript编码效率的 NPM 技巧
  7. vue路由跳转动画_Vue路由跳转动画
  8. 图解 Android Handler 线程消息机制
  9. 蓝桥杯 ALGO-92 算法训练 前缀表达式
  10. nyoj244 16进制的简单运算
  11. mysql查询时去除重复数据以及 FOUND_ROWS 统计记录函数
  12. android与web服务器,Android之与WEB服务器交换数据(转)
  13. Android之本地数据存储(SQLite数据库)
  14. 【转载】PowerDomain简介
  15. SecureCRT中文乱码解决方法
  16. py---web学习笔记09(JQuery)
  17. 我的世界1.7.10服务器修改器,1.7.10tmi内置修改器
  18. glm-0.9.9.7 + visual studio 2019 + window10下载安装
  19. python等额本息和等额本金_用Python解读房贷利率,要不要看随你
  20. 1、RPC框架解析:开篇-什么是RPC?

热门文章

  1. Python变量数据类型、输入输出
  2. python基于mask检测人体并输出黑白剪影
  3. Java常用类练习(下篇)
  4. NFT将成为美妆品牌迈入元宇宙的“发力点”
  5. 网络工程之思科路由器基本配置操作讲解
  6. 关闭Kingsoft Office(WPS)底部广告弹窗
  7. python打开摄像头黑屏怎么办_临时解决pygame启动时黑屏问题
  8. 地表建筑物识别——Task01赛题理解
  9. Response.ContentType 网页输出word excel 的格式
  10. 使用NLP库textblob进行情感分析-红楼梦评论