侵权投诉

信号时域和频域及快速傅立叶变换与加窗信号的详细讲解

2021-01-03 17:42 ? 次阅读

学习信号时域和频域、快速傅立叶变换(FFT)、加窗,以及如何通过这些操作来加深对信号的认识。

理解时域、频域、FFT

傅立叶变换有助于理解常见的信号,以及如何辨别信号中的错误。尽管傅立叶变换是一个复杂的数学函数,但是通过一个测量信号来理解傅立叶变换的概念并不复杂。从根本上说,傅立叶变换将一个信号分解为不同幅值和频率的正弦波。我们继续来分析这句话的意义所在。

所有信号都是若干正弦波的和

我们通常把一个实际信号看作是根据时间变化的电压值。这是从时域的角度来观察信号。

傅立叶定律指出,任意波形在时域中都可以由若干个正弦波和余弦波的加权和来表示。例如,有两个正弦波,其中一个的频率是另一个的3倍。将两个正弦波相加,就得到了一个不同的信号。

cd1a90e30ec240d9aed6129fa8cc1630.jpeg

64dd0841079542299ed105c90ac3f5b1.jpeg

图1 两个信号相加,得到一个新的信号

假设第二号波形幅值也是第一个波形的1/3。此时,只有波峰受影响。

b0983ca299584cd88557ced51bc34fa8.jpeg

1da2c7e4b0f642e49852779685b9b70b.jpeg

图2 信号相加时调整幅值影响波峰

假加上一个幅值和频率只有原信号1/5的信号。按这种方式一直加,直到触碰到噪声边界,您可能会认出结果波形。

a65ab1cd68e14c379173f87e4f029db9.jpeg

4bd7749a37c54a37842e007940241b26.jpeg

图3 方波是若干正弦波的和

您创建了一个方波。通过这种方法,所有时域中的信号都可表示为一组正弦波。

即使可以通过这种方法构造信号,那意味着什么呢? 因为可以通过正弦波构造信号,同理也可以将信号分解为正弦波。

一旦信号被分解,可查看和分析原信号中不同频率的信号。请参考信号分解的下列使用实例:

分解广播信号,可选择要收听的特定频率(电台)。

将声频信号分解为不同频率的信号(例如,低音、高音),可增强特定频段,移除噪声。

根据速度和强度分解地震波形,可优化楼宇设计,避免强烈震动。

分解计算机数据时,可忽略频率重要性最低的数据,这样就能更紧凑地利用内存。这就是文件压缩的原理。

使用FFT分解信号

傅立叶变换将一个时域信号转换为频域信号。频域信号显示了不同频率对应的电压。频域是另一种观察信号的角度。

数字化仪对波形进行采样,然后将采样转换为离散的值。因为发生了转换,傅立叶转换在这些数据上无法进行。可使用离散傅立叶变换(DFT),其结果是离散形式的频域信号。FFT是DFT的一种优化实现,计算量较少,但是本质上是对信号的分解。

请查看上图1中的信号。有两个频率不同的信号。在该情况下,频域中就会显示两条表示不同频率的竖线。

3060ab3d810f4c338e2d64b2921f3e12.jpeg

图4 当相同幅值的两个正弦波相加,在频域中就显示为两条频率竖线

原信号的幅值在竖轴上表示。图2中有个不同幅值的信号。频域中最高的竖线对应于最高电压的正弦信号。在频域里观察信号,可直观地看出最高电压发生在哪个频率上。

ed3121ad96d44fbb8ba5320805c660c4.jpeg

图5 最高的竖线是幅值最大的频率

在频域里也可观察到信号的形状。例如,频域中方波信号的形状。使用不同频率的正弦波创建一个方波。即可预见,在频域中,这些信号都会被表示为一根竖线,每一根竖线都表示组成方波的正弦波。如频域中,竖线显示为一个梯度,就可知道原信号是一个方波信号。

487b5c0091834ee8adc00bcb5e025c5f.jpeg

图6 频域中表示正弦波的竖线呈现为一个梯度

