visual3d:documentation:pipeline:expressions:signal_functions
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
visual3d:documentation:pipeline:expressions:signal_functions [2024/09/05 17:53] – [Snip] wikisysop | visual3d:documentation:pipeline:expressions:signal_functions [2024/11/15 19:27] (current) – [Point_Tracked_By_3Points] wikisysop | ||
---|---|---|---|
Line 81: | Line 81: | ||
</ | </ | ||
==== First_Derivative ==== | ==== First_Derivative ==== | ||
+ | [[visual3d: | ||
==== Second_Derivative ==== | ==== Second_Derivative ==== | ||
+ | [[visual3d: | ||
==== Interpolate ==== | ==== Interpolate ==== | ||
Line 164: | Line 164: | ||
Indefinite_Integral(target:: | Indefinite_Integral(target:: | ||
Indefinite_Integral(target:: | Indefinite_Integral(target:: | ||
+ | </ | ||
+ | |||
+ | **Note that the event label requires the full signal path. i.e. event_label:: | ||
+ | |||
+ | ==== Cumulative_Sum ==== | ||
+ | |||
+ | **Cumulative_Sum(signal, | ||
+ | |||
+ | < | ||
+ | Example; | ||
+ | Cumulative_Sum(target:: | ||
+ | Cumulative_Sum(target:: | ||
+ | Cumulative_Sum(target:: | ||
+ | Cumulative_Sum(target:: | ||
+ | Cumulative_Sum(target:: | ||
</ | </ | ||
Line 221: | Line 236: | ||
</ | </ | ||
+ | ==== Point_Tracked_By_3Points ==== | ||
+ | |||
+ | **Point_Tracked_By_3Points(Point1, | ||
+ | |||
+ | This function was implemented to used DERIVED signals as tracking markers for a point relative to these tracking markers. | ||
+ | |||
+ | In other words, this is mimics a LANDMARK in which a point is tracked by three TARGETS or LANDMARKS in a model. | ||
+ | |||
+ | The difference is that a model isn't required. | ||
+ | |||
+ | Why would this be useful?\\ | ||
+ | The c3d format specifies that the lowest sampling rate is the POINT rate (i.e. the marker rate)\\ | ||
+ | Marker based tracking, however, often has possible sampling rates that are much higher than video rates used by markerless tracking.\\ | ||
+ | In a situation like baseball batting or golf many users record marker and markerless synchronously and merge the files.\\ | ||
+ | The markers are used to track the club or bat at a higher sampling rate than the video\\ | ||
+ | Then the c3d format, and Visual3D' | ||
+ | When merging the two files, Visual3D automatically downsamples the POINT rate to the ROTATION rate.\\ | ||
+ | To compensate (at least somewhat), Visual3D stores a copy of the POINT data as a DERIVED signal at the original POINT rate\\ | ||
+ | The data is preserved, but the model and model based items cannot refer to the DERIVED signals\\ | ||
+ | The workaround is to perform some calculations only on the DERIVED signals independent of any model.\\ | ||
+ | **As as aside, for some applications, | ||
+ | |||
+ | Example: | ||
+ | locate a point in the model relative to 3 markers\\ | ||
+ | then track this point in the movement trial | ||
+ | |||
+ | < | ||
+ | Evaluate_Expression | ||
+ | / | ||
+ | | ||
+ | / | ||
+ | / | ||
+ | / | ||
+ | ; | ||
+ | </ | ||
==== Snip ==== | ==== Snip ==== | ||
Line 242: | Line 292: | ||
=== Example === | === Example === | ||
- | This example | + | Example 1 demonstrates how the Snip expression can be used to extract the last 3 frames of data from a metric signal. |
< | < | ||
Line 279: | Line 329: | ||
; | ; | ||
</ | </ | ||
+ | |||
+ | Example 2 demonstrates how the Snip expression in conjunction with spline, and several other functions | ||
< | < |
visual3d/documentation/pipeline/expressions/signal_functions.1725558801.txt.gz · Last modified: 2024/09/05 17:53 by wikisysop