X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=gr-wxgui%2Fsrc%2Fpython%2Fcommon.py;h=17a7dc0de550fa8ae5fa32da1f938d3f5fd7edd8;hb=refs%2Fheads%2Fmaster;hp=a75f6810d8ce0732a7d9984ba8076ffd5566edd9;hpb=e9e2ce03af5fb68e168be4e68ef4183a7eb775d5;p=debian%2Fgnuradio diff --git a/gr-wxgui/src/python/common.py b/gr-wxgui/src/python/common.py index a75f6810..17a7dc0d 100644 --- a/gr-wxgui/src/python/common.py +++ b/gr-wxgui/src/python/common.py @@ -216,12 +216,13 @@ def get_min_max(samples): @param samples the array of real values @return a tuple of min, max """ - scale_factor = 3 + factor = 2.0 mean = numpy.average(samples) - rms = numpy.max([scale_factor*((numpy.sum((samples-mean)**2)/len(samples))**.5), .1]) - min_val = mean - rms - max_val = mean + rms - return min_val, max_val + std = numpy.std(samples) + fft = numpy.abs(numpy.fft.fft(samples - mean)) + envelope = 2*numpy.max(fft)/len(samples) + ampl = max(std, envelope) or 0.1 + return mean - factor*ampl, mean + factor*ampl def get_min_max_fft(fft_samps): """