QMF bank, quadrature mirror filter bank 사용시 aliasing, amplitude distortion, phase distortion

Quadrature Mirror Filter Bank 사용시 생기는 현상들에 대해 살펴보자. 그러면서 어떤 QMF filter bank 를 사용해야 본래 신호를 복원할 수 있을지도 관찰해보자. QMF filter bank QMF filter bank 는 위와 같이 생긴 필터 뱅크이다. 두부분으로 쪼개서 신호처리를 한다고 보면 된다. 여기서 $H_k, F_k$를 잡는 것이 중요한 요소이다. Aliasing $H_k$를 어떻게 잡느냐가 중요하다. (a)의 경우 aliasing … Read more

곱셈의 푸리에 변환 성질 (Discrete Time Fourier Transform)

곱셈의 푸리에 변환 성질에 대해 알아보겠습니다. 신호 $x[n]$,$y[n]$이 있다고 합시다. 이 두 신호의 곱 $x[n]y[n]$의 DTFT는 어떤 형태가 나올까요?   $x[n]y[n]$의 DTFT 꼴 $z[n]=x[n]y[n]$이라 할 때 $Z(e^{j\omega})$는 어떤 형태일까요? 계산해보겠습니다.   $Z(e^{j\omega}) = \sum_{n=-\infty}^\infty x[n]y[n] e^{-j\omega n}$ $y[n]$을 푸리에 변환의 역변환을 이용해 표현하면 아래와 같이 변합니다. $Z(e^{j\omega}) = \frac{1}{2\pi} \sum_{n=-\infty}^\infty x[n] \left(\int_{-\pi}^\pi Y(e^{js})e^{jsn}ds\right)  e^{-j\omega n}$ … Read more

BBED의 일반적인 transition의 평균과 공분산

논문 Reducing the Prior Mismatch of Stochastic Differential Equations for Diffusion-based Speech Enhancement (github 링크)에서 사용하는 SDE를 BBED(Brownian Bridge with Exponential Diffusion Coefficient) 라고 부른다. BBED는 아래와 같이 생겼다. 여기서 이고 는 noisy speech, 는 clean speech 가 어떻게 변하는지를 나타낸다. 가 주어질 때 BBED를 따르는 state 의 mean과 covariance는 아래와 같다. 여기서 이다. 여기서 … Read more

음성신호처리 Trapezoidal window에 대하여

ㅇ음성신호처리를 할 때 사용되는 trapezoidal window에 대해 알아보겠습니다. 많은 윈도우를 존재하지만 실제로 사용되는 window의 종류는 정해져있습니다. 그중에서 trapezoidal window에 대해 알아보겠습니다. 말그대로 사다리꼴 윈도우입니다. trapezoidal window를 어떻게 구성하는지 알아보도록 합시다. Trapezoidal window 예를들어 길이가 128인 Trapezoidal window를 만든다고 합시다.그러기 위해 길이가 48짜리인 Hann 윈도우를 생각합니다. Trapezoidal window 는 128개로 구성되어 있는데요. 어떻게 구성하냐면 128개중 처음 … Read more

Nyquist frequency (나이 퀴스트 주파수)

나이 퀴스트 주파수에 대해 알아보자. 나이 퀴스트 주파수는 샘플링 정리에서부터 나온다. 이제 이 정리에서 나온 수치인 나이퀴스트 주파수에 대해 보자. ​ 신호 x(t)의 푸리에 변환을 X(jw)라고 하자. 어떤 wc가 존재하여 |w| > wc 일 때 X(jw)=0 라고 하자. 이럴때 wc를 nyquist frequency (나이 퀴스트 주파수)라고 부른다. wc를 알면 nyquist rate를 어떻게 정해야 되는지 알기 때문에 … Read more

Bayesian MSE (Bayesian Mean Squared Error, 베이지안 평균제곱 오차)의 정의와 의미

Bayesian MSE 에 대해 알아보겠습니다. Full name 으로는 Bayesian Mean Squared Error 입니다. 베이지안 평균제곱오차라고 번역할 수 있겠습니다. 줄여서 BMSE 라고도 하는데요. 베이지안 평균제곱오차는 무엇을 의미할 까요? 자세히 살펴보도록 하겠습니다.   Bayesian MSE (Bayesian Mean Squared Error) 관찰가능한 데이터를 $x$라고 합시다. 그리고 추정하고자 하는 parameter 를 $\theta$라 합시다. Bayesian 관점에서는 $\theta$는 random variable 입니다. 그래서 … Read more

[적응신호처리] steepest descent method, (adaptive signal processing)

