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
visual3d:documentation:pipeline:event_commands:event_minimum [2024/07/17 15:45] – created sgrangervisual3d:documentation:pipeline:event_commands:event_minimum [2025/04/23 17:01] (current) – [Event Minimum] 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:+  * Dropdowns for signal type, label, and folder. 
 +  * Input boxes for frame window and event filtering. 
 +  * Offset and threshold parameters for fine-tuning.
  
-\\+====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 
 +  * **Defined Events:** RHS + RHS
  
 +|{{: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=8
 +! /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.
 +
 +===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>
  
 ---- ----
 +
 +====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 ===== ===== Version 4 =====
visual3d/documentation/pipeline/event_commands/event_minimum.txt · Last modified: 2025/04/23 17:01 by wikisysop