如何读取 UDP 包并将其转换为我可以 FFT 的矩阵?
发布于2022-01-28 03:21
阅读(695)
评论(0)
点赞(24)
收藏(4)
我需要做什么才能p1
让 FFT 工作?
from numpy.fft import fft
p1 = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
p1.recvfrom(1040)
mat = fft(p1)
解决方案
您可以使用struct库将字节流解压缩到 Python 数据结构中。您需要使用与数据中的 C 数据类型相对应的格式字符来表示传入流。例如,如果您知道您的输入流是一系列 5 个无符号整数,表示为 4 个字节,您可以使用
struct.unpack('hhhhh', p1[0])
(recvfrom文档说它返回一个(字符串,地址)的元组,其中字符串是接收到的数据)。
这将返回一个 5 个整数的元组。据我了解,元组列表是 的有效输入numpy.fft
,但当然您可以在将元组提供给 numpy 之前根据需要对元组进行预处理。
站长简介:高级工程师,爱好交友,无偿辅导python和前端,技术交流,面试指导,找工作指导,瞎聊都可加我微信i88811i哈,欢迎欢迎!也欢迎加入程序员交流群,专属程序员的圈子,加我微信拉你进群
欢迎关注我的公众号:程序员总部,关注公众号回复python,免费领取 全套python视频教程,关注公众号回复充值+你的账号,免费为您充值1000积分
所属网站分类:
技术文章 >
问答