User Tools

Site Tools


visual3d:documentation:pipeline:expressions:signal_functions

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:documentation:pipeline:expressions:signal_functions [2024/10/30 14:11] – [Second_Derivative] wikisysopvisual3d:documentation:pipeline:expressions:signal_functions [2024/11/15 19:27] (current) – [Point_Tracked_By_3Points] wikisysop
Line 81: Line 81:
 </code> </code>
 ==== First_Derivative ==== ==== First_Derivative ====
 +[[visual3d:documentation:pipeline:signal_commands:second_derivative#first_derivative]]
 ==== Second_Derivative ==== ==== Second_Derivative ====
 [[visual3d:documentation:pipeline:signal_commands:second_derivative#second_derivative]] [[visual3d:documentation:pipeline:signal_commands:second_derivative#second_derivative]]
Line 236: Line 236:
 </code> </code>
  
 +==== Point_Tracked_By_3Points ====
 +
 +**Point_Tracked_By_3Points(Point1, Vertex1, Vertex2, Vertex3)**
 +
 +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's implementation, collide with this objective.\\
 +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, using only the marker data will result in faster processing and smaller cmz files.**\\
 +
 +Example: 
 +locate a point in the model relative to 3 markers\\
 +then track this point in the movement trial
 +
 +<code>
 +Evaluate_Expression
 +/EXPRESSION=Point_Tracked_By_3Points(Point_Relative_To_3Points(MODEL::TARGET::FaceBot, MODEL::TARGET::Shaft4, MODEL::TARGET::Shaft5, MODEL::TARGET::Shaft6),
 + TARGET::ORIGINAL::Shaft4, TARGET::ORIGINAL::Shaft5, TARGET::ORIGINAL::Shaft6)
 +/RESULT_TYPES=DERIVED
 +/RESULT_FOLDERS=CLUBFACE
 +/RESULT_NAME=FaceBot
 +;
 +</code>
  
 ==== Snip ==== ==== Snip ====
visual3d/documentation/pipeline/expressions/signal_functions.1730297504.txt.gz · Last modified: 2024/10/30 14:11 by wikisysop