Skip to main content

preprocessing.alignment

logger_config

logger

calculate_geometric_distance

def calculate_geometric_distance(positions, keypoint1_idx, keypoint2_idx)

Calculate the geometric distance between two keypoints. Parameters

positions : np.ndarray Array of positions with shape (time, space, keypoints, individuals) or (time, space, keypoints) keypoint1_idx : int Index of the first keypoint keypoint2_idx : int Index of the second keypoint Returns

np.ndarray Array of distances with shape (time, individuals) or (time,)

egocentrically_align_and_center

def egocentrically_align_and_center(
config: dict,
centered_reference_keypoint: str = "snout",
orientation_reference_keypoint: str = "tailbase",
read_from_variable: str = "position_processed",
save_to_variable: str = "position_egocentric_aligned",
save_logs: bool = True) -> None

Aligns the time series by first centralizing all positions around the first keypoint and then applying rotation to align with the line connecting the two keypoints.

Parameters

  • config (dict): Configuration dictionary
  • centered_reference_keypoint (str): Name of the keypoint to use as centered reference.
  • orientation_reference_keypoint (str): Name of the keypoint to use as orientation reference.
  • read_from_variable (str): Variable to read from the dataset.
  • save_to_variable (str): Variable to save the aligned data to.
  • save_logs (bool, optional): Whether to save logs.

Returns

  • None