You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何计算两组人体部位运动数据集的相关系数?

计算两组人体部位运动坐标数据集的相关系数方案

只对比x坐标的方法无效,核心原因是人体部位的运动是二维(x,y)的,单独某一轴的相关性无法反映整体运动的关联程度。以下是几种可行的计算方法、工具和实现方式:

一、Excel手动计算(适合中小规模数据)

1. 基于相对位移的相关性分析

先消除初始位置差异,聚焦运动变化的关联:

  • 新增4列计算相对位移:
    • Ax_rel = Ax - 第一帧Ax值
    • Ay_rel = Ay - 第一帧Ay值
    • Bx_rel = Bx - 第一帧Bx值
    • By_rel = By - 第一帧By值
  • 计算x、y轴位移的皮尔逊相关系数:
    • 用CORREL(Ax_rel列, Bx_rel列)得到x方向运动的相关度
    • 用CORREL(Ay_rel列, By_rel列)得到y方向运动的相关度
    • 若两个系数都较高,说明两组部位的运动整体关联紧密

2. 方向余弦相似度(衡量运动方向一致性)

逐帧计算两组位移向量的夹角余弦值,再求平均值:

  • 新增列输入公式:
    = (Ax_rel*Bx_rel + Ay_rel*By_rel) / (SQRT(Ax_rel^2 + Ay_rel^2) * SQRT(Bx_rel^2 + By_rel^2))
    
  • 用AVERAGE()函数对该列求平均,结果越接近1,说明两组部位的运动方向越一致

3. 复相关系数(整体二维相关性)

启用Excel的「分析工具库」后,通过协方差矩阵计算:

  1. 依次点击「文件→选项→加载项」,勾选「分析工具库」并启用
  2. 点击「数据→数据分析→协方差」,选择Ax_rel、Ay_rel、Bx_rel、By_rel的列范围,生成协方差矩阵
  3. 代入公式计算复相关系数:
    =SQRT((C1^2 + D2^2 + 2*C2*D1)/(E1*E2))
    
    注:C1是Ax_rel与Bx_rel的协方差,D2是Ay_rel与By_rel的协方差,C2是Ax_rel与By_rel的协方差,D1是Ay_rel与Bx_rel的协方差;E1是A组位移的联合方差,E2是B组位移的联合方差

二、Python脚本实现(适合大规模帧数据)

如果数据量较大,用Python的pandas和numpy可以快速批量计算:

import pandas as pd
import numpy as np

# 读取Excel数据
df = pd.read_excel('your_data_file.xlsx')

# 计算相对位移(消除初始位置影响)
df['Ax_rel'] = df['Ax'] - df['Ax'].iloc[0]
df['Ay_rel'] = df['Ay'] - df['Ay'].iloc[0]
df['Bx_rel'] = df['Bx'] - df['Bx'].iloc[0]
df['By_rel'] = df['By'] - df['By'].iloc[0]

# 计算x、y轴位移的皮尔逊相关系数
corr_x = np.corrcoef(df['Ax_rel'], df['Bx_rel'])[0, 1]
corr_y = np.corrcoef(df['Ay_rel'], df['By_rel'])[0, 1]

# 计算平均方向余弦相似度
df['cosine_similarity'] = (df['Ax_rel'] * df['Bx_rel'] + df['Ay_rel'] * df['By_rel']) / \
                          (np.sqrt(df['Ax_rel']**2 + df['Ay_rel']**2) * np.sqrt(df['Bx_rel']**2 + df['By_rel']**2))
avg_cosine = df['cosine_similarity'].mean()

# 输出结果
print(f"X方向位移相关系数: {corr_x:.4f}")
print(f"Y方向位移相关系数: {corr_y:.4f}")
print(f"平均运动方向相似度: {avg_cosine:.4f}")

三、进阶:轨迹整体相似性分析

如果需要分析完整运动轨迹的关联,可以用:

  • 动态时间规整(DTW):衡量两个时间序列(轨迹)的相似程度,值越小说明轨迹越相似,Python中可通过dtw库实现
  • 主成分分析(PCA):将二维(x,y)数据降维为一维主成分,再计算两组主成分序列的皮尔逊相关系数

内容的提问来源于stack exchange,提问作者Collin Bergmann

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 11:56:33