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!
here]]]. ===== mathematics of curve registration ===== curves are registered by applying a time warping function, h(t), on the original curve, x(t). <code> x* (t) = x [h(t)] </code> the time warping function is unique to each curve and transforms the physical (typically clock) time to the system time. this requires a landmark for the whole system to be registered, by taking the mean location of a landmark across all curves. the time warping function then adjusts each individual curve so that the curve specific landmark happens at the same time through linear interpolation. the time warping ensures that the following equation is always satisfied. <code> h-1 [h(t)] = t </code> ===== registering curves in sift ===== located in the [[sift:application:explore_page|explore page]], curve registration allows you to easily register your curves, and view them just like any other group. you are able to register and signals by maximums, minimums, local maximums, local minimums and defined intermediate events, allowing for flexibility depending on your needs. to register a curve, in the explore page select a group, and the workspaces wanted, and select the **register** button. this will prompt a **[[sift:curve_registration:curve_registration_dialog|dialog]]** to come up allowing you to chose how you want to register the curve. ==== example 1: registering to local max/min ==== curvregknee.png in this example we selected the **kneeanglex** query to be registered. we will register the curves to a local maximum between 60 and 90, and a local minimum between 25 and 50. here we can see the difference between the original curves (left), and the registered curves (right). curvregknee2.jpg ==== example 2: registering to intermediate event ==== in this example we selected the **ankleanglex** query to be registered. we will register the curves to its event sequence lhs, rhs, lhs. **note**: event sequences must be defined in the query builder, and must have more than two events to be registered. here we can see the difference between the original curves (left), and the registered curves (right). curvregankle.jpg ===== exporting results ===== curve registration results can be exported as an image, or as text file containing all data points. to export an image of the plot, right click on it to show the context menu. in the context menu select export. a dialog will appear allowing you to choose which type of image you want it exported as, and what size. to export the data go to the sift_export_results.png **export results** tab on the tool bar to prompt the [[sift:export:export_results_dialog|export results dialog]]. change the export type to registered curves and export the results. you can either export the registered traces, the warping functions, the landmark mean locations, and the original landmarks for all traces. ====== references ====== [1] j. o. ramsay, xiaochun li, curve registration, journal of the royal statistical society series b: statistical methodology, volume 60, issue 2, july 1998, pages 351–363, https://doi.org/10.1111/1467-9868.00129 }}}}}}