聚星C#数字信号处理工具包频谱分析的用法
作者:JXISH 发布时间:2022-08-30 11:06:39
聚星C#数字信号处理工具包频谱分析
JXI C# DSP Tools, Spectrum Analysis
聚星针对C#平台开发了数字信号处理工具包。 这里讲解频谱分析用法:
引用
SeeSharpTools.JXI.DSP C:\SeeSharp\JXInst\SeeSharpTools\DSP\Bin\SeeSharpTools.JXI.DSP.dll
代码
Complex[] readData = new Complex[AILength];
double[] spectrum = new double[AILength];
...
SpectrumTask _spectrumAnalyzer;
_spectrumAnalyzer = new SpectrumTask();
_spectrumAnalyzer.InputDataType = InputDataType.Complex; //复数IQ频谱
_spectrumAnalyzer.SampleRate = aiTask.SampleRate; //这里放采样率
_spectrumAnalyzer.WindowType = FFTWindowType.Blackman_Harris; //B=2.0044 窗函数
_spectrumAnalyzer.Unit.Type = SpectrumOutputUnit.dBm;//单位
_spectrumAnalyzer.Unit.Impedance = 50;//电阻
_spectrumAnalyzer.Unit.IsPSD = checkBoxPSD.Checked;//是否密度谱
_spectrumAnalyzer.Output.NumberOfLines = AILength; //频谱线数量,可以是时域波形长度
_spectrumAnalyzer.GetSpectrum(readData, ref spectrum);
aiTask.SampleRate
checkBoxPSD.Checked
spectralLines
readData
spectrum
应该根据实际情况改成你的程序里面的变量。
其中readData是输入时域波形,spectrum是频谱。
C# 数字信号处理工具包 DSP-Core 重采样(Resample)输出点数是多少
问题:
DSP-Core里面的EasyResample是简单的输入-输出方法。(SeeSharpTools.JXI.SignalProcessing.Conditioning.EasyResample)
如果你输入1000个点,要求输出(归一化)采样间隔0.1,也就是内插10倍,输出是8300个点。为什么不是10,000个点呢?
重采样截短效应
本算法是利用有限长冲激响应滤波器,实现频谱失真极小的采样率转换。这种转换是根据171个采样点内插估计进行重采样的。由于软件不知道你给出的波形前后是什么情况(边界条件),软件只计算中间一段的波形,也就是要把原始采样的170个采样点(头尾各85个点)作为边界条件。
那么在计算内插或者筛减的时候就先要去掉170个点。
在前面问题假设情况下,1000个点减掉170个点,再内插10倍:
(1000-170)*10 = 8300
例:
对于降采样,比如归一化采样间隔10,1000个点输入得到
(1000-170) / 10 = 83个点输出
来源:https://blog.csdn.net/JXISH001/article/details/85098105


猜你喜欢
- 熟知:什么是传感器: 所谓传感器能够探测如光、热、温度、重力、方向 等等的功能!Androi
- 前言在 Java 中通常对一些方法进行一些注解操作,但是很多注解在 Java 代码上没有问题,如果切换到 Kotlin 上时,如果继续使用这
- 直接看代码,注释都写清楚了public class MainActivity extends Activity { private
- 解决方案1:禁用缓存,前一次使用的方法,在电脑上各浏览器都没问题,但在ipad、安卓手机上仍有问题解决方案2:禁用浏览器后退键 javasc
- 本文实例讲述了Android实现Service获取当前位置(GPS+基站)的方法。分享给大家供大家参考。具体如下:需求详情:1)、Servi
- AndroidStudio kotlin配置安装插件File -> Settings -> Plugins -> Brow
- 使用Java语言编写一个模拟网上超市购物结算功能的程序,要求程序运行后有一个图形用户界面,可供用户输入购买的各种商品相关信息,最后给出用户的
- java进行时间转换成unix timestamp的具体代码,供大家参考,具体内容如下import java.text.DateFormat
- 1、这个方法在GpsNET.JT809Core里来源:https://www.cnblogs.com/cnsend/p/12197982.h
- 一、单例模式设计模式:软件设计模式是一套被反复使用、多数人知晓、经过分类编目、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易
- 一、包含与删除两种方法解析1.boolean contains(Object o);判断集合中是否包含某个元素。package com.bj
- 1.object:匿名内部类在Android最常用的匿名内部类之一就是点击事件,用Java语言写的话就是下面这样:public interf
- 最近做了微信公众号支付的开发,由于是第一次做也摸索了几天的时间,也只是达到了实现功能的水平,并没有太多考虑到性能问题,所以这篇文章比较适合初
- Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中的配置管理、服务发现、断路器、智能
- C#中List<T>中泛型T如果是一个对象的话,则利用Find函数返回的将是这个对象的指针,对其返回对象的属性进行操作,也会影响
- 今天来研究的是ScrollView-滚动视图,滚动视图又分横向滚动视图(HorizontalScrollView)和纵向滚动视图(Scrol
- spring-boot-devtools是一个为开发者服务的一个模块,其中最重要的功能就是自动应用代码更改到最新的App上面去。原理是在发现
- 本文实例讲述了Spring与Struts整合之让Spring管理控制器操作。分享给大家供大家参考,具体如下:一 Web配置<?xml
- 一、JSON格式介绍JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。相对于另一种数据交换格式
- ThreadLocal是什么?该类提供了线程局部 (thread-local) 变量。这些变量不同于它们的普通对应物,因为访问某个变量(通过