Intelligent module software architecture of small and medium-sized intelligent security and protection all-in-one machine and working method

Through an intelligent modular software architecture based on event-driven and plug-in design, the system complexity and maintainability issues of intelligent security all-in-one machines in multi-functional integration and algorithm iteration are solved, achieving high scalability, flexibility and high concurrency, and improving system stability and operation and maintenance efficiency.

CN121918801APending Publication Date: 2026-04-24TIANJIN TIANDY DIGITAL TECH
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
TIANJIN TIANDY DIGITAL TECH
Filing Date
2025-12-15
Publication Date
2026-04-24

AI Technical Summary

Technical Problem

The existing software architecture of intelligent security all-in-one machines suffers from high system complexity, poor maintainability, and difficulty in flexibly integrating new algorithms when integrating multiple functions.

Method used

It adopts an event-driven and plug-in design, and achieves high cohesion and loose coupling between modules through an event-driven engine, event bus and plug-in management framework. It supports the dynamic loading and expansion of intelligent analysis algorithms, and manages computing resources using a unified interface specification and algorithm scheduling engine.

Benefits of technology

It achieves high scalability, flexibility and high concurrency of the system, reduces the complexity and risk of functional expansion, improves the maintainability and stability of the system, and supports rapid algorithm iteration and online operation and maintenance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121918801A_ABST
    Figure CN121918801A_ABST
Patent Text Reader

Abstract

The invention relates to an intelligent module software architecture of a small and medium-sized intelligent security and protection all-in-one machine and a working method, and belongs to the technical field of intelligent security and protection equipment software. In order to solve the problems of complex integration of multiple devices, high system coupling degree and difficulty in intelligent algorithm expansion in the prior art, the invention provides a software system based on event-driven and plug-in architecture. According to the system, behaviors such as video stream processing, equipment state change and user operation are abstracted into standardized events, and decoupling and efficient communication among functional modules are achieved through an event bus and an asynchronous callback mechanism. Meanwhile, various intelligent analysis algorithms are packaged into independent plug-ins conforming to unified interface specifications, and dynamic loading, unloading and scheduling are achieved through a plug-in manager. According to the invention, high-cohesion and low-coupling system design is realized, the performance of the security and protection all-in-one machine in the aspects of function expansibility, system stability, development efficiency and operation and maintenance convenience is remarkably improved, and the system is particularly suitable for small and medium-sized security and protection scenes needing continuous iteration of an intelligent algorithm.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of intelligent security equipment software technology, and in particular to the intelligent module software architecture and working method of small and medium-sized intelligent security all-in-one machines. Background Technology

[0002] Intelligent security all-in-one machines (such as intelligent NVRs and facial recognition access control all-in-one machines) have been widely used in various security scenarios. Currently, the software architecture of such products on the market is mostly designed around a single core function (such as video recording and facial recognition), and the various modules within the system (such as video acquisition, encoding, storage, intelligent analysis, and network communication) are tightly coupled.

[0003] With the diversification of security needs, users expect a single device to integrate multiple functions such as video surveillance, access control, vehicle management, and behavior analysis. Existing technologies primarily achieve multi-functional integration in two ways: first, by directly overlaying new function code onto the existing tightly coupled architecture, leading to a sharp increase in system complexity, poor maintainability, and the potential impact of any modification or upgrade on overall stability; second, by piecing together multiple independent devices (such as independent intelligent analysis servers and access controllers), which results in high equipment costs, complex network cabling, inconsistent management interfaces, and difficulties in data collaboration.

[0004] Furthermore, the iteration speed of intelligent security algorithms is accelerating. Existing fixed software architectures struggle to flexibly and with low risk integrate new or third-party intelligent analysis algorithms (such as new vehicle ReID algorithms and abnormal behavior recognition algorithms). Algorithm upgrades often require recompiling and deploying the entire system, impacting product rapid iteration and market responsiveness.

[0005] Therefore, there is an urgent need for a new software architecture that can achieve a high degree of decoupling between functional modules and flexible, dynamic expansion of intelligent algorithms while ensuring the stable and efficient operation of the system, in order to meet the comprehensive requirements of equipment integration, intelligence level and maintainability in small and medium-sized security scenarios. Summary of the Invention

[0006] The purpose of this invention is to overcome the shortcomings of the prior art and propose an intelligent module software architecture and working method for small and medium-sized intelligent security all-in-one machines. This architecture achieves high cohesion and loose coupling within the system by introducing event-driven and plug-in design, supports dynamic loading and flexible expansion of intelligent analysis algorithms, thereby improving the maintainability, scalability and development efficiency of the system.

