User Tools

Site Tools


visual3d:tutorials:modeling:ior_gait_full_body_model

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
visual3d:tutorials:modeling:ior_gait_full_body_model [2024/11/27 16:35] – [Virtual Lab] wikisysopvisual3d:tutorials:modeling:ior_gait_full_body_model [2025/03/10 18:49] (current) wikisysop
Line 1: Line 1:
 ====== IOR Gait Full Body Model ====== ====== IOR Gait Full Body Model ======
-This tutorial explains how to implement the IOR Full Body Model in Visual3D. \\ + 
-The IOR Full Body Model is a combination of the IOR Multi-Segment Trunk, and the IOR Lower Extremity Model.\\ +This tutorial explains how to implement the IOR Full Body Model in Visual3D. The IOR Full Body Model is a combination of the IOR Multi-Segment Trunk, and the IOR Lower Extremity Model. The naming convention in this tutorial follows Serge Van Sint Jan's convention.
-The naming convention in this tutorial follows Serge Van Sint Jan's convention.+
  
 ===== Downloads ===== ===== Downloads =====
-Sample files may be downloaded [[https://www.has-motion.com/download/examples/IORFullBody/IOR_Full_DemoFiles.zip|here]]. \\ +Sample files may be downloaded [[https://www.has-motion.com/download/examples/IORFullBody/IOR_Full_DemoFiles.zip|here]]. The zip file contains:
-The zip file contains:+
   - C3D files which you can use to follow along with the tutorial   - C3D files which you can use to follow along with the tutorial
   - A model template which contains the landmark & segment definitions   - A model template which contains the landmark & segment definitions
Line 12: Line 10:
   - A report template which plots the relevant kinematics (joint angles & planar angles)   - A report template which plots the relevant kinematics (joint angles & planar angles)
   - A completed CMO file   - A completed CMO file
 +
 ===== Target Placement ===== ===== Target Placement =====
-{{ :ior_full_marker_set.png?450}} \\+{{ :ior_full_marker_set.png?450}} 
 **LCAJ/RCAJ (LA/RA):** Left/Right acromion \\ **LCAJ/RCAJ (LA/RA):** Left/Right acromion \\
 **SJN (IJ):** Deepest point of the incisura jugularis \\ **SJN (IJ):** Deepest point of the incisura jugularis \\
Line 35: Line 35:
 **LFM5/RFM5 (LVM/RVM):** Dorsal margin of the fifth metatarsal head \\ **LFM5/RFM5 (LVM/RVM):** Dorsal margin of the fifth metatarsal head \\
  
----- 
  
 ===== Segment Definitions ===== ===== Segment Definitions =====
Line 124: Line 123:
     * **Select Tracking Targets:**     * **Select Tracking Targets:**
     * SJN, SXS, TV2, TV7     * SJN, SXS, TV2, TV7
-    * Set **Depth(Meters)** to 0.1 
   - Click on **Build Model**   - Click on **Build Model**
   - Click on **Close Tab** before proceeding.   - Click on **Close Tab** before proceeding.
Line 411: Line 409:
  
 ---- ----
-==== Planar Angles ==== +===== Additional Details ====== 
-To calculate the orientation of the trunk segments, planar angles are calculated to determine the orientation + 
-of the various segments relative to one another. To calculate a planar angle, you need to either reference the  +Once the IOR Gait Full Body model has been createdadditional items can be calculated specific to the IOR Gait model
-ORIGINAL or PROCESSED folder when defining a target. If your targets have not been filtered or interpolated, + 
-you will not have a processed folder and will need to use the ORIGINALHowever, if you plan to process your target +  * **[[visual3d:tutorials:modeling:ior_gait_planar_angles|Planar Angles]]**: Compute the orientation of different parts of the thorax relative to one another
-data in any way, you should do this now, prior to creating you planar angles. \\ +  * **[[visual3d:tutorials:modeling:ior_gait_shoulder_orientation_and_translation|Shoulder Orientation and Translation]]**: This tutorial goes through computing the orientation and the translation of the shoulder targets relative to the trunk segment. 
-{{:iorfb_trunksegments.png?500|This image was taken from the Multi-Segment trunk paper}} \\ +  * **[[visual3d:tutorials:modeling:ior_gait_joint_angles|Joint Angles]]**: Compute IOR Gait specific joint angles. 
-The following abbreviations are used in naming the planar angles +  * **[[visual3d:tutorials:modeling:ior_foot_model|IOR Multi-Segment Foot Model]]**: Define a multi segment foot model.
-  * **FE** Flexion/Extension +
-  * **LB** Lateral Bending +
-  * **AR** Axial Rotation +
-=== Spine FE & LB Landmarks === +
-{{ :iorfb_rpv_ax.png?300}} +
-**25. Create RPV_AX:** +
-  - Click **Landmarks** button +
-  - Click **Add New Landmark** button +
-  - Create LandmarkRPV_AX +
-    * **Landmark Name:** RPV_AX +
-    * **Define Orientation Using:** +
-    * **Starting Point:** LV5 +
-  - Offset Using the Following **ML\AP\AXIAL** Offsets: +
-    * **X:** 0.0 **Y:** 0.0 **Z:** -0.05 +
-  - **Do NOT Check:** Offset by Percent (1.0 = 100%) (Meters when not checked) +
-  - **Do NOT Check:** Calibration Only Landmark (Not generated for assigned motion file(s)) +
-=== FE Planar Angles === +
-Below defines the orientation (flexion/extension) of the adjoining spine segments resolved in the pelvis coordinate system \\ +
-**NOTE:** For the FE Planar Angles, the same definitions for the angles are used for both the left & right side. This +
-means the different sets of signals do not need to be created for the left and right sides (as with the LB and AR planar angles)\\ +
-**NOTE-2:** To access these dialogs, you need to edit a command pipeline, the [[visual3d:documentation:pipeline:signal_commands:compute_planar_angle|"Compute_Planar_Angle" pipeline command]]+
----- +
-=== Spine FE Definitions === +
-{{ :iorfb_sp5_sp4_fe.png?300}} +
-**26. Create Sp5_sp4_FE Planar angle:** +
-  - Define **Resulting Signal** Name: Sp5_Sp4_FE +
-  - Calculate a **4 point angle** between the following targets: +
-    - TARGET::PROCESSED::TV7 +
-    - TARGET::PROCESSED::TV2 +
-    - TARGET::PROCESSED::CV7 +
-    - TARGET::PROCESSED::TV2 +
-    * **Angle Direction:** Left Hand Rule  +
-    * **3D Space:** Always 0 to 180 degrees +
-    * **Projected onto Plane:** XY +
-    * **Note: The Reference segment will need to be changed to RPV within the text option.** +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
----- +
-{{ :iorfb_sp4_sp3_fe.png?300}} +
-**27. Create Sp4_Sp3_FE planar angle:** +
-  - Define **Resulting Signal** Name: Sp4_Sp3_FE +
-  - Calculate a **4 point angle** between the following  +
-    - TARGET::PROCESSED::LV1 +
-    - TARGET::PROCESSED::TV7 +
-    - TARGET::PROCESSED::TV2 +
-    - TARGET::PROCESSED::TV7 +
-    * **Angle Direction:** Left Hand Rule +
-    * **3D Space:** Always 0 to 180 degrees +
-    * **Projected onto Plane:** XY +
-    * **Note: The reference segment will need to be changed to RPV within the text option** +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
----- +
-{{ :iorfb_sp3_sp2_fe.png?300}} +
-**28. Create Sp3_Sp2_FE planar angle:** +
-  - Define **Resulting Signal** Name: Sp3_Sp2_FE +
-  - Calculate a **4 point angle** between the following targets: +
-    - TARGET::PROCESSED::LV3 +
-    - TARGET::PROCESSED::LV1 +
-    - TARGET::PROCESSED::TV7 +
-    - TARGET::PROCESSED::LV1 +
-    * **Angle Direction:** Left Hand Rule +
-    * **3D Space:** Always 0 to 180 degrees +
-    * **Projected onto Plane:** XY +
-    * **Note: The reference segment will need to be changed to RPV within the text option** +
- \\  +
- \\  +
- \\ +
- \\ +
- \\ +
- \\ +
----- +
-{{ :iorfb_sp2_sp1_fe.png?300}} +
-**29. Create Sp2_Sp1_FE planar angle:** +
-  - Define **Resulting Signal** Name: Sp2_Sp1_FE +
-  - Calculate a **4 point angle** between the following targets: +
-    - TARGET::PROCESSED::LV5 +
-    - TARGET::PROCESSED::LV3 +
-    - TARGET::PROCESSED::LV1 +
-    - TARGET::PROCESSED::LV3 +
-    * **Angle Direction:** Left Hand Rule +
-    * **3D Space:** Always 0 to 180 degrees +
-    * **Projected onto Plane:** XY +
-    * **Note: The reference segment will need to changed to RPV within the text option.** +
- \\ +
- \\ +
- \\  +
- \\ +
- \\ +
- \\ +
- \\ +
----- +
-{{ :iorfb_sp1_pel_fe.png?300}} +
-**30. Create Sp1_Pel_FE planar angle:** +
-  - Define **Resulting Signal** Name: Sp2_Sp1_FE +
-  - Calculate a **4 point angle** between the following targets: +
-    - LANDMARK::ORIGINAL::RPV_AX +
-    - TARGET::PROCESSED::LV5 +
-    - TARGET::PROCESSED::LV3 +
-    - TARGET::PROCESSED::LV5  +
-    * **Angle Direction:** Left Hand Rule +
-    * **3D Space:** Always 0 to 180 degrees +
-    * **Projected onto Plane:** XY +
-    * **Note: The reference segment will need to be changed to RPV within the text option.** +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
----- +
-==== Shoulder LB ==== +
-Below defines the orientation of the line between the shoulder targets (LCAJ/RCAJ) relative to the trunk segment +
-=== Shoulder LB & AR Landmarks === +
-{{ :iorfb_rta_or.png?300}} +
-**31. Create RTA_OR:** +
-  - Click **Landmarks** button +
-  - Click **Add New Landmark** button +
-  - Create LandmarkRTA_OR +
-    * **Landmark Name:** RTA_OR +
-    * **Existing Segment:** Thorax/Ab +
-  -Offset Using the Following **ML/AP/AXIAL** Offsets: +
-    * **X:** 0.0 **Y:** 0.0 **Z:** 0.0 +
-  - **Check:** Offset by Percent (1.0 = 100%) (Meters when not checked) +
-  - **Do NOT Check:** Calibration Only Landmark (Not generated for assigned motion file(s)) +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
----- +
-{{ :iorfb_rta_ml.png?300}} +
-**32. Create RTA_ML:** +
-  - Click **Landmarks** button +
-  - Click **Add New Landmark** button +
-  - Create Landmark: RTA_ML +
-    * **Landmark Name:** RTA_ML +
-    * **Existing Segment:** THORAX/Ab +
-  - Offset Using the Following **ML/AP/AXIAL** Offsets: +
-    * **X:** 0.5 **Y:** 0.0 **Z:** 0.0 +
-  - **Check:** Offset by Percent (1.0 = 100%) (Meters when not checked) +
-  - **Do NOT Check:** Calibration Only Landmark (Not generated for assigned motion file(s)) +
- \\ +
- \\ +
- \\  +
- \\ +
- \\  +
- \\ +
- \\ +
----- +
-=== Shoulder LB & AR Definitions === +
-{{ :iorfb_rsh_th_lb.png?300}} +
-**33. Create RSh_Th_LB planar angle:** +
-  - Define **Resulting Signal** Name: RSh_Th_LB +
-  - Calculate a **4 point angle** between the following targets: +
-    - LANDMARK::ORIGINAL::RTA_ML +
-    - LANDMARK::ORIGINAL::RTA_OR +
-    - TARGET::PROCESSED::LCAJ +
-    - TARGET::PROCESSED::RCAJ +
-    * **Angle Direction:** Left Hand Rule +
-    * **3D Space:** Always 0 to 180 degrees +
-    * **Projected onto Plan:** YZ +
-    * **NOTE: The reference segment will need to be changed to RTA within the text options.** +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
-**34. Create LSh_Th_LB planar angle:** +
-  * When defining the left signal, use same definitions **except** set: +
-    * **Angle Direction:** Right Hand Rule +
- \\ +
- \\ +
----- +
-{{ :iorfb_rsh_th_ar.png?300}} +
-**35. Create RSh_Th_AR planar angle:** +
-  - Define **Resulting Signal** Name: RSh_Th_AR +
-  - Calculate a **4 point angle** between the following targets: +
-    - TARGET::PROCESSED::RCAJ +
-    - TARGET::PROCESSED::LCAJ +
-    - LANDMARK::ORIGINAL::RTA_OR +
-    - LANDMARK::ORIGINAL::RTA_ML +
-    * **Angle Direction:** Left Hand Rule +
-    * **3D Space:** Always 0 to 180 degrees +
-    * **Projected onto Plane:** XZ +
-    * **Note: The reference segment will need to be changed to RTA within the text option** +
- \\  +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
-**36. Create LSh_Th_AR planar angle:** +
-  * When defining the left signal, use same definitions **except** set: +
-    * **Angle Direction:** Right Hand Rule +
----- +
-==== Translation ===== +
-Below defines the translation of the shoulder targets (LCAJ/RCAJ) in the trunk coordinate system +
-=== Shoulder Translation Definitions === +
-{{ :IORFull RA Tho Transl.png?300}} +
-**37. Define RA_Tho_Transl:** +
-  - Open the **Compute Model Based** dialog +
-  - Select **TARGET_PATH** from drop down list +
-    * **Date Name:** RA_Tho_Transl +
-    * **Target:** RCAJ +
-    * **Reference Segment:** Thorax/Ab +
-    * **Resolution Coordinate System:** Thorax/Ab +
-**38. Define LA_Tho_Transl:** +
-  * When defining the left signal, use the same definitions **except** set: +
-    * **Target:** LCAJ +
-==== Joint Angles ==== +
-The Tho_Pel and Tho_Lab angles are described here, while the lower extremity joint angles were created based on the  +
-segment coordinate systems described here +
----- +
-=== Joint Angle Definitions === +
-{{ :IORFull RTA Pel Angle.png?300}} +
-**39. Define the RTho_Pel_Angle:** +
-  - Open the **Compute Model Based** dialog +
-  - Select **JOINT_ANGLE** from drop down list +
-    * **Data Name:** RTho_Pel_Angle +
-    * **Segment:** Thorax/Ab +
-    * **Reference Segment:** Pelvis +
-    * **Cardan Sequence:** Z-X-Y +
-  - **Use Negative:** +
-    * **X:** TRUE **Y:** FALSE **Z:** TRUE +
- \\ +
- \\  +
- \\ +
- \\ +
- \\ +
- \\ +
- \\  +
- \\ +
----- +
-**40. Define LTho_Pel_Angle:** +
-  * When defining the left signal, use same definitions **except** set: +
-    * **Use Negative** +
-      * **X:** FALSE **Y:** TRUE **Z:** TRUE +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
----- +
-{{ :IORFull RTA LAB Angle.png?300}} +
-**41. Define the RTho_Lab_Angle:** +
-  - Open the **Compute Model Based** dialog +
-  - Select **JOINT_ANGLE** from the drop down list +
-    * **Data Name:** RTho_Lab_Angle +
-    * **Segment:** RThorax/Ab +
-    * **Reference Segment:** VLab +
-    * **Carden Sequence:** Z-X-Y +
-  - **Use Negative:** +
-    * **X:** TRUE **Y:** FALSE **Z:** TRUE +
- \\ +
- \\ +
- \\ +
- \\  +
----- +
-**42. Define LTho_Lab_Angle:** +
-  * When defining the left signal, use same definitions **except** set: +
-    * **Use Negative:** +
-      * **X:** FALSE **Y:** TRUE **Z:** TRUE +
- \\ +
- \\ +
- \\ +
- \\ +
----- +
-{{ :IORFull RHip Angle.png?300}} +
-**43. Define the RHip_Angle:** +
-  - Open the **Compute Model Based** dialog +
-  - Select **JOINT_ANGLE** from drop down list +
-    * **Date Name:** RHip_Angle +
-    * **Segment:** Right Thigh +
-    * **Reference Segment:** Pelvis  +
-    * **Carden Sequence:** Z-X-Y +
-  - **Use Negative:** +
-    - **X:** FALSE **Y:** FALSE **Z:** FALSE +
-**44. Define LHip_Angle:** +
-  * When defining the left signal, use same definitions **except** set: +
-    * **Segment:** Left Thigh +
-    * **Use Negative:** +
-      * **X:** TRUE **Y:** TRUE **Z:** FALSE +
- \\ +
- \\ +
- \\ +
- \\ +
----- +
-{{ :IORFull RKnee Angle.png?300}} +
-**45. Define the RKnee_Angle:** +
-  - Open the **Compute Model Based** dialog +
-  - Select **JOINT_ANGLE** from drop down list +
-    * **Data Name:** RKnee_Angle +
-    * **Segment:** Right Shank +
-    * **Reference Segment:** Right Thigh +
-    * **Cardan Sequence:** Z-X-Y +
-  - **Use Negative:** +
-    * **X:** FALSE **Y:** FALSE **Z:** TRUE +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
----- +
-**46. Define LKnee_Angle:** +
-  * When defining the left signal, use same definitions **except** set: +
-    * **Segment:** Left Shank +
-    * **Reference Segment:** Left Thigh  +
-      * **Use Negative:** +
-        * **X:** TRUE **Y:** TRUE **Z:** TRUE +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
----- +
-{{ :IORFull RAnkle Angle.png?300}} +
-**47. Define the RKnee_Angle:** +
-  - Open the **Compute Model Based** dialog +
-  - Select **JOINT_ANGLE** from drop down list +
-    * **Data Name:** RAnkle_Angle +
-    * **Segment:** Right Virtual Foot +
-    * **Reference Segment:** Right Shank +
-    * **Cardan Sequence:** Z-X-Y +
-  - **Use Negative:** +
-    * **X:** FALSE **Y:** FALSE **Z:** FALSE +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
- \\ +
----- +
-**48. Define LAnkle_Angle:** +
-  * When defining the left signal, use the same definitions **except** set: +
-    * **Segment:** Left Virtual Foot +
-    * **Reference Segment:** Left Shank +
-    * **Use Negative:** +
-      * **X:** TRUE **Y:** TRUE **Z:** FALSE +
-===== IOR Multi-Segment Foot Model ===== +
-detailed tutorial focusing on the [[visual3d:tutorials:modeling:ior_foot_model|IOR Multi-Segment Foot Model]].+
  
  
  
  
visual3d/tutorials/modeling/ior_gait_full_body_model.1732725357.txt.gz · Last modified: 2024/11/27 16:35 by wikisysop