AI Analysis
The AI Analysis action runs an analyzer registered in Settings → AI Analyzer with the analysis type you select. Once running, the results are written to variables continuously, so automation is built by combining them with Compare conditions. All analysis is performed on the controller; video is never sent to the cloud.
The settings and result variables of each analysis type are described per type in the AI Analysis appendix. This section covers the common usage.
Commands
A single analyzer can hold several analyses. Registering and starting them is done with the following commands.
- Add Analysis: Adds an analysis to the analyzer and binds the variables that receive its results.
- Clear All Analyses: Removes every analysis registered on that analyzer.
- Start Analysis and Stop Analysis: Shown for audio analyzers only; they start and stop audio capture and analysis.
Common Settings
| Setting | Description |
|---|---|
| Confidence (%) | Only detections at or above this value are used. Raising it keeps only certain results; lowering it misses fewer. The default depends on the model: 50 for object detection, 70 for face detection. |
| Detection area | Drag on the camera preview to limit the analyzed area. Without one, the whole frame is analyzed. |
| Select By | Decides which detection is written to the variables when several are found: Highest Confidence, By Confidence Index (0-based), Largest Size, or Closest From Ref. Point. Color tracking offers Largest, Closest, and By Index. |
| Reference Point | The reference coordinates used when Select By is set to the closest detection. |
Analysis Types
Twenty video analysis types and two audio analysis types are supported.
| Type | Description |
|---|---|
| Object Detection | Detects 80 object classes such as people and vehicles in real time. |
| Face Detection | Detects faces, including emotion recognition and age/gender estimation. |
| Face Recognition | Compares detected faces against enrolled faces to identify who they are. |
| Pose Estimation | Returns 17 body joint coordinates per person. |
| Hand Tracking | Returns 21 hand joint coordinates, including gesture recognition. |
| Action Recognition | Recognizes around 400 activity categories such as walking, running, and sitting. |
| Hand Gesture Recognition | Recognizes 25 hand gestures such as swipes and thumbs-up. |
| Color Tracking | Tracks objects of a specified color in real time. |
| Line Tracking | Provides the floor line's offset and angle for line-follower robots. |
| Line Crossing Counter | Counts people entering and exiting across a virtual line drawn on screen. |
| Fire Detection | Detects flames in real time. |
| QR / Barcode | Detects and decodes QR codes and multiple barcode formats. |
| OCR (Text Recognition) | Reads multilingual text, including Korean and English, in real time. |
| License Plate Recognition | Detects and reads vehicle license plates. Supports Korean and Latin plates. |
| Teachable Machine Classification | Uses image classification models trained with Google Teachable Machine. |
| Edge Impulse Classification / Object Detection / Anomaly Detection | Uses vision models trained with Edge Impulse, including normal/abnormal classification. |
| Custom Classification | Uses a classification model trained directly on the controller, without external services. |
| Custom Anomaly Detection | Learns only normal samples and detects deviations from them. No defect samples are required. |
| Sound Classification | Classifies microphone input into 521 categories such as speech, alarms, and glass breaking (audio). |
| Edge Impulse Classification (Audio) | Uses audio classification models trained with Edge Impulse. |
Results are continuously written to the variables bound to the output fields of the
AI Analysis action. Bind a digital variable such as Person Detected or a
numeric detection count, and combine it with a Compare Value condition.
Training Custom Models
Targets not covered by the built-in models can be trained in two ways. Teachable Machine and Edge Impulse models are trained in those external services and uploaded as model files. Custom Classification and Custom Anomaly Detection are trained directly on the controller, with sample collection and training driven by the AI Analysis action's Command field.
- Custom Classification commands: Add Sample, Delete Sample, Train, Class List, Class Count, Sample Count, Sample List, Delete Class, Delete All, plus the read commands Read State, State Match?, and Read All States.
- Custom Anomaly Detection commands: Add Good Sample, Delete Good Sample, Train, Good Sample Count, Good Sample List, Delete All, plus the read commands Read Score and Is Anomalous?.