Table of Contents
Used Process
When you open a C3D file in Visual3D, you will notice the TARGET and ANALOG folders are created. The ORIGINAL folders contain the original data as it is written from your motion capture vendor.
The PROCESSED folder should contain your interpolated or filtered data. If you tell Visual3D to use the PROCESSED folders, Visual3D will use the processed signals for kinetic/kinematic calculations.
Setting up Visual3D
The three settings you must specify to use PROCESSED data are listed under Settings: - Use Processed Analogs for Ground Reaction Force Calculations - Use Processed Forces for Segment to Force Assignments - Use Processed Targets for Model/Segment/LinkModelBased items |
If the parameter is checked - Visual3D will use the PROCESSED folder - if the PROCESSED folder does not exist, Visual3D will use the ORIGINAL folder.
If the parameter is not checked - Visual3D will always use the ORIGINAL folder.
You can manually define these settings (as shown above), but you can also use pipeline commands to tell V3D to use the PROCESSED signals. If someone else may be using Visual3D on the same computer as you, it may be good practice to add the pipeline commands to the start of your pipeline.
Which signals will automatically use the PROCESSED folders?
Signals which are created in the following folders, will automatically be calculated using the original or processed signals based on these settings:
- FORCE::ORIGINAL
- COFP::ORIGINAL
- FREEMOMENT::ORIGINAL
Process Target Data
This parameter tells Visual3D to use the processed TARGET data for LINK_MODEL_BASED::ORIGINAL and KINETIC_KINEMATIC calculations.
NOTE: You can gap fill and filter your target data as long as the “final” data is in the PROCESSED folder.
Process Forces
This parameter just tells Visual3D to use the processed data when defining the frames for the force assignments.
If this is checked, Visual3D will check if the PROCESSED FORCE data is above the minimum force threshold and if the COFP data exists at that frame.
Since we don't recommend ever filtering your FORCE/COFP/FREEMOMENT folders (see below for more information on this), this parameter should be left as false (unchecked).
Process Analog Data
This parameter tells Visual3D to use the processed ANALOG data when creating the FORCE, COFP, and FREEMOMENT signals as well as for LINK_MODEL_BASED::ORIGINAL and KINETIC_KINEMATIC calculations.
Why filter the ANALOG vs Force Data
When you load a file into Visual3D, you will see the ANALOG::ORIGINAL folder. If your motion capture vendor writes the force platform parameters to the C3D file (most vendors do), you will also see the FORCE, COFP, and FREEMOMENT folders.
Visual3D calculates the FORCE, COFP, and FREEMOMENT data solely based on the analog signals, and the force platform parameters. The ANALOG signals are the force signals stored in the force platform coordinate system - and the force platform parameters contain the position and orientation of the force platforms relative to the motion capture system. So Visual3D uses this information to transform the ANALOG signals from the force platform coordinate system to LAB space.
So you have two choices:
(1) You can filter the ANALOG signals
(2) You can filter the FORCE, COFP, and FREEMOMENT signals
You would NOT want to filter the ANALOG, FORCE, COFP, and FREEMOMENT signals because the FORCE, COFP, and FREEMOMENT signals are calculated from the ANALOG signals, so you would be filtering your data twice!
If you choose to filter the FORCE, COFP, and FREEMOMENT signals, you want to filter all three folders (not just the FORCE folder), because otherwise you are only filtering some of your kinetic signals, which would not make much sense.
So, filter the ANALOG or FORCE/COFP/FREEMOMENT signals?
Unless you have a very good reason, you should filter the ANALOG signals.
WHY: When V3D creates the FORCE/COFP/FREEMOMENT signals, it removes any signal below the force platform threshold . Any signal in the FORCE::ORIGINAL folder below this value is set to zero, when the FORCE signal is set to zero, the COFP/FREEMOMENT signals are set to DATA_NOT_FOUND. This means that when the FORCE signal is filtered - the signal is smoothed at initial contact and the signal goes below zero (which doesn't make sense), and there is force data where there is no COFP/FREEMOMENT data. To account for this, force assignments are only created if there is COFP data at the start frame, however, this can cause issues later down the road. So unless you have a very good reason for filtering your FORCE/COFP/FREEMOMENT signals, it is recommended to stick to filtering your ANALOG signals.
Explanation (with images): | ||||||
When V3D creates the FORCE/COFP/FREEMOMENT signals, it removes any signal below the force platform threshold . Any signal in the FORCE::ORIGINAL folder below this value is set to zero, when the FORCE signal is set to zero, the COFP/FREEMOMENT signals are set to DATA_NOT_FOUND. The images to the right show the FORCE ORIGINAL (top) and COFP ORIGINAL (bottom). These signals are not filtered. You can see that everything prior to frame 221 is set to zero in the FORCE folder, and is set to NO DATA in the COFP folder. | | The images to the right show the FORCE PROCESSED (top) and COFP PROCESSED (bottom). Since the force signal was set to zero before/after contact, the filter smoothed the signal and it now goes below zero and starts prior to initial contact. Note there is data prior to frame 221. Since the COFP data is NO DATA before/after contact, the COFP data only exists starting at frame 221. This means that your force data and COFP data are out of sync (since you do not have data for both signals at all frames). This can cause issues down the road - so it's always recommended to filter the Analog signals! | |