当前位置: 首页 > article >正文

【从经典到最新】28种信号分解方法,EMD类,VMD类,小波类,FMD、多元分解等(附matlab代码)

  引言

根据“没有免费的午餐”,没有一个单一的群体智能优化算法可以解决所有的优化问题,每一个群体智能优化算法都有局限性和限制。所以很多学者根据自身的专业问题需求,对基础优化算法进行了改进和提升,以期获得更为优秀的性能。同样,在信号处理领域,信号分解方法也有很多种。

本文整分享28种信号分解方法的matlab代码

1.	EMD(经验模态分解,Empirical Mode Decomposition)
2.	TVF-EMD(时变滤波的经验模态分解,Time-Varying Filtered Empirical Mode Decomposition)
3.	EEMD(集成经验模态分解,Ensemble Empirical Mode Decomposition)
4.	VMD(变分模态分解,Variational Mode Decomposition)
5.	CEEMDAN(完全自适应噪声集合经验模态分解,Complementary Ensemble Empirical Mode Decomposition with Adaptive Noise)
6.	LMD(局部均值分解,Local Mean Decomposition)
7.	ITD(固有时间尺度分解,Intrinsic Time Decomposition)
8.	SVMD(逐次变分模态分解,Sequential Variational Mode Decomposition)
9.	ICEEMDAN(改进的完全自适应噪声集合经验模态分解,Improved Complementary Ensemble Empirical Mode Decomposition with Adaptive Noise)
10.	FMD(特征模式分解,Feature Mode Decomposition)
11.	REMD(鲁棒经验模态分解,Robust Empirical Mode Decomposition)
12.	SGMD(辛几何模态分解,Spectral-Grouping-based Mode Decomposition)
13.	RLMD(鲁棒局部均值分解,Robust Intrinsic Time Decomposition)
14.	ESMD(极点对称模态分解, extreme-point symmetric mode decomposition)
15.	ceemd(互补集合经验模态分解,Complementary Ensemble Empirical Mode Decomposition)
16.	SSA(奇异谱分析,Singular Spectrum Analysis)
17.	SWD(群分解,Swarm Decomposition)
18.	RPSEMD(再生相移正弦辅助经验模态分解,Regenerated Phase-shifted Sinusoids assisted Empirical Mode Decomposition)
19.	EWT(经验小波变换,Empirical Wavelet Transform)
20.	DWT(离散小波变换,Discraete wavelet transform)
21.	WPD(小波包分解,Wavelet Packet Decomposition)
22.	MODWT(最大重叠离散小波变换,Maximal Overlap Discrete Wavelet Transform)
23.	JMD(Jump Plus Mode Decomposition)
24.	RVMD(降阶变分模态分解,Reduced-order variational mode decomposition)
25.	MEMD(多元经验模态分解,Multivariate Empirical Mode Decomposition)
26.	MVMD(多元变分模态分解,Multivariate Variational Mode Decomposition)
27.	MJMD(多元JMD,Jump Plus Mode Decomposition)
28.	Adaptive-MEMD(自适应多元经验模态分解,Adaptive Multivariate Empirical Mode Decomposition)

图片

02. 简要介绍

下面算法中同时标注了发表年份

1,EMD(经验模态分解,Empirical Mode Decomposition)

经验模态分解(Empirical Mode Decomposition,缩写EMD)是由黄锷(N. E. Huang)教授与其他人于1998年创造性地提出的一种新型自适应信号时频处理方法,特别适用于非线性非平稳信号的分析处理。该方法是依据数据自身的时间尺度特征来进行信号分解,无须预先设定任何基函数。EMD 方法在理论上可以应用于任何类型的信号的分解,EMD方法一经提出就在不同的工程领域得到了迅速有效的应用,例如用在海洋、大气、天体观测资料与地震记录分析、机械故障诊断、密频动力系统的阻尼识别以及大型土木工程结构的模态参数识别方面。

2,TVF-EMD(时变滤波的经验模态分解)

2017年提出的一种改进的经验模态分解方法来解决EMD模态混合问题。筛分过程采用时变滤波技术完成。充分利用瞬时幅值和频率信息,自适应设计了局部截止频率。然后采用非均匀b样条近似作为时变滤波器。为了解决信号的间歇性问题,提出了一种截止频率调整算法。为了提高低采样率下的性能,提出了一种本征模态函数(IMF)的带宽准则。该方法具有较强的自适应能力,适用于线性和非平稳信号的分析。与EMD方法相比,该方法具有较好的改进效果。

