| 序号 | 穴位名称 | 所属经络 | 相对大椎穴位置 | 功效 |
|---|---|---|---|---|
| 1 | 大椎穴 | 督脉 | 基准点 (0, 0) | 驱寒、祛湿、解表 |
| 2 | 身柱穴 | 督脉 | 下3寸 | 止咳平喘、安神 |
| 3 | 至阳穴 | 督脉 | 下7寸 | 宽胸理气 |
| 4 | 命门穴 | 督脉 | 下14寸 | 补肾壮阳 |
| 5 | 腰阳关穴 | 督脉 | 下17寸 | 强腰健肾 |
| 6 | 风门穴(双) | 足太阳膀胱经 | 下1.5寸,旁开1.5寸 | 祛风解表 |
| 7 | 秉风穴(双) | 手太阳小肠经 | 下3寸,旁开3寸 | 祛风散寒 |
| 8 | 肺俞穴(双) | 足太阳膀胱经 | 下3寸,旁开1.5寸 | 化痰止咳 |
| 9 | 膈俞穴(双) | 足太阳膀胱经 | 下7寸,旁开1.5寸 | 活血化瘀 |
| 10 | 脾俞穴(双) | 足太阳膀胱经 | 下11寸,旁开1.5寸 | 健脾养血 |
| 11 | 肾俞穴(双) | 足太阳膀胱经 | 下14寸,旁开1.5寸 | 补肾益气 |
| 12 | 八髎穴 | 足太阳膀胱经 | 下16寸 | 调理下焦 |
| 参数 | 是否必填 | 说明 | 校验规则 |
|---|---|---|---|
| 脊柱长度(C7-S4) | 必填 | C7棘突至S4棘突实测距离 | 范围:30-60cm |
| 肩宽 | 必填 | 两侧肩峰间距 | 范围:30-50cm |
| 实测1寸值 | 可选 | 用户中指中节长度 | 范围:1.5-3.5cm |
| 实测1.5寸值 | 可选 | 1.5倍中指长度 | 范围:2.3-5.3cm |
| 实测3寸值 | 可选 | 3倍中指长度(四指并拢) | 范围:4.5-10.5cm |
| 身高 | 条件必填 | 未填指寸时必填 | 用于BMI推算 |
| 体重 | 条件必填 | 未填指寸时必填 | 用于BMI推算 |
if 实测1寸值 or 实测1.5寸值 or 实测3寸值:
# 进行交叉验证
计算比例1 = 实测1.5寸值 / 实测1寸值 if 两者皆填 else None
计算比例2 = 实测3寸值 / 实测1寸值 if 两者皆填 else None
# 理想比例:1.5寸/1寸=1.5,3寸/1寸=3
if 比例1 and not (1.35 <= 比例1 <= 1.65): # 允许±10%误差
标记"1.5寸测量可能不准,建议复测"
if 比例2 and not (2.7 <= 比例2 <= 3.3):
标记"3寸测量可能不准,建议复测"
else:
# 未填指寸时,必须提供身高体重
if not (身高 and 体重):
报错"请提供身高体重以计算体型参数,或填写指寸测量值"
第一路:实测融合值(A路) 当用户填写任意指寸值时:
第二路:BMI换算法(B路) 当提供身高体重时:
标准人BMI = 65 / (1.70)^2 ≈ 22.49
用户BMI = 体重(kg) / (身高(m))^2
BMI比值 = 用户BMI / 标准人BMI
B路指寸(mm) = 24.0 × BMI比值 # 标准人指寸24.0mm
if A路存在:
if B路存在:
最终指寸 = (A路 + B路) / 2 # 双路平均
置信度 = "高"
else:
最终指寸 = A路
置信度 = "中"
else:
B路存在:
最终指寸 = B路
置信度 = "中"
背部一寸宽度(即"骨度分寸"中的背部1寸实际长度)直接影响所有膀胱经穴位的横向定位精度。
来源一:肩宽推算法
肩胛骨内缘间距 = 肩宽(mm) × 0.420
背部一寸宽度_肩宽 = 肩胛骨内缘间距 / 6
来源二:指寸验证法 根据骨度分寸法,两肩胛骨内缘间距为6寸,而临床观察显示该距离约等于患者自身6个指寸:
背部一寸宽度_指寸 = 最终指寸(mm) × (1 + 体型修正系数微调)
差异率 = |背部一寸宽度_肩宽 - 背部一寸宽度_指寸| / 背部一寸宽度_肩宽
if 差异率 <= 0.15: # 差异在15%以内
背部一寸宽度 = (背部一寸宽度_肩宽 + 背部一寸宽度_指寸) / 2
elif 有实测指寸值(A路存在): # 用户提供了实测,以实测为准
背部一寸宽度 = 背部一寸宽度_指寸
标记"肩宽测量与指寸差异较大,优先采用指寸"
else: # 无实测,以肩宽为准
背部一寸宽度 = 背部一寸宽度_肩宽
基于Panjabi椎骨归一化位置系数,以C7为原点(0),S4为终点(1):
| 椎骨 | 归一化位置 | 对应穴位 |
|---|---|---|
| C7 | 0.000 | 大椎(原点)、肩中俞 |
| T1 | 0.034 | 大杼、肩外俞 |
| T2 | 0.078 | 风门 |
| T3 | 0.120 | 肺俞、身柱 |
| T4 | 0.162 | 厥阴俞 |
| T5 | 0.203 | 心俞 |
| T7 | 0.283 | 膈俞 |
| T9 | 0.361 | 肝俞 |
| T11 | 0.438 | 脾俞 |
| T12 | 0.476 | 胃俞 |
| L1 | 0.514 | 三焦俞 |
| L2 | 0.552 | 肾俞、命门、志室 |
| L3 | 0.590 | 气海俞 |
| L4 | 0.628 | 大肠俞、腰阳关 |
| L5 | 0.666 | 关元俞 |
| S1 | 0.750 | 上髎、小肠俞 |
| S2 | 0.834 | 次髎、膀胱俞 |
| S3 | 0.917 | 中髎 |
| S4 | 1.000 | 下髎 |
计算公式:
Y坐标(mm) = 脊柱长度(mm) × 归一化位置
X = 0 mm # 后正中线
if 椎骨位置 in [S1, S2, S3, S4]: # 骶段
区域系数 = 0.85 # 骶骨处骨盆收窄
elif 椎骨位置 == S4裂孔:
区域系数 = 0.90
else:
区域系数 = 1.00
X = 1.5 × 背部一寸宽度 × 区域系数 × 体型横向修正系数
X = 3.0 × 背部一寸宽度 × 体型横向修正系数
# 肩中俞:C7旁开2寸
if 穴位 == "肩中俞":
X = 2.0 × 背部一寸宽度
# 天柱:C2水平旁开1.3寸(约风府旁开)
if 穴位 == "天柱":
# 天柱位于斜方肌外缘,C2棘突下旁开1.3寸
X = 1.3 × 背部一寸宽度 × 1.1 # 颈部稍宽,系数1.1
不使用简单的寸数相乘,而采用骶后孔解剖基准偏移:
| 穴位 | 基准偏移(mm) | 计算方式 |
|---|---|---|
| 上髎 | 15 | X = 15 × 身高缩放比例 × 体型修正 |
| 次髎 | 17 | X = 17 × 身高缩放比例 × 体型修正 |
| 中髎 | 16 | X = 16 × 身高缩放比例 × 体型修正 |
| 下髎 | 11 | X = 11 × 身高缩放比例 × 体型修正 |
基准偏移基于160cm标准参考人,经CT测量统计得出
所有背部/颈部穴位均位于体表:
Z = 0 mm
# 内部计算使用:X正=右侧,Y正=头侧,Z正=后方
# 输出时取反(根据原算法约定)
设备X = -(人体X) + 设备原点X偏移
设备Y = -(人体Y) + 设备原点Y偏移
设备Z = 人体Z + 设备原点Z偏移 + 安全距离(10mm)
针对筛选出的12个穴位,根据艾灸椅常见行程范围(假设X:±150mm, Y:0-400mm, Z:0-100mm,应该取设备界限):
def 边界校验(设备坐标, 穴位编码):
越界轴 = []
if abs(设备坐标.X) > 150:
越界轴.append(f"X轴({设备坐标.X:.1f}mm)")
if not (0 <= 设备坐标.Y <= 400):
越界轴.append(f"Y轴({设备坐标.Y:.1f}mm)")
if not (0 <= 设备坐标.Z <= 100):
越界轴.append(f"Z轴({设备坐标.Z:.1f}mm)")
if 越界轴:
return {
"状态": "超出行程范围",
"信息": f"{穴位编码}越界: {', '.join(越界轴)}",
"建议": "请检查脊柱长度输入是否异常,或该穴位需手动定位"
}
| 优化点 | 原算法 | 优化后 | 精度提升 |
|---|---|---|---|
| 指寸输入 | 单一可选值 | 1/1.5/3寸三值交叉验证 | 减少测量误差30% |
| 背部一寸 | 仅肩宽推算 | 肩宽+指寸双源融合 | 个体差异适应度↑ |
| 八髎定位 | 统一1.5寸 | 骶后孔独立解剖模型 | 横向精度±2mm |
| 体型修正 | 仅横向 | 横向+纵向(脊柱曲度) | 胖瘦体型兼容 |
| 置信度标识 | 无 | 高/中/低三级 | 提示用户可信度 |
UI设计:在指寸输入框旁显示"建议测量1寸、1.5寸、3寸进行交叉验证",并提供图示说明如何测量(中指中节横纹间距为1寸,四指并拢为3寸)
异常提示:当用户输入的1.5寸值与1寸值比例不在1.35-1.65范围内时,提示"测量误差较大,请使用直尺重新测量"
默认策略:如果用户完全未填指寸且未填身高体重,使用标准人参数(指寸24mm, BMI 22.5)计算,但标记"低置信度",并建议补充信息
八髎穴特殊处理:由于八髎穴位于骶后孔,深度和横向位置个体差异大,建议设备支持"微调模式",在算法计算位置基础上允许±10mm的手动调整
此优化算法通过多源数据融合和解剖分区策略,可将背部/颈部穴位的定位精度控制在±5mm以内(置信度高时),满足艾灸椅的临床使用要求。
请严格按照该算法定位用户的穴位