A video analysis processing method based on distributed tasks and dynamic multi-algorithm

By employing a distributed task and dynamic multi-algorithm video analysis and processing method, the problem of insufficient single-machine video processing capabilities is solved, achieving efficient video task management and resource utilization, reducing costs, and improving system stability and business management efficiency.

CN115620191BActive Publication Date: 2026-04-14INSPUR TIANYUAN COMM INFORMATION SYST CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
INSPUR TIANYUAN COMM INFORMATION SYST CO LTD
Filing Date
2022-09-27
Publication Date
2026-04-14

AI Technical Summary

Technical Problem

In existing technologies, video processing and analysis tasks have high requirements for machine capabilities, limited single-machine performance, and cannot be effectively managed. Furthermore, they consume a lot of resources when the workload increases, resulting in inefficient business management and increased costs.

Method used

A video analysis and processing method based on distributed tasks and dynamic multi-algorithms is adopted. Through video task configuration management, multi-node distributed execution, video frame extraction and multi-algorithm processing, dynamic updates of video tasks and efficient scheduling of resources are achieved.

Benefits of technology

It improves the visualization of video task management, efficiently integrates cluster server resources, supports high-concurrency task execution, reduces resource consumption and operating costs, and enhances system stability and business management efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115620191B_ABST
    Figure CN115620191B_ABST
Patent Text Reader

Abstract

The application provides a video analysis processing method based on distributed tasks and dynamic multi-algorithms, and belongs to the field of video analysis platforms, and comprises the following steps: A, configuration and distribution of video processing tasks; B, distributed execution of multi-node video processing tasks; C, multi-algorithm processing corresponding to video frame extraction, wherein the algorithm refers to image AI recognition capability; D, dynamic algorithm updating for video task support, and the like. The application dynamically binds multi-algorithm processing based on video frame extraction tasks, supports task division nodes for distributed execution for offline video files or real-time live video, can support multi-path video concurrent execution and scheduling, and can dynamically update the bound algorithm without stopping task running; the application effectively and conveniently supports multi-algorithm for single-path video concurrency, solves the problem of limited single-machine processing performance, and saves machine bandwidth resources and operation cost.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of video analytics platforms, and more particularly to a video analytics processing method based on distributed tasks and dynamic multi-algorithms. Background Technology

[0002] Video processing and analysis require specialized technical capabilities. Encoding, decoding, and frame extraction of video files or live video streams place high demands on machine capabilities. Generally, the performance of a single server is limited, and the number of video files or channels that a single machine can process is also limited, and tasks cannot be effectively managed. In addition, the processing of a single video file or a single live video stream usually corresponds to a specific processing algorithm, which is dedicated to AI recognition and analysis of the current video stream. Extrapolating from this algorithm category, the workload of video analysis will increase several times, resulting in low business management, high consumption of server bandwidth resources, and additional operating costs. Summary of the Invention

[0003] To address the above technical problems, this invention provides a video analysis and processing method based on distributed tasks and dynamic multi-algorithms.

[0004] The technical solution of this invention is:

[0005] A video analysis and processing method based on distributed tasks and dynamic multi-algorithms includes:

[0006] A. Configuration, distribution, and management of video processing tasks;

[0007] B. Distributed execution management of multi-node video processing tasks;

[0008] C. Video frame extraction corresponds to multiple algorithm processing;

[0009] D. Video tasks dynamically support algorithm updates;

[0010] Furthermore,

[0011] The configuration of video processing tasks is distributed from one server to another management task server via an internal network connection; the configuration of video tasks is reflected in the information carried in the task distribution instructions.

[0012] Step A specifically includes the management of the project to which the video task belongs, the management of the video file or video device to which it belongs, the management of the AI ​​recognition algorithm capabilities it is bound to, and the management of the video task itself; among which...

[0013] The management of the project to which the video task belongs includes information and data about the project corresponding to the video task;

[0014] The management of the video files or video devices includes video task type data, video task file address, video device authentication data, and video device streaming information data;

[0015] The management of AI recognition algorithm capabilities includes algorithm capability name data, algorithm capability interface information data, and algorithm capability frame extraction time interval data;

[0016] The management of video tasks includes the list of video tasks, the configuration of video tasks, the distribution of video tasks, and the cancellation of video tasks.

[0017] Furthermore,

[0018] Step B specifically includes video task distribution cluster resource center management and video task allocation and scheduling management; wherein

[0019] The video task distribution cluster resource center management includes caching and updating node resources, dynamic expansion of task nodes, and registration and reporting of task node resources;

