发布日期: 2025-10-27
发布版本: v0.1.0-alpha
开发者: k1d
概述
TouchFilterNet 是一款专为 触摸屏与电容矩阵信号滤波 设计的轻量级深度学习模型。 本版本实现了从 训练 → 推理 → MCU 部署 的完整端到端流程,验证了模型在低算力平台上的实时可行性。
在尽可能提高推理速度的前提下,模型能够在 去除噪声 的同时 保留高差异细节区域,显著提升触摸检测的平滑性与响应精度。
模型核心特点
- 全分辨率卷积结构:无下采样或插值操作,空间信息完全保留
- 差异保留损失函数:对高差异区域赋予更高权重
- 轻量注意力机制:对触点边缘区域聚焦处理
- 自适应差异增强模块:自动调节平滑与保真强度
- 可嵌入部署:支持 INT8 量化导出 与 纯 C 前向推理
- 无依赖运行:MCU 端无需文件系统或操作系统
性能指标
| 指标 | 数值 |
|---|---|
| 总参数量 | 48,677 (~48.7K) |
| 模型大小 (FP32) | 190 KB |
| 运算量 (18×36 输入) | ~9.3M MACs |
| 运行内存 (FP32) | ≈480 KB |
| INT8 模型大小 | 48 KB (参数) |
| INT8 激活峰值 | ≈120 KB |
| MCU 推理延迟 (STM32H7, 400MHz) | < 4ms / 帧 |
功耗说明
基于典型 3.3 V 供电的 STM32H7(Cortex-M7 @ 400 MHz)进行测算
| 工作模式 | 功耗 (mW) | 推理时间 | 说明 |
|---|---|---|---|
| 待机模式 | ≈ 1 mW | — | MCU 低功耗待机,仅周期唤醒 |
| 低频触发滤波 | ≈ 5 mW | ≈ 4 ms / 帧 | 触摸事件触发式运行(约 10 Hz) |
| 普通工作模式 | ≈ 10 mW | ≈ 4 ms / 帧 | 常规触摸扫描(约 30 Hz) |
| 高速实时滤波 | ≈ 40 mW | ≈ 3.5 ms / 帧 | 连续滑动检测(60–120 Hz) |
| 峰值性能模式 | ≈ 210 mW | ≈ 3 ms / 帧 | 全速 400 MHz 满载运行 |
| 模式 | 功耗 (mW) | 电流 (mA) | 电流 (µA) |
|---|---|---|---|
| 待机模式 | 1 mW | 0.30 mA | 300 µA |
| 低频触发滤波 | 5 mW | 1.52 mA | 1 520 µA |
| 普通工作模式 | 10 mW | 3.03 mA | 3 030 µA |
| 高速实时滤波 | 40 mW | 12.1 mA | 12 100 µA |
| 峰值性能模式 | 210 mW | 63.6 mA | 63 600 µA |
对比实验结果
| 模型 | 参数量 | 保持分辨率 | 注意力机制 | MSE ↓ | PSNR ↑ |
|---|---|---|---|---|---|
| DnCNN (baseline) | 550K | ✅ | ❌ | 0.0094 | 29.1 dB |
| U-Net (小型) | 1.9M | ❌ | ❌ | 0.0081 | 30.2 dB |
| TouchFilterNet (ours) | 48.7K | ✅ | ✅ | 0.0074 | 31.8 dB |
滤波效果

具体 diff/raw 值见项目内文档
./README.md左侧为原始触摸电容矩阵数据(RawData),右侧为经模型处理后的输出结果(ProcessedData)
在原始数据中,信号受随机噪声与行级干扰影响,表现为横向条纹与不规则亮度分布,触点区域的能量被背景波动部分掩盖。经 TouchFilterNet 处理后,背景噪声被有效抑制,信号电平更加稳定;触点区域亮度集中、边界清晰,且空间分布与原始信号保持一致,说明模型在滤波过程中实现了高差异区域的保真与低差异区域的平滑抑制。
整体上,模型显著降低了背景噪声能量约 15 dB 左右,触点清晰度明显提升。该结果验证了差异保留损失与差异增强模块在信号去噪与细节保真方面的协同作用,为后续在 MCU 实时滤波中的稳定性与可解释性提供了有力支持。
训练
参照项目文档 ./README.md
部署
MCU部署
运行如下命令
$ cd TouchFilterNet/
$ cmake -S . -B build
$ cmake --build build --config Release将路径 ./build/bin/TouchFilterNet.lib 和 ./include/C/TouchFilterNet.h 同时添加至工程之中
按照 ./include/C/TouchFilterNet.README.md 中设置并调用
引用与致谢
TouchFilterNet
作者: k1d
版本: v0.1.0-alpha
项目主页: https://k1d.tech
许可证: MIT License