首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于FPGA的语音控制选频滤波器设计与实现(2)

基于FPGA的语音控制选频滤波器设计与实现(2)

2分帧的DSP Builder实现:
        语音信号在10到20ms之间保持短时平稳,也就是说选取的帧的长必须介于10到20ms之间,此外,在MFCC特征提取时要进行FFT变换,FFT点数一般为2的幂次所以我们选择帧的长度为16ms,帧移为1/2帧长,这样一帧包含了16khz×16ms=256点,既满足短时平稳,有满足FFT变换的要求。

        为了使帧与帧之间平滑过渡,保持连续语音流的字相关性和过渡性,采用交叠分帧的方法。帧移取1/2帧长,也就是128个数据点当作一个数据块。分帧图如下:


       



        分帧实现框图



        FIFO1大小为一帧语音长度,分为两个数据块,预加重后的数据写入这个FIFO。为了实现帧移交叠,在FIFO1读数据时,同时再用FIFO2保存起来,当FIFO1的一块数据读完以后,紧接着从FIFO2读除这一块的副本。写入的一块数据,相当于重复读出2次,所以FIFO1的读时钟频率设计为写时钟频率的2倍,而FIFO2的读写时钟频率和FIFO1的读时钟频率相同。分帧后的数据在途中被以时间标号为1、2、3、3.。。。。。。,1、2为第一帧,2、3为第二帧,以此类推。

        FIFO的写信号一直为1,等到写完第一块(128点)在允许读。当FIFO1读第一块数据是,FIFO2保存第一块的数据,两者时钟频率一致,同时FIFO1也在写第2块数据。FIFO1读完第一块数据,FIFO2里为第1块数据,FIFO1中第2块数据写了一半,此时禁止FIFO!读,并使能FIFO2读信号,从FIFO2中将第1块数据再读一遍,读完时第2块数据已经完全写入FIFO1,zai允许FIFO1读,同时禁止FIFO2读,如此循环。途中,数据选择就是为了实现两个FIFO读,同时禁止FIFO2读,如此循环。图中,数据选择器就是为了实现两个FIFO的读出数据选通,第一次数据为FIFO1的读出内容,第2次数据是为了FIFO2读出内容,这样就实现将一块数据内容重复输出两次,读完两次的同时,写完下一块内容。

        (3)加窗的DSP Builder实现
        分帧后数据为8位定点Q0(即8位有符号整数),三角余玄函数的范围-1到1,可以用Q15来表示,但是Q15能表示的范围为-1到32767/32768之间。加窗的主要对象是查找表,

        (4)端点检测
        端点检测分门限计算和状态机检测两部分,由于端点检测是基于帧能量的,必须计算每帧的能量,所以增加一个乘累加器和控制时钟,在加窗的同时将每帧能量值计算出来。具体的硬件实现已经上传源代码(verilog语言)。

        3.特征提取部分
        MFCC特征提取
        MFCC特征提取软件算法是将线性功率频谱转化为Mel频率下的功率谱,在计算之前在语音在语音的频谱范围内设置若干个三角带通滤波器,其中心频率fm在Mel频率上是均匀分布的。在线性频率上,当m较小时,相邻的fm间隔很小,随着fm的增加相邻的fm间隔逐渐增大,如图:

       



        各三角滤波器是相互交迭的,每个滤波器三角形两个底点是
        相邻滤波器的中心,则
        实际频率转换为Mel频率的公式为:
        Mel(f)=2595lg(1+f/700)                                                       (1)
        Mel频率转换为实际频率(Hz)的公式为:
        Freq=700*(10 exp(Mel/2595)-1)                                                 (2)

        本实验采用的三角滤波器组个数L=23,因为L为23时识别率相对最高。再计算23组三角滤波器的下限、中心和上限频率时,根据截止频率,这里为16000/2=8000Hz,先用公式1在Mel频率上计算出均匀分布的23组滤波器的中心频率,再用公式2将Mel中心频率转换成实际中心频率(Hz)。得到23组三角滤波器的中心频率(Hz)和带宽(Hz)如下:

                                                                                                                                                                                                                       
                               

                                        序号

                       
                               

                                        中心频率

                       
                               

                                        带宽

                       
                               

                                        序号

                       
                               

                                        中心频率

                       
                               

                                        带宽

                       
                               

                                        1

                       
                               

                                        77

                       
                               

                                        86

                       
                               

                                        13

                       
                               

                                        2401

                       
                               

                                        303

                       
                               

                                        2

                       
                               

                                        163

                       
                               

                                        96

                       
                               

                                        14

                       
                               

                                        2344

                       
                               

                                        337

                       
                               

                                        3

                       
                               

                                        259

                       
                               

                                        106

                       
                               

                                        15

                       
                               

                                        2681

                       
                               

                                        374

                       
                               

                                        4

                       
                               

                                        365

                       
                               

                                        118

                       
                               

                                        16

                       
                               

                                        3055

                       
                               

                                        416

                       
                               

                                        5

                       
                               

                                        483

                       
                               

                                        131

                       
                               

                                        17

                       
                               

                                        3471

                       
                               

                                        462

                       
                               

                                        6

                       
                               

                                        614

                       
                               

                                        145

                       
                               

                                        18

                       
                               

                                        3933

                       
                               

                                        513

                       
                               

                                        7

                       
                               

                                        759

                       
                               

                                        162

                       
                               

                                        19

                       
                               

                                        4446

                       
                               

                                        570

                       
                               

                                        8

                       
                               

                                        921

                       
                               

                                        179

                       
                               

                                        20

                       
                               

                                        5016

                       
                               

                                        633

                       
                               

                                        9

                       
                               

                                        1100

                       
                               

                                        200

                       
                               

                                        21

                       
                               

                                        5649

                       
                               

                                        703

                       
                               

                                        10

                       
                               

                                        1300

                       
                               

                                        221

                       
                               

                                        22

                       
                               

                                        6352

                       
                               

                                        780

                       
                               

                                        11

                       
                               

                                        1521

                       
                               

                                        246

                       
                               

                                        23

                       
                               

                                        7132

                       
                               

                                        868

                       
                               

                                        12

                       
                               

                                        1767

                       
                               

                                        274

                       
                               
                       
                               
                       
                               
继承事业,薪火相传
返回列表