自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(53)
  • 资源 (7)
  • 收藏
  • 关注

原创 子带分解

子带分解与合成文章目录子带分解与合成1. 卷积和DFT2. DFT filter bank3.子带分解3.1 子带分解示例3.2 高效计算3.3 混叠code在语音信号处理中,通常使用STFT对信号进行分频带处理,,STFT公式表示如下Y(m,w)=∑n=−∞+∞x(t)w(t−mD)e−jwtY(m,w)=\sum_{n=-\infty }^{+\infty }x(t)w(t-mD)e^{-jwt}Y(m,w)=n=−∞∑+∞​x(t)w(t−mD)e−jwtSTFT过程可以表示为使用一个滑动

2020-12-30 23:20:49 4999 3

原创 贝叶斯概率

贝叶斯概率贝叶斯概率公式解释计算贝叶斯概率P(A∣B)=P(A)P(B∣A)P(B)P(A|B) = P(A)\frac{P(B|A)}{P(B)}P(A∣B)=P(A)P(B)P(B∣A)​P(A∣B)P(A|B)P(A∣B):条件概率,事件B发生的条件下,事件A发生的概率,也叫A的后验概率P(A)P(A)P(A): 先验概率,事先不知道任何条件时A的概率。​ 比如,2000年8月15号天气是晴天的概率,这个事件太久远了,在不知道其它的条件下,就按照生活经验得到,先验概率P(A)P(A)P

2020-10-24 23:41:42 579 1

原创 LMS自适应滤波器

最小均方误差自适应滤波器文章目录最小均方误差自适应滤波器1. wiener filter2. 最陡下降法(Steepest Descent Method)3. LMS 滤波器1. wiener filter   上一篇中介绍了维纳滤波器在时域的闭式解,分别得到最重要的两个公式如下最优权值:hopt=R−1∗rdx(1)\mathbf{h_{opt}}=\mathbf{R}^{-1}*\...

2020-02-23 16:27:00 1389 2

原创 维纳滤波器

维纳滤波器1.wiener filter维纳滤波器是一个均方误差最小准则下的最优滤波器,定义一个离散线性时不变系统,输入x(n)x(n)x(n)、输出y^(n)\hat y(n)y^​(n),参考信号d(n)d(n)d(n)误差信号e(n)=y^(n)−d(n)(1)e(n)=\hat y(n)-d(n)\tag1e(n)=y^​(n)−d(n)(1)定义长度MMM的FIR滤波器h\...

2020-02-16 18:23:31 2147 1

原创 先验信噪比估计

先验信噪比估计很多降噪算法如维纳滤波、MMSE估计器等都依赖先验信噪比(priori SNR)信息定义先验信噪比(priori SNR)、后验信噪比(posteriori SNR)如下ξk(n)=E{Ak2(n)}λd(k,n)(1)\xi_{k}(n)=\frac{E\left\{A_{k}^{2}(n)\right\}}{\lambda_{d}(k, n)}\tag1ξk​(n)=λ...

2019-09-30 17:42:09 5603 2

原创 噪声估计之MCRA2

MCRA1.MCRA-21.1 谱平滑:1.2 搜索策略1.3 判决门限2. code & result1.MCRA-2​ 上一篇中介绍了MCRAMCRAMCRA1噪声估计方法,这种方法计算简单效率高,但是也有一些不足,仔细观察MCRA谱最小值跟踪部分,使用SminSminSmin记录最小值,并通过StempStempStemp每LLL帧重置一次,那么问题就来了,假如噪声水平在一...

2019-09-24 20:08:34 1746

原创 噪声估计之MCRA

MCRAMCRAMCRAMCRA,全称为最小值控制的递归平均,是cohen提出的一种常用的噪声估计方法,从命名上来就能看出来着个方法主要包含两个部分,递归平均和最小值控制(跟踪),下面分别看看这两个部分噪声谱估计(递归平均)Y(k,ℓ)=∑n=0N−1y(n+ℓM)h(n)e−j2πNnk(1)Y(k, \ell)=\sum_{n=0}^{N-1} y(n+\ell M) h(n)...

