scipy进行谱分析

Pytorch 实现 PSD 功率谱计算:periodogram 和 welch 方法 前言 由于跑代码需要,本人用 Pytorch 简单实现了 PSD 估计中的最常用的 periodogram 和 welch 函数。这里把我的实现分享给大家。 在实现方案和参数的设计上,本人参考了 scipy 的 API 设计。 periodogram 的实现 函数体如下。 def _periodogram(X: torch.Tensor, fs, detrend, scaling): if X.dim() > 2: X = torch.squeeze(X) elif X 阅读详情

参考:

Signal processing (scipy.signal) — SciPy v1.9.3 Manual

periodogram

scipy.signal.periodogram(x, fs=1.0, window='boxcar', nfft=None, detrend='constant', return_onesided=True, scaling='density', axis=- 1)[source]
使用周期图估计功率谱密度。

参数
x:array_like
测量值的时间序列

fs:float,可选
x时间序列的采样频率。默认为1.0。

Window:str或tuple或array_like,可选
想要使用的窗口。如果window是字符串或元组,则将它传递给get_window以生成窗口值,即使在默认情况下也是dft。有关窗口和所需参数的列表,请参阅get_window。如果window是array_like,它将直接用作窗口,其长度必须为nperseg。默认为' boxcar '。

nfft:int,可选
FFT的长度。如果为None,则使用x的长度。

detrend:str或function或False,可选
指定如何为每个段趋势化。如果detrend是一个字符串,它将作为类型参数传递给detrend函数。如果它是一个函数,它接受一个段并返回一个有趋势的段。如果detrend为False,则不进行去趋势处理。默认为' constant '。

return_onesided:bool,可选
如果为True,返回真实数据的单边频谱。如果False返回一个双面频谱。默认为True,但是对于复杂的数据,总是返回一个双面谱。

scaling{ ‘density’, ‘spectrum’ }, optional
在计算功率谱密度(‘密度’)和计算功率谱(‘频谱’)之间进行选择,其中Pxx的单位是V**2/Hz,其中Pxx的单位是V**2,如果x的单位是V, fs的单位是Hz。默认为' density '

axis:int,可选
计算周期图的轴;默认值是在最后一个轴上(即轴=-1)。

返回
f :ndarray
采样频率数组。

Pxx :ndarray
x的功率谱密度或功率谱。

示例:

from scipy import signal
import matplotlib.pyplot as plt
import numpy as np

rng = np.random.default_rng()
# Generate a test signal, a 2 Vrms sine wave at 1234 Hz, corrupted by 0.001 V**2/Hz of white noise sampled at 10 kHz.

fs = 10e3
N = 1e5
amp = 2*np.sqrt(2)
freq = 1234.0
noise_power = 0.001 * fs / 2
time = np.arange(N) / fs
x = amp*np.sin(2*np.pi*freq*time)
x += rng.normal(scale=np.sqrt(noise_power), size=time.shape)
# Compute and plot the power spectral density.

f, Pxx_den = signal.periodogram(x, fs)
plt.semilogy(f, Pxx_den)
plt.ylim([1e-7, 1e2])
plt.xlabel('frequency [Hz]')
plt.ylabel('PSD [V**2/Hz]')
plt.show()

welch

scipy.signal.welch(x, fs=1.0, window='hann', nperseg=None, noverlap=None, nfft=None, detrend='constant', return_onesided=True, scaling='density', axis=- 1, average='mean')
用韦尔奇方法估计功率谱密度。
Welch的方法[1]通过将数据划分为重叠的段,计算每个段的修正周期图并对周期图进行平均来计算功率谱密度的估计值。

参数
x:array_like
测量值的时间序列

fs:float,可选
x时间序列的采样频率。默认为1.0。

Window:str或tuple或array_like,可选
想要使用的窗口。如果window是字符串或元组,则将它传递给get_window以生成窗口值,即使在默认情况下也是dft。有关窗口和所需参数的列表,请参阅get_window。如果window是array_like,它将直接用作窗口,其长度必须为nperseg。默认为Hann窗口。

