User Tools

Site Tools


visual3d:documentation:pipeline:event_commands:event_minimum

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:event_commands:event_minimum [2024/07/17 15:22] sgrangervisual3d:documentation:pipeline:event_commands:event_minimum [2025/04/29 19:00] (current) – [Example 1] wikisysop
Line 1: Line 1:
 ====== Event Minimum ====== ====== Event Minimum ======
  
-\\ +=====Overview=====
-**Specify an Event Label(s) at the specified local minima of a signal.**+
  
-**If the global minimum is neededsee the [[Visual3D:Documentation:Pipeline:Event_Commands:Event_Global_Minimum|Event_Global_Minimum]] command\\ +The 'Event_Minimum' command identifies the minimum value of a signal within a defined frame windowand creates an event at that frame. 
-**\\ +  * Unlike Event Global Minimum, which finds the absolute lowest point over a trial or event phase, 'Event_Minimum' looks within a sliding frame window, allowing for detection of multiple local minima across repeated movements. 
-To review the difference between local and global minimum values please see [[Visual3D:Documentation:Pipeline:General_Information:Global_vs_Loca_Max_and_Min|here]].+  The target signal must already exist and be accessible via its type, label, and folder. 
 +  To review the difference between local and global minimum values please see [[Visual3D:Documentation:Pipeline:General_Information:Global_vs_Loca_Max_and_Min|here]]
 +  * Other options within the command such as **Exclude Event**, and **Select Subsequence** are explained in detail on the [[Visual3D:Documentation:Pipeline:Event_Commands:Event_Global_Minimum#Examples|Event_Global_Minimum]] page. 
 +  * If /THRESHOLD is empty, all local minimum are identified. If it has a value or expression, only local minimum that are less than the threshold are identified.
  
-|**Event_Minimum**\\ \\ /RESULT_EVENT_NAME=EVENT_MIN\\ \\ /SIGNAL_TYPES=TARGET\\ \\ /SIGNAL_FOLDER=ORIGINAL\\ \\ /SIGNAL_NAMES=LFT2\\ \\ /SIGNAL_COMPONENTS=Z\\ \\ /FRAME_OFFSET=0\\ \\ /TIME_OFFSET=\\ \\ /EVENT_SEQUENCE=\\ \\ /EXCLUDE_EVENTS=\\ \\ /EVENT_SEQUENCE_INSTANCE=0\\ \\ /EVENT_SUBSEQUENCE=\\ \\ /SUBSEQUENCE_EXCLUDE_EVENTS=\\ \\ /EVENT_SUBSEQUENCE_INSTANCE=0\\ \\ /EVENT_INSTANCE=0\\ \\ /FRAME_WINDOW=8\\ \\ /THRESHOLD=0.14\\ \\ **;**|{{:EventMinimumDlg5.jpg}}| 
  
-\\ +=====Pipeline Command===== 
-Other options within the command such as **Exclude Event**, and **Select Subsequence** are explained in detail on the [[Visual3D:Documentation:Pipeline:Event_Commands:Event_Global_Minimum#Examples|Event_Global_Minimum]] page.+The command below is as seen on the Visual3D application, it has many parameters as there are many options to manipulate this command.
  
-If /Threshold is empty, all local minimum are identified.+<code> 
 +Event_Minimum 
 +/RESULT_EVENT_NAME= 
 +! /SIGNAL_TYPES= 
 +! /SIGNAL_FOLDER=ORIGINAL 
 +! /SIGNAL_NAMES= 
 +! /SIGNAL_COMPONENTS= 
 +! /FRAME_OFFSET=0 
 +! /TIME_OFFSET= 
 +! /EVENT_SEQUENCE= 
 +! /EXCLUDE_EVENTS= 
 +! /EVENT_SEQUENCE_INSTANCE=0 
 +! /EVENT_SUBSEQUENCE= 
 +! /SUBSEQUENCE_EXCLUDE_EVENTS= 
 +! /EVENT_SUBSEQUENCE_INSTANCE=0 
 +! /EVENT_INSTANCE=0 
 +! /FRAME_WINDOW=8 
 +! /THRESHOLD= 
 +
 +</code>
  
-If /Threshold has a value or expression, only local minimum that are less than the threshold are identified.+=====Command Parameters=====
  
-Other options within the command such as **Exclude Event**, and **Select Subsequence** are explained in detail on the [[Visual3D:Documentation:Pipeline:Event_Commands:Event_Global_Minimum#Examples|Event_Global_Minimum]] page.+The following table shows the command parameters and descriptions.
  
 +|**Parameter**                    |**Description**|
 +|**/RESULT_EVENT_NAME=**          | Name of the new event created at each local minimum. |
 +|**!/SIGNAL_TYPES=**              | Type of signal (e.g., `LINK_MODEL_BASED`, `ANALOG`). |
 +|**!/SIGNAL_FOLDER=**             | Folder where the signal is stored, such as 'ORIGINAL' or 'PROCESSED'.|
 +|**!/SIGNAL_NAMES=**              | Name of the signal to analyze (e.g., Left_Knee_Angle`). |
 +|**!/SIGNAL_COMPONENTS=**         | Component(s) of the signal (e.g., `Z` or vector index). |
 +|**!/FRAME_OFFSET=**              | Shifts the resulting event forward or backward in time (in frames). |
 +|**!/TIME_OFFSET=**               | Time-based offset (in seconds). |
 +|**!/EVENT_SEQUENCE=**            | Sequence of events to define the search range (e.g., `LHS,LTO`). |
 +|**!/EXCLUDE_EVENTS=**            | Exclude these events from forming valid event pairs. |
 +|**!/EVENT_SEQUENCE_INSTANCE=**   | Specific instance of the event sequence to analyze (0 = all). |
 +|**!/EVENT_SUBSEQUENCE=**         | Optional inner sequence used to narrow the search window. |
 +|**!/SUBSEQUENCE_EXCLUDE_EVENTS=**| Events that invalidate a subsequence. |
 +|**!/EVENT_SUBSEQUENCE_INSTANCE=**| Index of the subsequence to analyze (0 = all). |
 +|**!/EVENT_INSTANCE=**            | Controls how many minima are found per window (0 = all, 1 = first, -1 = last). |
 +|**!/FRAME_WINDOW=**              | Size of the frame window to search around each point (must be an odd number). |
 +|**!/THRESHOLD=**                 | Minimum value required to qualify as a valid minimum.|
  
-----+=====Dialog===== 
 +This command can be used via text or the dialog interface. To open the dialog, double-click the command or click the **Edit** button in the pipeline editor.
  
-=== Example - Dialog Box ===+{{:visual3d:documentation:pipeline:event_commands:event_min_dialog.png?400|}}
  
-To create the RKFlex_MinLocal event using the Event_Minimum dialog box:+  * **New Event Label Name**: Name of event created at the local minimum points. 
 +  * **Signal Component**: Which direction of the signal to analyze. 
 +  * **Frame Window**: Size of window to look for a local minimum around each frame. 
 +  * **Frame Offset**: Shift the resulting event by a number of frames. 
 +  * **Time Offset**: Move the event by a time shift (in seconds) 
 +  * **Threshold**Only create an event if the minimum exceeds this value. 
 +  * **Event Instance to Create**: Choose which minimum to create if there are multiple dipss in a search window 
 +  * **Event Sequence and Instance for Range**: Limits where to search for minima 
 +  * **Subsequence and Instance within Event Sequence**: Further limits search inside smaller phase within main event range.
  
-\\+=====Examples===== 
 +The following examples will go through the use of the Event_Minimum command in the Visual3D application.
  
 +====Example 1====
  
-|**1. Enter information into dialog box:**\\ \\ **Event_Name:** RKFlex_MinLocal\\ \\ **Select Frame Offset:**0\\ \\ **Signal Components:**X\\ \\ **Select an event sequence and Instance for the range:**\\ \\ **Event Sequence Instance:**0\\ \\ **Defined Events:**RHS + RHS\\ \\ Click **OK**  |  {{:Event_Min_RKFlex_MinLocal.jpg}}|+In the first example, we will create an event named RKFlex_MinLocal using the command. 
 +  This represents the local minima of the **Right Knee Angle** signal between RHS events.
  
-\\+**1.** Enter information into dialog box OR text editor: 
 +  * **Event_Name:** RKFlex_MinLocal 
 +  * **Select Frame Offset:** 0 
 +  * **Signal Components:** X 
 +  * **Event Sequence Instance:** 0 
 +  * Adjust frame window based on size of trials. (this example- 40 Frames)
  
 +|{{:visual3d:documentation:pipeline:event_commands:eventmin_ex1_dialog.png?400|}}|<code>
 +Event_Minimum
 +/RESULT_EVENT_NAME=RKFlex_MinLocal
 +/SIGNAL_TYPES= LINK_MODEL_BASED
 +! /SIGNAL_FOLDER=ORIGINAL
 +/SIGNAL_NAMES= Right Knee Angle
 +/SIGNAL_COMPONENTS=X
 +! /FRAME_OFFSET=0
 +! /TIME_OFFSET=
 +/EVENT_SEQUENCE=RHS+RHS
 +! /EXCLUDE_EVENTS=
 +! /EVENT_SEQUENCE_INSTANCE=0
 +! /EVENT_SUBSEQUENCE=
 +! /SUBSEQUENCE_EXCLUDE_EVENTS=
 +! /EVENT_SUBSEQUENCE_INSTANCE=0
 +! /EVENT_INSTANCE=0
 +! /FRAME_WINDOW=40
 +! /THRESHOLD=
 +;
 +</code>|
  
-|**2. Select desired signal:**\\ \\ Select **signal from data tree** Right_Knee_Angle\\ \\ Click **Import Selected Signals**   {{:Event_Min_RKFlex_MinLocal_Import.jpg}}|+**2.** Select desired signal: 
 +  * Select **signal from data tree** Right_Knee_Angle 
 +  * Click **Import Selected Signals**
  
-\\ +{{:Event_Min_RKFlex_MinLocal_Import.jpg?500}}
-**RKFlex_Min** will be created at the minimum value during the gait cycle within the specified frame window.\\ +
-\\ +
-Other options within the command such as **Exclude Event**, and **Select Subsequence** are explained in detail on the [[Visual3D:Documentation:Pipeline:Event_Commands:Event_Global_Maximum#Examples|Event_Global_Maximum]] page.+
  
 +
 +**RKFlex_Min** will be created at the minimum value during the gait cycle within the specified frame window:
 +
 +|{{:visual3d:documentation:pipeline:event_commands:eventmin_ex1_correctgrph.png?600|}}|
 +
 +
 +====Example 2====
 +
 +In this more complex example, we will delete the previously set RKFlex_MinLocal, instead we want to identify the minimum angle of the right knee ONLY during the swing phase AND only include minima that fall **below a functional threshold**, and extract the signal value at those minima.
 +
 +Commands:
 +  * Event_Delete - Remove any prior version of these minima to avoid duplication.
 +  * Event_Minimum - Find minima during swing (RTO to RHS)
 +  * Metric_Signal_Value_At_Event - Extract angle values at these minima for reporting.
 +
 +
 +<code>
 +Event_Delete
 +/EVENT_NAME= RKFlex_MinLocal
 +!/EVENT_SEQUENCE=
 +!/EXCLUDE_EVENTS=
 +!/EVENT_INSTANCE=
 +!/TIME=
 +;
 +</code>
 +
 +<code>
 +Event_Minimum
 +/RESULT_EVENT_NAME=RKFlex_MinLocal
 +/SIGNAL_TYPES=LINK_MODEL_BASED
 +/SIGNAL_FOLDER=ORIGINAL
 +/SIGNAL_NAMES=Right Knee Angle
 +/SIGNAL_COMPONENTS=X
 +/FRAME_OFFSET=0
 +/TIME_OFFSET=
 +/EVENT_SEQUENCE=RTO+RHS
 +/EXCLUDE_EVENTS=
 +/EVENT_SEQUENCE_INSTANCE=0
 +/EVENT_SUBSEQUENCE=
 +/SUBSEQUENCE_EXCLUDE_EVENTS=
 +/EVENT_SUBSEQUENCE_INSTANCE=0
 +/EVENT_INSTANCE=0
 +/FRAME_WINDOW=9
 +/THRESHOLD=-10
 +;
 +
 +<code>
 +Metric_Signal_Value_At_Event
 +/SIGNAL_FOLDER=ORIGINAL
 +/SIGNAL_LABEL=
 +/EVENT_NAME=RKFlex_MinLocal
 +/RESULT_METRIC_NAME=Knee_Min_Angle
 +;
 +</code>
  
 ---- ----
  
-===== Version 4 =====+=====Notes===== 
 + 
 +  * The `/FRAME_WINDOW=` must be an **odd number** (e.g., 7, 9, 11) to center the search correctly. 
 +  * The `/EVENT_INSTANCE=` lets you fine-tune whether you want **all minima**, or just the **first or last** in a range. 
 +  * Use a **threshold** to avoid selecting trivial dips or noise artifacts. 
 +  * To isolate **one minimum per step**, set `/EVENT_INSTANCE=1`. 
 + 
 + 
 +==== Version 4 ====
  
-|\\ \\ \\ <code>\\ Event_Minimum\\ /Signal_Types=The type of signal to be evaluated\\ /Signal_Names=The names of the signals to be evaluated\\ /Signal_Folder=The name of the signal folder\\ /Event_Name=The name to be given to the threshold event\\ /Select_X=(True or False)Use this component of the signal\\ /Select_Y=(True or False)Use this component of the signal\\ /Select_Z=(True or False)Use this component of the signal\\ /Frame_Window=The range of frames of data that must be below the minimum\\ /Start_At_Event=The search begins from the start event\\ /End_At_Event=The search ends at the end event\\ /Event_Instance=See below\\ ;\\ </code>  |  Dialog that pops up when pipeline selection is edited by double clicking with the left mouse button.\\ {{:MinMaxDlg.jpg}}  |+<code> 
 +Event_Minimum 
 +/Signal_Types=The type of signal to be evaluated 
 +/Signal_Names=The names of the signals to be evaluated 
 +/Signal_Folder=The name of the signal folder 
 +/Event_Name=The name to be given to the threshold event 
 +/Select_X=(True or False)Use this component of the signal 
 +/Select_Y=(True or False)Use this component of the signal 
 +/Select_Z=(True or False)Use this component of the signal 
 +/Frame_Window=The range of frames of data that must be below the minimum 
 +/Start_At_Event=The search begins from the start event 
 +/End_At_Event=The search ends at the end event 
 +/Event_Instance=See below 
 +; 
 +</code>  
 +Dialog that pops up when pipeline selection is edited by double clicking with the left mouse button.\\ {{:MinMaxDlg.jpg}}
  
 \\ \\
visual3d/documentation/pipeline/event_commands/event_minimum.1721229772.txt.gz · Last modified: 2024/07/17 15:22 by sgranger