现实生活中,情况是怎样的呢? 许多混合信号示波器(MSO)都有FFT功能。下图中,你可以观察到混合信号图中,方波FFT是如何显示的。放大后可观察到频域中的尖峰。

0853d33ca05f4cc8b27c7f6b1941694d.jpeg

b548d193ca604b5a976db1979d7e71db.jpeg

图7 上图为原正弦波和FFT,下图是放大的FFT,可观察到表示频率的尖峰

在频域中观察信号有助于验证和发现信号中的问题。例如,假设有一个输出正弦波的电路。可在示波器上查看时域输出信号,如图8所示。看上去没有任何问题!

00f8afbf13f4481baf005dd6f9865f31.jpeg

图8 如果将两个很相似的波形相加,仍然会得到一个完美的正弦波

在频域中查看信号时,如果输出的正弦波频率稳定,应该只在频率中显示为一条竖线。但是,可以看到在更高的频率上仍然有一条竖线,表示正弦波并不如观察到的那么完美。可尝试优化电路,去除特定频率的噪声。在频域中显示信号有助于发现信号中的干扰、噪声和抖动。

741b5a46460c4d6c8d359888f549203e.jpeg

图9 查看图8中看似完美的正弦波,可以看出波形中有一个抖动

信号加窗

FFT提供了观察信号的新视角,但是FFT也有各种限制,可通过加窗增加信号的清晰度。

什么是加窗?

使用FFT分析信号的频率成分时,分析的是有限的数据集合。FFT认为波形是一组有限数据的集合,一个连续的波形是由若干段小波形组成的。对于FFT而言,时域和频域都是环形的拓扑结构。时间上,波形的前后两个端点是相连的。如测量的信号是周期信号,采集时间内刚好有整数个周期,那么FFT的上述假设合理。

ed9d2982170046598692d0ab239f4f87.jpeg

67357ba2c5f14d72988d164aebfd1b1b.jpeg

图10 测量整数个周期(上图)可以得到理想的FFT(下图)

在很多情况下,并不能测量到整数个周期。因此,测量到的信号就会被从周期中间切断,与时间连续的原信号显示出不同的特征。有限数据采样会使测量信号产生剧烈的变化。这种剧烈的变化称为不连续性。

采集到的周期为非整数时,端点是不连续的。这些不连续片段在FFT中显示为高频成分。这些高频成分不存在于原信号中。这些频率可能远高于奈奎斯特频率,在0~采样率的一半的频率区间内产生混叠。使用FFT获得的频率,不是原信号的实际频率,而是一个改变过的频率。类似于某个频率的能量泄漏至其他频率。这种现象叫做频谱泄漏。频率泄漏使好的频谱线扩散到更宽的信号范围中。

53d35c824659442f997859e4ed39e1d5.jpeg

39a465fd23344edb99300ca2683857be.jpeg

图11 测量非整数个周期(上图)将频谱泄漏添加至FFT(下图)

可通过加窗来尽可能减少在非整数个周期上进行FFT产生的误差。数字化仪采集到的有限序列的边界会呈现不连续性。加窗可减少这些不连续部分的幅值。加窗包括将时间记录乘以有限长度的窗,窗的幅值逐渐变小,在边沿处为0。加窗的结果是尽可能呈现出一个连续的波形,减少剧烈的变化。这种方法也叫应用一个加窗。

010836302fe141a7aa5a54b11caf2ee5.jpeg

a49b428016584adf99dddeddd5a404da.jpeg

图12 加窗可尽可能减少频谱泄漏

加窗函数

根据信号的不同,可选择不同类型的加窗函数。要理解窗对信号频率产生怎样的影响,就要先理解窗的频率特性。

窗的波形图显示了窗本身为一个连续的频谱,有一个主瓣,若干旁瓣。主瓣是时域信号频率成分的中央,旁瓣接近于0。旁瓣的高度显示了加窗函数对于主瓣周围频率的影响。对强正弦信号的旁瓣响应可能会超过对较近的弱正弦信号主瓣响应。