Li, Heng, Zhi Li, and Wei Mo. "A time varying filter approach for empirical mode decomposition." Signal Processing 138 (2017): 146-158.

3,EEMD(集成经验模态分解)

2009年开发的EEMD是为了解决EMD中固有的模态混合问题。它使用了一种添加噪声的数据分析方法。EEMD包括对一组加了白噪声的信号进行筛选,并将信号的真实imf定义为一组信号的平均值。

Wu ZH, Huang NE. Ensemble empirical mode decomposition: a noise-assisted data analysis Method. AADA: Advances in Adaptive Data Analysis, vol. 1, pp.1-4. 2009.

4,VMD(变分模态分解)

VMD于2014年提出,该方法寻找一组模式及其各自的中心频率,使得这些模式共同再现输入信号,而每个模式在解调到基带后都是平滑的。

K. Dragomiretskiy and D. Zosso, "Variational Mode Decomposition," in IEEE Transactions on Signal Processing, vol. 62, no. 3, pp. 531-544, Feb.1, 2014, doi: 10.1109/TSP.2013.2288675.

5,CEEMDAN(完全自适应噪声集合经验模态分解)

基于EMD及集合经验模态分解EEMD方法中加入高斯噪声和通过多次叠加并平均以抵消噪声的思想,2011年提出了一种改进的新型信号分解算法——自适应噪声完备集合经验模态分解(complete ensembleempirical mode decomposition with adaptive noise,CEEMDAN)算法,现已被成功应用于信号去噪。

M.E.Torres, M.A. Colominas, G. Schlotthauer, P. Flandrin, "A complete Ensemble Empirical Mode decomposition with adaptive noise," IEEE Int. Conf. on Acoust., Speech and Signal Proc. ICASSP-11, pp. 4144-4147, Prague (CZ)

6,LMD(局部均值分解)

LMD于2005年提出,该方法具有较强的冗余消除、信号分解能力,能够对非线性、非平稳性信号进行很好的分析。LMD方法处理信号的基本原理是将信号分解为若干个PF分量,每个PF分量可表示为纯调频信号和包络信号的乘积,从而反映出分解信号的时频分布。

Smith J S. The local mean decomposition and its application toEEG perception data[J].Journal of the Royal Society Inter-face,2005,2(5): 443 -454.

7,ITD(固有时间尺度分解)

ITD是由FREIM G等2007年提出的一种自适应时频分析法,根据信号自身局部时间尺度特性,将非平稳信号自适应解耦为一系列彼此独立的固有旋转分量(Proper Rotation,PR)与一个残余分量之和。ITD方法可有效改善分解产生的模态混叠和解调时的信号突变问题,有效滤除噪声。

Frei, M. G., & Osorio, I. (2007, February). Intrinsic time-scale decomposition:time-frequency-energy analysis and real-time filtering of non-stationary signals. In Proceedings of the Royal Society of London A: Mathematical, Physical and Engineering Sciences (Vol. 463, No. 2078, pp. 321-342).

8,SVMD(逐次变分模态分解)

SVMD于2020年发表,是一种稳健的方法,可以连续提取模式,并且不需要知道模式的数量(与VMD不同)。该方法将模态视为具有最大紧凑频谱的信号。SVMD算法的计算复杂度远低于VMD算法。此外,与VMD算法相比,SVMD算法的另一个优点是对模态中心频率的初始值具有更强的鲁棒性。

M. Nazari, S. M. Sakhaei, "Successive Variational Mode Decomposition," Signal Processing, Vol. 174, September 2020.

9,ICEEMDAN(改进的完全自适应噪声集合经验模态分解)

噪声辅助版本已经提出,以减轻所谓的“模式混合”现象,这可能出现在实际信号分析。其中,带自适应噪声的完全集成EMD (CEEMDAN)恢复了EMD的完备性。Marcelo 对最后一种技术进行了改进,于2014年提出ICEEMDAN,获得了噪声更小、物理意义更大的组件。

Marcelo A. Colominas, Gastón Schlotthauer, María E. Torres "Improved Complete Ensemble EMD: a suitable tool for biomedical signal processing" Biomedical Signal Processing and Control, Volume 14, November 2014, Pages 19–29- DOI:10.1016/j.bspc.2014.06.009 .

10,FMD(特征模式分解)

