Documentation Site Map Main Page Reference List Motion Capture Visual3D Overview Visual3D Installation License Activation Getting Started Visual3D Documentation Overview Pipeline Commands Reference Expressions Overview CalTester Mode Overview List of Tutorials Visual3D Examples Overview Troubleshooting Sift Sift Overview Installation Getting Started Sift Documentation Overview Knowledge Discovery for Biomechanical Data Tutorial Overview Troubleshooting Inspect3D Inspect3D Overview Inspect3D Installation Overview Inspect3D Getting Started Overview Inspect3D Documentation Overview Knowledge Discovery in Inspect3D Inspect3D Tutorials Overview Troubleshooting DSX Suite DSX Overview DSX Definitions DSX Suite Installation DSX Tutorials DSX Release Notes xManager Overview PlanDSX Overview Surface3D Overview Orient3D Overview CalibrateDSX Overview Locate3D Overview X4D Overview
This is an old revision of the document!
v2023.08.08]]. earlier versions will not have the build cmz feature. after verifying that you have the correct version of inspect3d, download the following two zip files. - [[https://github.com/drivelineresearch/openbiomechanics|openbiomechanics project: driveline baseball data]] - [[https://www.has-motion.com/download/katie/driveline_cmotionfiles.zip|c-motion specific files]] please note, these downloads contain a large amount of data. building cmzs is a slow process, so if you want to speed it up to follow along with building cmz portion of this tutorial cut the number of datasets under openbiomechanics-main down to 3-5 subjects. if you want to skip the build cmz step of this tutorial and focus on the metadata applications, you can: * download [[https://www.has-motion.com/download/examples/inspect3d/i3d_tutorial_obp_refine_queries.zip|this]] pre-built cmz workspace and skip to [[#refining_hitting_data|refining hitting data]] * skip to the [[#build_your_own_metadata_file|build your own metadata file]] example. for more technical information about loading metadata, see: [[inspect3d:documentation:knowledge_discovery:metadata|metadata documentation]] ====== build cmzs for hitting data ====== hittingmeta.png in the build cmz dialog: - **set the path to:** c:\...\openbiomechanics-main\baseball_hitting\data\c3d - **set the metadata file to :** c:\...\openbiomechanics-main\baseball_hitting\data\metadata.csv - **set the mdh file to:** c:\...\openbiomechanics-main\baseball_hitting\code\v3d\model\hitting_v1_model_hybrid.mdh - add the following scripts and ensure they are in the correct order: - c:\...\cmotion files\filter.v3s - c:\...\cmotion files\events.v3s - c:\...\openbiomechanics-main\baseball_hitting\code\v3d\cmo.v3s - click **create cmzs** - a metadata dialog box will appear after clicking create cmzs. make the following changes in this box: - height units: in - weight units: lb - session_swing: dynamic trial identifier - user: static trial identifier - check "subject specific" next to highest_playing_level, hitter_side, bat weight/length, and click "apply". - cmz files may take a while to build. check the status bar in the bottom left hand corner of the interface for the build status. after the files are built, check that the library path dialog is set correctly and hit "load" in the load library dialog. ===== refining hitting data ===== from here on it is assumed that you either have: a) built cmzs from scratch using the hitting data set, or b) downloaded the pre-made cmzs linked above. the zip file openbiomechanics-main has a metadata file for the hitting data set which you can view at your convenience. this metadata file has a number of categories including player age, bat weight, hitting side etc. let's say we want to query this data set, but we **only** want data from subjects that are under age 20. we start by loading library with the hitting data set, navigating to the query builder dialog, and opening the auto-populate dialog. ensure that "baseball" is checked. find the "refine using signal" checkbox and click "add". then you can enter your query refinements. autobuilder_hit.png when refining queries it can be helpful to have the metadata file open, so that you can see the values it contains. note that in this case, accessing athlete_age has been set as a global metric, and you will not be able to find the meta folder unless global value is checked. the result of this procedure is that data is queried only if it meets this refinement category, and the refinement name will be applied as a suffix to the end of the signal name. ====== build your own metadata file ====== let's say you have three subjects worth of data where each subject walks at four different speeds and has a different weight. in this example let us say we want to include metadata on the subject's walking speed and weight. to create a .csv file for this metadata, start by creating a row of headers. the minimum requirements for a metadata file include the static file name and dynamic file name. after that, we can add the other parameters we are interested in. in the example below, we can see that there are four headers (static_model, dynamic_file, walking_speed and subject_mass). metattut1.png here you can edit the description fields and subject specific fields. after you are satisfied with the fields, click "apply" to build cmzs and load the library. ===== using metadata to refine queries ===== once your data is loaded it can be queried. this example shows how you can use metadata to refine queries. in this instance, we have data where three subjects walk at four different speeds. the subjects also have their weight recorded. if you navigate from the query builder dialog to the auto-populate menu, there is an option called "refine using signal". click to enable this checkbox, and then press "add". in the image below, i have loaded a pre-built auto-settings file, but also have the signal refinement dialog open. qbuilder.png since i want to refine my data by walking speed in this example, i name the refinement "3.0", choose the data under metric>meta>walking_speed>x and indicate that the value must be "equal to" 3.0. i can then save my refinements as an .xml file which can be loaded at any time if i want to re-query my library. press save and then create and close the auto-populate window. back in the query builder you should see queries that reflect the refinements you just made. autopopmenu.png ===== visualizing refined queries ===== in this example i have imported the x, y and z components of the asis marker trajectories for the subjects walking at four different speeds. we can now used the refined queries to visualize different relationships between speed and subject kinematics, as seen in the example below: asisy.jpg in this example we can see the how the trajectory for the asis markers changes as walking speed changes for subject 1. ====== further reading ====== in this tutorial, we reviewed how to refine data queries using metadata from openbiomechanics open source dataset. we also reviewed how to generate a metadata file from scratch and use it to refine data queries. if you want to review another example of building cmzs with openbiomechanics data, visit the [[inspect3d:tutorials:build_cmzs|building cmz tutorial]]. }}}}}}}}}}