无线感知与AI融合:基于WCSI与CNN的踝关节康复动作识别系统 1. 项目概述与核心价值在骨科术后康复领域尤其是踝关节骨折手术后如何客观、连续且无感地监测患者的关节活动度与康复训练依从性一直是个棘手的临床难题。传统的评估方法要么依赖患者的主观描述和记忆要么需要患者定期前往医院在医生或物理治疗师的监督下进行不仅成本高昂也极大限制了康复的连续性和及时性。近年来随着无线感知和人工智能技术的交叉融合一种全新的、非接触式的智能监测方案正在成为可能。我们这个项目正是将前沿的深度学习Deep Learning、软件定义无线电Software-Dfined Radio, SDR以及无线信道状态信息Wireless Channel State Information, WCSI分析技术创造性地应用于术后踝关节活动的无线监测。简单来说它的核心思想是人体的任何细微动作都会对周围空间的无线信号传播路径产生独特的“扰动”这种扰动会被精密的无线电设备捕捉并转化为数字信号。通过深度学习模型对这些信号进行“解码”我们就能识别出患者正在进行的特定康复动作。与基于摄像头、可穿戴传感器或雷达的方案相比这套系统有几个颠覆性的优势首先它是完全无接触、设备无关的患者无需佩戴任何设备消除了不适感和遗忘佩戴的问题也避免了传感器位移带来的误差。其次它对环境光照、遮挡物不敏感可以在卧室、客厅等多种居家场景下稳定工作保护了用户隐私。最后它能够提供一种客观、量化的评估手段将“感觉好多了”这种模糊描述转化为“今天完成了5组背屈动作平均角度达到XX度”的精确数据。本项目的技术核心在于两个层面的创新结合在数据采集端我们利用通用软件无线电外设USRP这一高度灵活的硬件平台以软件定义的方式精准捕获反映人体活动的WCSI数据在数据分析端我们构建了一个基于卷积神经网络CNN的并行化模型将原始的WCSI时序数据转换为“图像”并利用CNN强大的空间特征提取能力实现了高达98.98%的十类踝关节动作分类准确率。这不仅仅是实验室里的概念验证更是一套具备极高临床转化潜力的完整技术方案。接下来我将为你深入拆解这套系统的每一个技术环节、实操细节以及我们趟过的那些“坑”。2. 系统核心原理与方案选型要理解这套系统为何有效以及我们为何选择这样的技术路线需要从无线感知的基本原理和深度学习模型的特点说起。2.1 无线信道状态信息人体的“无线指纹”无线信号从发射天线到接收天线的传播过程中会经历直射、反射、绕射、散射等多种物理现象。最终接收到的信号是所有多径信号的矢量和。信道状态信息本质上就是对这个复杂传播信道的数学描述它包含了每个子载波上的幅度衰减和相位偏移。当环境中存在静态物体时WCSI相对稳定。而当人体尤其是含水量高的组织在信号传播路径中运动时会动态地改变多径信号的传播路径长度和反射系数从而导致WCSI发生规律性的、与动作相关的扰动。例如踝关节的背屈脚尖向上勾和跖屈脚尖向下踩会以不同的方式改变腿部与躯干的相对位置从而在WCSI上留下截然不同的“模式”或“指纹”。我们选择WCSI而非更常见的接收信号强度指示RSSI是因为WCSI包含了更丰富的细粒度信息。RSSI只是一个标量表示信号的整体功率对微动不敏感且噪声大。而WCSI是一个复数向量包含了每个正交频分复用OFDM子载波的幅度和相位信息能捕捉到由微动引起的细微信道变化非常适合用于高精度的动作识别。2.2 为何选择软件定义无线电与USRP要实现高保真的WCSI采集硬件平台的选择至关重要。传统Wi-Fi网卡如Intel 5300虽然也能提取WCSI但其固件封闭可控制的参数有限采样率、中心频率等往往受制于驱动和协议栈。软件定义无线电的理念是将尽可能多的通信功能如调制解调、滤波、编解码由硬件转向软件实现。这带来了无与伦比的灵活性。USRP B210作为一款成熟的SDR设备正是这一理念的杰出代表。它就像一台“通用无线电”我们可以在MATLAB/Simulink或GNU Radio等软件中用代码自定义生成任意波形信号并通过USRP发射出去同时也能以高采样率、高精度接收原始I/Q数据从而计算出我们需要的WCSI。选择USRP B210的具体理由包括频段覆盖广70 MHz - 6 GHz我们可以避开拥挤的2.4G/5G Wi-Fi频段选择一个相对干净的频点如论文中的5.32 GHz进行实验减少干扰。带宽可调最大56 MHz更大的带宽意味着更多的OFDM子载波能提供更丰富的频域信息有利于特征提取。MIMO支持B210具有两个独立的收发通道为未来探索多天线技术如利用空间分集提升鲁棒性预留了空间。成熟的生态与社区支持Ettus Research提供了完善的驱动和API与MATLAB、LabVIEW、GNU Radio等工具链集成良好降低了开发门槛。注意USRP设备性能强大但价格不菲。在项目初期或预算有限时可以考虑使用ADALM-PLUTO、HackRF One等更廉价的SDR平台进行原理验证。但需注意这些设备的动态范围、相位噪声等指标可能不如USRP会影响WCSI的采集质量。2.3 从数据到图像为何选择卷积神经网络采集到的WCSI是64个子载波随时间变化的复数矩阵本质上是高维时序数据。传统的机器学习方法如SVM、决策树处理这类数据严重依赖人工特征工程例如提取均值、方差、频谱特征等过程繁琐且特征有效性难以保证。我们的核心创新点在于将时序数据转换为图像进而利用CNN这一图像处理领域的“王者”进行端到端的特征学习与分类。具体做法是将每个子载波的幅度或相位随时间变化的曲线单独绘制出来保存为灰度或彩色图像。这样一个动作样本就变成了64张图像。选择CNN处理“WCSI图像”的理由非常充分局部连接与权值共享CNN的卷积核擅长捕捉图像中的局部空间模式如边缘、纹理。在WCSI图像中这些局部模式可能对应着动作的某个特定阶段如起始、峰值、结束在频域上的特征。平移不变性无论动作发生的具体时间点在哪只要其波形模式相似CNN都能较好地识别。这对于动作识别至关重要因为患者每次做动作的起始时间不可能完全一致。层次化特征提取浅层CNN卷积核可以学习到简单的边缘和梯度特征深层网络则能组合这些简单特征形成更复杂的、代表特定动作的抽象模式。这个过程完全由数据驱动无需人工干预。2.4 并行化AlexNet与ZFNet一种稳健的模型设计策略AlexNet和ZFNet是计算机视觉领域具有里程碑意义的经典CNN架构。我们并非简单二选一而是创造性地将两者以并行方式融合。AlexNet更深更宽的网络使用11x11的大卷积核起步能快速捕获图像中的大尺度特征。ZFNet可以看作是AlexNet的“精细化”版本其第一层使用7x7的卷积核和更小的步长Stride2旨在保留更多前期细节信息并通过反卷积网络Deconvnet进行可视化理解虽然本项目未使用该功能。并行融合的思路在于“兼收并蓄”。不同的网络架构可能对同一张图像关注不同的特征。让AlexNet和ZFNet独立地对输入的WCSI图像进行特征提取然后在全连接层之前将两者提取到的高级特征图Feature Map进行拼接Concatenate相当于构建了一个更宽、特征更丰富的联合表示。这种模型集成Ensemble策略通常能提升模型的泛化能力和最终分类精度避免单一模型可能存在的偏差。我们的实验也证实了这一点并行模型的测试准确率98.98%优于单独使用AlexNet或ZFNet且训练损失与验证损失之间的差距更小表明模型过拟合的风险得到了更好的控制。3. 硬件与软件平台搭建实操理论很美好但把系统跑起来才是关键。这一部分我将详细还原我们的硬件连接、软件配置和实验环境搭建过程其中包含了许多在论文中一笔带过、但却至关重要的实操细节。3.1 硬件系统搭建与避坑指南我们的硬件系统由两台PC和两台USRP B210设备构成形成一发一收的链路。所需硬件清单USRP B210x 2核心射频收发设备。电脑PCx 2建议配置i5以上CPU8GB以上内存用于运行MATLAB/Simulink控制软件。我们使用的是Lenovo品牌机。全向天线Omni-directional Antennax 2频率需覆盖5.32 GHz。我们使用的是与USRP配套的VERT2450天线覆盖2.4-2.5 GHz和4.9-5.9 GHz。USB 3.0数据线x 2用于连接USRP与电脑。必须使用高质量的USB 3.0线缆USB 2.0的带宽无法满足高速数据传输需求。三脚架或小桌x 2用于固定USRP和天线保持高度和位置稳定。网线可选如果两台电脑需要同步或通信可连接至同一局域网。搭建步骤与关键设置安装驱动与固件首先在两台电脑上安装USRP硬件驱动UHD和对应的MATLAB支持包。务必从Ettus Research官网下载最新版本。连接USRP后通过UHD实用程序如uhd_find_devices确认设备已被系统识别并更新至最新固件。物理连接与布局将两台USRP分别通过USB 3.0线缆连接到两台电脑。将天线拧紧到USRP的RX/TX端口。注意B210有两个通道我们通常使用通道0TX/RX。将USRP设备放置在小桌上天线竖直向上。发射端与接收端天线间距设置为120厘米这个距离是经过测试的能保证信号强度足够同时留出足够的空间让受试者在中间活动。确保发射与接收天线之间为视距路径中间无大型金属障碍物。实验区域7m x 5m内允许有桌椅等日常家具以模拟真实家居环境。硬件参数设置在软件中完成中心频率Center Frequency设置为5.32 GHz。这是一个相对干净的ISM频段。采样率Sample Rate设置为5 MHz。这决定了基带信号的带宽。发射增益Tx Gain与接收增益Rx Gain需要仔细调整。增益过高会导致信号失真或产生杂散过低则信噪比不够。我们通过实验最终将发射增益设为15 dB接收增益设为25 dB在此设置下信号清晰稳定。天线端口明确指定为‘RX2’和‘TX2’对应B210的通道A。实操心得硬件稳定性是生命线时钟同步问题两台独立的USRP存在时钟漂移。对于需要长时间采集数据的应用建议使用外部10MHz参考时钟和PPS脉冲每秒信号进行同步或将其中一台设为主时钟Master另一台为从时钟Slave。我们初期未同步发现长时间采集后收发两端采样时钟会有微小偏差导致后期数据处理困难。后期我们采用了主从同步模式。USB供电与干扰USRP B210通过USB供电和通信。确保电脑USB端口供电充足必要时使用带外部电源的USB Hub。避免USB线缆与电源线缠绕减少电磁干扰。天线高度与极化保持发射和接收天线高度一致我们设为50cm且极化方式相同均为垂直极化可以最大化接收信号功率。3.2 软件流程与Simulink模型详解我们使用MATLAB R2018a和Simulink进行系统建模和实时信号处理。整个软件模型分为发射端和接收端两个部分。发射端TransmitterSimulink模型流程信源使用Random Integer Generator模块生成随机的二进制比特流。调制采用QPSKQuadrature Phase Shift Keying调制。选择QPSK是因为它频谱效率适中抗噪性能优于BPSK且复杂度低于更高阶的QAM非常适合信道探测。OFDM调制这是核心。OFDM Modulator模块将QPSK符号映射到多个正交的子载波上。我们使用64个子载波其中52个用于传输数据其余为直流子载波和导频子载波。加循环前缀CP在每个OFDM符号前添加循环前缀用于对抗多径效应引起的符号间干扰ISI。上变频与发射通过USRP B210 Transmitter模块将基带OFDM信号上变频至5.32 GHz的射频并通过天线发射出去。这里需要配置前述的硬件参数中心频率、增益等。接收端ReceiverSimulink模型流程接收与下变频USRP B210 Receiver模块捕获射频信号并将其下变频至基带输出原始的I/Q采样数据。同步与去CP对接收到的数据流进行帧同步找到OFDM符号的起始位置然后移除循环前缀。OFDM解调通过FFT将时域信号转换回频域得到每个子载波上的复数信号。信道估计与WCSI提取这是最关键的一步。由于我们发射的是已知的QPSK训练序列可以通过比较接收信号与已知发射信号计算出每个子载波上的信道频率响应即WCSI。公式可以简化为H[k] Y[k] / X[k]其中X[k]是发射的第k个子载波符号Y[k]是接收到的符号H[k]就是我们需要的复数信道状态信息。数据记录将计算出的WCSI一个64长度的复数向量实时写入到MATLAB的工作区变量或保存到.mat文件中。每个时间戳对应一个WCSI向量。关键Simulink参数配置表模块/参数设置值说明与考量USRP B210 TransmitterCenter Frequency5.32e9 Hz实验频点需符合当地无线电法规。Master Clock Rate20e6 HzUSRP内部主时钟影响可用带宽。Interpolation Factor500发射端插值因子与采样率相关。Gain15 dB需根据距离和环境调整避免饱和。USRP B210 ReceiverCenter Frequency5.32e9 Hz必须与发射端严格一致。Decimation Factor500接收端抽取因子与采样率相关。Gain25 dB通常设置比发射增益高以捕捉微弱变化。OFDM Modulator/DemodulatorFFT Length64子载波总数。Cyclic Prefix Length16通常为FFT长度的1/4用于对抗多径时延。Number of Data Carriers52实际用于传输数据的子载波数。注意事项软件调试环路测试首先进行自发自收Loopback测试。用一根同轴电缆将USRP的TX端口直接连接到RX端口需加衰减器防止烧毁前端。运行模型检查接收端是否能正确解调出发射的数据。这是验证软硬件链路是否正常的最重要一步。实时性Simulink默认以加速模式运行但对于实时流数据处理需要仔细调整采样时间、帧大小等参数避免缓冲区溢出Overflow。我们最终将系统处理一帧数据的延迟控制在毫秒级满足了实时监测的需求。数据保存使用To File或To Workspace模块保存WCSI数据时注意文件格式和写入频率避免因磁盘I/O导致系统卡顿。我们采用将数据缓存到内存每隔一定时间批量写入文件的方式。4. 数据采集、处理与深度学习模型构建有了稳定运行的硬件采集平台下一步就是获取高质量的数据集并构建和训练我们的深度学习模型。4.1 实验设计与数据采集规程为了构建一个具有泛化能力的模型数据采集必须科学、规范。受试者与动作我们招募了10名年龄在25-35岁的健康受试者6男4女在知情同意下进行实验。选择10种常见的踝关节康复动作如表2所示例如非负重背屈NWBD、抗阻加强背屈RSD等。采集流程受试者坐在发射与接收天线连线中点的椅子上双脚自然下垂。对于每个动作受试者按照物理治疗师指导的标准姿势和节奏例如每秒一次进行。每个动作连续执行60秒同时软件同步记录WCSI数据。60秒的时长确保了能捕捉到足够多次的动作周期。每名受试者对10个动作各完成5次共产生50个数据文件10动作 x 5重复。数据标注每个数据文件以其对应的动作名称和受试者编号命名形成清晰的标签。这是监督学习的基础。从WCSI到图像的数据预处理流水线数据分割每个60秒的WCSI数据文件包含数万个时间点的采样采样率决定。我们将其分割成多个时间窗口。窗口长度的选择是关键太短可能包含不完整的动作太长则包含多个动作或无效信息。经过试验我们选择2秒作为一个样本窗口这大约能覆盖2个完整的慢速动作周期。生成图像对窗口内的数据我们取出64个子载波中每一个的幅度信息也可以尝试相位或复合信息。对于每个子载波将其幅度随时间变化的曲线绘制出来。关键步骤是标准化将每个子载波的幅度值归一化到[0, 1]区间以消除不同受试者、不同距离带来的绝对信号强度差异。然后使用MATLAB的plot函数关闭坐标轴、网格、标题等所有修饰生成一张纯净的波形图并保存为224x224像素的JPEG图像。数据集构建最终我们从所有受试者的数据中共生成了32,000张这样的“WCSI波形图像”。按照60%19,200张、20%6,400张、20%6,400张的比例随机划分为训练集、验证集和测试集。验证集用于在训练过程中调整超参数和监控过拟合测试集用于最终评估模型的泛化性能在整个训练过程中完全不可见。4.2 并行化CNN模型的具体实现我们使用Keras基于TensorFlow后端来构建和训练模型。下面详细说明模型架构和实现细节。模型结构详解对应论文中的图17和表3我们的并行模型可以看作是两个特征提取“支路”汇入一个分类“主干”。支路一AlexNet风格Conv1: 96个11x11的卷积核步长4激活函数ReLU。MaxPooling1: 3x3池化步长2。Conv2: 256个5x5的卷积核填充‘same’ReLU激活。MaxPooling2: 3x3池化步长2。Conv3-Conv5: 均为384, 384, 256个3x3卷积核填充‘same’ReLU激活。MaxPooling3: 3x3池化步长2。支路二ZFNet风格Conv6: 96个7x7的卷积核步长2ReLU激活。MaxPooling4: 3x3池化步长2。Conv7: 256个5x5的卷积核填充‘same’ReLU激活。MaxPooling5: 3x3池化步长2。Conv8-Conv10: 均为384, 384, 256个3x3卷积核填充‘same’ReLU激活。MaxPooling6: 3x3池化步长2。特征融合将两个支路在最后一个最大池化层MaxPooling3和MaxPooling6输出的特征图进行拼接操作。假设每个支路输出特征图维度为(batch_size, height, width, 256)拼接后变为(batch_size, height, width, 512)。随后通过一个Flatten层将三维特征图展平为一维向量。分类主干Dense1 (全连接层1): 4096个神经元ReLU激活配合Dropout比率0.5防止过拟合。Dense2 (全连接层2): 4096个神经元ReLU激活配合Dropout比率0.5。Dense3 (输出层): 10个神经元对应10个动作类别使用Softmax激活函数输出每个类别的概率。模型训练的关键配置优化器使用Adam优化器其自适应学习率特性在CNN训练中表现稳定。初始学习率设为1e-4。损失函数使用分类交叉熵Categorical Crossentropy这是多分类问题的标准选择。批次大小Batch Size设置为32。较小的批次有助于模型收敛更平稳但训练速度慢较大的批次可能收敛快但不稳定。32是一个经验上的平衡点。训练轮数Epochs设置为20。我们观察到在15个epoch后验证集准确率基本不再上升训练20轮足以保证模型充分收敛。数据增强Data Augmentation为了提升模型鲁棒性我们对训练图像进行了轻微的随机水平翻转和小幅度的亮度/对比度调整。注意由于WCSI波形具有明确的时序方向性我们没有使用旋转等可能破坏时序关系的增强手段。# 示例代码模型构建的核心部分Keras函数式API from tensorflow.keras import layers, models, Input # 定义输入层 input_img Input(shape(224, 224, 3)) # 支路一AlexNet风格 x1 layers.Conv2D(96, (11, 11), strides4, activationrelu)(input_img) x1 layers.MaxPooling2D((3, 3), strides2)(x1) # ... 省略中间卷积层 ... x1 layers.MaxPooling2D((3, 3), strides2)(x1) # MaxPooling3 # 支路二ZFNet风格 x2 layers.Conv2D(96, (7, 7), strides2, activationrelu)(input_img) x2 layers.MaxPooling2D((3, 3), strides2)(x2) # ... 省略中间卷积层 ... x2 layers.MaxPooling2D((3, 3), strides2)(x2) # MaxPooling6 # 特征融合 merged layers.concatenate([x1, x2]) merged layers.Flatten()(merged) # 分类头 x layers.Dense(4096, activationrelu)(merged) x layers.Dropout(0.5)(x) x layers.Dense(4096, activationrelu)(x) x layers.Dropout(0.5)(x) output layers.Dense(10, activationsoftmax)(x) # 构建模型 model models.Model(inputsinput_img, outputsoutput) model.compile(optimizeradam, losscategorical_crossentropy, metrics[accuracy])4.3 训练过程与性能分析训练在配备NVIDIA GPU的工作站上进行显著加速了过程。训练曲线图2324揭示了模型的学习动态训练/验证准确率初期第1-2轮验证准确率显著低于训练准确率表明模型正在从训练数据中学习通用特征。从第3轮开始两者同步快速上升并在第6轮后均达到97%以上最终稳定在98.3%和98.98%。两者差距极小0.7%这是模型没有过拟合的强有力证据。训练/验证失验证损失初期很高但迅速下降并与训练损失收敛于接近零的同一低水平约0.04。这再次确认了模型的良好泛化能力。最终在独立的测试集上我们的并行CNN模型达到了98.98%的总体准确率。混淆矩阵表6显示错误主要发生在少数动作对之间例如“抗阻加强跖屈RSPF”与“抗阻加强外翻RSE”有25个样本混淆“抗阻加强背屈RSD”与“部分负重坐姿提踵PWBSCR”有8个样本混淆。这很可能是因为这些动作在肢体运动轨迹上较为相似对无线信道产生的扰动模式也接近属于分类任务中固有的困难样本。为了对比我们也用相同的WCSI图像数据需先展平为一维向量训练了传统的机器学习模型。结果如表8所示决策树DT表现最好达到96%k近邻k-NN k5为94.56%支持向量机SVM为92.67%而PCA降维后再分类的方法效果较差88%-89%。CNN模型以近3个百分点的优势显著超越了最好的传统方法DT这充分证明了深度特征学习对于此类复杂模式识别任务的优越性。5. 系统部署、优化与未来展望一个成功的实验原型只是第一步要让其走向实际应用还需要考虑部署、优化和扩展。5.1 从实验室到真实场景的挑战与应对实验室环境是可控的但真实的家庭环境充满变数。环境动态性家中人员的走动、电器的开关、门窗的启闭都会干扰WCSI。解决方案在数据采集阶段就引入一定的环境噪声如允许其他人在实验室内走动增强模型的鲁棒性。未来可考虑使用递归神经网络RNN或Transformer来建模WCSI的时序动态更好地从噪声中分离出动作信号。用户与位置差异性不同体型、体态的用户或天线位置/朝向的微小变化都会改变信道特征。解决方案采集更广泛的用户数据不同年龄、身高、体重进行训练。探索迁移学习或领域自适应技术让在一个环境中训练的模型能快速适配新环境。另一种思路是开发用户校准流程让用户做一个标准动作来“初始化”系统。实时性与功耗目前的系统基于两台PC和USRP成本高、功耗大。解决方案未来的产品化方向是设计专用的嵌入式硬件。可以使用低功耗的射频前端芯片搭配嵌入式AI加速模块如Google Coral TPU、NVIDIA Jetson Nano或高通骁龙平台的AI引擎将训练好的CNN模型量化、裁剪后部署其上实现小型化、低功耗的终端设备。动作的精细度与复合动作目前仅识别10个标准动作。实际康复中动作的质量如角度、速度、力度同样重要。解决方案可以尝试从WCSI中回归出关节角度等连续参数。这需要更精细的建模可能结合惯性测量单元IMU数据进行多模态融合训练再用纯无线信号进行推断。5.2 模型优化与压缩技巧为了在资源受限的嵌入式设备上部署模型需要“瘦身”。网络架构搜索NAS与轻量级模型可以尝试自动搜索或手动设计更轻量的CNN架构如MobileNetV3、ShuffleNet或EfficientNet。这些网络在保持精度的同时参数量和计算量大幅减少。知识蒸馏用我们训练好的大型并行模型教师模型去指导一个小型模型学生模型的训练让小学生模型模仿教师模型的输出从而获得接近大模型的性能。量化将模型权重和激活从32位浮点数转换为8位整数INT8可以显著减少模型体积和加速推理且对精度损失通常很小。剪枝移除网络中不重要的连接或神经元创建稀疏化的模型同样可以减少计算量和模型大小。5.3 临床集成与应用生态构想技术的最终价值在于服务临床。移动端应用开发患者端的手机APP。嵌入式监测设备通过蓝牙/Wi-Fi将识别结果和原始信号摘要发送到手机。APP提供清晰的康复动作指导、训练计时、进度跟踪和结果可视化如图表、得分。医生/治疗师管理平台开发Web端管理后台。患者在授权下的训练数据可同步至云端。治疗师可以远程查看患者的康复依从性、动作完成质量及时调整康复计划并通过APP给予反馈和鼓励。数据安全与隐私所有无线信号处理均在本地设备完成仅将脱敏后的分析结果如“完成了3组背屈动作”上传云端。原始WCSI数据不出设备最大限度保护用户隐私。扩展至其他康复场景这套无线感知AI的模式具有通用性。可以扩展到膝关节、肘关节、肩关节的术后康复监测甚至用于帕金森病患者的步态分析、老年人的跌倒检测等更广泛的健康监测领域。踩过最大的坑数据同步与标注在项目初期我们曾尝试用简单的阈值法来自动分割动作结果一塌糊涂。因为WCSI信号中的动作起始点并不像摄像头画面那样清晰。后来我们采用了一个笨但非常有效的方法在实验时让受试者佩戴一个简易的蓝牙按钮在每次动作开始时按一下。这个按钮事件通过另一台电脑记录下精确的时间戳。后期处理数据时就用这个时间戳来对齐和分割WCSI数据流保证了每个数据样本标签的绝对准确。这告诉我们在AI项目里高质量、精准标注的数据其价值远大于一个复杂的模型。