Install
openclaw skills install @thcjp/tg-body-scan-tool-freeopenclaw skills install @thcjp/tg-body-scan-tool-free免费版体测扫描工具帮助个人用户通过 Telegram 提交一段体测视频,自动完成人体围度测量并返回结果。用户只需提供性别、身高、手机型号与视频,工具即可在数分钟内返回肩宽、胸围、腰围、臀围等基础数据及腰臀比汇总。本版本适合个人健身爱好者进行单次体测跟踪. 与专业版相比,免费版聚焦单次扫描与基础测量能力,不包含批量提交、历史趋势对比、团队数据共享与高级分析报表。但两者的提交接口与返回格式完全一致,便于后续升级.
| 能力 | 说明 |
|---|---|
| 视频扫描提交 | 通过 Telegram 提交体测视频,启动扫描任务 |
| 状态轮询 | 自动每 10-15 秒轮询扫描状态,完成后返回结果 |
| 基础围度测量 | 返回肩宽、胸围、腰围、臀围等基础围度数据 |
| 腰臀比汇总 | 自动计算腰臀比并给出简要健康参考 |
| 输入校验 | 校验性别、身高范围、视频来源合法性 |
| 隐私保护 | 拒绝本地文件路径与私有网络 URL |
技术实现要点:核心能力基于input_params参数与output_format配置实现,支持创建/查询/修改/删除等操作模式,通过config_options进行运行时配置. |
用input_params参数进行配置.
处理: 解析核心功能执行的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回核心功能执行的响应数据,包含状态码、结果和日志.
input_params参数,支持创建/查询/导出操作用config_options参数进行配置.
处理: 解析参数配置与调用的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回参数配置与调用的响应数据,包含状态码、结果和日志.
config_options参数,支持修改/重置/导入操作用output_format参数进行配置.
处理: 解析结果处理与输出的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回结果处理与输出的响应数据,包含状态码、结果和日志.
output_format参数,支持导出/保存/转换操作
能力覆盖范围:本skill的核心能力覆盖以下场景关键词:提交视频进行人体、返回基础围度数据、与腰臀比、适合个人单次使用、面向个人用户的、人体体测测量工具、视频提交、扫描状态轮询、适用场景、个人健身跟踪、单次体测测量、健康数据记录、差异化、免费版聚焦单次扫、描与基础测量、不含批量处理与历、史对比分析、适用关键词、body、scan、fitness等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持.健身爱好者每月拍摄一段正面体测视频,通过 Telegram 机器人提交获取围度数据.
用户:帮我做一次体测,这是我的视频
[视频附件]
# ...
机器人:请补充以下信息:
- 性别(male / female)
- 身高(cm,100-250)
- 手机型号(如 iPhone 15 Pro)
# ...
用户:male,178,iPhone 15 Pro
# ...
机器人:
📋 扫描已提交
- scan_id: scan_20260718_001
- 状态: processing
- 预计完成: 2-3 分钟
首次体测建立个人健康基线,后续可手动记录变化.
机器人:扫描完成 ✅
📊 测量结果
- 肩宽: 42.3 cm
- 胸围: 98.5 cm
- 腰围: 82.1 cm
- 臀围: 96.8 cm
📈 腰臀比: 0.85(健康范围内)
用户在开始新运动计划前做一次基线扫描,计划结束后再做一次,手动对比两次数据.
用户:三个月前我的腰围是 82.1 cm,现在帮我重新测一下
# ...
机器人:
📋 新扫描已提交
- scan_id: scan_20261018_002
- 状态: processing
# ...
[轮询中...]
# ...
机器人:扫描完成 ✅
📊 测量结果
- 腰围: 78.9 cm
📉 较上次减少 3.2 cm
| 参数 | 说明 | 取值范围 |
|---|---|---|
gender | 性别 | male / female |
height_cm | 身高(厘米) | 100 - 250 |
video | 体测视频 | 视频附件或可下载的 https URL |
phone_model | 手机型号 | 如 iPhone 15 Pro |
免费版无需额外配置,直接通过 Telegram 对话使用。若需在 Agent 脚本中集成,参考以下调用方式.
# body_scan_free.py
import time
# ...
# 步骤1: 提交扫描
scan = anthrovision_bridge_submit_scan(
gender="male",
height_cm=178,
video_url="https://example.com/body-scan.mp4",
phone_model="iPhone 15 Pro"
)
scan_id = scan["scan_id"]
print(f"扫描已提交: {scan_id}, 状态: {scan['status']}")
# ...
# 步骤2: 轮询状态
while True:
result = anthrovision_bridge_check_scan(scan_id=scan_id)
if result["status"] != "processing":
break
time.sleep(12) # 每12秒轮询一次
# ...
# 步骤3: 输出结果
print(f"扫描状态: {result['status']}")
for key, value in result.get("measurements", {}).items():
print(f" {key}: {value} cm")
print(f"腰臀比: {result.get('waist_hip_ratio', 'N/A')}")
通常 2-3 分钟。系统每 10-15 秒自动轮询一次状态,完成后立即返回结果。若超过 3 分钟仍在处理,系统会发送一条延迟提示并询问是否继续等待.
需要正面全身视频,光线充足,背景简洁,穿着贴身衣物。手机型号信息用于校正镜头畸变,确保测量精度.
免费版不保存历史记录,每次扫描结果独立返回。如需历史趋势对比与自动存档,请升级至专业版.
可以,但必须在扫描前获得对方的明确同意。工具在处理真实人物视频前会要求确认已获授权.
出于安全考虑,工具仅接受可公开访问的 https URL 或 Telegram 视频附件,拒绝 localhost、127.0.0.1、RFC1918 私有网段及本地路径(如 /Users/...、file://...).
一般参考标准:男性低于 0.90、女性低于 0.85 属于健康范围。具体健康评估请咨询专业医生,本工具仅提供数值参考.
测量精度受视频质量、拍摄角度与手机型号影响。提供准确的手机型号有助于镜头畸变校正,提升精度。建议在相同条件下多次测量取均值.
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| AnthroVision 扫描服务 | API | 必需 | 体测扫描后端服务(由平台提供) |
| Telegram Bot | 通信渠道 | 必需 | 通过 @BotFather 创建机器人 |
| LLM API | API | 必需 | 由 Agent 内置 LLM 提供 |
| Python | 运行时 | 可选 | 脚本集成需要,v3.9+ |
@BotFather 获取并配置在通信通道中.| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| 配置错误 | 参数缺失或格式错误 | 检查依赖说明中的配置要求 |
| 运行时错误 | 运行环境不满足 | 确认运行环境符合依赖说明 |
| 网络错误 | 连接超时或不可达 | 执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案 |
{
"success": true,
"data": {
"result": "体测扫描工具免费版处理结果",
"execution_time": "0.5s",
"metadata": {
"version": "1.0",
"processor": "tg body scan"
}
},
"execution_log": ["解析输入参数", "执行核心处理", "格式化输出结果"],
"error": null
}