微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于FPGA的说话人识别系统,包含原理图、源代码

基于FPGA的说话人识别系统,包含原理图、源代码

时间:06-04 来源:互联网 点击:

别模型,是指用什么模型来描述说话人的语音特征在特征空间的分布。对于说话人识别系统,特征参数被提取出来后,需要用识别模型为说话人建模,并对特征进行分类,以确定属于哪一个说话人。目前常用的识别模型有,最小距离模型,矢量量化模型,隐马尔可夫模型,高斯混合模型。综合考虑下,本系统采用最小距离模型对说话人语音进行训练。

本系统实验时说话人训练次数取为10,首先对每次训练的输入语音求特征矢量),再对10次训练产生的特征矢量求平均得到的平均特征矢量,将此平均特征矢量作为说话人训练所得的模型特征矢量。

2.2.3 识别

说话人识别包括说话人辨别和说话人确认,说话人辨别是从多个说话人语音中辨认出某个人的那一段语音信息,而说话人确认是确定某段语音信息是不是某人所说。

我们用测试数据与训练数据的平均特征矢量之间的均方差作为一种距离度量。在说话人确认中,我们设定一个判决阈值,如果测试者数据与训练数据的距离小于此阈值,我们就认为确认到了原说话人;在说话人辨认中,我们把与测试说话人距离最小的说话人作为目标说话人。

二、Matlab仿真结果

我们通过Windows自带的录音机得到声音数字信号,采样频率为22050Hz,单声道。说话人数为2,在训练阶段,每个说话人说10次‘芝麻开门’。

图2 说话人zx的测试语音‘zx316’的相关图

图3 语音信号‘zx316’第一帧的短时傅里叶频谱幅值分布

图4 语音信号‘bb13’第一帧的短时傅里叶频谱幅值分布

测试语音‘zx316’第一帧的特征向量:

1 8 12 16 19 23 27 31 33 38 43 46 50 53 57 64 65 72 73 80 81 88 91 96 97 103 106 111 113 117 122 125 132 136 140 141 147 152 153 160 161 167 169 176 177 183 186 190 193 198 202 208 209 215 220 221 227 231 235 239 241 245 249 256

测试语音‘bb13’第一帧的特征向量:

1 7 12 16 17 21 26 29 34 37 44 47 49 56 58 61 65 70 73 80 81 85 92 93 98 104 105 110 115 117 121 128 130 136 138 143 145 150 154 157 162 166 169 176 177 181 188 191 193 200 202 205 211 213 220 221 228 232 233 239 242 245 249 256

测试语音‘zx316’平均特征向量avtzv1:

2.8056 6.6157 10.5185 14.3009 18.6667 22.5972 26.1296 30.2361 34.6435 38.7407 42.1389 46.4444 50.4907 54.1296 58.6250 62.9583 66.1296 70.7546 74.2824 78.0000 82.1759 86.5324 90.3472 94.4583 98.4352 102.5926 106.3102 110.3009 114.4722 117.9537 122.1065 126.3889 130.5139 134.8333 138.8056 142.4167 146.6852 150.9120 154.2685 158.4537 162.5926 166.6204 170.3241 174.8426 178.8333 182.7963 186.4815 190.8796 194.2222 198.3935 203.2130 206.5648 210.2824 214.7963 218.1852 222.0787 226.6944 231.3287 234.9676 238.6435 242.8565 246.7037 250.3102 253.9491

测试语音‘bb013’平均特征向量avtz2:

2.6385 7.3991 10.3756 14.8357 18.7324 22.0423 26.1455 30.1643 34.5493 38.0423 42.7746 46.9014 49.6432 54.0751 58.5305 62.5493 66.7324 70.8216 75.1502 78.0376 81.9718 86.4695 90.6432 93.7700 99.2347 101.9390 106.6291 110.4883 113.9296 118.6854 122.0329 126.2817 130.5211 134.7418 138.3897 143.1972 146.7371 150.3615 155.1080 158.0376 163.1080 166.3991 170.8920 175.2441 179.2300 181.8075 185.8404 189.8826 194.5915 198.5587 202.5446 206.9061 210.4413 214.3568 218.5915 222.6197 226.2629 230.9108 235.0939 238.4648 241.8732 246.7606 249.9249 253.8216

十次训练后,说话人zx的模型特征向量zxtzv:

2.6470 6.3738 10.4790 14.1162 18.7036 22.6037 26.2209 29.9523 34.3714 38.8523 42.3689 46.4702 50.5910 54.0536 58.4656 62.8491 66.2164 70.5120 74.2916 78.2231 82.2290 86.6381 90.4263 94.4608 98.5462 102.5562 106.3308 110.3999 114.2824 118.1380 122.1408 126.2868 130.6763 134.8471 138.7515 142.6162 146.6641 150.7192 154.2886 158.3545 162.5407 166.5522 170.2916 174.8380 178.7560 182.8976 186.5329 190.8797 194.2625 198.4912 203.1178 206.6151 210.4543 214.7273 218.0488 222.2090 226.7668 230.8650 234.7660 238.3485 242.7473 246.7412 250.4028 253.8851

训练所得说话人zx的确认阈值为zxp:

0.0403

十次训练后,说话人bb的模型特征

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top