从0开始语音识别

    科技2022-07-16  105

    为了实现声音锁要开始新的python学习了 学习资料: 从0开始语言识别 课堂讲义提取码:n15l

    第一课 r.recognize_google()

    第一步百度云下载 Step2 放到C盘用户的Administrator 别问,只有放在这里我才会在jupyter里打开 Step3 导入库 没有的需要pip install一下

    介绍一下recognition云辨识的API 这里面只有google不需要key

    Step4 科学上网 Step5 在jupyter上运行程序 demo1.一问一答

    import speech_recognition def listenTo(): r = speech_recognition.Recognizer() with speech_recognition.Microphone() as source: r.adjust_for_ambient_noise(source)#处理噪声 audio = r.listen(source) return r.recognize_google(audio,language='zh') import gtts from gtts import gTTS import tempfile#模块专门用于创建临时文件和临时目录 from gtts import gTTS#将文字转化为语音内容 from pygame import mixer#用于加载和播放声音的pygame模块 mixer.init()#初始化混音器模块 def speak(sentence): with tempfile.NamedTemporaryFile(delete=True) as fp: tts = gTTS(text=sentence, lang='zh-tw')#这个没有zh tts.save("{}.mp3".format(fp.name)) mixer.music.load('{}.mp3'.format(fp.name)) mixer.music.play() #建立字典类型 Answer = { '你好吗' : '我很好', '你很帅' : '谢谢啦 !', '再见了' : '下次见了! 再聊 ! 拜拜' } speak(Answer.get(listenTo(), '对不起,听不清楚 ! 请再说一遍,谢谢啦 ! 再回答你'))

    demo2.其他的读文件、语音识别、播放

    import speech_recognition as sr #print(sr.__version__) r = sr.Recognizer() harvard = sr.AudioFile('D:/BaiduNetdiskDownload/sr課程_01/audio_files/harvard.wav') with harvard as source: audio = r.record(source)#将文件读进来 #print(type(audio)) print(r.recognize_google(audio)) #接下来看噪音的影响 import playsound import simpleaudio as sa wave_obj = sa.WaveObject.from_wave_file("D:/BaiduNetdiskDownload/sr課程_01/audio_files/harvard.wav") # harvard.wav play_obj = wave_obj.play() play_obj.wait_done() wave_obj = sa.WaveObject.from_wave_file("D:/BaiduNetdiskDownload/sr課程_01/audio_files/jackhammer.wav") # jackhammer.wav play_obj = wave_obj.play() play_obj.wait_done() harvard = sr.AudioFile('D:/BaiduNetdiskDownload/sr課程_01/audio_files/jackhammer.wav') with harvard as source: audio = r.record(source) print(r.recognize_google(audio)) #使用麦克风 import pyaudio mic = sr.Microphone() with mic as source: r.adjust_for_ambient_noise(source) audio = r.listen(source) r.recognize_google(audio)

    第二课 KNN Audio Classification

    把ab音频做特征提取,两种语音是有距离的,因此归成两类,然后标ab,然后训练模型,做一个二元分类

    第三课 ChatBot

    第四课 DTW-MFCC

    DTW-动态时间扭曲(衡量两个时间之间相似度的方法)

    MFCC-梅尔频率倒谱系数-从语音信号中提取出来的特征 人耳对不同频率的听觉灵敏度不同,在梅尔的标度范围提取倒谱系数

    第五课 RNN

    循环神经网络,基于先前的计算参考,微调 文字资料库 统计机器翻译

    Processed: 0.009, SQL: 8