Roadmaps#

This page outlines current development priorities and aims to guide core developers and to encourage community contributions. It is a living document and will be updated as the project evolves.

The roadmaps are not meant to limit movement features, as we are open to suggestions and contributions. Join our Zulip chat to share your ideas. We will take community feedback into account when planning future releases.

Long-term vision#

The following features are being considered for the first stable version v1.0.

  • Import/Export motion tracks from/to diverse formats. We aim to interoperate with leading tools for tracking animals, irrespective of whether they represent each animal’s position as a single keypoint, a set of keypoints (a pose), a bounding box, or a segmentation mask.

  • Standardise the representation of motion tracks. We represent data in xarray data structures that are consistent across these formats, so that downstream tools can operate on any motion track regardless of its origin.

  • Interactively visualise motion tracks. We are using napari as a visualisation and GUI framework.

  • Clean motion tracks, including, but not limited to, handling of missing values, filtering, smoothing, and resampling.

  • Derive kinematic variables like velocity, acceleration, head direction, etc., focusing on those prevalent in neuroscience and ethology.

  • Integrate spatial data about the animal’s environment for combined analysis with motion tracks. This covers regions of interest (RoIs) such as the arena in which the animal is moving and the location of objects within it.

  • Define and transform coordinate systems. Coordinates can be relative to the camera, environment, or the animal itself (egocentric).

  • Provide common metrics for specialised applications. These applications could include gait analysis, pupillometry, spatial navigation, social interactions, etc.

  • Integrate with behaviour classification tools. We aim to seamlessly exchange data with behavioural classification/segmentation tools: exporting derived kinematic features for them to consume, and importing the behavioural state labels they produce.

  • Integrate with neurophysiological data analysis tools. We eventually aim to facilitate combined analysis of motion and neural data.

Focus areas for 2026#

Several 2025 goals have been carried over, refined or expanded for 2026:

  • Support novel user workflows in our napari GUI, including:

    • drawing regions of interest and saving them to disk,

    • filtering visualised data by individuals and keypoints,

    • manually correcting predictions and saving them to disk.

  • Support datetime coordinates in movement datasets (to unlock future work on events of interest and on alignment with neurophysiological data).

In addition, 2026 introduces some new priorities:

  • Expose a single unified entry point for loading motion tracks.

  • Simplify and document the process of adding new loaders for different formats.

  • Publish a governance document and define contributor pathways.

  • Survey animal behaviour researchers to prioritise specialised behavioural metrics, and implement at least two of them.

Focus areas for 2025#

We defined these high-level goals in early 2025. Items completed by the year’s end have been checked off.

  • Annotate space by defining regions of interest

    • programmatically,

    • via our GUI.

  • Annotate time by defining events of interest programmatically and via our GUI.

  • Enable workflows for aligning motion tracks with concurrently recorded neurophysiological signals.

  • Enrich the interactive visualisation of motion tracks in napari, providing more customisation options.

  • Enable the saving of filtered tracks and derived kinematic variables to disk.

  • Implement metrics useful for analysing

    • spatial navigation,

    • social interactions,

    • collective behaviour.

Version 0.1#

We’ve released version v0.1 of movement in March 2025, providing a basic set of features to demonstrate the project’s potential and to gather feedback from users. Our minimum requirements for this milestone were:

  • Ability to import pose tracks from DeepLabCut, SLEAP and LightningPose into a common xarray.Dataset structure.

  • At least one function for cleaning the pose tracks.

  • Ability to compute velocity and acceleration from pose tracks.

  • Public website with documentation.

  • Package released on PyPI.

  • Package released on conda-forge.

  • Ability to visualise pose tracks using napari. We aim to represent pose tracks as napari layers, overlaid on video frames.