discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] new peakfinding and averaging wxgui fft code (and


From: Martin Dvh
Subject: Re: [Discuss-gnuradio] new peakfinding and averaging wxgui fft code (and dummy block has huge impact on usability fir filter)
Date: Mon, 17 Jan 2005 06:08:51 +0100
User-agent: Mozilla Thunderbird 0.9 (X11/20041124)

Eric I am Recompiling now (again;-).
I don't know if I will be doing the testing tonight (It is kind of late here in 
the Netherlands)

I did however also finish my modified fft_sink in wxgui and put in on my 
website.
I added the (default) option to average over several fft frames (default 100)
This gives a much quiter spectrum

The most interesting feature I also added is a peakfinding algorithm.
The spectrumwindow can now find peaks and shows the exact frequency and signal 
level of these peaks.

def make_fft_sink_f (fg, parent, label, fft_size, 
input_rate,show_peak_info=False,show_peak_markers=False,navg_frames=100,peak_searchwidth=-1):
    #show_peak_info (default=False): if set to true the fft_window will show 
the frequency and level of every big peak found in the spectrum
    #show_peak_markers (default=False):  if set to true the fft_window will 
show a marker at every big peak found in the spectrum
#navg_frames (default=100): number of fft frames to average before showing it. If set to 100 or higher you get a much quiter spectrum (less noisy and not changing very much every frame) #peak_search_width(-1 gets you the default of 10 for a fft_size of 1024): number of neigbours the peakfinding algorithm will look at for determing if something is a peak.
    #                                         A higher value means you get less 
peaks detected
    #Default the peakfinding algorithm determines a minimum signalstrength 
threshold below which no peaks are detected
    # you can override this with set_autopeakthreshold(False) and 
set_peakthreshold(mythreshold) to use your own threshold
    # the higher the threshold, the less peaks found


I modified Makefile.am,fftsink.py and added peakfind.py
You can all find them on:
http://www.olifantasia.com/projects/gnuradio/mdvh/wxgui/

I ported peakfind.py fromjava code from:
#ported from  YALE - Yet Another Learning Environment
#  Copyright (C) 2001-2004
#      Simon Fischer, Ralf Klinkenberg, Ingo Mierswa,
#          Katharina Morik, Oliver Ritthoff
#      Artificial Intelligence Unit
#      Computer Science Department
#      University of Dortmund
#      44221 Dortmund,  Germany
#  email: address@hidden
#  web:   http://yale.cs.uni-dortmund.de/java
Which is GPL

The files need to be put into:
gr-wxgui/src/python/gnuradio/wxgui

I also tried to make a diff against cvs.
It is at 
http://www.olifantasia.com/projects/gnuradio/mdvh/wxgui/fft_avg_and_peakfind.diff
But cvs diff does not seem to add any new local files. So you have to still add 
peakfind.py manually.

How do I tell cvs diff to include local new files ???

greetings,
Martin





reply via email to

[Prev in Thread] Current Thread [Next in Thread]