This repository provides comprehensive processing related to 3D motion analysis.
The following are some specific processing examples.
- Extracting video for motion analysis
- Time synchronization with EMG recorded together
- Illustration of the movement trajectory
- Calculation of joint angles
- useDataFold//movie/taskMovie/
-
Preliminary Preparations
-
Please create the following directory and store the task videos you have taken there
motion_analysis_latest/useDataFold/[monkeyname]/movie/taskMovie/[date]/
Also, Please name each video taken from the camera as follows
camera1.mp4
The number is used to identify the camera. It is up to you to decide which camera corresponds to which number, but please be careful not to change the camera number correspondence from day to day.
(e.g.)
if monkey name is 'Pochi', recording date is '2025/01/01', and the camera number is 3, Please save the videos taken from this camera as follows:motion_analysis_latest/useDataFold/Pochi/movie/taskMovie/20250101/camera3.mp4
-
Understand the directory structure of this repository
The most important thing to understand this repository is to understand the hierarchical structure of the folders.
This repository mainly consists of 4 main directories- code
=> functions that make up executeFunctions. - executeFunctions
=> functions that the user needs to execute - saveFold
=> Directory for storing preprocessing and analysis results - useDataFold
=> Directory that stores data used for preprocessing and analysis
For more detailed structure, please refer to the following tree.
motion_analysis_latest ├── code │ ├── commonFunc │ │ └── ... │ ├── trimMovieFunc │ │ └── ... │ └── ... ├── executeFunctions │ ├── extractTrialVideos.m │ └── ... ├── saveFold │ ├── monkey1 │ │ ├── movie │ │ │ └── ... │ │ └── data │ │ └── .... │ ├── monkey2 │ │ ├── movie │ │ │ └── ... │ │ └── data │ │ └── .... │ └── ... └── useDataFold ├── monkey1 │ ├── movie │ │ └── ... │ └── data │ └── .... ├── monkey2 │ ├── movie │ │ └── ... │ └── data │ └── .... └── ...
- code
-
Please add this repository to PATH in MATLAB
-
-
Sequence of Analysis
The sequence of motion analysis is shown in the figure below.(All functions to be executed are directly under executeFunctions folder.)
For details on the usage and the role of each function, please refer to the description at the beginning of each function.
The following information is written at the beginning of every executed function. Please refer to them and proceed with the analysis.
-
Your operation
This section contains instructions for executing the code -
Role of this code
The role of code is briefly described in this section -
Saved data location
This section contains details of data to be saved and where these data are saved -
Procedure
This section describes which code should be executed before and after this code.
- This project requires the processing of DeepLabCut and Anipose. Therefore, you will need to prepare these environments.
- Details of the experiment and analysis outline are distributed separately. If you would like to get these information, please contact at the email address at the end of this README.
If you have any questions, please feel free to contact me at nao-ota@ncnp.go.jp