2023年所提出的FMD主要目的是通过设计的自适应有限脉冲响应(FIR)滤波器来分解不同的模式。FMD利用相关峰度的优越性,同时考虑了故障信号的冲动性和周期性。首先,采用汉宁窗初始化设计FIR滤波器组,为分解提供方向。然后利用周期估计和更新过程锁定故障信息。最后,在模式选择过程中剔除冗余模式和混合模式。

Y. Miao, B. Zhang, C. Li, J. Lin, D. Zhang, Feature Mode Decomposition: New Decomposition Theory for Rotating Machinery Fault Diagnosis, IEEE Transactions on Industrial Electronics, 70 (2023) 1949-1960.

11,REMD(鲁棒经验模态分解)

REMD于2022年发表,是一种基于软筛选停止准则(SSSC)的改进经验模态分解方法。SSSC是一种自适应筛选停止准则,用于自动停止EMD的筛选过程。它从时序混合信号中提取一组单分量信号(称为本征模态函数)。它可以与希尔伯特变换(或其他解调技术)一起用于高级时频分析。

Zhiliang Liu, Dandan Peng, Ming J. Zuo, Jiansuo Xia, and Yong Qin. Improved Hilbert-Huang transform with soft sifting stopping criterion and its application to fault diagnosis of wheelset bearings. ISA Transactions. 125: 426-444, 2022.

12,SGMD(辛几何模态分解)

SGMD于2019年提出,作为一种新的模态分解方法,优点在于辛变换能够保护系统结构的相空间几何。该方法通过对一维振动信号重构相空间,得到Hamilton炬阵,进而利用辛变换求解Hamilton矩阵的特征值与特征向量,最终通过对角平均化重构辛几何分量。

PAN H Y,YANG Y,Ll X,et al.Symplectic geometry mode decomposition and its application to rotating machinerycompound fault diagnosis.Mechanical Systems and Signal Processing,2019(114):189-211.

13,RLMD(鲁棒局部均值分解)

RLMD于2017年发表,是一种改进的局部均值分解,由一组优化策略提供动力。该优化策略可以处理LMD中的边界条件、包络估计和筛选停止准则。它同时从混合信号中提取一组单分量信号(称为积函数)及其相关的解调信号(即AM信号和FM信号),这是与其他自适应信号处理方法(如EMD)相比最吸引人的特点。RLMD可用于时频分析。

Zhiliang Liu, Yaqiang Jin, Ming J. Zuo, and Zhipeng Feng. Time-frequency representation based on robust local mean decomposition for multi-component AM-FM signal analysis. Mechanical Systems and Signal Processing. 95: 468-487, 2017。

14,ESMD(极点对称模态分解)

2013年提出的极点对称模态分解法ESMD,具有基于信号局部变化和自适应性等特点,优化了EMD有难以确定最佳筛选次数、趋势函数过于粗略等弊端,已应用于建筑、故障诊断、地震及水文等领域。ESMD可将信号序列分解为平稳、线性的多模态分量和余项。

WANG Jin-liang,Ll Zong-jun.Extreme-point symmetric mode decomposition method for dataanalysis. Advances in Adaptive Data Analysis,2013(5):1350015.

15,ceemd(互补集合经验模态分解)

CEEMD算法于2010年提出,是以EMD为基础,在集合经验模态分解EEMD的基础上进行改进的一种算法,由于引入的是互补噪声,所以在重构信号时的冗余噪声会在很大程度上被消除,而无需进行上百次EMD,从而提高了计算效率。

Yeh, Jia-Rong, Jiann-Shing Shieh, and Norden E. Huang. “Complementary ensemble empirical mode decomposition: A novel noise enhanced data analysis method.” Advances in Adaptive Data Analysis 2.02 (2010): 135-156.

16,SSA(奇异谱分析)

奇异谱分析是一种研究非线性时间序列数据的强大的方法。它根据所观测到的时间序列构造出轨迹矩阵,并对轨迹矩阵进行分解、重构,从而提取出代表原时间序列不同成分的信号,如长期趋势信号、周期信号、噪声信号等,从而对时间序列的结构进行分析,并可进一步预测。SSA具有非常广泛的适用性,对于时间序列,既不需要假设参数模型,也不需要假设平稳性条件。

17,SWD(群分解)

