技术详情
技术架构与模型详情
本应用的舌象分析能力来自自训练检测模型与 TonguExpert 式"分割 + 颜色定量"流水线,以下是系统架构、数据来源与我们做的改进。
系统架构
表现层 · 秒哒 Web 前端
React 18 + Vite + Tailwind:问卷采集、舌象上传(支持三档颜色增强选择)、AI 多轮对话对话、卡片式报告与 PDF 导出。
安全网关 · 秒哒 Edge Function(tongue-proxy)
服务端持有 API 密钥,对每次推理请求做 API Key + HMAC-SHA256 签名、时间戳防重放、每分钟限流,防止接口被盗刷。
推理层 · Azure App Service(Flask + ONNX Runtime)
云端 CPU 推理流水线:颜色校正预处理 → YOLOv8s 目标检测(v7 终版,21 类舌象特征)→ NMS 与置信度分级过滤(滤除文字/背景误检)→ YOLOv8n-seg 舌体精细分割 → 灰度世界白平衡 → 分割区域内 HSV/Lab 颜色直方图(约 70 维)→ 逻辑回归输出舌色/苔色/腻苔概率 → 特征-体质加权规则模型,输出九种体质分布。
智能层 · DeepSeek 大模型 + 中医知识库
DeepSeek 携带舌象置信度与体质评分上下文开展多轮定向对话;体质规则与药食同源知识库为最终报告提供循证依据。
数据层 · 秒哒云端数据库
登录用户的对话记录、舌象指标与体质结果持久化,支撑历史记录与多次舌诊趋势对比。
检测模型与数据来源
模型的训练数据来自北京工商大学计算机与人工智能学院于 2026 年公开发表的中医舌象图像数据集 (Gao & Jin, 2026)。这是舌诊 AI 领域首个大规模、公开可用的标准化数据集,包含 6,719 张高分辨率舌象图像;经标签审计修复与版本迭代后,本作品使用的标签体系覆盖 21 类中医舌象病理特征(健康舌、薄白苔、红舌、紫舌、胖大舌、瘦舌、红点舌、裂纹舌、 齿痕舌、白苔舌、黄苔舌、黑苔舌、花苔舌,以及心肺、肝胆、脾胃、肾等舌面分区的局部凹凸特征)。
- 标准化采集:D65 标准光源(500–1500 lux 自适应)、统一拍摄距离与色彩校准, 最大程度排除光照与环境差异干扰;
- 中医师双重标注:每张图像平均 2.54 个临床标签,全部经 5 年以上执业经验的中医师审核, 疑难样本由专家小组共识确认;
- 整体 + 局部双层标注:既标注舌体整体特征(如"红舌""白苔"), 也标注局部病理区域(如齿痕、裂纹的具体位置),与本应用"检测框 + 置信度"的输出形式直接对应;
- 官方划分:训练集 5,594 张(82.3%)/ 验证集 572 张(8.4%)/ 测试集 553 张(8.1%), 分层抽样,含 10% 疑难舌象挑战子集。
原论文在该数据集上对 12 个主流检测模型(YOLOv5/v7/v8/v11/v12、SSD、MobileNetV2)做了基准测试。 我们在同一数据、同一评估口径下对这 12 个模型全部完成复现训练(详见下方全量对比)。 线上推理选用经 7 版迭代训练的最终版 YOLOv8s(11.1M 参数,21 类); 舌体轮廓的精细分割由独立的 YOLOv8n-seg(3.4M 参数)承担, 使用中科院 TonguExpert 数据库的 5,992 对原图 + 掩码自训练(详见下方"我们的改进")。 端侧智能终端(RK3576 NPU)部署经 INT8 量化的 RKNN 双模型,其中分割模型量化后仅约 3MB。
我们在论文基础上做的改进
训练策略迭代(7 个版本)
在阿里云 PAI-DSW(NVIDIA A10)上完成 7 版递进训练:续训提升召回、YOLOv8m 对比实验、 SGD + 余弦退火收尾。最终版在官方 test 集上 mAP@0.5 达 40.74%, 精确率 48.8%,超过论文全部 12 个基准模型(论文同型号 YOLOv8s 为 33.54%,最高 YOLOv11 为 35.32%)。
数据集标签审计与修复
逐标签审计发现发布版类名表与论文不一致(多出一个空类导致索引错位,两个有真实标注的类别无法参与训练), 已修复为连续标签并清理越界标注;最终 v7 版在修复后的 21 类标签体系上训练。
推理流水线工程化
三档颜色增强预处理应对复杂光照;置信度分级过滤消除文字/背景误检; 灰度世界白平衡校正拍摄色差;分割掩码内取色,为体质评分提供可解释的数值依据。
从检测到体质分析的闭环
检测框与颜色概率都不直接等于结论,而是进入"特征-体质加权规则模型"量化九种体质 (舌色/苔质概率作为加权票叠加),再由 DeepSeek 结合知识库多轮体质辨识, 最终报告附知识库循证依据与免责声明。
舌体精细分割(TonguExpert 路线)
沿用中科院 TonguExpert 平台路线,用其公开的 5,992 对原图 + 掩码自训练 YOLOv8n-seg 分割模型(3.4M 参数,验证集掩码 mAP@0.5 约 99.5%): 以精确舌体轮廓取代检测框取色,后续所有颜色特征的干净程度质变; INT8 量化后仅约 3MB,端侧 NPU 毫秒级推理。
颜色/苔质数学分类器
分割后舌体上统计 HSV/Lab 颜色直方图(约 70 维)+ 纹理特征,接逻辑回归: 苔色/舌质用 L1 人工标注的 1,747 张训练,腻苔/厚腻分级用 L2 的 5,992 张标签训练。 权重仅数十 KB,输出概率分(如"淡白舌 0.82")而非独热标签—— TonguExpert 论文证明该路线用于颜色分类可达 AUC 0.89–0.99。
论文基准 vs 自训练模型性能对比
| 模型 | 参数/M | P/% | R/% | mAP@0.5 | mAP@0.5:0.95 |
|---|---|---|---|---|---|
| YOLOv8s(论文) | 11.1 | 40.75 | 35.52 | 33.54 | 27.98 |
| 本作品 v7(YOLOv8s) | 11.1 | 48.80 | 41.61 | 40.74 | 29.93 |
| YOLOv11(论文) | 3.12 | 48.12 | 36.25 | 35.32 | 29.63 |
本作品最终模型在官方 test 集上达到 40.74% 的 mAP@0.5,较论文同型号 YOLOv8s(33.54%)提升 7.20 个百分点;相较论文中最高基准 YOLOv11(35.32%)提升 5.42 个百分点,且精确率也达到 48.80%,为全部对照模型中最高值。
为排除论文原始训练配置不可考带来的不可比性,我们在阿里云 PAI-DSW(NVIDIA A10)上用同一数据集(19 类修复版)、同一评估协议(test 集 553 张,COCO)对论文全部 12 个基准模型完成复现训练,全部训练曲线、混淆矩阵与权重均有证据存档。
- 论文 mAP@0.5
- 复现 mAP@0.5
| 模型 | 论文 mAP@0.5 | 复现 mAP@0.5 | 差值 | 复现 mAP@0.5:0.95 | 训练耗时 |
|---|---|---|---|---|---|
| YOLOv7-tiny | 31.93% | 41.30% | +9.37 | 29.20% | 2.47h |
| YOLOv7 | 34.82% | 41.00% | +6.18 | 29.50% | 5.36h |
| YOLO12s | 35.23% | 40.88% | +5.65 | 30.32% | 2.14h |
| YOLOv5l | 34.57% | 40.00% | +5.43 | 31.31% | 2.99h |
| YOLOv5m | 32.48% | 39.60% | +7.12 | 29.38% | 1.16h |
| YOLOv8l | 34.95% | 39.23% | +4.28 | 27.64% | 2.68h |
| YOLOv8m | 34.77% | 38.74% | +3.97 | 28.67% | 1.66h |
| YOLOv8s | 33.54% | 36.75% | +3.21 | 27.16% | 1.45h |
| YOLO11s | 35.32% | 36.54% | +1.22 | 27.20% | 1.11h |
| YOLOv5s | 31.83% | 34.50% | +2.67 | 26.67% | 0.61h |
| SSD300-VGG16 | 28.86% | 24.70% | -4.16 | 15.30% | 1.42h |
| SSDLite320-MobileNetV3 | 23.20% | 23.35% | +0.15 | 16.70% | 1.68h |
复现的 10 个 YOLO 模型 mAP@0.5 全部超过论文原值,平均高出 4.91 个百分点,最大 +9.37(YOLOv7-tiny,仅 6M 参数)。 复现最优为 YOLOv7-tiny(41.30%)与 YOLOv7(41.00%,精确率 53.7% 为复现集最高); SSD 系两模型复现值与论文原值基本持平且整体垫底,与论文的定性结论一致。
注:YOLOv7 系经 WongKinYiu 官方仓库复现(官方训练脚本无早停,固定 150 轮); YOLOv11/v12 论文参数量指向 n 级规格,本复现取 s 级规格,对比时已注明规格差异; 论文作者已书面确认原始训练参数丢失、其自身亦无法复现原结果。
论文原文与引用
GAO L, JIN X. A tongue image dataset with pathological annotations for AI-assisted diagnosis in traditional Chinese medicine[J]. Biomedical Informatics and Smart Healthcare, 2026, 2(1): 5-19. DOI: 10.62762/BISH.2026.303296.
数据集仓库(CC BY 4.0): github.com/m28805746-max/Intelligent-tongue-diagnosis-detection-dataset (Dryad 数字仓库同步发布,v3.0)
arXiv 预印本:Jin, X., Gao, L., Tong, A., et al. (2025). TCM-Tongue: A Standardized Tongue Image Dataset with Pathological Annotations for AI-Assisted TCM Diagnosis. arXiv:2507.18288.
LI T, ZUO L, WANG P, et al. TonguExpert: A Deep Learning-Based Algorithm Platform for Fine-Grained Extraction and Classification of Tongue Phenotypes[J]. Phenomics, 2025. DOI: 10.1007/s43657-024-00210-9.
TonguExpert 数据库与分析平台(中科院上海营养与健康研究所): biosino.org/TonguExpert—— 5,992 例舌象原图 + 掩码与 697 项舌表型。本作品的舌体分割模型(YOLOv8n-seg) 与颜色/苔质逻辑回归分类器均基于该数据库训练。
本作品开源后端(Flask + ONNX Runtime 推理 API,含部署脚本与复现说明): github.com/zzqsld/zzqsld-tongue-analysis-api
本应用结果仅供健康参考,不构成医疗建议,如有不适请及时就医