一般而言,低旁瓣会减少FFT的泄漏,但是增加主瓣的带宽。旁瓣的跌落速率是旁瓣峰值的渐进衰减速率。增加旁瓣的跌落速率,可减少频谱泄漏。

选择加窗函数并非易事。每一种加窗函数都有其特征和适用范围。要选择加窗函数,必须先估计信号的频率成分。

如果您的信号具有强干扰频率分量,与感兴趣分量相距较远,那么就应选择具有高旁瓣下降率的平滑窗。

如果您的信号具有强干扰频率分量,与感兴趣分量相距较近,那么就应选择具有低最大旁瓣的窗。

如果感兴趣频率包含两种或多种很距离很近的信号,这时频谱分辨率就非常重要。在这种情况下,最好选用具有窄主瓣的平滑窗。

如果一个频率成分的幅值精度比信号成分在某个频率区间内精确位置更重要,选择宽主瓣的窗。

如信号频谱较平或频率成分较宽,使用统一窗,或不使用窗。

总之,Hanning窗适用于95%的情况。它不仅具有较好的频率分辨率,还可减少频谱泄露。如果您不知道信号特征但是又想使用平滑窗,那么就选择Hanning窗。

即使不使用任何窗,信号也会与高度一致的长方形窗进行卷积运算。本质上相当于对时域输入信号进行截屏,对离散信号也有效。该卷积有一个正弦波函数特性的频谱。基于该原因,没有窗叫做统一窗或长方形窗。

Hamming窗和Hanning窗都有正弦波的外形。两个窗都会产生宽波峰低旁瓣的结果。Hanning窗在窗口的两端都为0,杜绝了所有不连续性。Hamming窗的窗口两端不为0,信号中仍然会呈现不连续性。Hamming窗擅长减少最近的旁瓣,但是不擅长减少其他旁瓣。Hamming窗和Hanning适用于对频率精度要求较高对旁瓣要求较低的噪声测量。

df5f6a0e68264681934ee940c28c6b62.jpeg

dcdef8b7ade54af7b2feebc22129de54.jpeg

图13 Hamming和Hanning都会产生宽波峰低旁瓣的结果

Blackman-Harris窗类似于Hamming和Hanning窗。得到的频谱有较宽的波峰,旁瓣有压缩。该窗主要有两种类型。4阶Blackman-Harris是一种通用窗,在高90s dB处具有旁瓣抑制功能,有较宽的主瓣。 7阶Blackman-Harris窗函数有宽广的动态范围,有较宽的主瓣。

21e4ece45ae24a85a106ca7eaa334122.jpeg

856c2ba08ee64220803ca48a6413e048.jpeg

图14 Blackman-Harris窗的结果是较宽的波峰,旁瓣有压缩

Kaiser-Bessel窗在幅值精度、旁瓣距离和旁瓣高度之间取得了较好的平衡。Kaiser-Bessel窗与Blackman-Harris窗类似,对于相同的主瓣宽度而言,较近的旁瓣更高,较远的旁瓣更低。选择该窗通常会将信号泄漏至离噪声较近的位置。

Flat top窗也是一个正弦波,穿过0线。Flat top窗的结果是在频域中产生一个显著宽广的波峰,与其他窗相比离信号的实际幅值更近。

811faa65419d4924b1d800d2b3a9af91.jpeg

76ba4e46ae134ff09c41edf7b9e58df3.jpeg

图15 Flat top窗具有更精确的幅值信息

上面列举了几种常见的窗函数。选择窗函数并没有一个通行的方法。下表可帮助您做出初步选择。请始终比较窗函数的性能,从而找到最适合的一种窗函数。

9e3bbd47a88746a0a253a1d99009e9df.jpeg

总结

所有时域中的信号都可表示为一组正弦波。

FFT变换将一个时域信号分解为在频域中表示,并分析信号中的不同频率成分。

在频域中显示信号有助于发现信号中的干扰、噪声和抖动。

信号中如果包含非整数个周期,会发生频率泄漏。可通过加窗来改善该情况。

数字化仪采集到的有限序列的边界会呈现不连续性。加窗可减少这些不连续部分的幅值。

