Gathering all the literature on shoulder kinematics, and scapulo-humeral rhythm With this repository, We aim to gather all the literature on shoulder kinematics, and scapulo-humeral rhythm. We will try to keep it updated as much as possible. If you have any suggestions, please let us know.
We assume the continuity of the data between articles. For example, if the same data is used in two articles, and some information is missing in the last one, we pick the information in the previous article.
Moissenet, F., Puchaud, P., Naaïm, A., Holzer, N., & Begon, M. (2024). Spartacus-shoulder-kinematics-dataset/shoulder-kinematics congress (0.1.0). Zenodo. https://doi.org/10.5281/zenodo.11455521
@software{moissenet_2024_11455521,
author = {Moissenet, Florent and
Puchaud, Pierre and
Naaïm, Alexandre and
Holzer, Nicolas and
Begon, Mickael},
title = {{Spartacus-shoulder-kinematics-dataset/shoulder-
kinematics congress}},
month = jun,
year = 2024,
publisher = {Zenodo},
version = {0.1.0},
doi = {10.5281/zenodo.11455521},
url = {https://doi.org/10.5281/zenodo.11455521}
}
Please star ⭐ this repository where everything will be released: The repo
- Metadata
- Experimental conditions
- Generic segment columns
- Thoracohumeral
- Joint motion columns
- humeral_motion
- joint
- parent
- child
- euler_sequence
- origin_displacement
- displacement_cs
- displacement_absolute
- displacement_correction_method -Data columns and array of data
- is_data_mean
- shoulder_id
- source_extraction
- data_humero_thoracic_elevation
- dof_1st_euler
- dof_2nd_euler
- dof_3rd_euler
- data_translation_x
- data_translation_y
- data_translation_z
The dataset is a csv file, each row aim to represent a joint movement as a function of the humerothoracic elevation angle. The columns are the following:
variable type: string The title of the article
variable type: string The authors of the article
variable type: integer The year of publication
variable type: string The journal where the article was published
variable type: boolean True if the article is in vivo, False if it is ex vivo
variable type: string The experimental means used in the article:
- intra cortical pins
- biplanar x-ray
- biplane x-ray fluoroscopy (when this not static, but dynamic)
- 4DCT: 3D CT-scan with time.
- to be completed ...
variable type: integer The number of shoulders/ subjects in the article, sometimes right and left shoulders are counted as two shoulders
variable type: string The type of movement:
- Dynamic
- Quasi-static
- to be completed ...
variable type: boolean True if the movement is active, False if it is passive (i.e. related to a muscular control, e.g. in vivo quasi-static in standing posture is active, but in vivo quasi-static in lying posture may be inactive)
variable type: string The posture of the subject when the data was collected:
- standing
- sitting
This columns are generic for the following key words:
- thorax
- humerus
- scapula
- clavicle
examples: humerus_is_isb, clavicle_is_isb, scapula_is_isb
variable type: boolean True if the segment follows the ISB recommendations, False otherwise
variable type: boolean True if the global coordinate system is considered as the thorax. This column is only revelant for the Thorax.
variable type: boolean True if the segment coordinates system can be corrected to follow the ISB recommendations, False otherwise
variable type: string The method used to correct the segment coordinates system to follow the ISB recommendations:
- to_isb : consisting in switching axis to follow the ISB recommendations
- to_isb_like : consisting in switching axis to follow the ISB recommendations as much as possible
- to_kolz_ac_to_pa : consisting in switching axis from acromio-clavicular joint to posterior aspect of the acromion
- glenoid_to_isb_cs : available from Dal Maso et al. 2014
- to be completed ...
Note: two methods can be combined, to get back to the ISB recommendations, might be a list of strings at the end of the day Note:
- If XXX_is_isb is true -> XXX_is_isb_correctable=nan and XXX_correction_method=nan
- If XXX_is_isb is false -> XXX_is_isb_correctable=true and XXX_correction_method=not nan
- If XXX_is_isb is false -> XXX_is_isb_correctable=false and XXX_correction_method=nan, it means we are already in a ISB-like configuration with offset,we cannot master.
variable type: string
The anatomical landmark used as origin for the segment coordinates system: Most of the landmarks comes from Wu et al. 2005:
- From Wu et al. 2005
- C7, Processus Spinosus (spinous process) of the 7th cervical vertebra
- T8, Processus Spinosus (spinal process) of the 8th thoracic vertebra
- IJ, (Incisura Jugularis), also refered as Deepest point of Incisura Jugularis (suprasternal notch)
- PX, Processus Xiphoideus (xiphoid process), most caudal point on the sternum
- Other landmarks
- T7, (7th thoracic vertebra)
- anterior face of T1
- Glenoid center (Sahara et al. 2007)
- Wu et al. 2005 :
- SC, Most ventral point on the sternoclavicular joint
- AC, Most dorsal point on the acromioclavicular joint (shared with the scapula)
- Other:
- Point of intersection between the mesh model and the Zc axis (Sahara et al. 2006)
- Wu et al. 2005 :
- TS, Trigonum Spinae Scapulae (root of the spine), the midpoint of the triangular surface on the medial border of the scapula in line with the scapular spine
- AI, Angulus Inferior (inferior angle), most caudal point of the scapula
- AA, Angulus Acromialis (acromial angle), most laterodorsal point of the scapula
- PC, Most ventral point of processus coracoideus
- Other landmarks:
- Glenoid center
- Wu et al. 2005:
- GH, Glenohumeral rotation center, (or gleno-humeral head center )
- EL, Most caudal point on lateral epicondyle
- EM, Most caudal point on medial epicondyle
- Other landmarks:
- midpoint EM EL: the middle of the two latters
variable type: string X, Y and Z denote the axis of the segment coordinates system. The anatomical direction of the axis:
- +posteroanterior: the axis is pointing anteriorly
- -posteroanterior: the axis is pointing posteriorly
- +mediolateral: the axis is pointing medially
- -mediolateral: the axis is pointing laterally
- +superoinferior: the axis is pointing superiorly
- -superoinferior: the axis is pointing inferiorly
This nomenclature/terminology has been chosen because in the case the segement coordinate system doesn't properly follow the ISB recommandations, the axis can vaguely point in the direction, but not strictly regarding the ISB recommendations.
variable type: string The sequence of the thoracohumeral joint:
- yxy
- zyx
- unknown (we have clear data but don't know how it has been computed)
variable type: string When no sequence is given, the thoracohumeral angle is given:
- angle(yt, yh)
- controlled by operator: probably goniometer
- unknown (we have clear data but don't know how it has been computed)
variable type: boolean True if the thoracohumeral joint can be used to compute the humerothoracic elevation angle, False otherwise
variable type: boolean True if the thoracohumeral joint is usable, but can be used with a risk, False otherwise A risk is known when the thoracohumeral joint is not perfectly in accordance with the ISB recommendations, but the thoracohumeral joint can still be used as the data may be valuable.
variable type: string The motion performed:
- frontal elevation
- scapular elevation
- sagittal elevation
- internal-external rotation 90 degree-abducted
- internal-external rotation 0 degree-abducted
variable type: string The joint name considered on the row: of the csv file :
- sternoclavicular
- scapulothoracic
- acromioclavicular
- glenohumeral
variable type: string The segment considered as parent of the joint:
- thorax
- scapula
- clavicle
- humerus
variable type: string The sequence of the joint:
- yxz: ISB for sternoclavicular, acromioclavicular and scapulothoracic joints when segment follows ISB recommendations)
- yxy: ISB for glenohumeral, thoracohumeral joints when segment doesn't follow ISB recommendations)
- zyx
- to be completed ...
variable type: string The anatomical landmark used as origin for the translation:
- humeral head
variable type: string segment name or joint name. It may refer to the proximal, distal or joint coordinate system
variable type: boolean True if the displacement is absolute, False if it is relative (in percentage).
variable type: string The method used to correct the displacement:
- Lagace2012 (not sure yet)
variable type: boolean True if the data is the mean of the subjects, False otherwise
variable type: integer The id of the shoulder/subject, if the data is not the mean of the subjects
variable type: string The source of the data:
- data: the data comes from a data file
- engauged: the data comes from the software Engauge
variable type: array of floats The humero-thoracic elevation data to describe the shoulder rhythm of the joint, in degrees (to be confirmed)
variable type: array of floats The first euler angle of the joint, in degrees (to be confirmed)
variable type: array of floats The second euler angle of the joint, in degrees (to be confirmed)
variable type: array of floats The third euler angle of the joint, in degrees (to be confirmed)
variable type: array of floats The translation along the x axis of the joint, in mm (to be confirmed)
variable type: array of floats The translation along the y axis of the joint, in mm (to be confirmed)
variable type: array of floats The translation along the z axis of the joint, in mm (to be confirmed)
Sahara et al 2006 : The scapula coordinate system is the clavicle coordinate system at abduction zero degree. The scapua frame is very exotic and not convertable to ISB standards.
- Gutierez et al. 2017: X-clavicule not built with x thoracic in reference posture but it is very close.
- Hallström et al. 2006: no euler sequence, no scapula coordinate systems. cannot even considered as reliable. not even possible to understand what has is done.