2019-09-23 16:33:20 7152 13

原创 语音增强之OMLSA

OMLSAOM-LSA算法,全称为optimally-modified log-spectral amplitude,中文有翻译为“最优改进对数谱幅度估计”,OMLSA算法相比较其它抑制算法有较少的音乐噪声残留(due to its superiorityin reducing musica noise phenomena)先看系统框图流程跟其它降噪方法什么不同,信号输入->STFT-...

2019-09-11 19:21:43 4841 3

原创 A Dual-Microphone Algorithm That Can Cope With Competing-Talkers Scenarios

@[TOC](A Dual-Microphone Algorithm That Can Cope With Competing-Talkers Scenarios) 11.Abstract这里介绍一种基于相干函数的双麦降噪算法,上一篇2中的方法从本质上讲应该是这篇论文里的一个特例,或者说是一种简化处理,这里咱们就来看看完整的框架  先上系统框图:    基本与上一篇里面的相同,这里就多了...

2019-08-11 13:57:43 691 2

原创 A Dual-Microphone Speech Enhancement Algorithm Based on the Coherence Function

A Dual-Microphone Speech Enhancement Algorithm Based on the Coherence FunctionA. Definition of Coherence FunctionB. Proposed Method Based on Coherence FunctionA. Definition of Coherence Function输入带噪...

2019-08-04 12:05:46 1099 2

原创 频率采样法FIR滤波器设计

频率采样法设计FIR滤波器频率采样法功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入上一篇中,简单介绍了FIR滤波器的...

2019-04-14 12:14:57 17289 5

原创 窗函数法FIR滤波器设计

FIR滤波器设计通常可以分为窗函数法和频率采样法两类,这里先介绍窗函数法

2019-01-28 23:32:29 28348 5

原创 线性时不变(LTI)离散时间系统

