On 03/11/2018 02:06 PM, Glen I Langston wrote:
I realize that your ultimate goal is to do a window=4 median filter, and
this vecimate.py is a "stepping stone" to that.
Hello Gnuradio experts,
I'm following the gnuradio tutorial for creating an out of tree python
My intention is fairly simple. To have a input stream of 4 vectors
and average these 4 vectors, outputting a single average vector
after the 4th vector arrives. Right now my vectors are 1024 channel
total power spectra.
My code is attached, along with the quality control code.
I've been at this for a while, but I must have the wrong model
in my head on how gnuradio holds these samples.
I'm not getting the proper size matches. I can not find any
decimation help, despite hours of googling...
My intention is to make this 4 vector average with decimate a
part of the .grc environment, but the problems are easier to diagnose,
as the QA code is stands alone. Here are the messages I’m getting:
ESMU:vdecimate glangsto$ python qa_vdecimate.py
handler caught exception: could not broadcast input array from shape
(4,1024) into shape (1,1024)
Traceback (most recent call last):
line 55, in eval
line 160, in __gr_block_handle
) for i in self.__out_indexes],
File "/Users/glangsto/Desktop/Research/vdecimate/vdecimate.py", line
58, in work
out[:] = self.sum/float(self.count)
ValueError: could not broadcast input array from shape (4,1024) into
thread[thread-per-block: <block vdecimate (2)>]: SWIG director
method error. Error detected when calling 'feval_ll.eval'
But the specfic goal of "average 4 vectors, then decimate" can be
achieved (approximately) with a single-pole IIR filter with the right
by a keep-one-in-N block.
Discuss-gnuradio mailing list