nperseg:int,可选
每段的长度。默认为None,但如果window是str或tuple,则设置为256,如果window是array_like,则设置为窗口的长度。

noverlap:int,可选
分段之间重叠的点数。如果为None, noverlap = nperseg // 2。默认为None。

nfft:int,可选
如果需要补零FFT,则使用的FFT的长度。如果为None,则FFT长度为nperseg。默认为None。

detrend:str或function或False,可选
指定如何为每个段趋势化。如果detrend是一个字符串,它将作为类型参数传递给detrend函数。如果它是一个函数,它接受一个段并返回一个有趋势的段。如果detrend为False,则不进行去趋势处理。默认为' constant '。


return_onesided:bool,可选
如果为True,返回真实数据的单边频谱。如果False返回一个双面频谱。默认为True,但是对于复杂的数据,总是返回一个双面谱。

scaling{ ‘density’, ‘spectrum’ }, optional
在计算功率谱密度(‘密度’)和计算功率谱(‘频谱’)之间进行选择,其中Pxx的单位是V**2/Hz,其中Pxx的单位是V**2,如果x的单位是V, fs的单位是Hz。默认为' density '

axis:int,可选
计算周期图的轴;默认值是在最后一个轴上(即轴=-1)。

average{ ‘mean’, ‘median’ }, optional
周期图平均时使用的方法。默认为' mean '。

返回
f:ndarray
采样频率数组。

Pxx:ndarray
x的功率谱密度或功率谱。

note:
适当的重叠量取决于窗口的选择和您的需求。对于默认的Hann窗口,50%的重叠是一个合理的权衡,既能准确估计信号功率,又不会过多计算任何数据。较窄的窗口可能需要较大的重叠。
如果超叠为0,此方法等价于巴特利特方法[2]。

示例:

from scipy import signal
import matplotlib.pyplot as plt
rng = np.random.default_rng()
# Generate a test signal, a 2 Vrms sine wave at 1234 Hz, corrupted by 0.001 V**2/Hz # of white noise sampled at 10 kHz.

fs = 10e3
N = 1e5
amp = 2*np.sqrt(2)
freq = 1234.0
noise_power = 0.001 * fs / 2
time = np.arange(N) / fs
x = amp*np.sin(2*np.pi*freq*time)
x += rng.normal(scale=np.sqrt(noise_power), size=time.shape)
Compute and plot the power spectral density.

f, Pxx_den = signal.welch(x, fs, nperseg=1024)
plt.semilogy(f, Pxx_den)
plt.ylim([0.5e-3, 1])
plt.xlabel('frequency [Hz]')
plt.ylabel('PSD [V**2/Hz]')
plt.show()

csd

scipy.signal.csd(x, y, fs=1.0, window='hann', nperseg=None, noverlap=None, nfft=None, detrend='constant', return_onesided=True, scaling='density', axis=- 1, average='mean')
使用Welch的方法估计交叉功率谱密度Pxy。


参数
x:array_like
测量值的时间序列

y:array_like
测量值的时间序列

fs:float,可选
x和y时间序列的采样频率。默认为1.0。

Window:str或tuple或array_like,可选
想要使用的窗口。如果window是字符串或元组,则将它传递给get_window以生成窗口值,即使在默认情况下也是dft。有关窗口和所需参数的列表,请参阅get_window。如果window是array_like,它将直接用作窗口,其长度必须为nperseg。默认为Hann窗口。

nperseg:int,可选
每段的长度。默认为None,但如果window是str或tuple,则设置为256,如果window是array_like,则设置为窗口的长度。

Noverlap: int,可选
分段之间重叠的点数。如果为None, noverlap = nperseg // 2。默认为None。

nfft:int,可选
如果需要补零FFT,则使用的FFT的长度。如果为None,则FFT长度为nperseg。默认为None。

detrend:str或function或False,可选
指定如何为每个段趋势化。如果detrend是一个字符串,它将作为类型参数传递给detrend函数。如果它是一个函数,它接受一个段并返回一个有趋势的段。如果detrend为False,则不进行去趋势处理。默认为' constant '。

