一种简单的车辆过减速带识别方法

汽车技术知识手册:从故障诊断到保养维护的实战指南 汽车技术知识体系是车主理解车辆运行原理、进行基础诊断和维护的核心框架。它涵盖了从发动机、变速箱等动力总成,到底盘悬挂、电气系统等关键模块的工作原理与相互作用。掌握这套体系的技术价值在于,能帮助车主在车辆出现异常时,不再完全依赖外部维修,而是能通过观察机油状态、冷却液液位、排气颜色等“生命体征”,结合OBD-II诊断仪读取故障码,进行初步的问题定位与排查。在应用场景上,无论是日常保养中的机油与滤清器更换、刹车系统检查,还是应对长期停放、季节变化等特殊用车环境,这套知识都能提供科学的决策依据。本文聚焦于构建以动 阅读详情
AI摘要

本文介绍了使用希尔伯特变换分析减振器行程信号以识别车辆经过离散冲击路面减速带的过程。通过检测瞬时频率的峰值和变化率来判断工况,结合车速信息确定车辆是否通过减速带并适时清除标志。

识别方法参考以下图片上的这篇论文第三章,有需要的自行知网下载。

一、离散冲击路面建立

我们之前已经搭建了C级路面,直接在C级路面中间某一段加上减速带就可以。这里我加的减速带,如下图所示,高30mm,凸台宽约20mm,凸台旁边的都是随机路面:

二、识别过程

先看看论文第三章!!!

按照论文所述,可以对输入信号(减振器行程)进行希尔伯特变换,得到瞬时频率(我的理解是信号主要成分的频率)。

运算结果如下:

可以看到,过减速带这种离散冲击路面,瞬时频率会瞬间飙升到很高,可以从这里做文章,根据数值或者数值变化率来判断是否处于过减速带工况。这里采用瞬时频率的微分结果作为判断依据。

过减速带的标志置起以后,再根据车速,因为减速带宽度一般是固定的,等车辆大概离开减速带后,将标志清0。

识别效果如下:

28、基于物联网传感器与机器学习的路面状况识别及机器人轨迹校正算法 本文探讨了基于物联网传感器与机器学习的路面状况识别方法,利用加速度计数据结合k-NN、随机森林和SVM等分类器实现高精度路面分类,准确率普遍超过99%。同时提出了一种适用于全向机器人的实时最优轨迹校正(ROTC)算法,通过偏差检测、切线变换和时间优化生成平滑可执行的回归路径,并采用航位推算引导机器人重回路线。两种技术在智能交通、物流自动化和城市道路管理中具有广泛应用前景。未来可通过特征增强、数据去噪和多传感器融合进一步提升系统性能。 阅读详情

相关推荐

6、基于生物特征与机器学习的安全保障技术

本文介绍了两种基于先进技术的安全保障方法:一是利用人体气味作为生物特征,通过数据转换、字母拼接、加密处理和用户验证实现信息安全保障;二是采用基于机器学习的自动道路监控系统,通过图像分类和深度学习算法实现高精度事故检测。两种技术分别应用于信息安全和道路管理领域,展示了显著的效果和广阔的应用前景。

f9g0h的博客 72

基于yolo的减速带识别与测距项目

基于yolo的减速带识别与测距项目 一、项目架构 二、功能模块 三、使用方法 安装依赖 更换路径配置 测试图片或视频 四、实现原理 五、未来展望 六、总结

qq1309399183的博客 1199

全面探索时域模态参数识别:从理论到MATLAB实现

在工程领域中,时域信号是指随时间变化的信号,通常用来描述物理量如位移、速度、加速度等随时间的连续变化或离散变化。时域信号的特性包括幅度、频率、相位和波形等,这些特性决定了信号的主要特征。例如,在模态参数识别中,通过分析时域信号可以得到结构在特定激励下的响应特性。时域信号可以通过各种传感器如加速度计、应变计等采集,并通过数据采集系统进行数字化处理。时域模态参数识别方法是分析结构振动特性的重要手段之一,其核心在于从时域信号中提取出模态参数,包括模态频率、模态阻尼比和模态振型等。

weixin_35238815的博客 1371

使用深度学习目标检测框架yolov8训练道路减速带数据集 识别道路中减速带 使用Python 构建界面GUI

使用深度学习目标检测框架yolov8训练道路减速带数据集 识别道路中减速带 使用Python 构建界面GUI

2401_88441190的博客 796

RK3568—基于GM8775C的MIPI转双通道LVDS屏幕调试

Rockchip RK3568 原生显示接口不支持双通道LVDS屏幕的数据输出,因此需要借助显示转换芯片才能实现双通道LVDS屏幕的驱动。本文介绍使用GM8775C芯片方案,在 RK3568 平台实现单路 MIPI DSI 信号输出来驱动双通道LVDS显示屏。 关于GM8775C GM8775C 型 DSI 转双通道 LVDS 发送器产品主要实现将 MIPI DSI 转单/双通道 LVDS功能,MIPI 支持 1/2/3/4 通道可选,每通道最高支持 1Gbps 速率,最大支持 4Gbps 速率。LV.

