On Mon, Nov 18, 2013 at 08:29:02AM -0500, Robert James wrote: > I'm working on a series of blocks to measure the level of white noise > and attentuate it. (Yes, I know there are better ways of doing this, > like a Wiener filter - my goal here is to experiment and learn.) > > Model: Assume white noise is present in equal power at all frequencies. > > Plan: > Signal --> FFT --> [Find min power val over entire freq vector] --> > [Subtract that min val from all freq] --> IFFT --> Output > > Two questions: > > 1. Will this work?
I doubt it will do what you want it to. What do you mean, 'subtract that min val from all freq'? How do you subtract a power value from a complex amplitude? > 2. What format does the FFT output vector use? I imagine to find the > min power at any freq I need to write my own block - hopefully I can > do this in Python. Code to do that in Python is trivial, but I can't > find the FFT output vector format documented. Likewise for "Subtract" > - I mean this as a mathematical subtraction, *not* attenuation > (multiply), which would attentuate the signal just as much. So if the > FFT output vector is in a logarithmic format, I need to first turn it > into a linear format before subtracting. I'm not sure you understand what the FFT does. Output is complex values. A power spectrum density could be displayed logarithmically, but that's *not* an FFT. I'm not sure what you're attempting, but it looks like you want to - find frequencies with power - design a filter that attenuates the rest - filter your (time-domain) signal. MB -- Karlsruhe Institute of Technology (KIT) Communications Engineering Lab (CEL) Dipl.-Ing. Martin Braun Research Associate Kaiserstraße 12 Building 05.01 76131 Karlsruhe Phone: +49 721 608-43790 Fax: +49 721 608-46071 www.cel.kit.edu KIT -- University of the State of Baden-Württemberg and National Laboratory of the Helmholtz Association
pgpk6DbeLqEHW.pgp
Description: PGP signature
_______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio