The block diagram of the OpenNCC Frame system is as follows:

Locally, it can be divided into four layers from bottom to top:

  • Platform driver layer Provide driver support for AI inference acceleration on different hardware platforms and operating systems
  • GStreamer plug-in support layer Various inference frameworks and accelerators (such as OpenNCC native SDK) are encapsulated into plug-ins according to NNStreamer, and business supporting modules (such as statistics and tracking) are encapsulated into GStreamer standard plug-ins to provide a plug-in warehouse for flexible business scenarios
  • Media and inference pipeline layer According to the business strategy, the plug-in is combined into an inference pipeline to output events, AI results, and statistical information for the upper business
  • Business application and interaction layer Realize business interaction, cloud docking, and local report functions

OpenNCC Native SDK


OpenNCC Native SDK is an upgraded version of OpenNCC API 1.0. It provides cross-platform driver support for OpenNCC USB camera and OpenNCC SoM accelerator, manages and allocates reasoning engine resources, including but not limited to x86, Ubuntu, rk3568, Raspberry Pi, and NVIDIA. OpenNCC Native SDK has been encapsulated as a sub-plug-in of NNStreamer, which provides the underlying resource scheduling interface for the reasoning media pipeline. It is a proprietary development package of OpenNCC Frame supporting OpenNCC hardware products which are based on Intel MA2480 VPU.

OpenNCC Native SDK provides different working modes:


1. USB AI Acceleration Card(As Intel NCS) mode

* In this mode, the Host App obtains the video stream( local file, IPC, webcam, V4L2 Mipi CAM) from the outside, configures the preprocessing module according to the resolution and format of the input file of the reasoning model, sends the picture to the OpenNCC SoM through the OpenNCC Native SDK for reasoning, and returns the reasoning results. The reasoning supports asynchronous and synchronous modes. The reasoning pipeline on OpenNCC SoM is configured through OpenNCC model JSON.

* OpenNCC SoM can support up to 6-way reasoning pipeline configuration locally, and 2-way pipeline can run concurrently in real-time. Users can realize multi-level chain or multi-model concurrency of reasoning through intermediate processing of the Host App.

* Multiple accelerator cards are also supported. Users can expand the number of accelerator cards according to their computing power needs, and the SDK will dynamically allocate computing power.


2. UVC Web Camera with AI Acceleration Card(As Intel NCS) mode

* In this mode, OpenNCC is a combination of a USB camera and reasoning accelerate card. The HD and 4K sensors supported by OpenNCC are connected in the front. After completing the ISP on the VPU, it outputs the video stream to the upper computer as a standard UVC camera.

* After the upper computer obtains the video stream, it carries out preprocessing, configures the preprocessing module according to the resolution and format of the input file of the reasoning model, sends the picture to the OpenNCC SoM for reasoning through the OpenNCC Native SDK, and returns the reasoning result. The reasoning supports asynchronous and synchronous modes. The reasoning pipeline on OpenNCC SoM is configured through OpenNCC model JSON.


3. UVC AI Camera with AI Acceleration Card(As Intel NCS) mode

* In this mode, OpenNCC is a combination of a USB camera and reasoning speed card. The HD and 4K sensors supported by OpenNCC are connected in the front. After completing the ISP on the Vpu, it outputs the video stream to the upper computer as a standard UVC camera. * Support configuration, means, directly connects the video stream after ISP on the camera to the local reasoning pipeline of the camera, and output the reasoning results to the Host App. This mode avoids downloading pictures to the reasoning engine, reduces the processing delay and saves bandwidth. The reasoning...

Read more »