[0007] The technical problem solved by this invention is achieved through the following technical solution: The intelligent module software architecture of a small-to-medium-sized intelligent security all-in-one machine includes: an event-driven engine, an event bus, and a plug-in management framework. The event-driven engine abstracts and encapsulates video stream data, device status signals, user operation commands, and external alarm signals generated within the system into standardized events. The event bus serves as the publishing and subscription channel for these standardized events, connecting various functional modules. The plug-in management framework manages multiple independent intelligent analysis algorithm plug-ins. Furthermore, the plug-in management framework includes: a unified interface specification, a plug-in manager, an algorithm scheduling engine, and multiple functional components. The unified interface specification defines the initialization, event registration, data processing, and result output methods that each intelligent analysis algorithm plug-in must implement. The plug-in manager is used to implement the dynamic loading, instantiation, lifecycle management, and resource allocation of the intelligent analysis algorithm plug-ins. The algorithm scheduling engine is used to schedule the intelligent analysis algorithm plug-ins to execute analysis tasks according to system load and task priority. Multiple functional components act as listeners for the standardized events, subscribing to specific event types in the event bus and asynchronously executing corresponding business logic when an event is triggered. The functional components include at least a video processing component, a device management component, an alarm processing component, and a result reporting component.

[0008] Furthermore, the standardized events include at least video frame arrival events, device online / offline status change events, face recognition request events, vehicle detection events, and alarm trigger events.

[0009] Moreover, each of the intelligent analysis algorithm plugins is encapsulated as an independent dynamic link library or containerized module, and interacts with the plugin management framework through the unified interface specification.

[0010] Furthermore, the plugin manager maintains a plugin registry that records the metadata, status, and resource usage of all loaded plugins and supports hot-swapping operations.

[0011] Furthermore, the algorithm scheduling engine uses thread pool technology to manage computing resources and allocates computing resources to concurrent algorithm tasks according to preset strategies, including but not limited to priority-based scheduling and fairness-based round-robin scheduling.

[0012] Moreover, the functional components adopt a full-stack development model, integrating a complete functional chain from data access and business logic processing to result output and network communication within a single component.

[0013] A working method for the intelligent module software architecture of a small-to-medium-sized intelligent security all-in-one machine includes the following steps: S1: The system starts up, and the plugin manager loads the specified intelligent analysis algorithm plugin according to the configuration and calls its initialization method; S2: Each functional component and algorithm plugin subscribes to the standardized event types it is interested in from the event bus; S3: When there is data input or a state change, the event-driven engine generates a corresponding standardized event and publishes it to the event bus; S4: The event bus dispatches events to all listeners that have subscribed to the event type; S5: Functional components or algorithm plugins that have subscribed to the event asynchronously receive the event and execute the corresponding processing logic; where, if it is an algorithm plugin, the algorithm scheduling engine allocates resources to perform analysis and calculation. S6: The processing results are encapsulated into new standardized events by the corresponding functional components, or persistently stored, displayed on the interface, or reported over the network through the output interface.

[0014] The advantages and positive effects of this invention are: 1. High scalability and flexibility: The plug-in architecture makes integrating new intelligent algorithms as easy as installing an "application", without modifying the core system code, which greatly reduces the complexity and risk of functional expansion and meets the needs of rapid algorithm iteration.

[0015] 2. High cohesion and loose coupling: The event-driven mechanism enables modules to communicate only through events, without knowing each other's specific implementation details, significantly reducing inter-module dependencies. Modifications within a single module will not affect other modules, improving system maintainability and stability.

[0016] 3. High concurrency and real-time performance: The asynchronous event processing model avoids thread blocking that may be caused by synchronous calls, makes full use of system resources, and improves the concurrent processing capability and real-time event response in high-load scenarios.

[0017] 4. Convenient Development and Maintenance: Unified interface specifications and modular design facilitate parallel development of different functions by different development teams. Hot-swappable plug-ins enable algorithm updates and bug fixes to be performed online without downtime, significantly improving operational efficiency and reducing total cost of ownership (TCO). Attached Figure Description

[0018] Figure 1 This is a compilation and expansion of intelligent analysis algorithm plugins; Figure 2 It consists of intelligent analysis software modules; Figure 3 For intelligent analysis of video stream timing graphs (taking face recognition algorithm as an example). Detailed Implementation

[0019] The present invention will be further described in detail below with reference to the accompanying drawings.

[0020] A smart module software architecture for a small to medium-sized intelligent security all-in-one machine, such as Figure 1 and Figure 2 As shown, its core lies in the collaborative design of the event-driven engine, event bus, and plug-in management framework.

