VisionWorks Toolkit Reference

December 18, 2015 | 1.2 Release

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
User Custom Node Tutorial

Detailed Description

This tutorial illustrates User Custom Nodes.

The Kernel Object API (Object: Kernel) allows you to create custom vision functions that are integrated in the VisionWorks framework and can then be invoked in graphs as a node. A node is an instance of a kernel with a set of parameter data objects.

This tutorial illustrates User Custom Nodes by implementing a User Custom Kernel that sorts an array of keypoints and by instantiating it as a User Custom Node in a graph. The purpose of this kernel is to sort an input array of keypoints in 2 possible modes:

In order to register a Custom User Kernel, the application must provide a set of callback functions:

With the callback functions available, the application can register a Custom Kernel by providing additional information such as the name of the kernel, its unique identifier, and the parameter properties.

In order to create User Custom Nodes as simply as standard nodes, a good practice is to create in addition a custom node factory function.

Modules

 1. Processing Callback Function
 This section illustrates the implementation of the kernel processing callback function.
 
 2. Input Validation Callback Function
 This section illustrates the implementation of the input validation callback function.
 
 3. Output Validation Callback Function
 This section illustrates the implementation of the output validation callback function.
 
 4. Kernel Registration
 This section illustrates the user custom kernel registration.
 
 5. User Custom Node Factory
 This section illustrates the implementation of the user custom node factory.
 
 6. Usage
 This section illustrates the usage of user custom nodes.
 
 7. CUDA Nodes
 This section describes the implementation of user custom nodes based on CUDA.