Sunplus Neural Network Framework Introduction

What

The SNNF(Sunplus Neural Network Framework) is a cross-platform input-output system related to neural network processing. It allows users to conveniently connect multiple models in series or parallel, and generate outputs based on application needs.

The primary goal is to facilitate users in developing and integrating neural network functionalities on the platform. Currently, we mainly support the comprehensive integration of NN on the C3V platform.

Additionally, we have integrated official DEMO examples from various mainstream AI application scenarios into the framework.

Furthermore, we provide customers with a plugin approach for adding customized models, striving to offer a simplified SOP (Standard Operating Procedure) to enable users to quickly get started and effortlessly deploy their desired models and application scenarios on the C3V platform.

Why

With the rapid development of artificial intelligence and machine learning technologies, neural networks have emerged as a crucial tool for tackling complex problems. However, during the development and deployment of NN applications, the involvement of multiple NN modules and their intricate data interactions and message passing, especially when these modules are stacked and used together, poses a significant challenge for non-expert users or beginners in verifying the correctness of results.

How

To simplify this process, lower the learning curve, and expedite NN application development, we have developed an NN framework. This framework aims to integrate all the key components required for NN functionality development and deployment, including but not limited to dataflow management, data processing, and model validation, providing users with a one-stop solution.

The main advantages of the SNNF are:

  1. Modular Management: The framework integrates current mainstream NN modules, allowing users to easily select and combine them to meet specific application requirements. Additionally, data interaction and message passing between modules are uniformly managed by the framework, significantly reducing the user's workload.

  2. User-Friendly Interfaces: We have designed intuitive and easy-to-use API interfaces for the SNNF, enabling users to quickly get started and build their own NN applications without delving into the underlying technical details. Furthermore, the framework provides extensive configuration options, allowing users to flexibly adjust model parameters to adapt to different application scenarios.

  3. Simplified Configuration: When NN detection requires several different models to cooperate or have a sequential order, we provide a simplified configuration method to serialize or parallelize different models according to needs and configure the output of results accordingly.

  4. Stacked Module Validation: For the special case of stacked module applications, the SNNF offers a comprehensive validation mechanism. Users can quickly check the correctness of data transfer between modules and the accuracy of final results using built-in validation tools. This not only improves development efficiency but also reduces the likelihood of errors.

  5. Performance Optimization: During the framework design process, we have given careful consideration to performance optimization. By optimizing algorithms, reducing data redundancy, and enhancing computational efficiency, we ensure that the SNNF maintains high performance and stability when running stacked module applications.

  6. Robust Debugging Support: To assist users in better understanding and debugging NN applications, the SNNF provides a series of powerful debugging tools. Users can view real-time charts such as dataflow diagrams, program runtime graphs, and performance comparison charts to quickly identify and resolve issues. Additionally, we offer local and remote log analysis systems, providing users with multi-dimensional debugging support.

In summary, the SNNF aims to provide non-experts and beginners with a simple, efficient, and reliable neural network application development platform. By integrating mainstream NN modules, providing user-friendly interfaces and configuration mechanisms, supporting stacked module validation, and offering robust debugging support, we strive to lower the barrier to entry for NN application development, accelerate the learning process, and promote the popularization and application of artificial intelligence technology.

Schedule

We are primarily focus on the following aspects:

  1. The completeness and user-friendliness of the user interface, enabling users to quickly get started and build their own NN applications without delving into the underlying technical details.

  2. For VSI model migration on the C3V platform, users can conveniently complete the entire migration process by following our provided SOP.

  3. For two or more models, utilizing the framework will significantly facilitate users' integration process and produce accurate results quickly.

  4. We offer the following NN functional modules:

    1. Yolov5 Detection.

    2. Person attributes.

    3. Face Detection.

    4. Optical character recognition.

    5. Age recognition.

    6. Face detection and Agerecognition.

    7. Yolov8 Detection.

    8. Yolov8 Pose.

    9. Yolov8 OBB (oriented bounding box).

    10. Yolov8 Segmentation.

    11. Yolov8 Classification.

    12. Vehicle attributes.

    13. License plate recognition.

    14. Yolov10 detection.

    15. RTMDet.

    16. Pedestrian Tracking.

    17. Human fall detection.

    18. Human face recognition.

More Models

In the future, we will expand to include more mainstream NN applications:

  1. Person recognition and counting.

  2. Vehicle recognition and counting.

  3. Safety helmet detection.

  4. Smoking detection.

  5. Phone call detection.

  6. Fighting detection.

  7. Vehicle Tracking.

  8. Human gender and age.

  9. Yolov10 Pose.

  10. Yolov10 OBB (oriented bounding box).

  11. Yolov10 Segmentation.

  12. Yolov10 Classification.