2017年,Georgios K等人提出了一种新型的非平稳信号分解方法—群分解算法SWD,该算法采用循环迭代的思想,自定义了一个生物群体捕食规则,将原始复杂的输入信号视为一个含有多种猎物的群体,SWD 算法作为捕猎群体,在这个群体中自动地分为不同小组,自觉地对“信号猎物”进行捕食,输出信号为捕猎群体中不同小组追捕到不同猎物的最终轨迹的加权和,从而实现非平稳信号分解功能。相比于其他信号分解算法而言,SWD 算法不需预设分解模态数,更适合实际工程应用,且其具备夯实的理论基础,能够自适应地将不同振荡分量从原始信号中分离,是一种新颖的用于信号特征提取的自适应方法。

Apostolidis G K, Hadjileontiadis L J.Swarm decomposition: A novel signal analysis usingswarm intelligence. Signal Processing, 2017,132: 40-50.

18,RPSEMD(再生相移正弦辅助经验模态分解)

当信号包含间歇模态时,模态混合问题会影响著名的经验模态分解(EMD)的有效性。集成EMD (EEMD)和一些改进和扩展的算法通过添加随机白噪声来解决这一问题。然而,集成系统的庞大规模和不可避免的人工干预限制了EEMD的应用。2016年提出了一种新的再生相移正弦辅助EMD (RPSEMD)。迭代生成和添加不同尺度的正弦波以应对不同imfs下所有可能的模态混叠,其中每个正弦波都是自适应和自动设计的。此外,为了更好地保留每个imfs的细节并消除附加的正弦波。

C. Wang, Q. Kemao and F. Da, "Regenerated Phase-Shifted Sinusoid-Assisted Empirical Mode Decomposition," in IEEE Signal Processing Letters, vol. 23, no. 4, pp. 556-560, April 2016, doi: 10.1109/LSP.2016.2537376.

19,EWT(经验小波变换)

经验小波变换(EWT)于2013年提出,是一种使用自适应小波细分方案创建信号的多分辨率分析(MRA)的方法。在进行经验小波变换时,最重要的一个步骤就是频带划分,再在这N个区间内建立一系列滤波器,所需的分量信号就是根据这些滤波器计算而来。EWT方法继承了EMD和小波分析方法的各自优点,通过提取频域极大值点自适应地分割傅里叶频谱以分离不同的模态,然后在频域自适应地构造带通滤波器组从而构造正交小波函数,以提取具有紧支撑傅立叶频谱的调幅-调频(AM-FM)成分。

EWT的分量数可以自由设置,通常需要根据实际应用场景和需求进行调整。在对振动信号进行EWT分解后,得到多个分量信号:在对每个分量信号选行功挛密度谱分析时发现,各个分量的特征频率基本上都是低频信号。

GILLES J. Empirical Wavelet Transform. IEEE Transactions onSignal Processing,2013,61(16):3999-4010.

20,DWT(离散小波变换)

在DWT中使用数字滤波技术获得数字信号的时间尺度表示。采用不同截止频率的滤波器对不同尺度的信号进行分析。信号经过一系列高通滤波器对高频进行分析,再经过一系列低通滤波器对低频进行分析。在基于小波变换的多分辨率分析(MRA)中,以小波函数和尺度函数为基本单元,对不同分辨率下的信号进行分解和构造。MRA在不同的分辨率水平上发展信号的表示。如图1所示,MRA由每个电平的半带低通滤波器和半带高通滤波器组成。

图片

Percival, Donald B., and Andrew T. Walden. Wavelet Methods for Time Series Analysis. Cambridge Series in Statistical and Probabilistic Mathematics. Cambridge ; New York: Cambridge University Press, 2000.

21,WPD(小波包分解)

小波包分解(Wavelet Packet Decomposition,WPD)是一种信号处理技术,也可称为小波包(wavelet packet)或子带树(subband tree)及最佳子带树结构(optimal subband tree structuring)。其概念是用分析树来表示小波包,即利用多次叠代的小波转换分析输入讯号的细节部分。从函数理论的角度来看,小波包分解是将信号投影到小波包基函数张成的空间中。从信号处理的角度来看,它是让信号通过一系列中心频率不同但带宽相同的滤波器。

图片

Percival, Donald B., and Andrew T. Walden. Wavelet Methods for Time Series Analysis. Cambridge Series in Statistical and Probabilistic Mathematics. Cambridge ; New York: Cambridge University Press, 2000.

22,MODWT(最大重叠离散小波变换)

