INNER CODE UNIT · Python
calculateAngle
chonyy/AI-basketball-analysis · src/utils.py:94
def calculateAngle(a, b, c):
ba = a - b
bc = c - b
cosine_angle = np.dot(ba, bc) / (np.linalg.norm(ba) * np.linalg.norm(bc))
angle = np.arccos(cosine_angle)
return round(np.degrees(angle), 2)
def getAngleFromDatum(datum):
hipX, hipY, _ = datum.poseKeypoints[0][9]
kneeX, kneeY, _ = datum.poseKeypoints[0][10]
ankleX, ankleY, _ = datum.poseKeypoints[0][11]
shoulderX, shoulderY, _ = datum.poseKeypoints[0][2]
elbowX, elbowY, _ = datum.poseKeypoints[0][3]
wristX, wristY, _ = datum.poseKeypoints[0][4]
kneeAngle = calculateAngle(np.array([hipX, hipY]), np.array(