visual3d:tutorials:modeling:oxford_foot_model
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revision | |||
visual3d:tutorials:modeling:oxford_foot_model [2024/07/17 15:42] – removed sgranger | visual3d:tutorials:modeling:oxford_foot_model [2024/07/17 15:47] (current) – created sgranger | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Oxford Foot Model ====== | ||
+ | |||
+ | **This tutorial describes C-Motion' | ||
+ | |||
+ | **Please contact C-Motion' | ||
+ | |||
+ | **This page is currently under construction. Make sure to read all instructions and comments before attempting to build the Oxford Foot Model as we cannot guaranty that the results generated from the model detailed on this page will be the same as those generated through the Oxford Foot Model Plug-in in Vicon' | ||
+ | |||
+ | The Oxford Foot Model has gone through many iterations since its first publication, | ||
+ | |||
+ | Visual3D is a general tool capable of modeling all of the different foot models. | ||
+ | |||
+ | \\ | ||
+ | |||
+ | |||
+ | The Oxford Foot Model is a good choice for analyzing data from Children with Cerebral Palsy. If this is not your patient population, other options and other multi-segment foot models may be more suitable. | ||
+ | |||
+ | There are 2 different options when creating the Oxford Foot Model. The first one involves optimizing the thigh rotation offsets so that the dynamic range of knee varus/ | ||
+ | |||
+ | The model you build in Visual3D will be dependent on the above options. | ||
+ | |||
+ | === Constructing a multi-segment foot model consistent with the Oxford Foot Model === | ||
+ | |||
+ | {{: | ||
+ | |||
+ | |||
+ | {{: | ||
+ | \\ | ||
+ | While we would recommend that users go through the tutorial to better understand how each segment is defined, the complete model template is available for download [[https:// | ||
+ | \\ | ||
+ | |||
+ | |||
+ | While the Oxford Foot Model is a multi-segment foot model, it is often combined with a lower body model. When used within Nexus, the pelvis, thighs, shanks and single foot segments are copied from Vicon' | ||
+ | |||
+ | \\ | ||
+ | **Please note: If you have collected data for this tutorial using a Vicon system, do not apply the Oxford Foot Model plug-in in Nexus before importing the .c3d files in Visual3D. Running it prior to importing the .c3d files in Visual3D will make it more difficult to follow the tutorial since some marker names are modified by the Nexus processing.** | ||
+ | |||
+ | === Marker Set === | ||
+ | |||
+ | |{{: | ||
+ | |||
+ | === Download and open the c3d files in Visual3D === | ||
+ | |||
+ | Download the zip file containing the [[https:// | ||
+ | |||
+ | Unzip this file in a location of your choice. | ||
+ | |||
+ | |From the **File** menu select **Open.** | ||
+ | |||
+ | |From the "Open the movement trial" dialog navigate to the files you downloaded and select the files labeled // | ||
+ | |||
+ | Create a hybrid model - From the **Model** menu open **Create (Add Static Calibration File)** and select **Visual3D Hybrid Model.**\\ | ||
+ | |||
+ | |||
+ | |Load the standing trial - From the " | ||
+ | |||
+ | |Assign the model to the movement trial - When the " | ||
+ | |||
+ | Visual3D will automatically open the Model Builder mode and your screen should look like the image below.\\ | ||
+ | \\ | ||
+ | {{: | ||
+ | \\ | ||
+ | As previously mentioned, the following markers should exist in the dynamic trials for the Oxford Foot Model: | ||
+ | |||
+ | RHFB/LHFB | ||
+ | RTUB/LTUB | ||
+ | RTIB/LTIB* | ||
+ | RSHN/LSHN | ||
+ | RANK/LANK* | ||
+ | RPCA/LPCA | ||
+ | RCPG/LCPG | ||
+ | RHEE/LHEE* | ||
+ | RSTL/LSTL | ||
+ | RP1M/LP1M | ||
+ | RHLX/LHLX | ||
+ | RTOE/LTOE* | ||
+ | RD5M/LD5M | ||
+ | P5M/LP5M | ||
+ | RLCA/LLCA | ||
+ | Markers identified with an * are also used by Vicon' | ||
+ | |||
+ | \\ | ||
+ | The following is a list of markers only used in the static trail: | ||
+ | |||
+ | RMMA/LMMA | ||
+ | RPCA/LPCA | ||
+ | RD1M/LD1M | ||
+ | The targets only used in the static are anatomic only targets and used to define the orientation of the segment, but not used to track the segment. These targets may be left on during the dynamic trials, or removed. | ||
+ | |||
+ | === Creating the Lowerlimb Plug-in Gait model === | ||
+ | |||
+ | As mentioned above, the Oxford Foot Model makes use of the [[Visual3D: | ||
+ | |||
+ | Because the Oxford Foot Model was designed to be a stand-alone model, it is not necessary to combine this model with a lowerlimb model. | ||
+ | |||
+ | === Creating Subject Data / Metrics === | ||
+ | |||
+ | To build the model, some Subject Data / Metrics should be created.\\ | ||
+ | In the Model tab, click on the **Subject Data / Metrics button**.\\ | ||
+ | Click on the //Add New Item// to create each of the following metrics:\\ | ||
+ | |||
+ | |||
+ | |**Marker_Radius: | ||
+ | |||
+ | \\ | ||
+ | \\ | ||
+ | **NOTE:** The Subject Data/ | ||
+ | |||
+ | === Creating the Oxford Foot Model' | ||
+ | |||
+ | In addition to the Plug-in Gait shank segments, the Oxford Foot Model has its own shank segments. This multi-segment foot model was designed to be self-contained allowing its use without the need to have a thigh nor a pelvis segment. Contrary to the many conventional gait models where the distal segment relies on the proximal segment to create the joint centre, each of the Oxford Foot Model' | ||
+ | |||
+ | In reality, it is our understanding that the Oxford Foot Model' | ||
+ | |||
+ | == Shank Landmarks == | ||
+ | |||
+ | Before defining the Shank segments, Landmarks have to be created. | ||
+ | |||
+ | __Create the (R/L)PROT landmarks -__ | ||
+ | |||
+ | |Go to the **Landmarks** tab, and click on **Add New Landmark**: | ||
+ | |||
+ | \\ | ||
+ | __Create the (R/L)AJC_SK landmarks -__ | ||
+ | |||
+ | |Go to the **Landmarks** tab, and click on **Add New Landmark**: | ||
+ | |||
+ | == Defining the Shank == | ||
+ | |||
+ | |**1. Create Right Shank OFM:**\\ \\ 1. In the Segment Name combo box type **Right Shank OFM**\\ \\ 2. Check the **Kinematic Only** Check Box\\ \\ 3. Select the **Create** button\\ \\ 4. In the **Right Shank OFM** tab, enter these values:\\ \\ | **Define Proximal Joint and Radius**\\ \\ **Lateral: | ||
+ | |||
+ | === Creating the Hindfoot === | ||
+ | |||
+ | == Hindfoot Landmarks == | ||
+ | |||
+ | Before defining the Hindfoot segments, Landmarks have to be created. | ||
+ | |||
+ | __Create the (R/ | ||
+ | |||
+ | |Go to the **Landmarks** tab, and click on **Add New Landmark**: | ||
+ | |||
+ | __Create the (R/ | ||
+ | |||
+ | |Go to the **Landmarks** tab, and click on **Add New Landmark**: | ||
+ | |||
+ | == Creating the Hindfoot == | ||
+ | |||
+ | |**1. Create Right Hindfoot: | ||
+ | |||
+ | **NOTE:** After the segment has been created, the orientation of the segment coordinate system will need to be modified so the A/P axis is defined by **+Z** and the distal/ | ||
+ | |||
+ | === Creating the Forefoot === | ||
+ | |||
+ | == Forefoot Landmarks == | ||
+ | |||
+ | Before defining the Forefoot segments, Landmarks have to be created. | ||
+ | |||
+ | __Create the (R/L)P1M_FF landmarks -__ | ||
+ | |||
+ | |Go to the **Landmarks** tab, and click on **Add New Landmark**: | ||
+ | |||
+ | __Create the (R/L)FF_O landmarks -__ | ||
+ | |||
+ | |Go to the **Landmarks** tab, and click on **Add New Landmark**: | ||
+ | |||
+ | __Create the (R/L)TOE_FF landmarks -__ | ||
+ | |||
+ | |Go to the **Landmarks** tab, and click on **Add New Landmark**: | ||
+ | |||
+ | == Defining the Forefoot == | ||
+ | |||
+ | |**1. Create Right Forefoot: | ||
+ | |||
+ | **NOTE:** After the segment has been created, the orientation of the segment coordinate system will need to be modified so the A/P axis is defined by **+Z** and the distal/ | ||
+ | |||
+ | === Creating the Hallux === | ||
+ | |||
+ | == Hallux Landmarks == | ||
+ | |||
+ | Because there is only one marker on the Hallux, additional markers are still required to track the segment in the motion trials. | ||
+ | |||
+ | __Create the (R/ | ||
+ | |||
+ | |Go to the **Landmarks** tab, and click on **Add New Landmark**: | ||
+ | |||
+ | == Defining the Hallux == | ||
+ | |||
+ | While the Hallux is represented as a segment, only one marker is placed on the hallux. The Hallux segment therefore " | ||
+ | |||
+ | \\ | ||
+ | |||
+ | |||
+ | |**1. Create Right Hallux:**\\ \\ 1. In the Segment Name combo box type **Right Hallux**\\ \\ 2. Check the **Kinematic Only** Check Box\\ \\ 3. Select the **Create** button\\ \\ 4. In the **Right Hallux** tab, enter these values:\\ \\ | **Define Proximal Joint and Radius**\\ \\ **Lateral: | ||
+ | |||
+ | **NOTE:** After the segment has been created, the orientation of the segment coordinate system will need to be modified so the A/P axis is defined by **-Z** and the distal/ | ||
+ | |||
+ | === Rotate Segment Coordinate System === | ||
+ | |||
+ | The final orientation of the segment coordinate systems should follow the same convention as the proximal segment. The orientation of the Hindfoot, Forefoot, and Hallux segments will need to be rotated.\\ | ||
+ | \\ | ||
+ | For this tutorial, the correct orientation is X (red) mediolateral, | ||
+ | \\ | ||
+ | |||
+ | |||
+ | |**To modify the segment coordinate system:**\\ 1. Go to the **Segment Properties** tab\\ 2. Set the **Segment Name** to the appropriate segment\\ 3. Click **Modify Segment Coordinate System**\\ | ||
+ | |||
+ | **For the Hindfoot and Forefoot, the segment coordinate system should be modified so that the A/P Axis is set to +Z and the Distal to Proximal set to -Y:**\\ | ||
+ | |||
+ | |||
+ | | __**Original: | ||
+ | |||
+ | **For the Hallux, the segment coordinate system should be modified so that the A/P Axis is set to -Z and the Distal to Proximal set to +Y.** | ||
+ | |||
+ | \\ | ||
+ | |||
+ | |||
+ | == Overview of the Segment Coordinate Systems == | ||
+ | |||
+ | \\ | ||
+ | Shown below is the correct orientation of the segment coordinate systems (the coordinate systems must be modified prior to this).\\ | ||
+ | \\ | ||
+ | **NOTE:** The bones will not appear because the model file is not specified. To specify the model file, go to Segment Properties and browse for the model file (right: rshank.v3g, left: lshank.v3g). The kinetic foot segment will be created later in this tutorial.\\ | ||
+ | \\ | ||
+ | |||
+ | |||
+ | | {{: | ||
+ | |||
+ | \\ | ||
+ | |||
+ | |||
+ | === Computing Joint Angles === | ||
+ | |||
+ | Computing the Oxford Foot Model joint angles uses Grood and Suntay' | ||
+ | The following details the joint angle output by the Oxford Foot Model:\\ | ||
+ | |||
+ | |||
+ | |__**Right Joint Angles: | ||
+ | |||
+ | |**RHFTBA: | ||
+ | |||
+ | |**RFFTBA: | ||
+ | |||
+ | |**RFFHFA: | ||
+ | |||
+ | |**RHXFFA: | ||
+ | |||
+ | === Generating a Report === | ||
+ | |||
+ | The joint angles computed above, will be plotted as a percent of the gait cycle between events. To do this gait events must be identified in the dynamic trials. | ||
+ | |||
+ | The Automatic Gait Events pipeline command may be used to identify gait events once [[Visual3D: | ||
+ | |||
+ | == Create Kinetic Foot Segment == | ||
+ | |||
+ | Before V3D can automatically create [[Visual3D: | ||
+ | |||
+ | |**1. Create Right Kinetic Foot Segment: | ||
+ | |||
+ | == Create Automatic Gait Events == | ||
+ | |||
+ | Once the Right/Left Foot segments have been created, Visual3D should have created automatic force assignments. The blue force vector shown in the 3D viewer of the Signals and Events tab indicates that a force has been assigned to a segment and will be used for kinetic calculations (unassigned force vectors are shown in red). Force assignments may be modified by going to Force -> View/Edit Segment to Force Assignments. | ||
+ | |||
+ | **To create Automatic Gait Events using the pipeline:** | ||
+ | |||
+ | |1. Set the active file to " | ||
+ | |||
+ | |3. Expand **Event Creation**\\ 4. Double click **Automatic_Gait_Events**\\ \\ \\ The Automatic Gait Events command should move into the Main Pipeline\\ \\ 5. Double click the **Automatic_Gait_Events** command in the Main Pipeline and the dialog should open:\\ \\ \\ **Check** Use Pattern Recognition to Create (L/R)HS and (L/R)TO labels\\ \\ Set the Frame Window for Pattern Recognition to **8**\\ \\ Set the FP Gravity Direction to **Z**\\ \\ Click **Done**\\ \\ 6. Click **Execute Pipeline**\\ | ||
+ | |||
+ | Events should then be manually checked to ensure the correct events were identified. More information about Event Processing can be found [[Visual3D: | ||
+ | |||
+ | == Plotting Signals == | ||
+ | |||
+ | Once the joint angles have been computed using the Compute Model Based Data function, these can then be graphed in a report. For details on how to create a report, please consult the [[Visual3D: | ||
+ | |||
+ | There is no predefined format for the Oxford Foot Model, and it is up to the user to choose how to present the joint angles. For the purpose of this tutorial, a report template was created to plot the joint angles. The report template can be downloaded [[https:// | ||
+ | |||
+ | {{: | ||
+ | |||
+ | |||
visual3d/tutorials/modeling/oxford_foot_model.1721230972.txt.gz · Last modified: 2024/07/17 15:42 by sgranger