MODWT是离散小波变换的一种扩展形式。在DWT基础上,省略了降采样过程,并且滤波向量与DWT不同,原信号经过MODWT处理后,会得到一系列与原信号维数相同的行向量,包括一个近似系数向量和若干细节系数向量,分别代表原信号在不同频段的投射。MODWT具有以下特点:系数平移不变性,当信号在时域中发生偏移时,原信号的各级MODWT系数在时域中会根据原信号的平移而平移,大小和分布情况不会发生改变; MODWT省略了降采样过程,适用于信号异常发生点的精准检测;MODWT可以对任意长度的信号进行处理,对样本的采样点数没有要求,应用更方便。

Percival, Donald B., and Andrew T. Walden. Wavelet Methods for Time Series Analysis. Cambridge Series in Statistical and Probabilistic Mathematics. Cambridge ; New York: Cambridge University Press, 2000.

23,MEMD(多元经验模态分解)

多元经验模态分解( multipleempirical mode decomposition , MEMD)于2010年提出,是一种针对多元信号的分析方法,其克服了EMD、EEMD处理多元信号时不同通道信号分解得出的本征模函数( intrinsic mode function , IMF)个数不同的问题,同时具有自适应和后验的特点,常用于信号处理。

N. Rehman and D. P. Mandic, "Multivariate Empirical Mode Decomposition," Proceedings of the Royal Society A, vol. 466, no. 2117, pp. 1291-1302, 2010.

24,MVMD(多元变分模态分解)

2019年Rehman等人提出的多元变分模态分解MVMD算法,将VMD算法从单通道拓展到多通道,可以同时处理多通道数据,避免了频率不匹配问题,又解决了MEMD的模式混叠问题,通过MVMD 算法对多通道信号自适应地分解成多个具有物理意义的IMF。

N. Rehman, H. Aftab, Multivariate Variational Mode Decomposition, arXiv:1907.04509, 2019.

25,RVMD(降阶变分模态分解)

受Hilbert-Huang变换和变分模态分解(VMD)的启发,于2023年提出了一种新的数据驱动模态分析方法——降阶变分模态分解(RVMD),以解决瞬态或统计非平稳流动动力学问题。

Liao, Z.-M., Zhao, Z., Chen, L.-B., Wan, Z.-H., Liu, N.-S. & Lu, X.-Y. 2023 Reduced-order variational mode decomposition to reveal transient and non-stationary dynamics in fluid flows. J. Fluid Mech., 966, A7. doi:10.1017/jfm.2023.435

26,JMD(Jump Plus Mode Decomposition)

2024年提出了一种将非平稳信号分解为调幅调频(AM-FM)振荡和间断(跳变)分量的新方法,JMD。

Mojtaba Nazari, Anders Rosendal Korshøj and Naveed ur Rehman, ''Jump Plus AM-FM Mode Decomposition,'' IEEE TSP (in press), available on arXiv: https://doi.org/10.48550/arXiv.2407.07800

27,多元JMD

多变量JMD是一种将多变量信号分解为幅频调制振荡和不连续分量的新方法。是JMD的多元版本,用以处理多通道数据。(2024)

Mojtaba Nazari, Anders Rosendal Korshøj and Naveed ur Rehman, ''Jump Plus AM-FM Mode Decomposition,'' IEEE TSP (in press), available on arXiv: https://doi.org/10.48550/arXiv.2407.07800

28,自适应多元EMD

图片

03. 结果展示

本文对上述分解方法进行了简单的集成,方便自由选择调用与对比。以一段1024个点的信号作为示例输入数据,进行简要展示,主要有2维的imf分解图,3维的imf分解图和imf频谱图。

图片

EMD结果展示

图片

图片

RPSEMD结果展示

图片

SWD结果展示

图片

图片

SVMD结果展示

图片

图片

04. Matlab代码下载

声明:

1.对专业知识的理解受限于个人学术能力,必然有未尽之处,如有疑义请随时交流;

2.代码健壮度、效率和精准度等受限于个人编程能力,如有问题请随时交流;

3.文中有一些内容引自网络,会注明出处或引为参考文献,难免有未尽之处,如有不妥,请随时联系删改。

Matlab代码下载

微信搜索并关注-优化算法侠,或扫描下方二维码关注,以算法名字搜索历史文章即可下载。

28种信号分解方法,随意切换,一键运行-matlab代码

点击链接跳转:

360种基础优化算法免费下载-matlab

【关注|收藏】超360种群智能优化算法-Matlab代码免费获取(截至2024.07.15)

求解cec测试函数-matlab 

cec2017测试函数使用教程及matlab代码免费下载

cec2018测试函使用教程及matlab代码免费下载

cec2019测试函使用教程及matlab代码免费下载

cec2020测试函使用教程及matlab代码免费下载

