Submitted:
04 November 2026
Posted:
05 November 2026
You are already at the latest version
Abstract
Practicing dance from pre-recorded online tutorials allows students to learn motor skills independently, yet learners frequently struggle without an instructor to identify technical errors. This paper addresses the research problem of objective, monocular video dance evaluation by developing an end-to-end computer vision framework that compares a student’s practice video with an instructor’s reference recording. Our methodology extracts 33 body landmarks, normalizes coordinates by torso length to account for body differences and camera distances, and applies a velocity-adaptive Kalman filter that eliminates lag during fast steps while preserving stability during held poses. A Dynamic Time Warping module with a ±0.25 s tolerance window evaluates body posture without penalizing expressive musical timing. Continuous routines are segmented into discrete poses using feature-divergence tracking, with a rule-based engine outputting plain-language postural corrections. The system was evaluated across 15 full-body benchmark routines comprising 10,550 video frames from the AIST Dance Video Database and instructional exercises in both frontal and 90◦ side views. The results demonstrate that the system tracks fast direction changes accurately, detects technique breakdowns reliably, and matches professional instructor ratings closely (r = 0.88, Mean Absolute Error = 4.8 points). In conclusion, this automated framework offers accessible, actionable feedback for home physical education using standard consumer cameras.
Keywords:
pose estimation
; movement analysis
; dance evaluation
; Dynamic Time Warping
; Kalman filter
; computer vision
1. Introduction
The widespread availability of video streaming platforms has made digital performing arts education broadly accessible. Aspiring dancers, athletes, and movement enthusiasts now routinely rely on pre-recorded online tutorials to acquire complex physical motor skills. However, autonomous physical practice in the absence of an in-person instructor introduces substantial pedagogical hurdles. First-time and intermediate learners frequently struggle with spatial body awareness, experiencing a gap between what they believe their limbs are doing and their true orientation in space. Without corrective feedback, learners risk internalizing incorrect movement habits, ingraining flawed muscle memory, and exposing joints to unnecessary strain or injury.
While expert in-person instruction remains the benchmark for physical pedagogy, it is often limited by high financial cost, rigid schedules, and geographic constraints. Practice mirrors provide brief visual feedback, but they cannot offer quantitative diagnostic guidance; furthermore, turning one’s head to inspect a mirror during dynamic rotations or spins compromises body alignment. Consequently, there is an urgent need for automated, accessible movement evaluation systems capable of analyzing ordinary video recordings of students, aligning them against canonical teacher demonstrations, and generating clear diagnostic corrections.
Let denote an instructor’s reference demonstration captured at frame rate , and let denote an uncalibrated query video of a student replicating the sequence. An automated evaluation mapping must overcome four primary operational challenges:
- 1.
- Body Proportion Variations: The teacher and student have differing heights, limb segments, and body mass distributions.
- 2.
- Camera Variations: Lens zoom, sensor placement, and camera-to-performer distances vary arbitrarily between recordings.
- 3.
- Temporal Phrasing: Human performers naturally introduce expressive micro-timing, hesitations, or slight tempo shifts ( ms). Rigid frame-by-frame comparison penalizes small timing differences as technical posture flaws.
- 4.
- High-Velocity Motion Artifacts: Rapid arm whips, spins, and floor transitions cause transient keypoint motion blur and self-occlusions.
Early motion tracking systems relied on wearable physical sensors or active depth cameras such as the Microsoft Kinect [9]. Although accurate, their hardware requirements restricted use outside laboratory environments. Deep learning architectures such as OpenPose [2] and MediaPipe BlazePose [1] have since enabled markerless tracking of 33 body landmarks directly from standard consumer video streams [10]. In the dance domain, Choi et al. [4] compared 2D joint coordinates frame by frame; however, rigid temporal matching proved fragile during rapid movements. Johari and Mukherjee [5] developed ReAL-T, demonstrating that automated joint-angle trajectory matching correlates well with expert ratings, yet their system did not incorporate adaptive filtering for high-speed dance steps or partition continuous sequences into discrete poses.
To bridge these gaps, our hypothesis is that an explainable kinematic evaluation pipeline—combining body normalization, velocity-adaptive filtering, bounded Dynamic Time Warping with temporal tolerance, and kinematic feature segmentation—can accurately evaluate dance movement from standard consumer cameras without penalizing natural expressive timing.
2. Materials and Methods
2.1. Research Design and Architecture
The framework operates as a modular, five-stage pipeline designed to evaluate student videos against reference performances (Figure 1). Video recordings are first processed to extract 2D skeletal coordinates, normalized for physical dimensions, smoothed using speed-sensitive filters, aligned dynamically in time, segmented into choreographic poses, and translated into natural-language diagnostic feedback.
2.2. Body-Scale Normalization and Missing Landmark Infilling
Frame images are processed using MediaPipe BlazePose to obtain 33 anatomical landmarks and detection confidence scores . Because performers occupy different areas of the camera frame, coordinates are centered at the pelvis midpoint and scaled by torso length :
This normalization ensures scale and position invariance across differing camera distances. When joint occlusions cause confidence to drop below 0.35, missing coordinates are infilled via bidirectional linear interpolation across confident neighboring frames.
2.3. Velocity-Adaptive Kinematic Kalman Filter
To suppress tracking jitter without falling behind rapid movements, a 1D constant-velocity Kalman filter [6] is implemented for each coordinate axis of every joint:
Standard constant-velocity filters use a fixed process noise covariance , which introduces an ms phase delay on sharp ballistic movements. We modulate continuously as a function of instantaneous landmark velocity :
where is baseline process noise, measurement variance is , and velocity sensitivity is . Rapid limb transitions expand , increasing the Kalman gain to track quick trajectory changes without delay. During held postures (), , smoothing out tracking noise. Additionally, the measurement gate relaxes during fast movement:
where is the mean landmark velocity across the body.
2.4. Dynamic Time Warping with Temporal Leeway
Performances are aligned temporally via Dynamic Time Warping [8] constrained within a Sakoe-Chiba band ( duration). The composite frame matching error is:
where is the confidence-weighted Euclidean distance across 16 primary dance joints , tracks angular error across eight major joints (elbows, shoulders, hips, knees), and accounts for tracking confidence. The error maps to a standard performance score :
where clamps the score to 0.
To distinguish posture errors from minor phrasing offsets, aligned frames are evaluated across a local neighborhood window of s ( frames) with an offset penalty points per frame:
2.5. Feature-Divergence Segmentation and Explainable Feedback
Continuous choreography is partitioned into discrete poses using a 40-dimensional kinematic vector containing 16 joint coordinates (32 values) and 8 normalized joint angles. The vector is smoothed using a Kalman filter (). A segment boundary is established when feature divergence exceeds for at least 0.15 s:
For each detected pose, a deterministic rule engine inspects mean angular errors () and spatial offsets (), generating actionable corrections (e.g., “Left knee is too bent by 37.2 degrees” or “Right foot is higher and more to the right”).
2.6. Benchmark Dataset and Evaluation Protocol
The system was evaluated on 15 benchmark pairs (30 video recordings, 10,550 frames) combining sequences from the public AIST Dance Video Database [7,11] and structured movement exercises. The dataset covers eight distinct movement styles (Ballet Jazz, Street Jazz, Popping, House, Breakdance Toprock, Contemporary, Ballroom Waltz, and Yoga) captured from frontal () and profile () views. Full-body framing audits confirm that hands and feet remain in view across of frames. Sequence 8 (Yoga Tree Pose) incorporates a deliberate balance loss to evaluate fault detection sensitivity.
To establish ground-truth validation, human perceptual scores were recorded via manual review of all 15 routines prior to running the pipeline, evaluating joint placement, extension, and timing on a 0–100 scale. In addition, three professional dance instructors independently rated six routines using a dedicated double-blind review interface.
3. Results and Discussion
3.1. Benchmark Evaluation Across Dance Genres
Table 1 presents the performance evaluation across all 15 benchmark sequences alongside the human perceptual ground-truth scores. Across all 15 routines, the automated scores closely matched human perceptual assessments, exhibiting a mean absolute error of only 1.7 points.
Frontal routines achieved an average score of for regular choreography (or when including the deliberate balance-loss test case). Styles with clear, sharp poses such as Street Jazz scored high at (human evaluation: ), and Popping scored (human evaluation: ). Faster styles such as Breakdance Toprock scored lower at (human evaluation: ) due to foot placement variations during rapid footwork. In sequence 8, where the student lost balance and placed both feet down, the system score dropped to , matching the human failure score of .
Side-view ( profile) routines yielded an average score of (human perceptual average: ). Street Jazz scored from the side (compared to from the front), and Popping scored from the side (compared to from the front). These findings demonstrate that planar torso normalization functions reliably across viewpoints, provided limbs are not fully occluded.
3.2. Tempo Analysis: Slow Versus Fast Routines
To examine the effect of movement tempo on pose segmentation and scoring, we compared a slow contemporary routine (sequence 6, 939 frames) with a fast urban choreography routine (sequence 7, 766 frames) as shown in Table 2.
The slow performance segmented into 6 sustained poses (averaging 2.6 s each), with scores ranging from to (all Excellent). Minor errors were confined to small wrist height differences ( normalized units), with only one joint angle deviation above (Pose 5, left elbow bent by ).
In contrast, the fast routine segmented into 34 brief poses (averaging s each), with scores spanning to (11 Excellent, 17 Good, 6 Fair). Table 3 provides sample feedback generated during the fast routine. The lowest-scoring segment (Pose 34, score ) correctly flagged an arm whip where the student’s elbow remained bent by instead of extending fully.
3.3. Ablation Study and Baseline Comparison
To measure the contribution of each algorithmic module, we benchmarked the system against four baseline configurations on the 766-frame Fast Choreography sequence (Table 4).
Frame-by-frame evaluation without temporal alignment (Baseline 1) broke down entirely (score , false penalties) due to natural timing drift. Static Kalman filtering (Baseline 2) smoothed over sharp peaks, introducing an 85 ms lag that lowered scores during fast transitions. Using joint angles alone (Baseline 3) failed to capture stance width and floor placements ( false penalties). Removing the temporal tolerance window (Baseline 4) penalized minor musical timing variations as posture flaws ( false penalties). The proposed complete system kept tracking latency under 15 ms, achieving an average score of with only false penalties.
3.4. Failure Modes and User Validation
The framework encountered four primary edge cases:
- 1.
- Severe Technique Breakdown: In sequence 8, the student lost balance completely ( across of frames). The score dropped to , demonstrating that the metric correctly flags gross motor errors.
- 2.
- Vertical Foreshortening on Footwork: Chest-height cameras compress depth along the floor, occasionally misinterpreting forward/backward foot placement as height changes.
- 3.
- Sagittal Self-Occlusion: In profile views during complete spins, the near side of the body momentarily hides far-side limbs, lowering confidence for 4–8 frames.
- 4.
- Fast Motion Blur: Rapid forearm snaps (/s) produced single-frame motion blur at 30 FPS capture, shifting wrist localization by up to 42 pixels. Recording at 60 or 120 FPS mitigated this error.
During independent validation with three professional dance instructors across six routines, automated scores correlated strongly with expert ratings (Pearson , Spearman , Mean Absolute Error points). The instructors noted that partitioning continuous choreography into distinct poses mirrors how teachers critique movement in studio environments.
4. Discussion
Current limitations include single-dancer tracking constraints, monocular depth ambiguity during out-of-plane body rotations, and reliance on movement kinematics rather than musical audio beats for alignment. Future extensions will incorporate audio beat tracking into Dynamic Time Warping, implement self-supervised camera view normalization, and optimize the processing pipeline for real-time mobile browser execution using WebGPU.
5. Conclusion
We developed an explainable computer vision framework that evaluates dance movement from standard consumer video. By integrating body normalization, velocity-adaptive Kalman filtering, bounded Dynamic Time Warping with temporal tolerance, and feature segmentation, the system maintains tracking delay under 15 ms and evaluates posture fairly without penalizing natural expressive timing. The system partitions continuous movement into reviewable poses and generates clear, actionable corrections that correlate closely with professional dance instructor evaluations (, MAE points).
Not applicable.
To facilitate independent verification and future research, the implementation of the proposed evaluation pipeline, adaptive filters, and alignment algorithms is publicly available at:
The repository contains the complete source code files required to run the pose estimation, filtering, and scoring modules described in this paper.
Author Contributions
Rahul Desai conceived the study, designed and implemented the computer vision and kinematic filtering pipeline, conducted the experimental benchmarks, analyzed the empirical data, and authored the manuscript.
Funding
Not applicable.
Informed Consent Statement
Not applicable.
Data Availability Statement
The complete software implementation, kinematic filtering scripts, and evaluation modules are openly accessible at: https://github.com/Rahuldesai0/pose-evaluation-system.
Acknowledgments
The author acknowledges the open-source Google MediaPipe research group for releasing the BlazePose landmark estimation framework, and the National Institute of Advanced Industrial Science and Technology (AIST), Japan, for maintaining the public AIST Dance Video Database.
Conflicts of Interest
The authors have no competing interests to declare that are relevant to the content of this article.
References
- Bazarevsky, V.; Grishchenko, I.; Raveendran, K.; Zhu, T.; Zhang, F.; Grundmann, M. BlazePose: On-Device Real-Time Body Pose Tracking. arXiv 2020, arXiv:2006.10204. [Google Scholar]
- Cao, Z.; Hidalgo, G.; Simon, T.; Wei, S. E.; Sheikh, Y. OpenPose: Realtime Multi-Person 2D Pose Estimation Using Part Affinity Fields. IEEE Trans. Pattern Anal. Mach. Intell. 2019, vol. 43(no. 1), 172–186. [Google Scholar] [CrossRef] [PubMed]
- Casiez, G.; Roussel, N.; Vogel, D. 1-Euro Filter: A Simple Speed-Based Low-Pass Filter for Noisy Input in Interactive Systems. Proc. ACM Conf. Human Factors in Computing Systems (CHI), 2012; pp. 2527–2530. [Google Scholar] [CrossRef]
- Choi, J. H.; Lee, J. J.; Nasridinov, A. Dance Self-Learning Application and Its Dance Pose Evaluations. Proc. 36th ACM Symp. Applied Computing (SAC), 2021; pp. 1037–1045. [Google Scholar] [CrossRef]
- Johari, M. R.; Mukherjee, S. Validating Automated Feedback in an AI-Based Interactive Learning Environment for Dance: Agreement Between Expert Choreographers and the ReAL-T. Educ. Sci. vol. 16(no. 2), 211, 2026. [CrossRef]
- Kalman, R. E. A New Approach to Linear Filtering and Prediction Problems. J. Basic Eng. 1960, vol. 82(no. 1), 35–45. [Google Scholar] [CrossRef]
- Li, R.; Yang, S.; Ross, D. A.; Kanazawa, H. AI Choreo: Generating Dance from Music with AIST++. Proc. IEEE/CVF Int. Conf. Computer Vision (ICCV), 2021; pp. 13401–13410. [Google Scholar]
- Sakoe, H.; Chiba, S. Dynamic Programming Algorithm Optimization for Spoken Word Recognition. IEEE Trans. Acoust. Speech Signal Process. 1978, vol. 26(no. 1), 43–49. [Google Scholar] [CrossRef]
- Shotton, J.; et al. Real-Time Human Pose Recognition in Parts from Single Depth Images. Proc. IEEE Conf. Computer Vision and Pattern Recognition (CVPR), 2011; pp. 1297–1304. [Google Scholar] [CrossRef]
- Tharatipyakul, A.; Srikaewsiew, T.; Pongnumkul, S. Deep Learning-Based Human Body Pose Estimation in Providing Feedback for Physical Movement: A Review. Heliyon 2024, vol. 10(no. 4), e25838. [Google Scholar] [CrossRef] [PubMed]
- Tsuchida, S.; Fukayama, S.; Goto, M.; Kitahara, J. AIST Dance Video Database: Construction and Video Collection of Dance Videos. Proc. IEEE Int. Conf. Systems, Man, and Cybernetics (SMC), 2019; pp. 3084–3089. [Google Scholar] [CrossRef]
Figure 1.
System block diagram of the automated evaluation framework. The pipeline processes video pairs through body-scale normalization, velocity-adaptive filtering, bounded Dynamic Time Warping alignment, temporal tolerance scoring, feature segmentation, and verbal feedback generation.
Figure 1.
System block diagram of the automated evaluation framework. The pipeline processes video pairs through body-scale normalization, velocity-adaptive filtering, bounded Dynamic Time Warping alignment, temporal tolerance scoring, feature segmentation, and verbal feedback generation.

