PyDataProcess#

Module offering implementation of specialization classes to handle inputs/outputs and tasks involved in Ikomia workflows for concrete use cases. It consists of Python bindings from C++ Ikomia Core.

In addiction to workflow management, the system uses factory design pattern to allow integration of third-party plugins. To this end, when you want to add your own plugin, you have to implement (override) three factory classes derived from the following:

This module provides class specialization for several types of usual inputs/outputs. It also provides class specialization for common processing task. You will find below details about implementation of such specializations.

Plugins connection

CPluginProcessInterface

Abstract class defining the core structure of a plugin interface.

CTaskFactory

Abstract class defining the core structure of the task factory.

CWidgetFactory

Abstract class defining the core structure of the widget factory.

Input/Output management

CArrayIO

Define multi-dimensional array as input or output of a task.

CBlobMeasureIO

Define input or output for a task consuming or producing measures on blobs (ie connected components).

CDatasetIO

Virtual base classe to define task input or output containing deep learning dataset structure.

CDataStringIO

Define input or output for a task consuming or producing data as numeric values.

CGraphicsInput

Define task input containing graphics items.

CGraphicsOutput

Define task output containing graphics items.

CImageIO

Define task input or output for a task dedicated to image processing (2D or 3D).

CInstanceSegmentation

Store single instance segmentation information (class properties): class index, label, confidence, box, mask and color.

CInstanceSegmentationIO

Define input or output managing common information extracted by instance segmentation task.

CObjectKeypoints

Store single object keypoints information (class properties): label, confidence, box, color and points.

CKeypointLink

Store link information between two keypoints (class properties): starting point index, ending point index, label and color.

CKeypointsIO

Define input or output managing common information extracted by keypoints detection task.

NumericOutputType

Enum - List of a display types for numeric values

CNumericIO

Define input or output for a task consuming or producing data as numeric values.

CObjectMeasure

Store values of a given measure computed on a single blob of an image.

CObjectDetection

Store single object detection information (class properties): label, confidence, box and color.

CObjectDetectionIO

Define input or output managing common information extracted by object detection task.

CPathIO

Define input or output for a task to handle file or folder path.

CSemanticSegmentationIO

Define input or output managing common information extracted by semantic segmentation task.

CTextField

Store single text field information (class properties): label, text, confidence, polygon and color.

CTextIO

Define input or output managing common information extracted by OCR task.

CVideoIO

Define an input or output for a task dedicated to video management.

CWidgetOutput

Define a widget output for a task.

PlotType

Enum - List of plot types

Task management

C2dImageTask

Implement all basic features used in a task dedicated to 2D image processing.

C2dImageInteractiveTask

Add user interactions capability to a 2D image process task.

CClassificationTask

Base class for classification task in Computer Vision.

CDnnTrainTask

Internal use only.

CIkomiaRegistry

Algorithms registry of the Ikomia platform.

CInstanceSegmentationTask

Base class for instance segmentation task in Computer Vision.

CKeypointDetectionTask

Base class for keypoint detection task in Computer Vision.

CObjectDetectionTask

Base class for object detection task in Computer Vision.

CSemanticSegmentationTask

Base class for semantic segmentatio task in Computer Vision.

CTaskInfo

Manage metadata associated with a task.

CVideoTask

Add video specific features.

CVideoOFTask

Add optical flow specific features for methods based on OpenCV framework.

CVideoTrackingTask

Add specific features for tracking task.

CWorkflow

Workflow management of Computer Vision tasks.

Widget management

CWidgetFactory

Abstract class defining the core structure of the widget factory.