[0021] The event-driven engine is responsible for abstracting and encapsulating all observable behaviors within the system, such as the arrival of video frames, the connection / disconnection of IPC devices, snapshot commands issued by users through the interface, and alarm signals triggered by sensors, into standardized events with a unified format. Each event includes basic attributes such as event type, timestamp, source identifier, and payload data.

[0022] The event bus, acting as the system's central nervous system, provides a mechanism for event publishing and subscription. Any functional module or plugin can act as a publisher to publish events to the bus, or register as a subscriber (listener) to declare its interest in one or more types of events. Once an event is published to the bus, the bus is responsible for asynchronously and reliably distributing it to all relevant subscribers. This mechanism completely decouples event producers from consumers.

[0023] The plug-in management framework is used to manage various intelligent analysis algorithms. Its core includes: Unified Interface Specification: Defines a set of standard interfaces that all intelligent algorithm plugins must implement, such as init() (initialization), subscribe_events() (event subscription), process(data) (data processing), and get_result() (result retrieval). This provides a contract for plugin integration.

[0024] Plugin Manager: Responsible for the full lifecycle management of algorithm plugins. At system startup, the manager dynamically loads the specified plugin dynamic link libraries (such as .so or .dll files) based on the configuration file, instantiates the plugin object, and calls its initialization method. The manager maintains a plugin registry to track the status, version, and resource usage of all plugins. It supports hot loading and hot unloading of plugins without restarting the main system.

[0025] Algorithm scheduling engine: When faced with multiple algorithm tasks that may execute concurrently, this engine is responsible for reasonable resource scheduling. It manages a thread pool and allocates computational tasks to appropriate threads for execution based on task priority, the computing resources required by the plugin (such as GPU memory), and the current system load, ensuring system stability and efficiency.

[0026] In addition, the system includes multiple functional components, such as a video processing component responsible for streaming and decoding, a device management component for managing device connections, an alarm processing component for handling alarm linkage logic, and a result reporting component for sending structured results to the upper-level platform. These components are all designed as subscribers to the event bus, driving their own business logic by responding to specific events. Preferably, each component adopts full-stack development, meaning that a complete closed loop from data acquisition to final output is implemented within a single component, further reducing horizontal dependencies between components.

[0027] Taking a security all-in-one machine that integrates facial recognition algorithms as an example, such as Figure 3 The diagram illustrates the workflow of the architecture of this invention.

[0028] Step 1: System Initialization and Plugin Loading Upon system power-on, the plugin manager reads the configuration file (e.g., plugins.xml) and identifies the need to load the FaceRecognitionPlugin. The manager locates the corresponding dynamic library file (libface_recog.so), loads it into memory, creates a plugin instance, and calls its init(config) method for initialization, passing in parameters such as the model path and confidence threshold. After successful initialization, the plugin is registered in the plugin registry.

[0029] Step 2: After the event subscription initialization is complete, the face recognition plugin calls its `subscribe_events()` method to subscribe to the "Video Frame Arrival Event" (Event ID: `EVENT_VIDEO_FRAME`) and the "Face Capture Request Event" (Event ID: `EVENT_CAPTURE_FACE`) from the event bus. Simultaneously, the video processing component subscribes to the "Device Online Event," and the alarm component subscribes to the "Recognition Result Event," etc.

[0030] Step 3: Event-Driven and Algorithm Execution The video processing component pulls a frame of video data from the IPC, decodes it, generates a "video frame arrival event", and the event payload contains information such as frame image data, channel number, and timestamp, and publishes it to the event bus.

[0031] The event bus dispatches the event to all subscribers. Upon receiving this event, the face recognition plugin's `process(event)` method is called by the algorithm scheduling engine. The scheduling engine then allocates a worker thread from the thread pool to execute the plugin's processing logic.

[0032] The face recognition plugin runs in its assigned thread, performing face detection and feature extraction on the incoming video frames, and comparing them with the base database. After processing, it generates a "face recognition result event," the event payload of which includes the recognized person's ID, coordinates, confidence level, and other information, and publishes the new event back to the event bus.

[0033] Step 4: Result Processing and Loop Closure The alarm processing component subscribes to the "Face Recognition Result Event". Upon receiving this event, it checks the recognition result: if the person is identified as a blacklisted individual or the confidence level is too low (stranger), it triggers a local audible and visual alarm and generates an "Alarm Trigger Event".

[0034] The result reporting component also subscribes to the recognition result event. It encapsulates the structured face recognition results (time, location, person ID, and snapshot image) into a standard protocol (such as GB / T 28181) and sends it to the superior central management platform via the network.

