matlab
齐燕博
一名昆明理工大学的研究生,2023年毕业
展开
-
音频扩频的一点知识
关于扩频的一点知识原创 2022-08-29 13:16:40 · 827 阅读 · 1 评论 -
公务员用书
公务员用书原创 2022-08-29 13:13:55 · 135 阅读 · 0 评论 -
一个音频水印的小例子
音频水印原创 2022-08-29 13:11:09 · 196 阅读 · 0 评论 -
2021-08-03几种混沌序列
混沌序列转载 2021-08-03 19:13:41 · 857 阅读 · 0 评论 -
基音周期和共振峰
基音周期是在声门处气流通过时形成的。发浊音时,具有周期性共振峰,是基音周期的下一个过程。在声道发生。气流先通过声门,声门产生基因周期,接下来,经过声道,与声道发生共振,这个共振频率就是共振峰频率,简称共振峰。...原创 2021-08-01 19:09:05 · 1319 阅读 · 0 评论 -
matlab图例legend的位置问题
'Location','southwest'southwest可以修改。例子如下:原创 2021-08-01 18:48:14 · 889 阅读 · 0 评论 -
梅尔倒谱分析MFCC
梅尔倒谱系数MFCC梅尔频率倒谱系数的分析是基于人的听觉特性机理,即根据人的听觉实验结果来分析语音的频谱。因为人耳所能听到的声音高低与声音的频率并不成线性正比关系,所以用mel频率尺度更符合人耳的听觉特性。预加重部分用一个一阶高通滤波器,目的是为了补偿高频分量的损失,提升高频分量。滤波器常设为:分帧:把每一帧信号当作稳定信号来处理。加窗:减少频谱泄漏。FFT:把时域转化为频域,计算谱线能量。mel滤波:MEL滤波器滤波:梅尔频率尺度和实际频率的对应关系美尔滤波器的传递函数在梅原创 2021-07-29 13:07:35 · 786 阅读 · 0 评论 -
倒谱推导分析
根据对语音产生机理的研究可知,语音信号X(n)可看作声门激励信号和声道冲激响应信号的卷积为了便于处理各卷积信号,系统通常采用同态处理的方法进行解卷积,即将卷积关系变为求和关系,分离参与卷积的各个信号。一般的同态系统可分解为三个部分。第一个子系统完成卷积信号转化为加性信号的运算第二个子系统进行线性处理得到第三个子系统恢复卷积新号复倒谱:倒谱:clc;clear;clc;clear;[x,fs]=audioread('C3_4_y_1.wav');%读取信号N=1024;%fft原创 2021-07-29 10:40:24 · 990 阅读 · 0 评论 -
**语谱图**
语谱图**clc;clear;[x,fs]=audioread('C3_3_y.wav');wlen=256;win=hamming(wlen);inc=128;a=enframe(x,win,inc)';fn=size(a,1); W2=wlen/2+1; n2=1:W2; Y=fft(a); Yn=Y(n2,:);%为啥就取这么短? freq=(n2-1)*fs/wlen;%频率每秒循环多少次。fs是每秒采用的点数,除以窗长,得到一共循环了多少次。%画出语谱图fra原创 2021-07-23 10:48:34 · 284 阅读 · 0 评论 -
短时时域处理(二)
短时自相关clc;clear;[x,fs]=audioread('C3_2_y.wav');%读取音频inc=100;%帧移win=hamming(200);%汉明窗和窗长fz=enframe(x,win,inc);%分帧fn=size(fz,1);%帧数zc=size(fz,2);%帧长for i=1:fn u=fz(i,:);%取一帧 u2=xcorr(u'); r(i,:)=u2(zc,end);endsubplot(211)plot(x)subp原创 2021-07-23 10:47:07 · 191 阅读 · 0 评论 -
短时时域处理(一)
短时能量根据公式自己敲的短时能量代码:clc;clear;[x,fs]=audioread('C3_2_y.wav');inc=100;win=hamming(200);fz=enframe(x,win,inc);fn=size(fz,1);for i=1:fn u=fz(i,:); u2=u.*u; power(i)=sum(u2);end短时平均幅度:%短时平均幅度计算函数function para=STMn(x,win,inc) X=en原创 2021-07-23 10:44:22 · 267 阅读 · 0 评论 -
分帧及其复原
分帧%分帧函数function frameout=enframe(x,win,inc)nx=length(x(:)); % 取数据长度nwin=length(win); % 取窗长if (nwin == 1) % 判断窗长是否为1,若为1,即表示没有设窗函数 len = win; % 是,帧长=winelse len = nwin; % 否,帧长=窗长end原创 2021-07-23 10:41:29 · 2082 阅读 · 0 评论 -
bitset和bitget
bitset例子:>> a=8a = 8>> b=bitset(a,1,1)b = 9首先要把a变成2进制数然后把a的第一个位置变成1。第二个>> b=bitset(a,1,0)b = 8如果只有两个参数>> b=bitset(a,2)b = 10把a的第二个位置设为1,默认为1...原创 2021-06-03 14:39:41 · 271 阅读 · 0 评论 -
wavread被删之后的替代audioread
之前的wavread可以同时获取读去的语音数据,采样率,位数[x_org,fs,bits]=audioread('C8_1_y.wav');现在audioread不能直接获取位数如果想获取语音信号的位数,请采用BitsPerSampleainfo=audioinfo('C8_1_y.wav');bits=ainfo.BitsPerSample;...原创 2021-06-03 13:57:39 · 4584 阅读 · 1 评论 -
《数字信号处理及matlab仿真》关于矢量量化的学习
一 基本原理1 定义随着数字通信系统的快速发展。他带来了庞大的数据量,因此必须对其进行量化压缩。量化分为:一类是标量压缩,一类为矢量压缩。概念:矢量量化是先将看k(k>=2)个抽样值形成的k维空间Rk中的一个矢量,然后将其矢量进行量化,并设法使其失真或量化噪声最小,他可以极大的降低数码率,优于标量量化。矢量量化的理论基础是香农的率-失真理论。率-失真理论是对给定的失真D,可以计算率-失真函数R(D)。矢量量化是先把信号序列的每K个连续样点分成一组,形成K维欧式空间中的一个矢量,然后对此原创 2021-05-06 16:10:03 · 2214 阅读 · 0 评论 -
通信建模
% 预测编码OI = imread('CLA1.bmp');subplot(2,3,1);imshow(OI);title("原图像");OI = double(OI);[M,N] = size(OI);[newImg1,Qerror1] = Dpcm_code(OI,M,N,1);newImg1 = uint8(newImg1);subplot(2,3,2);imshow(newImg1);title("一维DPCM重建图像")% 计算峰值信噪比psnr1 = calPsn原创 2021-03-09 15:48:38 · 295 阅读 · 0 评论 -
插值和拟合
插值和拟合都是根据离散的样本点数据得出连续函数曲线的过程。他们的不同点在于:插值得出的曲线是经过样本点的,而拟合得到的曲线并不保证每个样本点都在曲线上,而是保证曲线与样本点之间的整体拟合误差最小为优化目地的1 插值设函数y=f(x)未知,但已知该函数在若干离散点x1,x2,x3…,xn处的取值y1,y2,y3…yn,则由这些样本点(x1,y1)…(xn,yn)获得该函数在其他点上取值的方法叫插值方法...原创 2021-03-09 15:47:37 · 1026 阅读 · 0 评论