====== Event Processing ====== =====Ojectives===== The objective of this tutorial is **to provide an overview of event processing in Visual3D.** Most event processing functionality is available through the **[[visual3d:tutorials:pipeline:command_pipeline|Command Pipeline]]**, so it is advisable to start with that tutorial. Movement data is often collected for more time that is required for the analysis. This is often done to minimize the effects of filtering at the endpoints. Sometimes it is because more than one cycle can be collected at a time or to ensure that the entire cycle is collected. Sometimes it is because there are long periods of meaningless activity between epochs. Regardless of the reasons for collecting extra data, it should not be necessary to analyze all of the data. The interval of interest must be extracted from the trial. The user must be able to define a time frame of interest. Most often the region of interest is defined by specific events, such as heel strike or toe off. This can be accomplished by editing the data file or by entering the start and end frame. This process is extremely tedious and in many circumstances can be automated. An **Event** is simply an occurrence of interest that correlates to a motion capture frame, i.e. to a particular time point within a movement. The key events for gait studies (e.g., heel strike, toe-off) are now so well standardized that Visual3D can detect and mark them automatically . For other applications, you can define your own events, either manually (using the mouse to double-click on significant points on any graph) or computationally. ===== Event Syntax ===== Every event has a name, called the event label, so you can refer to it in other contexts, e.g., you can conduct analyses and create reports which are constrained to the interval between two chosen events. In Visual3D, it is perfectly OK to have multiple occurrences of a given event (e.g., two separate occurrences of right heel strike and toe-off, detected by separate force platforms) in a single movement trial. Events appear on all signal graphs as short vertical-line markers. Positioning the mouse pointer over an event marker (without clicking) displays the event label and other details, as shown in the following illustration.\\ {{:EventGraphExample.gif}}\\ ===== Multiple Occurrences of an Event ===== An event is a time of interest that corresponds to a motion capture frame. Visual3D analyzes multiple movement cycles within and across trials. Visual3D automatically determines common events related to gait analysis such as: heel strike, mid-stance, and foot-off during gait. Events can also be entered manually or calculated from any signals, including those generated by the program, such as inverse dynamics. Additionally, the plug-in architecture supports the custom determination of events. ===== Preparation ===== - Open the file [[https://www.has-motion.com/download/examples/Tutorial2.cmo|Tutorial2.cmo]] - Click on the **Signal and Event Processing** Tab to visualize the animation of the model based on the movement data and the model that was applied to it. If the animation doesn’t appear in the 3D Animation viewer, check the active file combo box on the toolbar. It should read ’Walking Trial 1.c3d’ rather than ALL-FILES - Select **Graph X,Y,and Z** and **New Graph** to graph all 3 components of one of the Ground Reaction force signals in the data tree.\\ {{:Tutorial6_1.jpg}}\\ ===== Creating an Event Manually ===== - Select the graph of the Z-component of the Ground Reaction Force signal by Left clicking on the graph. You will see the graph is now framed.{{:tutorial6_2.jpg}}\\ - To create the event, double click on the Fz force signal at the frame that the signal rises above zero.\\ - Enter the name **RON** into the popup dialog box. **RON** is a typical name used in Visual3D to indicate that the Right has contacted a force platform. **In principle** the event can be assigned any name, but when Visual3D computes Heel Strike and Toe Off automatically, the events are labeled ON and OFF.\\{{:tutorial6_3.jpg}}\\ - An event labeled **RON** has been added to the Event_Label data tree. ===== Highlight Event Label ===== - To highlight this event (actually all occurrences of this event), select the RON signal with a Right Mouse Button click and select **Highlight Event on Graphs.** The Frames corresponding to RON will be highlighted in yellow on all signals in each graph.\\ {{:tutorial6_4.jpg}}\\ ===== Editing an Event Label ===== Events can be edited: - You can modify the frame number for the event\\ - Copy the event\\ - Rename the event\\ To edit the event labels select the **Edit Events** Icon {{:editEventsButton.jpg}} on the Visual3D toolbar. The following dialog should appear.\\ {{:tutorial6_5.jpg}}\\ For example, to create an event 10 frames before the **RON** event. - Highlight the RON Event in the list box\\ - Select **Copy Label** in the dialog\\ - Fill in the edit boxes as below\\ {{:tutorial6_6.jpg}}\\ - A new event will appear in the dialog that is 10 frames before the RON event ===== Saving the Event Labels ===== Events don't explicitly get saved. When a file is saved as either a CMZ file or a C3D file, the Events simply go with the file.