语音信号的预加重和加窗处理
一、语音信号的预加重
语音信号的预加重,目的是为了对语音的高频部分进行加重,去除口唇辐射的影响,增加语音的高频分辨率。一般通过传递函数为一阶FIR高通数字滤波器来实现预加重,其中a为预加重系数,0.9<a<1.0。设n时刻的语音采样值为x(n),经过预加重处理后的结果为y(n))=x(n)-ax(n-1),这里取a=0.98。
预加重实验:
%预加重<span class="wp_keywordlink" style="margin: 0px; padding: 0px; border: 0px; font-size: 13.3333330154419px; background: transparent;"><a target=_blank href="http://www.xuebuyuan.com/" title="程序" target="_blank" style="text-decoration: none; color: rgb(1, 150, 227);">程序</a></span> 2013/9/25
clear all;
[x,sr]=wavread('test2.wav'); %sr为采样频率
ee=x(1500:1755);
r=fft(ee,1024);
r1=abs(r);
pinlv=(0:1:255)*8000/512;
yuanlai=20*log10(r1);
signal(1:256)=yuanlai(1:256);
[h1,f1]=freqz([1,-0.98],[1],256,4000);
pha=angle(h1);
H1=abs(h1);
r2(1:256)=r(1:256);
u=r2.*h1';
u2=abs(u);
u3=20*log10(u2);
un=filter([1,-0.98],[1],ee);figure(1);subplot(2,1,1);
plot(f1,H1);title('高通滤波器的幅频特性');
xlabel('频率/Hz');ylabel('幅度');
subplot(2,1,2);plot(pha);title('高通滤波器的相频特性');
xlabel('频率/Hz');ylabel('角度/rad');
figure(2);subplot(2,1,1);plot(ee);title('原始语音信号');
%axis([0 256 -3*10^4 2*10^4]);
xlabel('样点数');ylabel('幅度');
subplot(2,1,2);plot(un);title('经高通滤波后的语音信号');
%axis([0 256 -1*10^4 1*10^4]);
xlabel('样点数');ylabel('幅度');
figure(3);subplot(2,1,1);plot(pinlv,signal);title('原始语音信号频谱');
xlabel('频率/Hz');ylabel('幅度/dB');
subplot(2,1,2);plot(pinlv,u3);title('经高通滤波后的语音信号频谱');
xlabel('频率/Hz');ylabel('幅度/dB');
实验结果:
可以看出,预加重后的频谱在高频部分的幅度得到了提升。
二、语音信号的加窗处理
进行预加重数字滤波处理后,下面就是进行加窗分帧处理,语音信号具有短时平稳性(10--30ms内可以认为语音信号近似不变),这样就可以把语音信号分为一些短段来来进行处理,这就是分帧,语音信号的分帧是采用可移动的有限长度的窗口进行加权的方法来实现的。一般每秒的帧数约为33~100帧,视情况而定。一般的分帧方法为交叠分段的方法,前一帧和后一帧的交叠部分称为帧移,帧移与帧长的比值一般为0~0.5,。
汉明窗函数如下:
汉明窗的时域和频域波形,窗长N=61
x=linspace(20,80,61);
h=hamming(61);
figure(1);
subplot(1,2,1);
plot(x,h,'k');title('汉明窗时域波形');
xlabel('样点数');ylabel('幅度');
w1=linspace(0,61,61);
w1(1:61)=hamming(61);
w2=fft(w1,1024);
w3=w2/w2(1);
w4=20*log10(abs(w3));
w=2*[0:1023]/1024;
subplot(1,2,2);
plot(w,w4,'k');
axis([0,1,-100,0]);
title('汉明窗幅度特性');
xlabel('归一化频率');ylabel('幅度/dB');
结果:
汉明窗的主瓣宽度较宽,是矩形窗的一倍,但是汉明窗的旁瓣衰减较大,具有更平滑的低通特性,能够在较高的程度上反应短时信号的频率特性。
矩形窗的主瓣宽度小于汉明窗,具有较高的频谱分辨率,但是矩形窗的旁瓣峰值较大,因此其频谱泄露比较严重。
语音信号的预加重和加窗处理相关推荐
- 语音信号的分帧加窗的matlab实现
[x,fs,nbits]=wavread('5_1.wav'); x1=enframe(x,200,100);%分帧 x2=enframe(x,hamming(200),100);%加窗 figure ...
- 数字语音信号处理学习笔记——语音信号的短时时域分析(1)
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u013538664/article/details/25392889 3.1 概述 语音信号是 ...
- 02|如何量化分析语音信号
目录 一. 语音的基本特征: 1.1 语音的产生 1.2 清音与浊音 定义 频谱 1.3 基频 1.4 谐波 1.5 共振峰 二. 语音信号的解析 2.1 窗函数 频谱泄漏 2.2 时域分析 短时过零 ...
- 语音信号短时域分析之预处理(三)
语音信号短时域分析之预处理(三) 标签: 预加重加窗分帧矩形窗汉明窗 2014-07-13 21:09 934人阅读 评论(0) 收藏 举报 本文章已收录于: 分类: 语音信号处理(6) 作者同类文章 ...
- 实验二 语音信号基本时频分析(待更改)
实验二 语音信号基本时频分析 1.实验目的 1.1 学习与掌握语音信号的分帧及加窗 1.2 了解并分析信号加汉明窗及矩形窗后的差别 1.3 分析清音与浊音的时域及频谱域波形特征(画图.对比) 1.4 ...
- 【语音处理】基于matlab GUI低通滤波器语音信号加噪与去噪【含Matlab源码 1708期】
⛄一.语音处理简介(附课程作业报告) 1 语音信号的特点 通过对大量语音信号的观察和分析发现,语音信号主要有下面两个特点: ①在频域内,语音信号的频谱分量主要集中在300-3400Hz的范围内.利用这 ...
- 【滤波器】基于低通滤波器语音信号加噪与去噪含Matlab源码
1 简介 1.1 课题的背景与意义 通过语音传递信息是人类最重要.最有效.最常用和最方便的交换信息的形式.让计算机能听懂人类的语言,是人类自计算机诞生以来梦寐以求的想法,用现代手段研究语音信号,使人们 ...
- Meta研究人员利用人工智能解码脑电语音信号(全文解读)
最近,Meta团队提出一种通过非侵入式脑磁(电)图(magneto- or electro- encephalography, M/EEG)解码语言的方法.具体地,首先使用深度学习方法对语音输入和对应 ...
- python对语音信号读取、分帧、加窗
python对语音信号读取.分帧.加窗 一.读入音频信号 语音信号有三个重要的参数:声道数.取样频率和量化位数. 声道数:单声道或者双声道 采样频率:一秒钟对声音采样的次数,例如10000HZ代表一秒 ...
最新文章
- Electron Built-in AutoUpdater 踩坑记录
- 知乎超热门话题:为什么要考985?
- 网络技术沙龙:主题:数据库优化、CDN、集群负载均衡(1.9日技术聚会召集)
- js简单屏蔽鼠标右键实现方式
- Java虚拟机中的堆(Heap)
- 推荐一款非常好用的截图工具 - SETUNA2,【订】一下就解决了你做数据对照的麻烦
- tpac100控制器设置教程_ac100控制器设置方法
- wet-英语困难户的好选择-控制台翻译
- 利用CSS制作一个梦幻西游小动画
- AutoGluon处理多模态数据方法及案例——Multimodal Data Tables: Tabular, Text, and Image
- 镜头眩光如何避免 镜头眩光避免方法
- 工业4.0细谈MES制造执行系统
- QQ文件和公告不显示
- leetcode 5473. 灯泡开关 IV (阿里云周赛)
- apache+php配置网站访问后,不能跳转网站首页,只显示网站目录下的文件
- IDM Internet Download Manager 无法下载此文件 问题
- python pexpect_探索 Pexpect,第 2 部分:Pexpect 的实例分析
- 剖析信用卡 DCC 交易
- 加州大学河滨分校计算机科学专业,加州大学河滨分校UCR计算机科学Computer Science专业排名第176-200位(2021年THE世界大学商科排名)...
- Java判断手机号对应的运营商
热门文章
- Laravel - Artisan 个人常用总结
- 构建iOS稳定应用架构时方案选择的思考,主要涉及工程结构,数据流思想和代码规范...
- codeforces MUH and Cube Walls
- 一维数组转单字段DataTable
- laravel中Request、Session、Response、Middelware
- Eclipse编译时保留方法的形参
- Codeforces Round #554 (Div. 2) C. Neko does Maths (简单推导)
- SpringBoot基础系列-SpringCache使用
- struts入门day04
- P1133 教主的花园