Skip to content

conservationtechlab/articulus

Repository files navigation

articulus

CV quantification of joint mobility in elephants.


Requirements

The model was trained using the open-source tool DeepLabCut
The easiest way to access and use the model at this time is through DeepLabCut.

Both articulus and DeepLabCut require Python, version 3.6 or higher.

Joint analysis requires the following Python packages:

  • numpy
  • pandas
  • math
  • matplotlib
  • seaborn

If the .ipynb is opened through Google Collab, however, it is not necessary to install those packages.

Step 1: Create Pose Estimations

  1. Install DeepLabCut and download the articulus repository
  2. Update line 10 in the config file to reflect local repository location
10| project_path: C:\Users\CTL\articulus 
  1. Open the DeepLabCut gui by running in the command line:
> python -m deeplabcut 
  1. Navigate to the "Manage Project" tab and select Load existing project
  2. Select the config file from the repository and press "Ok"
  3. Navigate to the "Analyze videos" tab
  4. Select videos to analyze
  5. Select "yes" for the option "Want to save result(s) as csv?
  6. Select Analyze Videos
    The analyze videos tab of the DeepLabCut graphical interface with indicators for steps 6 through 9.

Step 2: Analyze Range of Motion

Each joint comprises two vectors, one from point P1 to P2 (vector a) and one from P1 to P3 (vector b), with P1 as the vertex. The length of each vector is

a = (p1.x - p2.x, p1.y - p2.y)
b = (p1.x - p3.x, p1.y - p3.y)

You can then invert the dot product formula to get the angle between the two vectors:
fFormula for arctangent

Using the .csv files outputed by Step 1, get visual representation of the mobility of each joint from the ipynb notebook.

About

CV quantification of joint mobility in elephants.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published