📖 API Reference

This section provides a categorized reference of SimBA’s modules and methods, grouped by their functionality such as feature extraction, plotting, transformation, and modeling.

📑 Find anything fast

Browse the Module Index — an alphabetical list of every SimBA module, and the quickest way to find where a class or function lives.

Or jump to the General Index (every class, function and term, A–Z), or use full-text search.

🔍 Blob tracking tools

Track animals in videos using background subtraction and blob detection. Extract geometric features (center, nose, tail, left/right points) from detected blob shapes without requiring pose-estimation data.

📦 Bounding-box tools

Detect animal interactions via overlapping bounding boxes.

See tutorial: Cue-light tutorial

🔁 Circular transformations

Statistical operations for circular data like head direction. Wraparound-aware, multi-animal capable, and based on body-part derived base angles.

🔧 Config reader

Parse SimBA config files and access project-specific metadata.

💡 Cue-light tools

Link animal behavior to cue-light on/off states.

See tutorial: Cue-light tutorial

🔧 Data processing tools

Transform classification, tracking, and image data.

📏 Feature extraction mixins

Core low-level feature methods used in SimBA’s default extraction pipelines.

📝 Feature extraction wrappers

Pre-configured “out-of-the-box” feature extraction modules for common pose-estimation schemas.

📐 Geometry transformations

Transform pose-estimated body-part coordinates into geometric shapes (bounding boxes, polygons, circles), and compute spatial relationships like distance and intersection.

🖼️ Image transformations

Slice frames and extract visual information from tracking data; compare image features across time.

🏷️ Labeling tools

SimBA tools for annotating behavioral events.

🤖 Model tools

Create, train, and manage behavior classifiers in SimBA.

⚠️ Outlier correction

Heuristic-based filtering of body-part tracking outliers.

🎨 Plotting and visualization tools

Visualize behavioral data and pose-tracking outputs.

📦 Pose-estimation import tools

Parse, load, and process pose-estimation data from common formats.

🗺️ ROI tools

Define and analyze regions-of-interest (ROIs) in relation to tracking data.

📊 Statistics transformations

Compute statistical features, drift, distances, and distribution comparisons in sliding or static time windows.

📥 Third-party label appenders

Append labels from external annotation tools to pose-estimation outputs.

🕐 Time-series transformations

Analyze time-series complexity using sliding window methods.

🔮 Unsupervised learning

Clustering and dimensionality reduction methods for behavioral analysis.

🖥️ User Interface (UI) tools

SimBA’s GUI components and window-based interaction logic.

⚙️ Utilities

Helper methods for logging, CLI execution, argument checks, warnings, and I/O.

📹 Video processing tools

Video processing tools using OpenCV and FFmpeg.

👁️ YOLO Methods

Methods for training YOLO models, creating training and validation datasets, and converting behavioral neuroscience-specific datasets to YOLO datasets.

Uses the Ultralytics package.