tune-detection
1
总安装量
1
周安装量
#52776
全站排名
安装命令
npx skills add https://github.com/flow-club/vibereps --skill tune-detection
Agent 安装分布
mcpjam
1
claude-code
1
kilo
1
junie
1
zencoder
1
Skill 文档
Tune Detection Thresholds
Common Issues
| Problem | Likely Cause | Fix |
|---|---|---|
| Not counting reps | Thresholds too strict | Lower down threshold or raise up threshold |
| Double counting | Thresholds too loose | Tighten thresholds, add hysteresis |
| Counts on wrong motion | Wrong landmarks | Check landmark IDs match exercise |
| Works for some people | Fixed thresholds | Use body-relative thresholds with getBodyScale() |
Threshold Locations
JSON configs (preferred):
exercises/*.json â detection.thresholds
Legacy functions in exercise_ui.html:
detectLegacySquat– DOWN_ANGLE, UP_ANGLEdetectLegacyPushup– DOWN_ANGLE, UP_ANGLEdetectLegacyJumpingJack– arm position relative to shouldersdetectLegacyCalfRaise– legLength * 0.04 thresholddetectLegacySideStretch– bodyScale * 0.4 threshold
Detection Helpers
The codebase includes helpers for robust detection:
// Check if landmarks are visible
isVisible(landmarks, [23, 24, 25, 26], 0.5)
// Normalize to body size
const bodyScale = getBodyScale(landmarks);
const threshold = baseThreshold * bodyScale;
Testing Changes
- Edit threshold in JSON or HTML
- Restart tracker:
./exercise_tracker.py user_prompt_submit '{}' - Watch the status text – it shows live angle/distance values
- Adjust based on when state transitions happen
Both-sides Averaging
For angle-based exercises, use joint_alt in JSON to average both sides:
"landmarks": {
"joint": [23, 25, 27],
"joint_alt": [24, 26, 28]
}