一个线性时不变(LTI)离散时间系统有以下四种描述方式单位脉冲响应:系统在输入为单位脉冲信号时的输出响应如一个滑动平均滤波器h(n)=[0.2,0.2,0.2]h(n) = [0.2,0.2, 0.2]h(n)=[0.2,0.2,0.2]差分方程:系统在任意输入时的输出响应如y(n)=0.2∗x(n)+0.2∗x(n−1)0.2∗x(n−2)y(n)=0.2*x(n)+0.2*x(...

2019-01-28 11:21:40 6416

原创 因果稳定性举例

1 Example1.1 因果性上面讲的看起来好像就是那么回事的,那实际应用会是个什么样子的呢,这里举个简单例子说明一下  ATF(acoustic transfer function)常用来描述声音从声源到麦克风间的传输情况,用RIR-Generator的方法可以很方便产生ATFexample_3[s,fs] = audioread('an103-mtms-senn4.wav');s...

2019-01-21 23:24:17 3362

原创 滤波器的因果稳定性

这里总结一下滤波器的因果性以及稳定性1.因果性因果系统:系统某时刻的输出只取决于该时刻和该时刻以前的输入如一个常用的滑动平均滤波器,h(n)=[0.2,0.2,0.2,0.2,0.2]h(n) = [0.2,0.2,0.2,0.2,0.2]h(n)=[0.2,0.2,0.2,0.2,0.2]z变换为∑n=0Nh(n)z−n\sum_{n=0}^{N}h(n)z^{-n}n=0∑N...

2019-01-05 21:37:32 11776 2

原创 一些FFT库的使用

#include "kiss_fftr.h"#include "kiss_fft.h"#include "kiss_fftr.h"#include<stdint.h&

2018-10-24 16:50:22 6239 7

原创 fixed wideband beamformer

1. fixed beamformer根据滤波器系数是否独立于输入数据(data-independent),beamformer可以分为固定和自适应两大类,这里先介绍一些固定宽带波束形成方法2. Evaluation of Beamfomers2.1 Array-Gainarray-gain反映了阵列对输入信号SNR改善程度,定义为阵列输出SNR与输入SNR(参考阵元SNR)之比 ...

2018-08-15 10:36:17 1502 8

原创 麦克风阵列声源定位 SRP-PHAT

DOA  声源定位方法一般可分为两大类,一种是基于TDOA的两步算法(two-stage algorithm),一种是基于空间谱估计的一步算法,也就是这里要介绍的可控波束响应(steered-response power)steered-response power  可控波束响应是利用波束形成(beamformer)的方法,对空间不同方向的声音进行增强,得到声音信号最强的方向就被...

2018-08-11 14:35:59 26332 80

原创 Beamforming

SRP-PHATelement_num=8; % 阵元数c=340; % 声速f = 2125; % 信号频率d = 0.08; % 阵元间距d_lamda=1/2; % 阵元间距等于...

2018-07-30 17:57:45 17680 34

原创 STFT filter bank

STFT filter bankSTFT根据公式不同的写法,可以推导出overlap-add和filter-bank两种不同的实现方式 filter bank可以用以下流程表示 输入信号x(n)x(n)x(n)被一个复指数调制,任意信号都可以分解成正弦函数的叠加,因此复指数调试过程在频域可以看做是进行频谱搬移,即所有频率的信号都往前搬移了ωkωk\omega_k,可以看出,原先x(...

2018-07-20 11:59:11 2445

原创 STFT使用overlap-add重建信号

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I...

2018-07-11 15:44:12 11531 2

原创 TINY-DNN导入TensorFlow模型

上一篇中通过mnist例子介绍了tensorflow卷积网络inference过程,根据这部分已经可以写出相应的C/C++代码了,但在github上看到了tiny-dnn这个开源库,就尝试将TensorFlow的mnist模型导入到tiny-dnn中1.保存tensorflow模型先在tensorflow中训练好tensorflow,保存checkpoint,这里就不freeze保存pb了...

2018-06-07 23:14:56 1206

原创 tensorflow卷积神经网络计算

卷积神经网络计算记录m卷积网络计算过程以tensorflow中的mnist_deep为例在训练时保存checkpointsaver = tf.train.Saver()....save_path = saver.save(sess,'mnist_deep/model.ckpt')训练完成后,可以读取checkpoint,保存log可以用tensorboard查看模型结构...

2018-05-31 23:02:59 788 1

原创 keras 双向LSTM

keras 双向LSTM双向LSTM利用到了未来的信息,在一些文本分类和序列预测问题上可以做到比单向LSTM更好的效果,BiLSTM与LSTM相比,多了一个反向计算,同时利用正向方向的数据计算最终输出,关于LSTM的前向计算可以看这里这里就只简单记录下keras 的BiLSTM参数个数计算,训练部分如下:model = Sequential()input_shape = (149...

2018-04-25 10:06:12 13068 4

原创 互相关函数的频域计算

互相关函数的频域计算1.时域计算x1(n)与x2(n)的互相关定义如下x1(n)与x2(n)的互相关定义如下x_1(n)与x_2(n)的互相关定义如下 R(τ)=E[x1(m)x2(m+τ)]R...

2018-04-07 14:00:31 27092 17

原创 麦克风阵列声源定位 GCC-PHAT

麦克风阵列声源定位利用麦克风阵列可以实现声源到达方向估计(direction-of-arrival (DOA) estimation),DOA估计的其中一种方法是计算到达不同阵元间的时间差,这里主要介绍经典的GCC-PHAT方法背景 简单说明问题背景,信号模型如下图,远场平面波,二元阵列 要计算得到θθ\theta,其实就是要求两个阵元接收到的信号时间差,现在问题变成到达时...

2018-03-28 22:16:43 34429 74

原创 keras LSTM 前向计算实例

LSTM前向计算在keras里训练完成一个模型后保存到本地,然后读取模型参数做前向计算,为C++移植做准备关于LSTM的原理网上很多,被引用最多的应该就是这篇博客了Understanding LSTM Networks,它的译文也是遍布网上各个角落使用LSTM分类mnist数据集的数字,数字图片大小28∗2828∗2828*28,每一步输入一行数据,总共28步输入图片的所有行,即lst...

2018-02-08 14:56:13 3389 7

原创 音频特征提取及差异

MFCC特征提取步骤: 预加重->STFT->mel滤波->DCT变换->倒谱提升 不同工具提取的特征会有差别,这里选用python中的librosa库分析 预加重: FIR一阶高通滤波器,提升高频分量,传递函数为 H(z)=1−a∗z−1H(z)=1−a∗z−1H(z) = 1-a*z{^-1}系数a一般取

2017-12-28 11:30:21 14825 7

原创 差分麦克风阵列(Differential microphone arrays)

差分麦克风阵列(Differential microphone arrays)1.介绍  传统波束成形方法有延时累加(delay-sum),滤波相加(filter-sum)以及自适应波束形成(LCMV、MVDR、GSC …..)等等,这些方法都是将阵列数据做同步后相加输出,与相加相对应的是相减,这类方法就是下面要介绍的差分阵列(Differential microphone array...

2017-12-09 23:41:43 17050 23

原创 重叠相加法&重叠保留法

1.问题  上一篇中介绍了利用循环卷积计算线性卷积,但是当两个卷积项长度相差很大时,短序列需要补的0非常多,这样无助于计算量的减小,并且这种方法需要等长序列全部输入完之后才开始计算,这会造成输出有很大的延时。   但是实际中这种现象很长见,比如对音频信号进行数字滤波,滤波器抽头系数点数较少,而MIC一直在录音,需要滤波的信号可以认为是无限长的,如果等录很久后才开始进行滤波,则会造成需要存储的数据量

2017-09-07 15:28:29 32874 9

原创 图解圆周卷积

1.圆周卷积(circular convolution)圆周卷积,也叫循环卷积,两个长度为N的有限场序列x(n)x\left ( n \right )和h(n)h\left ( n \right )的循环卷积定义为 y(n)=[∑N−1m=0x(m)h((n−m))N]RN(n)=xn⨂yny\left ( n \right ) = [\sum_{m = 0}^{N-1}x\left (

2017-09-07 14:32:30 43910 9

原创 线性卷积与圆周卷积

1.圆周卷积(circular convolution)圆周卷积,也叫循环卷积,两个长度为N的有限场序列x(n)x(n)x(n)和h(n)h(n)h(n)的循环卷积定义为 即循环卷积相当于周期延拓后的序列x˜(n)x~(n)\widetilde{x}(n)和h˜(n)h~(n)\widetilde{h}(n)做周期卷积后再取主值区间,若x(n)和h(n)的离散傅里叶变换为X(K)X(...

2017-09-06 15:51:25 46481

原创 基于GMM-UBM的说话人识别 MSR Identity Toolkit

说话人识别MSR Identity Toolkit使用微软的声纹识别工具箱,记录使用步骤   该工具箱包含了常规的基于GMM-UBM方法以及state-of-the-art的基于i-vector方法,本文记录的是GMM-UBM方法,使用TIMIT语料库进行训练   先说明这个demo对训练语句的划分方式,总共630人共6300句话,530人共5300句话用来训练UBM,剩余100人共1000句话

2017-08-17 20:29:13 14526 29

原创 【论文 Postfiler】Microphone Array Post-Filter Based on Noise Field Coherence

1.系统框图 NN路时间对齐的信号x1x_{1}、x2x_{2}…….xNx_{N}经过滤波-相加后得到一路信号,同时,利用这N路信号估计自频谱与互频谱,最后利用估计到的参数对滤波相加后的信号进行维纳滤波,得到最终的输出2.zelinksi后置滤波本文的方法是基于对zelinksi后置滤波器的扩展,因此先通过回顾zelinksi后置滤波器来说明问题模型 假设加性噪声模型,滤波

2017-08-09 16:00:46 1059 9

原创 【论文 Frost1972】An Algorithm for Linearly Constrained Adaptive Array Processing

经典的Frost beamformer,也叫线性约束最小方差(LCMV)滤波概括如上图所示,假设目标信号从线性阵列的宽边方向传入,noise以及inference从其它方向传入,取最近的J个数据,在理想远场模型下,,每个时刻各个阵元接收到的目标信号相同,噪声在每个阵元的信号不同(非宽边注视方向输入),将每个时刻的信号加权求和,得到上图中下部分的等效模型,即最终输出为一个加权求和得到的F

2017-08-02 10:51:01 2006 1

原创 【论文】A Minimum Distortion Noise Reduction Algorithm With Multiple Microphones

学习麦克风阵列信号处理,记录论文实现过程 原论文地址 A Minimum Distortion Noise Reduction Algorithm With Multiple Microphones问题模型k时刻各阵元输出表示如下: 向量表示如下 各相应符号定义如下其中 : G n为通道冲击响应矩阵,大小为 L X Ls,Ls = L + Lg - 1,Lg

2017-07-29 17:28:29 2415 21

原创 内插函数恢复模拟信号

使用内插函数恢复模拟信号时域信号的离散会导致频域的周期延拓,只有满足不低于信号最高频率两倍的采样率采样,才不会导致频域周期延拓后的混叠,才有可能不失真地恢复源信号。 在频域上看,恢复信号就是用一个理想低通滤波器与时域信号的频谱相乘,以得到频域的第一个周期,而频域的理想低通滤波器,也就是频域矩形窗,经过傅里叶逆变化后在时域是无限长的内插函数,是非因果的 非因果系统:系统的当前输出只与当前或者

2017-06-21 20:45:07 13845 3

原创 BP误差反向传播算法

BP算法BP算法通过将输出误差反向传播,将误差分配到每个权值上,利用梯度更新对所有参数进行调整以达到输出累计误差最小 [图片来自Andrew Ng的machine learning课程]为了简化概念,先不加上偏置单元 符号介绍 zli{z}_{i}^{l} :第ll层第ii节点的误差zli{z}_{i}^{l}:第ll层第i节点的输入值ali{a}_{i}^

2017-05-07 17:16:54 878

原创 Softmax求导计算

学习神经网络中的softmax分类器 总的类别概率的和为1 求导: 1.当前类别的概率值对当前输入参数的求导,即dyi/dzi 求导类型为 y = exp(x)/(a+exp(x)) 计算过程如下: 2.当前

2017-05-07 00:01:28 741 1

原创 HTK3.4.1在VS2013建立工程编译

在VS2013里编译调试HTK

2017-02-10 11:05:03 1046

HTK孤立词识别

使用HTK实现孤立词识别(打开、关闭、开始、结束),文件内包含所使用到的命令并标有注释

2017-02-08

Blind Speech Separation

一本介绍盲信号分离的书,详细介绍了瞬时混合与卷积混合的解卷相关算法,英文原版

2016-11-22

Microphone_Array_Signal_Processing

麦克风阵列信号处理的书籍,宽带阵列信号处理经典内容,非常适合阅读,英文原版

2016-11-22

N=8点的DIT_FFT c代码

DIT_FFT变换的C程序实现VC工程,可以扩展为任意2^N点,程序简单易懂移植性强

2014-04-14

数电实验交通灯FPGA程序

数电实验的verilog程序quartus工程,testbench文件仿真通过

2014-02-22

FPGA数码管时钟

FPGA驱动八个数码管动态扫描,数码管使用74hc573驱动

2013-09-25

msp430资料

很好的msp430launchpad资料,分享一下

2013-05-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除