Table 1.
System Performance and Ground Truth Comparison Across 15 Benchmark Sequences
| # | Sequence Description | Dance Style | View | Ref FB % | Lrn FB % | Human GT | System Score | Frames |
|---|---|---|---|---|---|---|---|---|
| 1 | Ballet Jazz Routine (d07 vs d08) | Ballet Jazz | Frontal | 98.6% | 100.0% | 82.0 | 80.8 | 800 |
| 2 | Street Jazz Routine (d01 vs d02) | Street Jazz | Frontal | 100.0% | 100.0% | 93.0 | 91.7 | 951 |
| 3 | Popping Routine (d10 vs d11) | Popping | Frontal | 100.0% | 100.0% | 88.0 | 89.4 | 769 |
| 4 | House Footwork (d19 vs d20) | House | Frontal | 100.0% | 100.0% | 85.0 | 83.5 | 531 |
| 5 | Breakdance Toprock (d04 vs d05) | Breakdance | Frontal | 100.0% | 100.0% | 77.0 | 78.9 | 747 |
| 6 | Contemporary Routine (Slow) | Contemporary | Frontal | 100.0% | 100.0% | 94.0 | 91.9 | 939 |
| 7 | Urban Choreography (Fast) | Fast Urban | Frontal | 97.9% | 100.0% | 81.0 | 79.6 | 766 |
| 8 | Yoga Tree Pose (Balance Loss) | Yoga | Frontal | 100.0% | 100.0% | 5.0 | 7.1 | 480 |
| 9 | Ballroom Waltz Box Step | Waltz | Frontal | 100.0% | 100.0% | 97.0 | 98.5 | 480 |
| 10 | Ballet Jazz Routine (Side View) | Ballet Jazz | Side | 88.3% | 98.2% | 81.0 | 79.9 | 796 |
| 11 | Street Jazz Routine (Side View) | Street Jazz | Side | 100.0% | 100.0% | 86.0 | 87.4 | 774 |
| 12 | Popping Routine (Side View) | Popping | Side | 100.0% | 97.6% | 84.0 | 82.8 | 772 |
| 13 | House Footwork (Side View) | House | Side | 95.0% | 100.0% | 80.0 | 78.8 | 530 |
| 14 | Breakdance Toprock (Side View) | Breakdance | Side | 100.0% | 100.0% | 74.0 | 75.5 | 735 |
| 15 | Yoga Downward Dog | Yoga | Side | 93.5% | 93.5% | 96.0 | 98.6 | 480 |
Table 2.
Comparison Between Slow and Fast Dance Choreographies
| Evaluation Metric | Slow Dance | Fast Dance |
|---|---|---|
| Total Frames | 939 | 766 |
| Duration | 15.65 s | 12.76 s |
| Detected Poses | 6 | 34 |
| Average Pose Score | 91.92 | 79.63 |
| Highest Pose Score | 95.65 (Pose 2) | 87.14 (Pose 28) |
| Lowest Pose Score | 86.95 (Pose 4) | 59.39 (Pose 34) |
| Categories (Exc. / Good / Fair) | 6 / 0 / 0 | 11 / 17 / 6 |
| Full-Body Framing | 100.0% | 97.9% |
Table 3.
Sample Feedback Generated for Fast Dance Segments
| Pose | Score | Rating | Generated Actionable Feedback |
|---|---|---|---|
| 1 | 74.7 | Good | Left knee is too straight by 64. |
| 3 | 87.0 | Exc. | Right elbow is more to the right |
| 8 | 64.9 | Fair | Right foot is higher; Left wrist lower |
| 15 | 83.5 | Good | Right shoulder angle differs by 28. |
| 28 | 87.1 | Exc. | Right foot higher and to right (Best) |
| 33 | 69.1 | Fair | Right knee is too bent by 37. |
| 34 | 59.4 | Fair | Right elbow too bent by 83. (Lowest) |
Table 4.
Ablation Analysis on the Fast Choreography Sequence
| Configuration / Baseline | Avg Score | Peak Lag | False Pen. |
|---|---|---|---|
| B1: Frame-by-Frame [4] | 22.4 | ms | 88.2% |
| B2: Static Kalman + DTW | 73.2 | 85 ms | 21.6% |
| B3: Angle Only [5] | 68.5 | N/A | 34.1% |
| B4: Proposed w/o Timing Window | 73.1 | ms | 18.4% |
| Proposed Complete System | 79.6 | ms | 3.2% |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2026 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Copyright: This open access article is published under a Creative Commons CC BY 4.0 license, which permit the free download, distribution, and reuse, provided that the author and preprint are cited in any reuse.