[0020] Video task allocation and scheduling management includes video task scheduling and allocation algorithms, video task operation status monitoring, and video task operation management.

[0021] The resource information of all available online nodes is recorded through caching. The node resource information includes node name, node ID, node executor count statistics (maximum number of available executors, number of occupied executors, number of remaining executors), and information on all video tasks under the node (task name, task start time, task status, task type, and task video-related information). This information is used as the object to be monitored and queried, and a standardized interface is provided for the page to view and display it.

[0022] The video task assignment process involves selecting an executor on a specific node based on a scheduling algorithm. Specifically, based on the currently cached node resource information, all nodes with available executors are first identified. Then, a node is randomly selected, and an executor under that node is chosen. If the current executor is available, the current node ID and the current executor ID are bound as key anchoring conditions for the video task, facilitating location and querying during video task execution reporting.

[0023] Furthermore,

[0024] Step C specifically includes video task frame extraction processing and video task multi-algorithm processing; wherein

[0025] Video task frame extraction processing includes decoding video files or live video streams, extracting frame images, formatting images, and storing information;

[0026] The video task multi-algorithm includes built-in driver algorithm processing, asynchronous subtask multi-threaded processing, and storage of video task image and algorithm binding information.

[0027] Furthermore,

[0028] Step D specifically includes combining steps A and C to perform dynamic updating of video task binding and real-time analysis using multiple algorithms.

[0029] The beneficial effects of this invention are

[0030] The video analysis and processing method based on distributed tasks and dynamic multi-algorithms of this invention, compared with other single-server video processing frameworks and video stream image extraction corresponding to one AI recognition algorithm, has a high degree of visualization in video task management, effectively integrates cluster server resources in distributed scheduling of video tasks, supports high-concurrency task execution, and the entire system platform has high cohesion in business and low coupling in functional modules. The architecture is stable and efficient, providing a reliable solution for a large number of video analysis tasks. Attached Figure Description

[0031] Figure 1 This is a schematic diagram of the workflow of the present invention. Detailed Implementation

[0032] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are some embodiments of the present invention, but not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative effort are within the scope of protection of the present invention.

[0033] This invention provides a video analysis and processing method based on distributed tasks and dynamic multi-algorithms, comprising the following steps:

[0034] A. Configuration, distribution, and management of video processing tasks;

[0035] B. Distributed execution management of multi-node video processing tasks;

[0036] C. Video frame extraction corresponds to multiple algorithm processing;

[0037] D. Video tasks dynamically support algorithm updates;

[0038] Step A involves configuring and distributing the video processing task, as detailed below:

[0039] The management of video tasks is a systemic platform business management. The core processing component of video processing task distribution is to send the execution instructions from one server to another management task server through an internal network connection.

[0040] The configuration of video tasks is reflected in the valid information contained in the task issuance instructions, including but not limited to task name information, project information to which the task belongs, video file or camera device information bound to the task, and AI recognition algorithm information bound to the task.

[0041] The project information, documents or camera equipment information, AI recognition algorithm capabilities, and related relationships mentioned above all require systematic business management.

[0042] Step B involves the distributed execution management of multi-node video processing tasks, as detailed below:

[0043] The execution of a large number of video processing tasks requires unified service management, including but not limited to the management of multi-node service resources, node resource expansion management, node registration and login management, node timed reporting and processing, node abnormal action handling, video task distribution scheduling algorithm processing, and video task running status reporting and processing.

[0044] Node resources are the foundation for video task execution. Initial loading of multiple node resources ensures system availability, dynamic node management ensures system scalability, and distributed scheduling and status monitoring of video tasks ensure system reliability.

[0045] This module manages and records the resource information of all available online nodes through caching. Node resource information includes, but is not limited to, node name, node ID, node executor count statistics (maximum number of available executors, number of occupied executors, number of remaining executors), and information on all video tasks under the node (task name, task start time, task status, task type, and task video-related information). This information serves as the monitored and queried object, and a standardized interface is provided for viewing and display on the page.

[0046] The video task assignment process involves selecting an executor on a specific node based on a scheduling algorithm. Specifically, based on the currently cached node resource information, all nodes with available executors are first identified. Then, a node is randomly selected, and an executor under that node is chosen. If the current executor is available, the current node ID and the current executor ID are bound as key anchoring conditions for the video task, facilitating location and querying during video task execution reporting.

[0047] Step C involves video frame extraction and corresponding multi-algorithm processing, as detailed below:

[0048] Video frame extraction corresponds to multi-algorithm processing, mainly including two core functions: video stream frame extraction processing and video stream binding multi-algorithm processing.

[0049] The video stream frame extraction function is used to decode video files or live videos as video streams. It extracts real-time video frames through data decoding and converts the video frames into images or binary data of a specific format for storage.

[0050] The video stream is bound to multiple algorithm processing functions. Frame extraction from the video stream is processed in real-time based on asynchronous multi-threading. However, extracting a single video frame is not simply a matter of directly applying multiple algorithms. Instead, it requires selective extraction based on the time intervals of different algorithms. For example, algorithm A is configured to extract one frame every 2 seconds, and algorithm B is configured to extract one frame every 4 seconds. Therefore, when processing a real-time video stream, one frame needs to be extracted every 2 seconds for algorithm A, and one frame every 4 seconds for algorithm B. Within the same time period, algorithm A requires twice as many video frames to be analyzed as algorithm B. Through a built-in driver algorithm, the system ensures effective and highly available output information for configuring multiple algorithms on a single video stream, even with time synchronization and asynchronous frame extraction sub-task threads.

[0051] Step D involves updating the video task dynamic support algorithm, as detailed below:

[0052] The video task dynamic support algorithm update function is a series extension of the above modules A and C. Under the task management of module A, the relevant parameters of the task algorithm are reconfigured, and the configuration and instructions are sent to module C in the form of a restart. Then, based on module C, the support for real-time algorithm updates and frame extraction tasks is extended to support the video stream task without interrupting the video stream task.

[0053] The above description is merely a preferred embodiment of the present invention and is only used to illustrate the technical solution of the present invention, and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention are included within the scope of protection of the present invention.

Claims

1. A video analysis and processing method based on distributed tasks and dynamic multi-algorithms, characterized in that, include: A. Configuration, distribution, and management of video processing tasks; B. Distributed execution management of multi-node video processing tasks; C. Video frame extraction corresponds to multiple algorithm processing; D. Video tasks dynamically support algorithm updates; The configuration and distribution of video processing tasks are carried out by one server through an internal network connection, which sends the execution instructions to another management task server; the configuration of the video task is reflected in the information contained in the task distribution instructions. Step A specifically includes the management of the project to which the video task belongs, the management of the video file or video device to which it belongs, the management of the AI ​​recognition algorithm capabilities it is bound to, and the management of the video task itself; among which... The management of the project to which the video task belongs includes information and data about the project corresponding to the video task; The management of the video files or video devices includes video task type data, video task file address, video device authentication data, and video device streaming information data; The management of AI recognition algorithm capabilities includes algorithm capability name data, algorithm capability interface information data, and algorithm capability frame extraction time interval data; The management of video tasks includes the list of video tasks, the configuration of video tasks, the distribution of video tasks, and the cancellation of video tasks; Step B specifically includes video task distribution cluster resource center management and video task allocation and scheduling management; wherein The video task distribution cluster resource center management includes caching and updating node resources, dynamic expansion of task nodes, and registration and reporting of task node resources; Video task allocation and scheduling management includes video task scheduling and allocation algorithms, video task operation status monitoring, and video task operation management. The resource information of all available online nodes is recorded through caching. The node resource information includes node name, node ID, node executor count statistics including maximum number of available executors, number of occupied executors, and number of remaining executors, and information on all video tasks under the node including task name, task start time, task status, task type, and task video-related information. This information is used as the object to be monitored and queried, and a standardized interface is provided for the page to view and display it. The video task assignment is based on the scheduling algorithm to select which node's executor to execute the task. Specifically, based on the currently cached node resource information, all nodes with available executors are first found. Then, a node is randomly selected and an executor under that node is selected. If the current executor is available, the current node ID and the current executor ID are bound as the key anchoring conditions for the video task, which facilitates location and querying in the video task running report. Step C specifically includes video task frame extraction processing and video task multi-algorithm processing; wherein Video task frame extraction processing includes decoding video files or live video streams, extracting frame images, formatting images, and storing information; The video task multi-algorithm includes built-in driver algorithm processing, asynchronous subtask multi-threaded processing, and storage of video task image and algorithm binding information.

2. The method according to claim 1, characterized in that, Step D specifically includes combining steps A and C to perform dynamic updating of video task binding and real-time analysis using multiple algorithms.

Citation Information

Patent Citations

  • Video scheduling engine device and method based on distributed management

    CN114327838A