没有窗叫做统一窗或长方形窗,因为加窗效果仍然存在。

一般情况下,Hanning窗适用于95%的情况。它不仅具有较好的频率分辨率,还可减少频谱泄露。

请始终比较窗函数的性能,从而找到最适合的一种窗函数。

收藏 人收藏
分享:

评论

相关推荐

关于Python18个你不知道的高效编程技巧
初识Python语言,觉得python满足了我上学时候对编程语言的所有要求。python语言的高效编....
的头像 马哥Linux运维 发表于 10-15 11:23 ? 110次 阅读
怎样去编写main函数的循环程序
怎样去编写main函数的循环程序? 脉冲发生函数的程序该如何去编写? ...
发表于 10-15 09:17 ? 0次 阅读
函数接口封装到底是什么?
函数接口封装到底是什么?
发表于 10-15 09:16 ? 0次 阅读
如何去实现基于HAL库的Printf函数功能重定向呢
怎样去操作STM32CubeMX串口? 如何去配置HAL库串口呢? 如何去实现基于HAL库的Printf函数功能重定向呢? ...
发表于 10-15 08:28 ? 0次 阅读
单片机定义子函数的返回值有问题吗
单片机定义子函数的返回值有问题吗?如果有,该如何去解决呢?...
发表于 10-14 09:31 ? 0次 阅读
如何去使用IDA PRO呢
IDA PRO是什么? IDA PRO提供几种的打开方式啊? 如何去使用IDA PRO呢? ...
发表于 10-14 09:29 ? 0次 阅读
getch()与getchar()函数的区别是什么?
getch()与getchar()函数的区别是什么?
发表于 10-14 08:31 ? 0次 阅读
怎样把USART初始化函数添加到主函数上呢
怎样把USART初始化函数添加到主函数上呢? STM32库函数是如何实现USART发送数据的? ...
发表于 10-14 07:42 ? 0次 阅读
动态内存分配的注意事项及本质是什么
C语言中比较重要的就是指针,它可以用来链表操作,谈到链表,很多时候为此分配内存采用动态分配而不是静态....
的头像 C语言编程学习基地 发表于 10-13 15:37 ? 181次 阅读
动态内存分配的注意事项及本质是什么
快速提高数据质量的数据清洗小技巧
原始数据中如果夹杂着大量的空格,可能会在我们筛选数据或统计时带来一定麻烦。如何去掉多余的空格,仅在字....
发表于 10-13 11:38 ? 8次 阅读
ACL2021的跨视觉语言模态论文之跨视觉语言模态任务与方法
来自:复旦DISC 引言 本次分享我们将介绍三篇来自ACL2021的跨视觉语言模态的论文。这三篇文章....
的头像 深度学习自然语言处理 发表于 10-13 10:48 ? 151次 阅读
ACL2021的跨视觉语言模态论文之跨视觉语言模态任务与方法
一文详解虚函数及其相关知识点
本期是C++基础语法分享的第七节,今天给大家来分享一下: (1)虚析构函数; (2)纯虚函数; (3....
的头像 C语言编程学习基地 发表于 10-13 10:14 ? 157次 阅读
什么是MicroPython 它能做什么有什么局限
随着Python成为主流的编程语言,MicroPython在嵌入式系统领域也越来越热门起来,尤其是大....
的头像 电子森林 发表于 10-12 11:44 ? 197次 阅读
使用华大单片机HC32F460内部FLASH制作成U盘
关于如何在华大单片机HC32F460 USB msc功能下使用内部Flash制作成小U盘,方法如下。
发表于 10-12 11:37 ? 22次 阅读
如何在Colab中使用SQL
如今,编码测试在数据科学面试过程中几乎是标准的。 作为一名数据科学招聘经理,我发现一个20-30分钟....
的头像 智能感知与物联网技术研究所 发表于 10-12 09:39 ? 136次 阅读
如何在Colab中使用SQL
Python的时间处理模块中处理日期与时间的全面总结
Python的时间处理模块在日常的使用中用的较多,但是使用的时候基本上都是要查资料,还是有些麻烦的,....
的头像 马哥Linux运维 发表于 10-12 09:24 ? 150次 阅读
Python的时间处理模块中处理日期与时间的全面总结
C语言中驱动法编程的代码案例
数据压倒一切。如果选择了正确的数据结构并把一切组织的井井有条,正确的算法就不言自明。编程的核心是数据....
的头像 硬件攻城狮 发表于 10-12 09:21 ? 148次 阅读
一本教你怎么写出让同事无法维护的代码
?对,你没看错,本文就是教你怎么写出让同事无法维护的代码。一、程序命名 容易输入的变量名 。比如:F....
的头像 Linux爱好者 发表于 10-11 15:45 ? 150次 阅读
探究关于数字电路的一些基础知识
1.常用门电路图 2.逻辑代数的基本定理----化简时比较好用 反演定理:对于任意一个逻辑式 Y,若....
的头像 FPGA设计论坛 发表于 10-11 15:04 ? 174次 阅读
探究关于数字电路的一些基础知识
开发一个鸿蒙版仿苹果计算器教程.附代码
众所周知鸿蒙 JS 框架是非常轻量级的 MVVM 模式。通过使用和 Vue2 相似的属性劫持技术实现....
的头像 HarmonyOS技术社区 发表于 10-11 14:17 ? 192次 阅读
开发一个鸿蒙版仿苹果计算器教程.附代码
Linux内核热补丁安全隐患的探索
Linux 内核热补丁可以修复正在运行的 linux 内核,是一种维持线上稳定性不可缺少的措施,现在....
的头像 Linux阅码场 发表于 10-11 11:54 ? 164次 阅读
Linux内核热补丁安全隐患的探索
SystemVerilog语言介绍汇总
作者:limanjihe ?https://blog.csdn.net/limanjihe/arti....
的头像 FPGA之家 发表于 10-11 10:35 ? 176次 阅读
剖析verilog2005的骚操作之对数函数
小技巧分享: verilog下取对数其实可用$clog2这个系统函数,和自己找代码里面写入funct....
的头像 玩儿转FPGA 发表于 10-09 15:29 ? 181次 阅读
剖析verilog2005的骚操作之对数函数
C语言指针作为形参怎么改变其指向的地址
就是一个函数的输入参数是一个指针,该函数需要改变该指针指向的地址,如: 现在有一个全局数组b,现在需....
的头像 嵌入式ARM 发表于 10-09 11:54 ? 2080次 阅读
SystemInit()函数的功能是怎么实现的
SystemInit()函数是什么? SystemInit()函数的功能是怎么实现的? ...
发表于 10-09 08:49 ? 0次 阅读
什么是SVPWM的三相正弦波电流采样
什么是SVPWM的三相正弦波电流采样? 如何对SVPWM的三相正弦波电流采样进行仿真? ...
发表于 10-09 07:38 ? 0次 阅读
JNI中List结构的类数据是怎样返回的
JNI中List结构的类数据是怎样返回的?如何去实现?...
发表于 10-08 06:52 ? 0次 阅读
脉冲发生器的分类及特点
脉冲发生器是用来发生信号的系统,产生所需参数的电测试信号仪器。按其信号波形分为四大类。 正弦信号发生....
的头像 Les 发表于 10-02 17:59 ? 193次 阅读
如何用walsh码完成多用户的扩频
那么如何用walsh码完成多用户的扩频呢?用了以后效果会有哪些改变呢?这也是后续需要展示的程序以及理....
的头像 通信工程师专辑 发表于 09-30 17:17 ? 208次 阅读
C++中的资源泄露问题
在Modern C++之前,C++无疑是个更容易写出坑的语言,无论从开发效率,和易坑性,让很多新手望....
的头像 Linux爱好者 发表于 09-30 17:03 ? 236次 阅读
C++输入和输出的真实面目
C++输入和输出 在C++里std::cin、std::cout、std::cerr和std::en....
的头像 Android编程精选 发表于 09-29 15:22 ? 219次 阅读
在C++中如何用虚函数实现多态
01 — C++虚函数探索 C++是一门面向对象语言,在C++里运行时多态是由虚函数和纯虚函数实现的....
的头像 Android编程精选 发表于 09-29 14:18 ? 224次 阅读
系统调用具体是如何实现的
系统调用就是调用操作系统提供的一系列内核功能函数,因为内核总是对用户程序持不信任的态度,一些核心功能....
的头像 Linux阅码场 发表于 09-29 11:10 ? 237次 阅读
单相正弦波逆变电源设计
单相正弦波逆变电源设计(肇庆理士电源技术有限公司)-本单相正弦波逆变电源的设计,以12V蓄电池作为输....
发表于 09-27 16:22 ? 30次 阅读
单相正弦波逆变电源设计
简述S参数在SI仿真中的应用进阶篇
上篇文章我们介绍了S参数的基本应用,了解了插损与回损的概念,但是S参数中所包含的通道信息远远不止这么....
的头像 高速先生 发表于 09-26 09:24 ? 164次 阅读
简述S参数在SI仿真中的应用进阶篇
剖析C语言中scanf函数常见问题
在写C代码时难免对一些知识点不熟悉,导致犯错,今天分享几点小知识给大家。 空白符问题 ? ? ? ?....
的头像 STM32嵌入式开发 发表于 09-24 16:45 ? 274次 阅读
Crypto算法库使用技巧之基于STM32 AES GCM应用提示
引言 X-CUBE-CRYPTOLIB 是基于 STM32 的 Crypto 算法库,支持对称密钥、....
的头像 STM32单片机 发表于 09-24 14:23 ? 697次 阅读
OpenHarmony HDF传感器模型框架介绍与传感器驱动开发指导
作者介绍 刘飞虎(kevin),担任OpenHarmony社区SIG_DriverFramework....
的头像 OpenAtom OpenHarmony 发表于 09-24 11:21 ? 286次 阅读
OpenHarmony HDF传感器模型框架介绍与传感器驱动开发指导
一篇让你看懂数字信号模拟信号
数电模电是电子信息类专业的专业基础课。但是由于比较难,所以很多人学的并不是很好,今天阿斌就来带大家先....
的头像 硬件攻城狮 发表于 09-24 10:57 ? 3906次 阅读
一篇让你看懂数字信号模拟信号
C++中const以及this指针的使用
const 作用 修饰变量,说明该变量不可以被改变; 修饰指针,分为指向常量的指针(pointer ....
的头像 C语言编程学习基地 发表于 09-23 11:39 ? 268次 阅读
如何在在RISCV中使用DSP指令
1.概述 DSP有相关的专业芯片,能够专门实现计算功能,相比于通用处理器,DSP芯片专门用于计算,可....
的头像 嵌入式IoT 发表于 09-22 14:28 ? 3583次 阅读
浅析离散时间信号与系统
理论必须结合实际!因此在2018年就有了第六部分的讲解,目的就是让同学们看到学到的理论知识怎么在计算....
的头像 通信工程师专辑 发表于 09-22 11:30 ? 755次 阅读
浅析离散时间信号与系统
51单片机的启动代码究竟里面写了什么
在我们使用kei c51创建一个51单片机项目时,会有如下图所示的提示: ? keil创建新项目时,....
的头像 strongerHuang 发表于 09-22 10:15 ? 289次 阅读
51单片机的启动代码究竟里面写了什么
介绍3种方法跨时钟域处理方法
跨时钟域处理是FPGA设计中经常遇到的问题,而如何处理好跨时钟域间的数据,可以说是每个FPGA初学者....
的头像 FPGA设计论坛 发表于 09-18 11:33 ? 1867次 阅读
介绍3种方法跨时钟域处理方法
C语言中struct的用法有哪些
定义结构体变量 ? ????下面举一个例子来说明怎样定义结构体变量。 ? ? ? ? ? ? ? ?....
的头像 STM32嵌入式开发 发表于 09-15 09:41 ? 1181次 阅读
C++基础语法友元类和友元函数
本期是C++基础语法分享的第五节,今天给大家来分享一下: (1)explicit(显式)关键字; (....
的头像 C语言编程学习基地 发表于 09-12 09:52 ? 284次 阅读
C++基础语法之inline 内联函数
上节我们分析了C++基础语法的const,static以及 this 指针,那么这节内容我们来看一下....
的头像 C语言编程学习基地 发表于 09-09 09:38 ? 256次 阅读
如何使用C++语法中的volatile
volatile volatile int i = 10; volatile 关键字是一种类型修饰符....
的头像 C语言编程学习基地 发表于 09-09 09:38 ? 318次 阅读
C++语法中的inline内联函数详解
上节我们分析了C++基础语法的const,static以及 this 指针,那么这节内容我们来看一下....
的头像 C语言编程学习基地 发表于 09-09 09:33 ? 1343次 阅读
Kitronik ARCADE游戏手柄实现连连看
连连看相信大家都玩过,但这个用Kitronik AR CADE游戏手柄来玩连连看的项目你相信是一个高....
的头像 电子森林 发表于 09-08 11:47 ? 352次 阅读
Kitronik ARCADE游戏手柄实现连连看
函数信号发生器的功能及优势
函数信号发生器是一种信号发生装置,能产生某些特定的周期性时间函数波形 ( 正弦波、方波、三角波、锯齿....
发表于 09-08 11:35 ? 239次 阅读
Spark SQL的概念及查询方式
一、Spark SQL的概念理解 Spark SQL是spark套件中一个模板,它将数据的计算任务通....
的头像 数据分析与开发 发表于 09-02 15:44 ? 274次 阅读
Spark SQL的概念及查询方式
你们知道指针和引用正确的使用场景吗
先解决两个疑问 ◆ 指针和引用的不同之处是什么? ◆ 何时用用指针?何时用引用? 指针和引用的不同之....
的头像 STM32嵌入式开发 发表于 09-02 14:37 ? 280次 阅读
你们知道指针和引用正确的使用场景吗
为什么要进行单相机标定
为什么要进行单相机标定? 广义:畸变矫正和一维和二维测量 畸变矫正: 在几何光学和阴极射线管(CRT....
的头像 新机器视觉 发表于 09-02 09:45 ? 367次 阅读
分享一个最新的的Python对象序列化方式
许多Python标准库都有一些未被赏识的精华。其中之一是允许简单优雅的基于参数类型的函数分发。这一特....
的头像 马哥Linux运维 发表于 09-01 15:19 ? 984次 阅读
分享一个最新的的Python对象序列化方式
HFSS-API常用的基本形状和布尔操作函数
摘要: 上节HFSS-API入门第一弹:画个Box主要是分享了调用改良hfssapi新建工程和设计文....
的头像 知社学术圈 发表于 08-27 15:38 ? 296次 阅读
四个方面全面解析Linux 下 C++ 编译&链接
【导读】:编译与链接对CC++程序员既熟悉又陌生,熟悉在于每份代码都要经历编译与链接过程,陌生在于大....
的头像 开关电源芯片 发表于 08-27 09:36 ? 3085次 阅读
四个方面全面解析Linux 下 C++ 编译&链接
为什么3次谐波对设备危害最大
在一个正弦波的周期内,具有3个周期的小波形就是3次谐波。
的头像 工程师邓生 发表于 08-25 17:48 ? 494次 阅读
正弦波逆变器与方波逆变器有什么不一样的地方呢
逆变器正弦波按其性质主要可以分为正弦波逆变器与方波逆变器。
的头像 工程师邓生 发表于 08-25 15:47 ? 708次 阅读
数据分析利器之Excel的常用函数
导读:在【Excel功能篇】,我们围绕Excel的基础功能以及常见的练习题梳理了Excel的常用功能....
的头像 上海磐启微电子有限公司 发表于 08-17 16:43 ? 455次 阅读
数据分析利器之Excel的常用函数
综合在线 日韩欧美 中文字幕_综合在线 日韩欧美 中文字幕精品视频 <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>