Industio_优快云的博客 1万+

STM32F030F4P6实战:LL库+DMA驱动WS2812全流程(附避坑指南)

本文详细介绍了如何使用STM32F030F4P6的LL库和DMA驱动WS2812 LED灯带的全流程,包括硬件选型、CubeMX配置、LL库与DMA关键实现、数据格式转换及调试技巧。特别提供了避坑指南,帮助开发者避免常见错误,提升开发效率。

weixin_29194693的博客 484

减速带检测数据集总结

本减速带检测数据集包含 5355 张图像,为减速带的检测和识别提供了丰富的数据支持。数据集提供了 YOLO 和 VOC 两种常见的标注方式,方便不同需求的开发者和研究者使用。

yolomaster的博客 645

Windows 下安装 Hermes Agent 完整教程(含踩坑记录)

不支持原生 Windows,必须通过 WSL2 (Windows Subsystem for Linux 2) 运行。WSL2 是 Windows 内置的 Linux 兼容层,可以在 Windows 上运行完整的 Linux 环境。

weixin_50191542的博客 4283

基于目标检测模型的---停车位检测、低矮障碍物、地面标识检测

只采用目标检测(没有关键点、旋转框,只有2D框)的方法在fisheye bev图上同时检测 1、线车位、砖车位、空间车位、立体车位(包含水平、垂直、斜列) 2、各种低矮障碍物接地框(轮档、限位杆,雪糕筒、地锁、隔离桩、树干、电线杆、石柱、石球、防撞桶等) 3、地面标识:地面箭头方向、减速带方向、残疾人标识等

herobinbin的专栏 1万+

树莓派教程(基于python编程)--入门篇

一:格式化SD卡 SD卡插入读卡器连接电脑,使用SDFormatter对SD卡进行格式化 (重装烧录也要进行着SD卡格式化操作) 二:下载官方镜像 http://downloads.raspberrypi.org/raspbian_latest 三:烧录SD卡 使用Win32DiskImager将镜像烧录到格式化后的SD卡 SD卡盘根目录(/boot)下新建一个命名为ssh的...

qq_42109746的博客 6万+

CentOS7下通过YUM源高效部署Zabbix7 Agent指南

本文详细指导在已结束生命周期的CentOS7系统上,通过更换YUM源(如阿里云镜像)并添加Zabbix官方仓库,高效部署Zabbix7 Agent。文章涵盖从源配置、软件安装、关键参数修改到服务启动与防火墙设置的全流程,帮助用户解决依赖错误,快速建立服务器监控。

weixin_29230059的博客 270

基于matlab的蓝色车牌识别(车牌定位)

目录 一 处理流程 二 结果展示 三 核心要点解读 四 matlab代码实现 整套方案还包括以下博客: (1)基于matlab的蓝色车牌识别(绪论) (2)基于matlab的蓝色车牌识别(车牌定位) (3)基于matlab的蓝色车牌识别(车牌倾斜矫正) (4)基于matlab的蓝色车牌识别(车牌字符分割) (5)基于matlab的蓝色车牌识别(车牌字符识别) 转载请注明出处,...

Joseph__Lagrange的博客 2万+

【Linux系统】Kdenlive软件多机位同音频视频同步化处理

Kdenlive简介 官网链接:https://kdenlive.org/zh/ 命令行安装: apt-get install kdenlive Kdenlive能够进行多轨道视频编辑,可以使用和调整多条音频、视频轨道。每条轨道可以按需进行单独锁定、静音。 Kdenlive多机位同音频视频同步化处理步骤 1. 新建Kdenlive文件 选择<文件>-<新建>,建立新的kdenlive文件,初始设置为<视频轨:2>,<音频轨:2>。 视.

qq_31550269的博客 1886

买二手宝马必看!如何用底盘代号快速查车况、避坑(附E90、F30、G20等热门型号指南)

本文详细解析了二手宝马选购中底盘代号的重要性,教你如何通过E90、F30、G20等代号快速识别车况、避开常见陷阱。从发动机通病到电子系统检测,提供3系、5系等热门车型的实战指南,帮助买家精准判断二手宝马的真实价值与潜在维修成本。

weixin_30516243的博客 795

28-3 文件上传漏洞 -白盒审计绕过

这行代码是用来获取文件名中最后一个点(.)后的部分,也就是文件的后缀名。这个函数会返回以最后一个点(.)开始到字符串末尾的部分,包括点(.)本身。然而,这段代码存在一个潜在的安全风险。攻击者可以利用多个点(.)来构造恶意文件名,以绕过后缀名检查。切换到bp将抓到的上传请求发送到重发器然后改包。先上传一个普通的php文件然后使用bp抓包。

weixin_43263566的博客 392

ASPICE标准快速掌握「1.1. 简介」

ASPICE是汽车软件过程改进能力模型(Automotive SPICE,Automotive - Software Process Improvement and Capability dEtermination)的缩写,是一种针对汽车软件开发过程的国际标准。该标准旨在帮助汽车制造商和供应商改进其软件开发过程,以确保其软件产品的质量和安全性。需要做什么为什么要做技术上的依赖性是什么。

