用树莓派打造自己的对话式智能家居控制中心——语音识别

日常前言

项目教程目录:https://blog.csdn.net/qq_41082014/article/details/86605663

既然我们有了录音文件,那么接下来的事便是要交给语音识别了。本章介绍百度和讯飞的语音识别的python调用方法,以及到底谁更好

百度语音识别

from aip import AipSpeech

APP_ID = 'xxxxxxxx'
API_KEY = 'xxxxxxxx'
SECRET_KEY = 'xxxxxxxx'
#init login
client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

# 读取文件
def get_file_content(filePath):
    with open(filePath, 'rb') as fp:
        return fp.read()
        
text = client.asr(get_file_content(filePath), 'wav', 16000, {'lan': 'zh',})
print(text)

讯飞语音识别

讯飞对自然语言方面处理的口碑应该是国内比较好的了,但是把文件交给他中间需要的处理步骤太多了,这里就直接先给一个能用的例子好了

import urllib.parse, urllib.request
 
import time
import json
import hashlib
import base64

url = 'http://api.xfyun.cn/v1/service/v1/iat'
api_key = 'xxxxxxxxxx'
x_appid = 'xxxxxxxxxx'
 
def shibie(file):
    f = open(file, 'rb')
    file_content = f.read()
    base64_audio = base64.b64encode(file_content)
    body = urllib.parse.urlencode({'audio': base64_audio})
    param = {"engine_type": "sms16k", "aue": "raw"}
    x_time = int(int(round(time.time() * 1000)) / 1000)
    x_param = base64.b64encode(json.dumps(param).replace(' ', '').encode('utf-8'))
    x_checksum_content = api_key + str(x_time) + str(x_param, 'utf-8')
    x_checksum = hashlib.md5(x_checksum_content.encode('utf-8')).hexdigest()
    x_header = {'X-Appid': x_appid,
                'X-CurTime': x_time,
                'X-Param': x_param,
                'X-CheckSum': x_checksum}
    
    req = urllib.request.Request(url = url, data = body.encode('utf-8'), headers = x_header, method = 'POST')
    result = urllib.request.urlopen(req)
    result = result.read().decode('utf-8')
    result = json.loads(result)
    return result

那么到底哪一个更好呢?

  • 结构:
    • 明显看得出,百度要简单清晰很多(谁让讯飞不做pip的库呢(゚Д゚*)ノ)
  • 识别能力:
    • 多次实验中,发现,百度似乎还要更好一些,,,,
  • 速度上:
    • 不用说,百度这个家伙肯定是最快的了,相信很多人都知道,什么不懂,百度一下!百度肯定是要保持速度的,而且大多数的网络对百度是很开放的,比我我在学校,需要认证上网,但是不认证也可以访问百度首页
    • 从图中可以看到,百度的反应速度基本等于瞬间,即使是长段的识别,也毫不逊色,甚至比讯飞更准确些,比如断句方面。一般来说,超过2s的反应,也就是使用讯飞的时候,人们就会认为他很low,比如我旁边的同学…
      用树莓派打造自己的对话式智能家居控制中心——语音识别_第1张图片用树莓派打造自己的对话式智能家居控制中心——语音识别_第2张图片

So,当然选择百度啦!

本文作者: Messy
原文链接:https://www.messys.top/detail/16
版权声明: 本博客所有文章除特别声明外, 均采用 CC BY-NC-SA 4.0 许可协议. 转载请注明出处!

你可能感兴趣的:(智能语音,树莓派)