return_onesided:bool,可选
如果为True,返回真实数据的单边频谱。如果False返回一个双面频谱。默认为True,但是对于复杂的数据,总是返回一个双面谱。

scaling{ ‘density’, ‘spectrum’ }, optional
选择计算交叉谱密度(' density '),其中Pxy的单位是V**2/Hz,以及计算交叉谱(' spectrum '),其中Pxy的单位是V**2,如果x和y的单位是V, fs的单位是Hz。默认为' density '

axis:int,可选
计算两个输入的CSD的轴;默认值是在最后一个轴上(即轴=-1)。

average{ ‘mean’, ‘median’ }, optional
周期图平均时使用的方法。如果谱是复的,则分别计算实部和虚部的平均值。默认为' mean '。

返回
f:ndarray
采样频率数组。

Pxy:ndarray
x,y的交叉谱密度或交叉功率谱。

note:
By convention, Pxy is computed with the conjugate FFT of X multiplied by the FFT of Y.

If the input series differ in length, the shorter series will be zero-padded to match.

按照惯例,Pxy是用X的共轭FFT乘以Y的共轭FFT来计算的。
如果输入序列长度不同,则较短的序列将补零以匹配。
适当的重叠量取决于窗口的选择和您的需求。对于默认的Hann窗口,50%的重叠是一个合理的权衡,既能准确估计信号功率,又不会过多计算任何数据。较窄的窗口可能需要较大的重叠。

示例:

from scipy import signal
import matplotlib.pyplot as plt
rng = np.random.default_rng()
#Generate two test signals with some common features.

fs = 10e3
N = 1e5
amp = 20
freq = 1234.0
noise_power = 0.001 * fs / 2
time = np.arange(N) / fs
b, a = signal.butter(2, 0.25, 'low')
x = rng.normal(scale=np.sqrt(noise_power), size=time.shape)
y = signal.lfilter(b, a, x)
x += amp*np.sin(2*np.pi*freq*time)
y += rng.normal(scale=0.1*np.sqrt(noise_power), size=time.shape)
# Compute and plot the magnitude of the cross spectral density.

f, Pxy = signal.csd(x, y, fs, nperseg=1024)
plt.semilogy(f, np.abs(Pxy))
plt.xlabel('frequency [Hz]')
plt.ylabel('CSD [V**2/Hz]')
plt.show()
Python: scipy.signal.coherence的用法及代码示例 的幅度平方相关估计 (MSC, Magnitude Squared Coherence Estimation)的功率普密度估计值 (PSD, Power Spectral Density Esitmation),的交叉谱密度估计 (CSD, Cross Spectral Density Estimation)。的作用为:使用 Welch’s 方法评估离散时间信号。 阅读详情

相关推荐

数字信号处理与scipy.signal模块详解:滤波器设计、卷积运算、谱分析及应用(七)

scipy.signal模块是SciPy库中用于信号处理的重要模块。它提供了许多用于数字信号处理、滤波、频谱分析、傅里叶变换、卷积等操作的函数。该模块主要用于处理和分析信号,提供了大量的函数和方法,用于滤波、卷积、傅里叶变换、噪声生成、周期检测、谱分析等信号处理任务。yn∑k−∞∞xk⋅hn−kynk−∞∑∞​xk⋅hn−k翻转:让两个信号列反过来平移:将其中一个信号相对于另一个信号平移相乘求和:对应元素相乘并求和。

weixin_69882801的博客 1124

python scipy.signal_python scipy signal.periodogram用法及代码示例

使用周期图估算功率谱密度。参数:x:array_like测量值的时间序列fs:float, 可选参数x时间序列的采样频率。默认为1.0。window:str 或 tuple 或 array_like, 可选参数希望使用的窗口。如果window是字符串或元组,则将其传递给get_window生成窗口值,默认情况下为DFT-even。参考get_window有关窗口和必需参数的列表。如果窗口是数组,它...

weixin_42509569的博客 2146

Python光谱分析:从基础到实战应用

