DIPLOMAT API
DIPLOMAT includes the following python interfaces and plugins below.
Core Functions
Python functions that are equivalents for DIPLOMAT’s command line interface.
Retrieve and print all currently installed and available predictor plugins that can be used with deeplabcut to the console... |
|
|
Gets the available/modifiable settings for a specified predictor plugin. |
|
Run the tests for a predictor plugin. |
List all frontends currently included with this version of DIPLOMAT. |
|
List frontends that have successfully loaded, and list their supported functions. |
|
|
Split a video into even length segments. |
|
Run DIPLOMAT tracking on videos and/or frame stores. |
|
Run diplomat in interactive tracking mode on the specified config and videos or frame stores. |
|
Run diplomat in a non-interactive tracking mode on the specified config and videos or frame stores. |
|
Have diplomat annotate, or label a video given it has already been tracked. |
|
Make modifications to DIPLOMAT produced tracking results created for a video using a limited version of the interactive labeling UI. |
|
Run DIPLOMAT based on a passed yaml run script. |
|
Convert DIPLOMAT produced tracking results created for a video from the software specific format to a CSV file for inspection and analysis. |
|
Open diplomat's interactive UI from a .dipui file. |
Predictors
A list of the Predictor plugins included with DIPLOMAT by default.
Predictors predict the exact locations of objects given probabilistic model outputs.
A predictor that applies a collection of frame passes to the frames dumped by deeplabcut, and then predicts poses by selecting maximums. Contains a collection of useful prediction algorithms which can be listed by calling “get_predictor_settings” on this Predictor. This version applies passes in segments, and then stitches those segments together. |
|
A predictor that applies a collection of frame passes to the frames dumped by deeplabcut, and then predicts poses by selecting maximums. Contains a collection of useful prediction algorithms which can be listed by calling “get_predictor_settings” on this Predictor. |
|
A predictor that applies the frame pass engine to frames in order to predict poses. This version includes an additional GUI for previewing and modifying results before saving them. |
|
Identical to |
|
Identical to |
|
Dummy predictor for DIPLOMAT. Predicts the point from the probability frames simply by selecting the max probability in each frame. |
|
Exports probability maps to a binary format that can be passed back into DeepLabCut again to perform frame predictions later. This allows for a video to be run through the neural network (expensive) on a headless server or supercomputer, and then run through a predictor with gui feedback on a laptop or somewhere else. |
|
The supervised (aka interactive) version of the |
Frame Passes
A list of the FramePass plugins included by default
with DIPLOMAT. Some Predictor plugins use frame passes to perform
pose prediction, including the FramePassEngine and
SegmentedFramePassEngine based predictors.
Runs across the video and determines the optimal value for the standard deviation for the 2D gaussian transition function used in |
|
Breaks up each frame and separates it into a fixed number of frames, where each frame contains typically a single peak. |
|
An implementation of the Multi-Individual Tracking Viterbi algorithm. Runs a viterbi-like algorithm across the frames to determine the maximum scoring paths per individual, assuming an individuals can’t take a paths that would have been more likely for other individuals to have taken. |
|
Computes optimal skeletal link distances and then constructs a skeleton to be used by |
|
Scans source data frames for clustering errors that split bodies into positions not viable under skeletal constraints. When a split body is encountered, a new clustering is created by choosing the most probable positions in the original (unclustered) frame data relative to the skeleton’s distance frequencies. |
|
Scores frames by peak separation, and then selects a single frame to remain clustered (with peaks separated). The rest of the frames are restored, and |
Processing Module
This module defines the abstract base class for predictor plugins, and additional data structures, classes, and functions used for processing network outputs into body part pose predictions. |
Utilities
This module includes general utility classes and functions used extensively in diplomat. |
Frontends
A list of frontends that come included with DIPLOMAT. Frontends enable DIPLOMAT to run off of model results produced by a specific tracking software package and project.
The DEEPLABCUT frontend for DIPLOMAT. Contains functions for running DIPLOMAT on DEEPLABCUT projects. |
|
The SLEAP frontend for DIPLOMAT. Contains functions for running DIPLOMAT on SLEAP projects. |
|
The CSV frontend for DIPLOMAT. Contains functions for running some DIPLOMAT operations on csv trajectory files. Supports video creation, and tweak UI commands. |
WX GUI Components
A set of GUI controls and dialogs that come with DIPLOMAT. |