手边有两个螺旋线,它们是射频天线。本来很想数一数他们各自的匝数,不过还是让计算机帮助数一下更轻松一些。下面使用图像处理的方法来获得它们对应的匝数。
▲ 两款天线对比
01 基本算法原理
下面是具体处理步骤:
1. 截取螺旋线的图片:
截取螺旋线的图片并旋转的水平方向。
▲ 截取螺旋线图片,并将它旋转到水平方向
2. 将图片进行垂直投影
读取图片信息并进行垂直灰度投影。图片的形状为:(58,113,3)
▲ 图片垂直灰度投影
(3)对投影进行 DFT,获得基本周期
下面绘制出了投影曲线的 FFT 的幅度谱,其中,将直流分量 X[0]去除。
▲ 投影的 FFT 的幅值
其中峰值位置是 26。
此时,对应的线圈的匝数为 26。这与实际人工数出的匝数是相同的。
02 其它测数据
1.RF433MHz 天线
下面是它对应的图片:
▲ 433MHz 螺旋天线图
对应的幅度谱如下,其中第一个峰值出现在 k=26,对应的线圈匝数为 26.
▲ 垂直投影以及对应的 FFT 幅度谱
2. 355MHz 绝缘金属线天线
天线的图片为:
▲ 绝缘天线图片
计算结果,频谱峰值为 9。实际线圈的匝数为 14。这说明对于黑色线圈,由于对比度不高,造成实际匝数与计算值出现了较大的误差。
▲ 垂直图片灰度投影以及对应的 FFT 幅度谱
3. FM 天线图片
▲ FM 天线图片
处理结果如下,其中峰值出现在 71。实际手工计算得到的匝数为 71。
▲ 图片的垂直灰度投影以及对应的频谱幅度谱
03 结论
使用离散傅里叶变换(DFT)来计算线圈图片绘图垂直投影的幅度谱,通过确定谐波峰值的位置,便可以计算机上线圈的匝数。
这个方法的对于线圈颜色为黑色的线圈,由于图片中对比度不够,呈现的投影对应的频谱峰值出现比较大的偏差。
在上述实验过程中,对于线圈图片的截取以及旋转水平的预处理是通过手工操作的方式。该方法还是有待于进一步的改进,使得图片的预处理能够自动完成。
老师,提个问题哈,fft 的峰值位置跟采样率 fs 有关系。那么请问您:
一、是如何确定这个图片上灰度值的采样间隔?
二、采样率如何与真实匝数对应起来?
回复:前面推文中是假设灰度图片的长度是线圈的长度,设为 T1,线圈的匝数为 m,线的宽度为 T1/m,它的空间频率为 m/T1。
假设采样间隔 Ts 比螺旋线的空间距离小两倍,即满足采样定理的要求,那么采集后数据个数为为 T1/Ts。DFT 之后,频谱的间隔为 1/T1,因此金属线对应的频率 m/T1 对应频谱序号 N=(m/T1)/(1/T1)=m。
因此,只要 Ts 足够小,满足对周期螺旋线的采样定理,频谱的峰值的序号等于匝数,与 Ts 无关。