HW 13b: Difference between revisions

From Class Wiki
Jump to navigation Jump to search
Line 23: Line 23:
===Octave Help===
===Octave Help===
[http://wiki.aims.ac.za/mediawiki/index.php/Octave Octave Wiki]
[http://wiki.aims.ac.za/mediawiki/index.php/Octave Octave Wiki]

===Adaptive Filter===
% LMS algorithm for adaptive noise cancellation

h = zeros(N,1);
mu = 1/(10*N*var(n));
%mu = 1.0;
for k=N:Ls
xk = n(k:-1:(k-N+1));
nhat(k) = h'*xk';

e(k) = - y(k) + nhat(k);
h = h - mu*e(k)*xk';
%/(xk'*xk); % For the previous line.
end


====Questions====
*Is h the adaptive filter coefficients?
*When you save the voice, is it an Nx1 or 1xN matrix?


===Possibly promising links===
===Possibly promising links===

Revision as of 21:23, 11 December 2008

Installing Ubuntu

GNU Radio + GNU Radio Companion

  • GNU Radio Companion is installed with GNU Radio 3.2 and above. Install from the trunk. Synaptic Package Manager will only install 3.0.4
  • GNU Radio Companion is the GUI for GNU Radio

Installing GNU Radio + GNU Radio Companion

SSB Demodulation

  • Convert the *.auf files (and not the *.au files) using Audacity, note the sampling rate
  • Wave source allows you to play the converted *.wav files
  • Bandpass filter to single out the 3kHz (and get rid of the 1/f noise at the same time)
  • Shift down to baseband with a cosine wave
  • Low pass filter to single out the signal at the baseband (and to throw out the signal at +/- 2f)
  • Use your favorite sink to hear/see the results

Octave Help

Octave Wiki

Adaptive Filter

% LMS algorithm for adaptive noise cancellation

h = zeros(N,1); mu = 1/(10*N*var(n)); %mu = 1.0; for k=N:Ls xk = n(k:-1:(k-N+1)); nhat(k) = h'*xk';

e(k) = - y(k) + nhat(k); h = h - mu*e(k)*xk'; %/(xk'*xk); % For the previous line. end


Questions

  • Is h the adaptive filter coefficients?
  • When you save the voice, is it an Nx1 or 1xN matrix?

Possibly promising links

dOxygen filters

Using GNU Radio with Octave

DttSP + GNU Radio