雪云飞星的博客 2294

高精地图中地面标识识别技术历程与实践

思路本文将主要介绍高德在高精地图地面标识识别上的技术演进,这些技术手段在不同时期服务了高精地图产线需求,为高德地图构建高精度地图提供了基础的技术保证。1. 地面标识识别地面标识识别,指在地图道路中识别出各种类型的地面标识元素,如地面箭头、地面文字、时间、地面数字、减速带、车距确认线、减速丘、人行横道、停止让行线、减速让行线等。这些自动化识别结果将作为生产数据交付给地图生产产线,经过制作后演变成...

高德技术 2659

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

高德地图标识大全_重磅发布 | 380 页高德核心技术公开,速度收藏

阿里妹导读:回首2019年,作为首个日活过亿的国民出行平台,高德地图to C和to B的用户数都再攀新高。在背后支撑和驱动业务快速发展的,正是数千名日夜奋战的高德技术人。2019年,人工智能技术在高德地图全面落地,在视觉、搜索、导航、定位等业务场景发挥了越来越大的作用;客户端&移动、汽车技术、服务架构、数据研发、质量等技术领域,也实现了深化、融合、智能、创新和突破,为用户提供更准确、更高效...

weixin_39541750的博客 3206

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

重磅发布 | 380 页高德核心技术公开,速度收藏!

阿里妹导读:回首2019年,作为首个日活过亿的国民出行平台,高德地图to C和to B的用户数都再攀新高。在背后支撑和驱动业务快速发展的,正是数千名日夜奋战的高德技术人。2019年,人工...

阿里技术 1374

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

基于汽车动力学与加速度传感信息的纵向坡度实时识别算法介绍

基于汽车动力学与加速度传感信息的纵向坡度实时识别算法介绍 【下载地址】基于汽车动力学与加速度传感信息的纵向坡度实时识别算法介绍 这款开源项目专注于汽车电控系统中的纵向坡度实时识别,通过融合加速度坡度和汽车动力学坡度法,显著提升了坡度识别的精确度与平滑度。算法采用置信因子计算和广义迟滞滤波技术,确保在复杂行驶环境下仍能提供...

gitblog_06711的博客 445

无法确定域的标识_高精地图中地面标识识别技术历程与实践

导读:本文将主要介绍高德在高精地图地面标识识别上的技术演进,这些技术手段在不同时期服务了高精地图产线需求,为高德地图构建高精度地图提供了基础的技术保证。1.面标识识别地面标识识别,指在地图道路中识别出各种类型的地面标识元素,如地面箭头、地面文字、时间、地面数字、减速带、车距确认线、减速丘、人行横道、停止让行线、减速让行线等。这些自动化识别结果将作为生产数据交付给地图生产产线,经过制作后演变成服务于...

weixin_39562234的博客 323

汽车电子故障诊断实战:CAN总线、ECU唤醒与传感器容错

汽车电子系统并非孤立电路,而是由CAN总线、ECU唤醒机制和传感器信号构成的动态协同网络。其核心原理在于多节点实时通信、分级唤醒控制与信号容错判断;技术价值体现在快速定位‘无码故障’‘通讯中断’及‘参数正常却功能异常’等疑难问题;典型应用场景覆盖维修技师现场排故、车主自主检测及智能座舱OTA验证。本文聚焦CAN总线诊断逻辑、ECU唤醒机制、传感器信号容错边界三大实操关键点,提供可复用的信号溯源路径、物理层筛查法与数据流闭环验证方法。

weixin_34277853的博客 326

电磁主动悬架控制方法优化毕业论文【附代码+数据】

✅博主简介:本人擅长数据处理、建模仿真、论文写作与指导,科研项目与课题交流。项目合作可私信或扫描文章底部二维码。(1)直线式电磁主动悬架基础研究。

坷拉博士 1269

基于模型预测控制的主动悬架系统优化与性能分析:从2自由度到4自由度模型的深度研究,含路面预瞄功能。

该模型在Simulink中编写,通过对比主被动悬架的各项性能指标,如簧载质量加速度、悬架动挠度、俯仰角速度等,来观察MPC控制器的控制效果。总之,模型预测控制(MPC)在主动悬架模型中的应用具有重要的意义。2自由度(2DOF)主动悬架模型:该模型为调节型的控制模型,可以提供一些参考,通过调控变量使其趋于更小。在实际应用中,需要根据具体需求选择合适的主动悬架模型和MPC控制器参数,以实现最佳的悬架性能。模型预测控制(MPC)是一种有效的控制方法,能够实现对主动悬架的优化。四、不同自由度的主动悬架模型。

Midnight2001的博客 1419
上一篇: 制动点头与加速抬头控制及与carsim联合仿真对比
下一篇: 过减速带控制效果优化
极简车辆控制
博客等级 码龄3年 1569粉丝 39原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

打赏作者

极简车辆控制

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

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

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

打赏作者

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

抵扣说明:

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

余额充值