光谱分析是研究物质成分的重要手段,广泛应用于材料科学、化学分析和天文观测等领域。其核心原理是通过测量物质与电磁波的相互作用,获取特征光谱信息。传统光谱处理依赖专业软件,但存在封闭性强、扩展性差的问题。Python凭借NumPy、SciPy等科学计算库,为研究人员提供了灵活、可定制的解决方案。通过自动化处理峰值检测和FWHM计算,效率可提升10倍以上,特别适合批量数据处理场景。本文以氦光谱分析为例,详细解析了数据采集、预处理、峰值检测和FWHM计算等关键技术,并提供了实战代码示例和常见问题排查指南。

weixin_29895109的博客 202

scipy.signal 详解

scipy.signal 模块是 SciPy 库中用于信号处理的重要模块。它提供了许多用于数字信号处理、滤波、频谱分析、傅里叶变换、卷积等操作的函数和工具。

Persus & Xie 5093

scipy.signal.savgol_filter参数详解|SG|多项式平滑算法|光谱分析|数据预处理

scipy|SG|多项式平滑算法|光谱分析|数据预处理

qq_41685627的博客 1867

Python实现光谱分析:FWHM计算与自动化处理

光谱分析是材料科学和化学研究中不可或缺的技术手段,其核心在于准确提取特征峰参数。半高全宽(FWHM)作为衡量谱线展宽的关键指标,直接影响分析结果的精度。传统依赖商业软件的方法存在成本高、效率低等问题,而基于Python的科学计算生态(如NumPy、SciPy)提供了更灵活的解决方案。通过峰值检测算法和曲线拟合技术,可以实现从原始光谱数据到FWHM计算的完整流程自动化。这种方法特别适合处理X射线荧光光谱、拉曼光谱等常见数据,结合matplotlib可视化库,还能生成专业级的光谱图表。实际工程应用中,这种自动化

weixin_34072296的博客 162

SciPy signal 模块 API 全景指南:从卷积滤波到谱分析的信号处理工具箱

