FatemaKotb's picture
CPR Partial Code Cleaning
4cdc77a
import numpy as np
from CPR_Module.Common.keypoints import CocoKeypoints
from CPR_Module.Common.logging_config import cpr_logger
class ShouldersAnalyzer:
"""Calculate and store shoulder distance for CPR rescuer"""
def __init__(self):
self.shoulder_distance = None
self.shoulder_distance_history = []
def calculate_shoulder_distance(self, rescuer_keypoints):
"""Calculate and store shoulder distance"""
if rescuer_keypoints is None:
return
try:
left = rescuer_keypoints[CocoKeypoints.LEFT_SHOULDER.value]
right = rescuer_keypoints[CocoKeypoints.RIGHT_SHOULDER.value]
distance = np.linalg.norm(np.array(left) - np.array(right))
return distance
except Exception as e:
cpr_logger.error(f"Shoulder distance error: {e}")
return
def reset_shoulder_distances(self):
"""Reset shoulder distances"""
self.shoulder_distance_history = []