% ¢Ï¢Ú¢Ó Problem % ANCP2_tang.m % Written for Poo, 2013-5-29 by Tang % Ref: PenChen Chou's program for Adaptive Noise Cancellation clc; clear all; [X,Fs,Nbits]=wavread('heart38S_3dB_paper_cut.wav') ; % length(X) = 145593; Fs = 44100 tab=10; D=32; mu=0.02; N=length(X) - 400; X=X'; X=X(1:N); plot(0:N-1,X); title('Heart38S_3dB_paper_cut Sound'); P=[X(1:N-D);[0 X(1:N-1-D)];[0 0 X(1:N-2-D)];[0 0 0 X(1:N-3-D)];[0 0 0 0 X(1:N-4-D)];[0 0 0 0 0 X(1:N-5-D)]; ... [0 0 0 0 0 0 X(1:N-6-D)];[0 0 0 0 0 0 0 X(1:N-7-D)];[0 0 0 0 0 0 0 0 X(1:N-8-D)];[ 0 0 0 0 0 0 0 0 0 X(1:N-9-D)];]; T=[X(1+D : N)]; [Y E W]=learn_a2(P,T,0,mu); figure; plot(0:length(E)-1,E); title('Lung Sound'); figure; plot(0:length(Y)-1,Y); title('Heart Sound'); H=0:length(W)-1; figure; plot(H,W(1,:),H,W(2,:),H,W(3,:),H,W(4,:),H,W(5,:),H,W(6,:),H,W(7,:),H,W(8,:),H,W(9,:),H,W(10,:)); title('Weight'); L=length(W); figure; [magX,angX,w] = plot_dtft([W(1,L) W(2,L) W(3,L) W(4,L) W(5,L) W(6,L) W(7,L) W(8,L) W(9,L) W(10,L) ],[1]);