cec2021测试函使用教程及matlab代码免费下载

cec2022测试函使用教程及matlab代码免费下载
绘制cec2017/018/2019/2020/2021/2022函数的三维图像教程,SO EASY!

215种群智能优化算法python库

Amazing!Python版215种群智能优化算法https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486669&idx=1&sn=6b439e55b37b6482b8d3831ca85f1d55&chksm=c12be0c8f65c69de71ad51d3b736b871ff52f8646e90624f95dd32b024dfaad369d654aaf8fc#rd

解决12工程设计优化问题-matlab

略微出手,工程设计问题(12)(附Matlab代码)https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247485052&idx=1&sn=80e5573c1c005ee5640e44935044ee35&chksm=c12bea79f65c636fc73758b4f4893502bd89cbd1c5d15d7db15e8b5c94eeae40450439d44944&token=681266555&lang=zh_CN#rd

求解11种cec测试函数-python

【选择自由,免费下载】215种优化算法求解11种cec测试函数-python代码https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486669&idx=2&sn=eea8fb04dc507ab9119e2c97c03ca2f6&chksm=c12be0c8f65c69decd6c8109f6b997986bf58725fdbbd7ab03752cb6f61aacdb5a2dc7fec762#rd

解决30种工程设计优化问题-python

【一码解决】215种优化算法求解30个现实世界的工程设计优化问题,让你的论文增色10倍(附Python代码)https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486669&idx=3&sn=ea6d26ae7cb651e5c368f4c73ade228e&chksm=c12be0c8f65c69de739af72d9793838f59ab77bfee36bc2c204f96e2a9e5c6d87dfbbbae698e#rd

仅需一行,可改进所有优化算法:21种混沌映射方法-混沌初始化(附matlab代码)

用于改进所有优化算法:21种混沌映射方法-混沌初始化(附matlab代码)21种混沌映射方法-混沌初始化,适用于所有优化算法https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486215&idx=2&sn=58f1a69175b0d6431a4c7cdfa114b84d&chksm=c12be702f65c6e14e6bd1ddc33b9cec74991d93303c325853049b7e4afd09039b13083fa79c5&token=25423484&lang=zh_CN#rd

 【分类新范式】27种一维数据转换成二维图像的方法-matlab代码

沙场大点兵:27种一维数据转换成二维图像的方法-matlab代码https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486260&idx=1&sn=81b1970cb89364c0289ccdfb403e5388&chksm=c12be731f65c6e273a85456326b503b7f35d9f035405050932ff1926e0b1bfa8076b1bc2d1f2&token=25423484&lang=zh_CN#rd


http://www.kler.cn/a/410638.html

相关文章:

  • 5. Autogen官网教程 (Tool Use)
  • STM32WB55RG开发(5)----监测STM32WB连接状态
  • 【Redis_Day6】Hash类型
  • 认识RabbitMq和RabbitMq的使用
  • Web3 游戏周报(11.17 - 11.23)
  • STM32编程小工具FlyMcu和STLINK Utility 《通俗易懂》破解
  • HDMI转VGA方案 LT8612UX(HDMI2.0) LT8612SX LT8511EX LT8522EX LT8612EX_e(HDMI1.4)
  • 企业数字化转型现状
  • 学习日志016--python实现双向循环列表与链栈
  • 软件测试丨Python语法与数据结构
  • C++【面试重要题目】 只出现一次的数字的集合.
  • git推送报错443
  • 从零开始:NetBox 4.1 Docker 部署和升级
  • 嵌入式的C/C++:深入理解 static、const 与 volatile 的用法与特点
  • 4.3 使用 JMeter 发起请求详解
  • 【人工智能】基于PyTorch的深度强化学习入门:从DQN到PPO的实现与解析
  • python VS c++
  • 室内定位论文速递(11.18-11.22)
  • Visual Studio下载安装教程(非常详细)从零基础入门到精通,看完这一篇就够了_visual studio安装教程
  • 鸿蒙征文|鸿蒙心路旅程:从零到一的探索与成长——我的HarmonyOS
  • 如何定制谷歌浏览器的外观主题
  • 基于IPMI的服务器硬件监控指标解读
  • CSS笔记(一)炉石传说卡牌设计1
  • 周志华深度森林deep forest(deep-forest)最新可安装教程,仅需在pycharm中完成,超简单安装教程
  • android 音效可视化--Visualizer
  • 工欲善其事,必先利其器;爬虫路上,我用抓包