我一直在寻找将矩阵数据从一个块传输到另一个块的方法。我想知道是否可以这样做。到目前为止我所想到的是将numpy矩阵转换为一个列表,并在填充列表后用最后的行数和列数发送列表。收到后,只需将列表重新整形为numpy矩阵并根据需要进行处理。但据我所知,制作块时必须知道列表的长度。
我想知道是否可以实现这一点,或者我是否必须以其他方式查看它。
答案 0 :(得分:2)
GNU Radio不关心你的项目实际代表什么,只关心它们的大小(以字节为单位)。
因此,您可以定义任意项目大小,并将多个数字放在一个项目中。实际上,stream_to_vector和vector_to_stream正是这样做的。
您使用output_signature = gr.io_signature(1,1, [gr.sizeofgr_complex] * N_elements)
,其中N_elements是您的矩阵条目数。
作为旁注:交换矩阵确实对信道估计或均衡有所了解;通过异步消息传递,这些通常比项目流更优雅地处理。