2013-07-22 15 views
0

오디오 신호 처리 작업을하고 있으며 3 밴드 DWT를 수행해야합니다. 이 작업을 수행하려면 MATLAB에서 dwt 함수를 사용하려고합니다. 그러나,이 기능에 대해 읽은 후에는 두 개의 필터, Hi 및 Low Band 만 입력 할 수 있다는 것을 깨달았지만 3을 입력해야합니다.이 작업을 수행 할 수 있습니까? 고맙습니다!MATLAB의 이산 웨이브 렛 변환

+0

재귀 적으로 적용 하시겠습니까? –

+0

무슨 소리 야? 오디오를 낮은 대역 (근사치)과 2 개의 고 대역 (세부 1 및 세부 사항 2)의 3 가지 대역으로 분해해야합니다. 이것은'dwt'가 2 ('Lo_D'와'Hi_D') 만 입력 할 수있는 세 개의 필터 세트를 입력해야한다는 것을 의미합니다. – Math244

답변

0

웨이블릿의 작동 방식을 설명하는 방법이 아닙니다. 문서/자습서/배경 정보를 더 읽어야 더 잘 이해할 수 있습니다. Oli는 정확합니다 - 다중 레벨 분해의 경우 각 레벨에 대해 세부 사항과 근사값이 계산 된 다음 필터가 근사값 (저 대역)에 적용되어 다음 레벨을 계산합니다.

예컨대 : 당신은 3 레벨 분해 lev1_hi, lev2_hi, lev3_hilev3_lo을 유지

sig1=audioread('myfilename'); 
[lev1_lo lev1_hi]=dwt(sig1(:,1),'haar'); 
[lev2_lo lev2_hi]=dwt(lev1_lo,'haar'); 
[lev3_lo lev3_hi]=dwt(lev2_lo,'haar'); 
%etc 

. 귀하의 경우, lev1_hi, lev2_hilev2_lo2을 유지하십시오.

+0

고주파에서 더 많은 해상도를 원한다면이 작업을 수행 할 수있는 변환이 있지만 시간 영역에서는 더 나아질 수 있습니다. –

+0

오 그래, 다단계 분해에 대해 무슨 뜻인지 이해합니다. 나는 아직도 이것을 올바르게 이해하지 못하고 있지만, 내가 요구하는 것은 신호를 여러 단계로 분해하지 않는 것이다. 신호가 세 가지 구성 요소로 분리되는 한 수준을 언급하고 있습니다. – Math244

+0

그런 DWT에 대해 들어 보지 못했습니다. 아마도 새로운 것이지만 2 차원 분해를 찾고 있다고 생각합니다. –