[0035] When a user clicks the "Real-time Capture" button on the web interface, the UI component generates a "Face Capture Request Event." Upon receiving this event, the face recognition plugin immediately processes the latest video frame and sends the best captured face image back to the UI component for display.

[0036] As can be seen from the above process, business logic from different dimensions, such as video streams, user operations, recognition results, and alarm linkage, is all transformed into the flow of events, which are processed asynchronously and in parallel by different components. The entire system operates efficiently and logically, and adding a new function (such as vehicle recognition) only requires developing a vehicle recognition plugin that conforms to the interface specification and enabling it in the configuration file, without any intrusive impact on the original system.

[0037] It should be emphasized that the embodiments described in this invention are illustrative rather than limiting. Therefore, this invention includes, but is not limited to, the embodiments described in the specific implementation. Any other implementations derived by those skilled in the art based on the technical solutions of this invention are also within the scope of protection of this invention.

Claims

1. The intelligent module software architecture of a small-to-medium-sized intelligent security all-in-one machine, characterized in that, The architecture includes an event-driven engine, an event bus, and a plug-in management framework. The event-driven engine is used to abstract and encapsulate video stream data, device status signals, user operation commands, and external alarm signals generated within the system into standardized events. The event bus serves as the publishing and subscription channel for these standardized events, connecting various functional modules. The plug-in management framework is used to manage multiple independent intelligent analysis algorithm plug-ins.

2. The intelligent module software architecture of the small and medium-sized intelligent security all-in-one machine according to claim 1, characterized in that, The plug-in management framework includes: a unified interface specification, a plug-in manager, an algorithm scheduling engine, and multiple functional components. The unified interface specification defines the initialization, event registration, data processing, and result output methods that each intelligent analysis algorithm plug-in must implement. The plug-in manager is used to implement the dynamic loading, instantiation, lifecycle management, and resource allocation of the intelligent analysis algorithm plug-ins. The algorithm scheduling engine is used to schedule the intelligent analysis algorithm plug-ins to execute analysis tasks according to system load and task priority. Multiple functional components act as listeners for the standardized events, subscribing to specific event types in the event bus and asynchronously executing corresponding business logic when the event is triggered. The functional components include at least a video processing component, a device management component, an alarm processing component, and a result reporting component.

3. The intelligent module software architecture of the small and medium-sized intelligent security all-in-one machine according to claim 2, characterized in that, The standardized events include at least video frame arrival events, device online / offline status change events, face recognition request events, vehicle detection events, and alarm trigger events.

4. The intelligent module software architecture and working method of the small and medium-sized intelligent security all-in-one machine according to claim 1, characterized in that, Each of the intelligent analysis algorithm plugins is encapsulated as an independent dynamic link library or containerized module, and interacts with the plugin management framework through the unified interface specification.

5. The intelligent module software architecture of the small and medium-sized intelligent security all-in-one machine according to claim 1, characterized in that, The plugin manager maintains a plugin registry, which records the metadata, status, and resource usage of all loaded plugins, and supports hot-swapping operations.

6. The intelligent module software architecture of the small and medium-sized intelligent security all-in-one machine according to claim 1, characterized in that, The algorithm scheduling engine uses thread pool technology to manage computing resources and allocates computing resources to concurrent algorithm tasks according to preset strategies, including but not limited to priority-based scheduling and fairness-based round-robin scheduling.

7. The intelligent module software architecture of the small and medium-sized intelligent security all-in-one machine according to claim 1, characterized in that, The functional components adopt a full-stack development model, with each component integrating a complete functional chain from data access and business logic processing to result output and network communication.

8. A method for operating the intelligent module software architecture of a small-to-medium-sized intelligent security all-in-one machine according to any one of claims 1 to 7, characterized in that, Includes the following steps: S1: The system starts up, and the plugin manager loads the specified intelligent analysis algorithm plugin according to the configuration and calls its initialization method; S2: Each functional component and algorithm plugin subscribes to the standardized event types it is interested in from the event bus; S3: When there is data input or a state change, the event-driven engine generates a corresponding standardized event and publishes it to the event bus; S4: The event bus dispatches events to all listeners that have subscribed to the event type; S5: Functional components or algorithm plugins that have subscribed to the event asynchronously receive the event and execute the corresponding processing logic; where, if it is an algorithm plugin, the algorithm scheduling engine allocates resources to perform analysis and calculation. S6: The processing results are encapsulated into new standardized events by the corresponding functional components, or persistently stored, displayed on the interface, or reported over the network through the output interface.