적응신호처리에서 최적화 방법인 steepest descent method 에 대해 말해보겠습니다. steepest descent method를 설명하기 전에 기본적인 개념부터 알려드릴게요. 신호 $u[n]$의 $u[n],u[n-1],…,u[n-(M-1)]$값을 이용해서 $d[n]$을 추정하려고 합니다. 가장 쉬운 방법으로는 아래와 같이 $u[n]$의 $u[n],u[n-1],…,u[n-(M-1)]$의 선형결합을 이용하는 방법입니다. $$\hat{d}(n \mid u[n],u[n-1],…,u[n-(M-1)]) = \sum_{k=0}^{M-1}w_k^\star u[n-k]$$ $\hat{d}$이 $d$를 잘 추정하기 위해서 $w=[w_0,…,w_{M-1}]^T$를 잘 찾아야 합니다. $w$를 찾는 방법으로 여러가지 방법이 있지만 아래의 steepest descent 방법이 있습니다. 좀더 이야기 하기전에 오차를 뜻하는 신호인 $e[n]$을 아래와 같이 정의합니다. $$e[n] = d[n] – \hat{d}[n]$$ 그리고 오차의 에너지의 기대값인 $J$를 정의합니다. $$J(n)= E[e[n]e^\star [n]]$$ steepest descent 방법은 오차의 에너지인 $J(n)$의 기대값이 가장 작아지는 방향으로 업데이트 하는 방법입니다. 아래와 같이요. steepest descent algorithm $$w[n+1] = w[n] – \frac{1}{2}\mu \nabla_w J(n) $$ 그라디언트방향으로 $w[n]$를 업데이트해야 $J(n+1)$이 작아집니다. 그 이유는 다른 글들에도 많으니 찾아보시고요. 그러면 $\nabla_w J(n)$의 값은 무엇일까요? 계산을 해보면 아래와 같이 나옵니다. $$\nabla_w J(n) = -2\mathbf{p} + 2\mathbf{R} w[n]$$ 여기서 $p$의 $k$번째 원소 $p[k] = E[u(n-k)d^\star(n)]$이고 $R$은 covariance matrix 로써 $R_{ij} = E[u(n-i)u^\star (n-j)]$ 입니다. 알고리즘 자체는 굉장히 간단하죠. 그런데 문제가 있습니다. $p$와 $R$을 어떻게 구해야 할까요? $p$와 $R$을 구하려면 $u$의 distribution 을 알아야 하는데요. 알수가 있을까요? 걱정하지마세요 distribution을 모른다는 점을 고려해서 LMS algorithm 이 고안되었습니다. LMS algorithm 에 대해서는 나중에 보도록 하죠.

[적응신호처리 adaptive signal processing] linear filter (선형 필터), tap weight

Linear filter 에 대해 알아보겠습니다. linear filter 라는 말에서 알 수 있듯이 선형인 필터를 linear filter를 말합니다. 무엇이 linear filter 일까요? 정확히 보도록 하겠습니다. Linear filter (선형필터) 입력이 $x[n]$이고 출력이 $y[n]$인 필터가 있다고 합시다.$y[n]$이 $x[n]$에 대한 선형 결합일 때 이 필터를 linear filter 라고 부릅니다. $y[n]$이 $x[n]$의 선형 결합이라는 말은 아래와 같습니다. 어떤 복소수 $a_k$ 가 존재해서 $$y[n] = \sum_{k=1}^N a_k^* x[n-k]$$ 여기서 $^*$는 complex conjugate 를 의미합니다. 그리고 $a_k$는 tap weight라고도 불립니다.

푸리에 변환의 공액 대칭성 conjugate symmetric property of fourier transform

디지털 신호처리를 공부하다보면 푸리에 변환은 숨쉬듯이 다룰줄 알아야 한다. 푸리에 변환의 몇가지 성질도 숨쉬듯이 다룰줄 알아야 되는데 이번에는 푸리에 변환의 특징중 하나인 공액 대칭성에 대해 알아보겠다. 어렵지 않지만 자주 쓰이니까 보도록 하자. 푸리에 변환의 공액 대칭성 conjugate symmetric property of fourier transform 실수값만 갖는 신호 h[n]에 대해 생각해보자. 다음과 같은 성질을 푸리에 변환의 공액 대칭성이라고 한다.(공액 대칭성의 전부인지는 모르겠다.) $\begin{align*} H^*(e^{j\omega})  = H(e^{-j\omega}) \tag{1}\label{1} … Read more

선형최소평균제곱오차 추정치(LMMSE, Linear Minimum Mean Squared Error) estimation 의 의미

이번에는 LMMSE(Linear Minimum Mean Squared Error) estimator에 대해 알아보도록 하자. LMMSE 전에 MMSE에 대한 개념을 알고가면 좋다. MMSE에 대한 복습 위의 글에서 볼 수 있듯이 MMSE는 평균을 최소로 하는 추정치이다. X를 이용해 Y를 추정한다 했을 때 MMSE는 다음과 같이 조건부 평균이다. $$ MMSE = E[Y | X]$$ LMMSE 란? MMSE 를 구하면 조건부 평균이라고 했다. … Read more