`scipy.signal` 是 SciPy 中面向信号处理的核心子模块,覆盖卷积相关、滤波与滤波器设计、线性时不变(LTI)系统仿真、波形生成、峰值查找、谱分析以及短时傅里叶变换(STFT)等完整功能链。本文以 [doc/source/reference/signal.rst](https://link.gitcode.com/i/c56600cc2b7498cf0b28ea240df01a10

gitblog_00921的博客 210

Voigt 线型函数 Python 拟合实战:光谱数据 3 种线型(高斯/洛伦兹/Voigt)对比

本文详细介绍了如何使用Python对光谱数据进行Voigt线型函数拟合,并与高斯分布和洛伦兹线型函数进行对比。通过完整的代码示例和可视化分析,帮助读者掌握三种线型函数的数学原理、Python实现技巧及实际应用场景,提升光谱数据分析的准确性和效率。

cumo7370的博客 466

Python - SciPy - ECG信号的谱分析及数字滤波

本节的阅读需要傅里叶级数及傅里叶变换的相关数学知识。 示范代码目录下有一个ecgsignal.dat文件,这里存储了作者采集的一段人体心电信号-ECG。这个文件以4字节浮点数存储样本,单位为μV,采样总数 = 文件大小 / 4,采样频率 = 2000样本/秒。需要说明的是,这个心电信号不是标准的医用心电信号,作者在一台其它用途的医用电生理设备上,用左手拿着正电极,右手拿着负电极,简单记录了上述信号...

海洋饼干叔叔 7357

通信原理 | 功率谱密度PSD | 估计 | 周期图谱法 | Scipy.singal 中periodogram的用法

scipy的函数是模块中的一个功能,用于估计一个信号的功率谱密度(Power Spectral Density,PSD)。这是一种分析信号频率成分的方法,特别适用于处理和分析时间序列数据。

若北辰 1079

谱分析 (spectral analysis) 的 SciPy 代码解析

谱分析 (spectral analysis) 的 SciPy 代码解析

weixin_46713695的博客 310

SciPy 信号处理完全指南:从 B-spline 滤波、滤波器设计到谱分析与 STFT

本文基于 SciPy 官方用户指南 [doc/source/tutorial/signal.rst](https://link.gitcode.com/i/147cfd5c850ea27da91e462875370eea) 编写,系统讲解 `scipy.signal` 子包的核心能力:B-spline 插值滤波、线性/非线性滤波、差分方程滤波、FIR/IIR 滤波器设计、系统表示形式转换、经典谱估

gitblog_00839的博客 13

python一维平滑滤波_SciPy - ECG信号的谱分析及数字滤波

本节的阅读需要傅里叶级数及傅里叶变换的相关数学知识。示范代码目录下有一个ecgsignal.dat文件,这里存储了作者采集的一段人体心电信号-ECG。这个文件以4字节浮点数存储样本,单位为μV,采样总数 = 文件大小 / 4,采样频率 = 2000样本/秒。需要说明的是,这个心电信号不是标准的医用心电信号,作者在一台其它用途的医用电生理设备上,用左手拿着正电极,右手拿着负电极,简单记录了上述信号。...

weixin_31234793的博客 3232

别再盲调PID了!手把手教你用VOFA+实时可视化电机速度曲线(附STM32F4源码)

本文详细介绍了如何使用VOFA+工具实现PID参数的可视化调试,帮助开发者从盲调转向精准调优。通过实时可视化电机速度曲线,结合STM32F4源码示例,展示了如何高效调试Kp、Ki、Kd参数,解决响应慢、超调等常见问题,大幅提升电机控制系统的性能。

weixin_28366475的博客 126

分子对接中的相互作用特征分析(目视筛查)

介绍分子对接的相互作用特征,以及如何通过这些特征进行目视筛查

recher_He1107的博客 5756

光谱分析是天文学研究的重要手段,通过分析天体的光谱,可以获取天体的化学成分、温度、速度等关键信息

天文图像处理是天文学研究的核心环节之一。现代天文望远镜,如哈勃空间望远镜(HST)和詹姆斯·韦伯空间望远镜(JWST),每天产生大量的图像数据。这些原始数据通常包含各种噪声和伪影,需要经过复杂的预处理才能用于科学分析。Python的Astropy库提供了专门用于天文图像处理的工具,如CCDProc模块,可以方便地进行暗场校正、平场校正和宇宙射线去除等操作。例如,使用Python可以编写简洁的代码来批量处理天文图像,自动识别和去除宇宙射线,校正仪器的系统误差,从而提高图像质量。此外,Python的Matplo

[Blog][Domain] programb.blog.youkuaiyun.com 19

同步辐射材料科学应用指南:从XAFS原位实验到数据处理

材料结构分析是材料研究的核心环节,但传统实验室X射线受限于能量固定、亮度不足,往往难以回答原子局域配位、非晶结构及动态演变等关键问题。同步辐射光源以高通量、连续可调、偏振可控及脉冲时间结构等特性,将材料表征从静态观察推进到原位动态追踪层次。基于X射线吸收精细结构谱(XAFS)、原位实验、X射线衍射与散射、微区成像等技术,研究人员可实现元素选择性分析、近邻原子环境解析及真实工况下的结构演变监测。本文从技术原理出发,覆盖实验方案设计、样品制备、现场对光、数据处理与常见故障排查,并结合典型应用场景,为材料科学领域

weixin_32612263的博客 157

Scipy信号处理实战:py-findpeaks中find_peaks_cwt和argrelextrema详解

在Python数据处理领域,峰值检测是信号分析、特征提取的核心任务之一。py-findpeaks项目作为Python峰值检测算法的集成方案,提供了包括Scipy库中`find_peaks_cwt`和`argrelextrema`在内的多种实现。本文将通过实战案例,详解这两种算法的核心原理、参数调优与适用场景,帮助新手快速掌握信号峰值检测技能。 ## 算法原理对比:两种峰值检测的核心差异 Sci

gitblog_00519的博客 723

FPGA优质开源项目 – UDP万兆光纤以太网通信

本文开源一个FPGA项目:UDP万兆光通信。文章末尾有该工程源码获取方式,有需要的小伙伴可以点赞、分享支持一下~

cjx_csdn的博客 4765

芒果YOLO11改进146:OBB旋转检测头Head篇:即插即用|轻量化非对称多级压缩LOADH旋转检测头,原创改进适配YOLOv8高效检测头,检测头新颖改进,全网首发独一份

OBB旋转检测头Head篇:即插即用|轻量化非对称多级压缩LOADH旋转检测头,原创改进适配YOLOv8高效检测头,检测头新颖改进,全网首发独一份

包括YOLOv5、YOLOv7、YOLOv8等模型改进 641

PySpectrometer软件安装教程:在Raspberry Pi OS Bullseye上快速部署

PySpectrometer是一款专为Raspberry Pi设计的光谱仪软件,能够帮助用户轻松搭建属于自己的光谱分析系统。本教程将详细介绍如何在Raspberry Pi OS Bullseye系统上快速部署PySpectrometer软件,让你快速开启光谱探索之旅。 ## 准备工作:了解PySpectrometer 在开始安装前,先让我们了解一下PySpectrometer的基本情况。这是一

gitblog_00423的博客 471

matlab从无到有系列(九):Simulink基础仿真详解(全网最全,从入门到放弃)

🔗 运行环境:Matlab 🚩 作者:左手の明天 🥇 精选专栏:《python》 🔥 推荐专栏:《算法研究》 📚 选自专栏:《数学建模》 🧿 优秀专栏:《Matlab神经网络案例分析》 目前持续更新的专栏: 🥇 专栏:Matlab GUI编程技巧 🔥 专栏:Matlab从无到有系列 📚 专栏:《数学建模》 💗 大家好,我是左手の明天!💗 📆 最近更新:2022 年 4 月 2 日,左手の明天的第215 篇原创博客 🌟🌟往期必看🌟🌟 matlab从无到有系列(二):矩阵运算基础...

左手の明天的博客 9万+

SciPy线性代数实战:SVD图像压缩与稀疏矩阵工程指南

线性代数是机器学习的底层语言,其核心在于向量空间、线性变换与数值稳定性。点积定义相似度,矩阵乘法实现坐标系变换,SVD则提供数据降维与骨架提取能力。SciPy的linalg和sparse.linalg模块并非NumPy的简单扩展,而是面向工业场景优化的数值计算工具箱——它通过条件数预估、内存原地操作和稀疏格式专用求解器(如spsolve、cg、svds),显著提升病态矩阵鲁棒性与超大规模问题可解性。本文以512×512图像SVD压缩为线索,贯通内存布局(strides)、几何直觉(正交投影)、工程陷阱(白化

weixin_33816300的博客 334

华为自研 ERP、Oracle EBS 与 SAP 上线时系统配置思路设计差异深度分析

本文对比分析了华为自研ERP、Oracle EBS和SAP S/4HANA三大ERP系统在上线配置思路上的核心差异。从架构设计看,华为采用分布式微服务架构,SAP采用分层服务架构,Oracle采用集中式一体化架构;在模块配置上,华为以业务场景为导向,SAP基于行业模板,Oracle强调模块独立性;数据迁移方面,华为侧重业务规则清洗,SAP注重数据质量监控,Oracle依赖标准化工具;流程适配上,华为系统随流程调整,SAP在框架内优化,Oracle需定制开发;定制开发模式差异明显,华为采用插件化扩展,SAP使

金牌架构师 1448

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

scipy.signal.find_peaks:从基础参数到实战调优的峰值检测指南

本文详细解析了scipy.signal.find_peaks函数在峰值检测中的应用,从基础参数到实战调优,帮助用户精准识别信号中的峰值。通过ECG心电图、光谱分析和工业振动检测等实战案例,展示了如何灵活调整height、distance、prominence和width等参数,提升检测精度和效率。

weixin_26950847的博客 226

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

上一篇: scipy 窗函数进行设计FIR滤波器
下一篇: Linux-ubuntu常用命令
KPer_Yang
博客等级 码龄4年 281粉丝 181原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

KPer_Yang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值