ValidPosesDataset#

class movement.validators.datasets.ValidPosesDataset(*, position_array, confidence_array=None, individual_names=None, keypoint_names=None, fps=None, source_software=None)[source]#

Bases: object

Class for validating poses data intended for a movement dataset.

The validator ensures that within the movement poses dataset:

  • The required position_array is a numpy array with the last dimension containing 2 or 3 spatial coordinates.

  • The optional confidence_array, if provided, is a numpy array with its shape matching the first three dimensions of the position_array; otherwise, it defaults to an array of NaNs.

  • The optional individual_names and keypoint_names, if provided, match the number of individuals and keypoints in the dataset, respectively; otherwise, default names are assigned.

  • The optional fps is a positive float; otherwise, it defaults to None.

  • The optional source_software is a string; otherwise, it defaults to None.

position_array#

Array of shape (n_frames, n_individuals, n_keypoints, n_space) containing the poses.

Type:

np.ndarray

confidence_array#

Array of shape (n_frames, n_individuals, n_keypoints) containing the point-wise confidence scores. If None (default), the scores will be set to an array of NaNs.

Type:

np.ndarray, optional

individual_names#

List of unique names for the individuals in the video. If None (default), the individuals will be named “individual_0”, “individual_1”, etc.

Type:

list of str, optional

keypoint_names#

List of unique names for the keypoints in the skeleton. If None (default), the keypoints will be named “keypoint_0”, “keypoint_1”, etc.

Type:

list of str, optional

fps#

Frames per second of the video. Defaults to None.

Type:

float, optional

source_software#

Name of the software from which the poses were loaded. Defaults to None.

Type:

str, optional

Raises:

ValueError – If the dataset does not meet the movement poses dataset requirements.