Method and related device for compliance monitoring of to-be-monitored place based on graph pushing

By deploying processes with the same number of cameras in the places to be monitored, video images are collected and analyzed in real time, the problem of difficulty in effectively detecting violations in the places to be monitored is solved in the prior art, and an efficient and accurate monitoring and alarm system is achieved.

CN119399671AInactive Publication Date: 2025-02-07BANK OF CHINA
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411536733.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-31
Publication Date
2025-02-07
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

It is difficult for the prior art to effectively detect whether there are violations in the places to be monitored, especially in places to be monitored by financial enterprises.

Method used

By creating a process with the same number of cameras deployed in the site to be monitored, each process collects video images in real time, determines whether the objects in the camera acquisition area meet preset conditions, and realizes synchronization between processes and alarm identification transmission through shared memory.

Benefits of technology

Real-time monitoring and violation detection of monitoring sites are realized, ensuring the synchronization and accuracy of monitoring results, promptly triggering alarms and sending video images to the server.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119399671A_ABST
    Figure CN119399671A_ABST
Patent Text Reader

Abstract

The invention discloses a to-be-monitored place compliance monitoring method and a related device based on graph pushing, and relates to the field of artificial intelligence or finance. Each process firstly needs to detect whether an object meets a preset condition or not and detect whether the shared memory has a first identifier or not, and the first identifier is set in the shared memory by the first process which detects that the object meets the preset condition. Therefore, the synchronization that the object meets the preset condition between different processes is realized. Under the condition that the object meets the preset condition, each process obtains the first number, and the host process can determine the total number based on the first number read from the shared memory. And if the total number is smaller than the preset compliance number, setting the alarm identifier corresponding to the host process in the shared memory to be in an effective state. Other processes will then set corresponding alarm identifiers in the shared memory to be in a valid state, so that the purpose that each process synchronously sends video images collected at the moment to a server is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of artificial intelligence technology, and in particular to a compliance monitoring method and related device for a place to be monitored by pushing a group of pictures. Background Art

[0002] Some monitored places of financial enterprises, such as banks, need to install cameras to detect whether there are any violations in the monitored places through the videos collected by the cameras.

[0003] Based on this, there is an urgent need for a method to detect whether there are any violations in the monitored places. Summary of the invention

[0004] In view of the above problems, this application provides a method and related device for monitoring compliance of monitored places by group map push, so as to achieve the purpose of detecting whether there are any violations in the monitored places. The specific scheme is as follows:

[0005] The first aspect of the present application provides a method for monitoring compliance of a place to be monitored by group map push, comprising:

[0006] Creating multiple processes; the number of the multiple processes is the same as the number of cameras deployed in the place to be monitored; different processes correspond to different cameras, and the threads correspond to the cameras one by one;

[0007] For each of the processes, determining whether an object located in a collection area corresponding to the camera satisfies a preset condition based on a video image collected in real time by the process corresponding to the camera; and detecting whether a first identifier representing that the preset condition is satisfied is stored in the shared memory;

[0008] For each of the processes, determining whether there is an object that meets the preset condition through the process, and if not, returning to the step of determining whether an object located in a collection area corresponding to the camera meets the preset condition through the process based on a video image collected in real time by the camera corresponding to the object;

[0009] For each of the processes, if the object that meets the preset condition exists and the shared memory does not store the first identifier, the first identifier is stored in the shared memory through the process;

[0010] For each of the processes, when there is the object that meets the preset condition, determine the first number of staff members located in the collection area corresponding to the camera based on the video image collected in real time by the camera corresponding to the process; store the data set corresponding to the number of the process in the shared memory, the data set including the serial number of the video image and the first number corresponding to the video image;

[0011] Controlling the main process to determine the total number of staff members in the monitored place based on at least one data set corresponding to the serial numbers of the plurality of processes obtained from the shared memory; the main process is any one of the plurality of processes;

[0012] If the total number is greater than or equal to the preset compliance number, compliance is determined by the main process;

[0013] If the total number is less than the preset compliance number, setting the alarm flag corresponding to the main process in the shared memory to a valid state through the main process;

[0014] For each of the processes, determine whether the alarm flag corresponding to the main process in the shared memory is in a valid state through the process. If so, set the alarm flag corresponding to the process in the shared memory to a valid state; send the video image collected by the camera corresponding to the process at a target collection time to the server, and the target collection time is the time when the alarm flags corresponding to all the processes in the shared memory are in a valid state.

[0015] In a possible implementation, the control main process determines the total number of staff members in the monitored place based on at least one data set corresponding to the serial numbers of the multiple processes obtained from the shared memory, including:

[0016] Acquire all data sets corresponding to the serial numbers of the plurality of processes from the shared memory;

[0017] Grouping the video images having the same sequence number into the same image set;

[0018] For each of the image sets corresponding to the serial number, determine the sum of the first numbers corresponding to all the video images in the image set as the first value corresponding to the serial number;

[0019] The total number is determined based on the first values ​​respectively corresponding to the plurality of serial numbers.

[0020] In a possible implementation, the step of determining whether an object located in a collection area corresponding to the camera satisfies a preset condition based on a video image collected in real time by the camera corresponding to the camera includes:

[0021] Inputting the video image collected in real time by the camera corresponding to the process into a pre-built object recognition model, and obtaining the target category of the object contained in the video image through the object recognition model;

[0022] If the target category is cash or a cash bag or a cash box or a transfer box, it is determined that the object meets the preset condition.

[0023] In a possible implementation, the step of determining the first number of workers located in a collection area corresponding to the camera based on the video image collected in real time by the camera corresponding to the camera through the process includes:

[0024] The process inputs the video image captured by the camera in real time into a pre-built type differentiation model, and the first number of workers belonging to the target type and located in the capture area of ​​the camera is obtained through the type differentiation model.

[0025] In a possible implementation, the step of sending the video image collected by the camera corresponding to the process at the target collection time to the server includes: storing the video image collected by the camera corresponding to the process at the target collection time in the shared memory;

[0026] Correspondingly, the main process is also used to: stitch the video images acquired from the shared memory and corresponding to the plurality of processes at the target acquisition time to obtain a target image; and send the target image to the server.

[0027] The second aspect of the present application provides a compliance monitoring device for a place to be monitored by pushing a group of images, including:

[0028] A creation module, used for creating multiple processes; the number of the multiple processes is the same as the number of cameras deployed in the place to be monitored; different processes correspond to different cameras, and the threads correspond to the cameras one by one;

[0029] A first determination module is used to determine, for each of the processes, whether an object located in a collection area corresponding to the camera satisfies a preset condition based on a video image collected in real time by the process corresponding to the camera; and detect whether a first identifier representing that the preset condition is satisfied is stored in the shared memory;

[0030] a triggering module, configured to determine, for each of the processes, whether there is the object that meets the preset condition, and if not, trigger the first determining module;

[0031] A first storage module is used for storing the first identifier in the shared memory through the process for each of the processes if there is the object that meets the preset condition and the shared memory does not store the first identifier;

[0032] A first processing module is configured to determine, for each of the processes, a first number of staff members located in a collection area corresponding to the camera based on a video image collected in real time by a camera corresponding to the process when there is an object that meets the preset condition; and store a data set corresponding to the number of the process in the shared memory, the data set including a serial number of the video image and the first number corresponding to the video image;

[0033] A control module, used to control a main process to determine the total number of staff members in the monitored place based on at least one data set corresponding to the serial numbers of the plurality of processes obtained from the shared memory; the main process is any one of the plurality of processes;

[0034] A second determination module, configured to determine compliance with the specification through the main process if the total number is greater than or equal to a preset compliance number;

[0035] A setting module, configured to set the alarm flag corresponding to the main process in the shared memory to a valid state through the main process if the total number is less than the preset compliance number;

[0036] The second processing module is used to determine, for each of the processes, whether the alarm flag corresponding to the main process in the shared memory is in a valid state. If so, set the alarm flag corresponding to the process in the shared memory to a valid state; send the video image collected by the camera corresponding to the process at a target collection time to the server, and the target collection time is the time when the alarm flags corresponding to all the processes in the shared memory are in a valid state.

[0037] In a possible implementation, the control module includes:

[0038] A first acquisition unit, configured to acquire all data sets corresponding to the serial numbers of the plurality of processes from the shared memory;

[0039] A division unit, used for dividing the video images with the same sequence number into the same image set;

[0040] A first determining unit is used to determine, for each image set corresponding to the serial number, a sum of first numbers respectively corresponding to all the video images in the image set as a first value corresponding to the serial number;

[0041] The second determining unit is used to determine the total number based on the first values ​​respectively corresponding to the plurality of serial numbers.

[0042] The third aspect of the present application provides a computer program product, including computer-readable instructions. When the computer-readable instructions are executed on an edge computing box, the edge computing box implements the compliance monitoring method for the monitored place by pushing a group map of the first aspect or any implementation method of the first aspect.

[0043] A fourth aspect of the present application provides an edge computing box, comprising at least one processor and a memory connected to the processor, wherein:

[0044] The memory is used to store computer programs;

[0045] The processor is used to execute the computer program so that the edge computing box can implement the compliance monitoring method for the monitored place by pushing the group map of the first aspect or any implementation method of the first aspect mentioned above.

[0046] A fifth aspect of the present application provides a computer storage medium, which carries one or more computer programs. When the one or more computer programs are executed by an edge computing box, the edge computing box can implement a compliance monitoring method for a place to be monitored by pushing a group map according to the first aspect or any implementation method of the first aspect.

[0047] By means of the above technical scheme, the present application provides a method for monitoring compliance of a place to be monitored by group map push, and creates the same number of processes as the number of cameras deployed in the place to be monitored; each process needs to determine whether the object located in the collection area corresponding to the camera meets the preset conditions through the video image collected in real time by the corresponding camera, and also needs to detect whether the shared memory stores a first identifier representing the satisfaction of the preset conditions, and the first identifier is set in the shared memory by the first process that determines that "the object meets the preset conditions". In this way, other processes can be told that "I have detected that the object meets the preset conditions", thereby realizing the synchronization of "whether the object meets the preset conditions" between different processes. When the object meets the preset conditions, the first number of staff members located in the collection area corresponding to the corresponding camera is determined by each process based on the video image collected in real time by the corresponding camera, and stored in the shared memory. The main process can determine the total number of staff members in the place to be monitored based on the first number stored in the shared memory. If the total number is less than the preset compliance number, the alarm identifier corresponding to the main process in the shared memory is set to a valid state through the main process. If other processes except the main process find that the alarm flag of the main process is in a valid state, they can set their own alarm flag in the shared memory to a valid state, and in this way notify all processes that they already know that they need to alarm. If the alarm flags corresponding to all processes in the shared memory are in a valid state, it means that all processes know that they need to alarm. In order to achieve the purpose of the same acquisition time of video images sent to the server by different processes, each process can send the collected video images to the server at the target acquisition time when the alarm flags corresponding to all processes are in a valid state. BRIEF DESCRIPTION OF THE DRAWINGS

[0048] The above and other features, advantages and aspects of the embodiments of the present disclosure will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. Throughout the accompanying drawings, the same or similar reference numerals represent the same or similar elements. It should be understood that the drawings are schematic and the originals and elements are not necessarily drawn to scale.

[0049] Figure 1 A schematic diagram of a system architecture provided for this application;

[0050] Figure 2 A schematic diagram of an optional hardware structure of a terminal provided in this application;

[0051] Figure 3 A schematic diagram of the structure of a server 200 provided in this application;

[0052] Figure 4 A schematic diagram of a flow chart of a method for monitoring compliance of a place to be monitored by pushing a group of pictures provided in an embodiment of the present application;

[0053] Figure 5 A schematic diagram of the structure of a compliance monitoring device for a place to be monitored with group image push provided in an embodiment of the present application;

[0054] Figure 6 A schematic diagram of the structure of an edge computing box provided in an embodiment of the present application. DETAILED DESCRIPTION

[0055] The following describes the embodiments of the present application in conjunction with the drawings in the embodiments of the present application. The terms used in the implementation method section of the present application are only used to explain the specific embodiments of the present application, and are not intended to limit the present application.

[0056] The embodiments of the present application are described below in conjunction with the accompanying drawings. Those skilled in the art will appreciate that, with the development of technology and the emergence of new scenarios, the technical solutions provided in the embodiments of the present application are also applicable to similar technical problems.

[0057] The terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and need not be used to describe a specific order or sequential order. It should be understood that the terms used in this way can be interchangeable under appropriate circumstances, which is only to describe the distinction mode adopted by the objects of the same attributes when describing in the embodiments of the present application. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, so that the process, method, system, product or equipment comprising a series of units need not be limited to those units, but may include other units that are not clearly listed or inherent to these processes, methods, products or equipment.

[0058] It should be noted that the information of the staff involved in this application (including but not limited to user personal information, etc.) and data (including but not limited to data used for analysis, stored data, displayed data, etc.) are all information and data authorized by the staff or fully authorized by all parties, and the collection, use and processing of relevant data must comply with relevant laws, regulations and standards of relevant countries and regions.

[0059] See also Figure 1 , Figure 1 A schematic diagram of a system architecture is shown. The system may include an edge computing box 100, a server 200, and multiple cameras 300.

[0060] The server 200 may include one or more servers ( Figure 1 A server is included as an example for explanation).

[0061] The camera 300 is used to capture still images or videos. The subject (object or organism) generates an optical image through the lens and projects it onto the photosensitive element. The photosensitive element can be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the optical signal into an electrical signal, which is then transmitted to the ISP for conversion into a digital image signal.

[0062] Exemplarily, a plurality of cameras 300 are deployed at a location to be monitored. Exemplarily, the location to be monitored may be a bank sorting room, a bank vault, a bank loading area or a bank vault.

[0063] Exemplarily, the camera 300 may be connected to an NVR (Network Video Recorder), which receives, stores and manages the video images captured by the camera.

[0064] For example, the edge computing box 100 can obtain corresponding real-time video images from the video streams transmitted to the NVR by multiple cameras 300. Thus, the camera monitoring method of pseudo-real-time asynchronous polling provided in the embodiment of the present application can be executed to obtain whether the number of staff entering the monitored place is compliant.

[0065] Exemplarily, the edge computing box 100 may include a storage unit, a power distribution unit, a computing unit, and the like.

[0066] Exemplarily, the edge computing box 100 sends the result of whether the number of staff entering the monitored place is compliant to the server 200. If the number of staff entering the monitored place is not compliant, the edge computing box 100 will issue a violation alarm and simultaneously push the real-time monitoring screen at the time of violation to the server 200.

[0067] Exemplarily, the server 200 may send the violation alarm to a terminal held by a corresponding manager via SMS, phone call, corporate WeChat, or other channels.

[0068] Figure 2 An optional hardware structure diagram of a terminal is shown.

[0069] refer to Figure 2As shown, the terminal may include a radio frequency unit 110, a memory 120, an input unit 130, a display unit 140, a camera 150 (optional), an audio circuit 160 (optional), a speaker 161 (optional), a microphone 162 (optional), an earphone jack 163 (optional), a processor 170, an external interface 180, a power supply 190 and other components. Those skilled in the art will appreciate that Figure 2 This is merely an example of a terminal and does not constitute a limitation on the terminal. The terminal may include more or fewer components than shown in the figure, or a combination of certain components, or different components.

[0070] The input unit 130 can be used to receive input digital or character information, and generate key signal input related to the user settings and function control of the terminal. Specifically, the input unit 130 may include a touch screen 131 (optional) and / or other input devices 132. The touch screen 131 can collect the user's touch operations on or near it (such as the user's operation on or near the touch screen using any suitable object such as fingers, joints, stylus, etc.), and drive the corresponding connection device according to a pre-set program. The touch screen can detect the user's touch action on the touch screen, convert the touch action into a touch signal and send it to the processor 170, and can receive and execute the command sent by the processor 170; the touch signal at least includes the touch point coordinate information. The touch screen 131 can provide an input interface and an output interface between the terminal and the user. In addition, the touch screen can be implemented using multiple types such as resistive, capacitive, infrared and surface acoustic wave. In addition to the touch screen 131, the input unit 130 can also include other input devices. Specifically, other input devices 132 may include, but are not limited to, one or more of a physical keyboard, function keys (such as a volume control key, a switch key, etc.), a trackball, a mouse, a joystick, and the like.

[0071] Among them, the input device 132 can receive input data and the like.

[0072] The display unit 140 may be used to display information input by a user or provided to a user, various menus of the terminal, an interactive interface, file display, and / or playback of any multimedia file.

[0073] The memory 120 can be used to store instructions and data. The memory 120 can mainly include an instruction storage area and a data storage area. The data storage area can store various data, such as multimedia files, texts, etc.; the instruction storage area can store software units such as operating systems, applications, instructions required for at least one function, or their subsets and extensions. It can also include a non-volatile random access memory; provide the processor 170 with hardware, software and data resources including management of computing and processing equipment, and support control software and applications. It is also used for the storage of multimedia files, and the storage of running programs and applications.

[0074] The processor 170 is the control center of the terminal. It uses various interfaces and lines to connect various parts of the entire terminal. By running or executing instructions stored in the memory 120 and calling data stored in the memory 120, it executes various functions of the terminal and processes data, thereby controlling the terminal device as a whole. Optionally, the processor 170 may include one or more processing units; preferably, the processor 170 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface and application program, and the modem processor mainly processes wireless communication. It is understandable that the above-mentioned modem processor may not be integrated into the processor 170. In some embodiments, the processor and the memory may be implemented on a single chip, and in some embodiments, they may also be implemented separately on separate chips. The processor 170 may also be used to generate corresponding operation control signals, send them to corresponding components of the computing and processing device, read and process data in the software, especially read and process data and programs in the memory 120, so that each functional module therein performs corresponding functions, thereby controlling the corresponding components to act according to the requirements of the instructions.

[0075] The radio frequency unit 110 (optional) can be used for receiving and sending information or receiving and sending signals during a call, for example, after receiving the downlink information of the base station, it is sent to the processor 170 for processing; in addition, the designed uplink data is sent to the base station. Generally, the RF circuit includes but is not limited to an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier (Low Noise Amplifier, LNA), a duplexer, etc. In addition, the radio frequency unit 110 can also communicate with network devices and other devices through wireless communication. The wireless communication can use any communication standard or protocol, including but not limited to Global System of Mobile communication (Global System of Mobile communication, GSM), General Packet Radio Service (General Packet Radio Service, GPRS), Code Division Multiple Access (Code Division Multiple Access, CDMA), Wideband Code Division Multiple Access (Wideband Code Division Multiple Access, WCDMA), Long Term Evolution (Long Term Evolution, LTE), email, Short Messaging Service (SMS), etc.

[0076] In this embodiment of the present application, the RF unit 110 can send data to the server 200 and receive processing results sent by the server 200.

[0077] It should be understood that the radio frequency unit 110 is optional and can be replaced by other communication interfaces, such as a network port.

[0078] The terminal also includes a power supply 190 (such as a battery) for supplying power to various components. Preferably, the power supply can be logically connected to the processor 170 through a power management system, so that the power management system can manage charging, discharging, power consumption and other functions.

[0079] The terminal also includes an external interface 180, which may be a standard Micro USB interface or a multi-pin connector, and may be used to connect the terminal to communicate with other devices, or to connect a charger to charge the terminal.

[0080] Although not shown, the terminal may also include a flashlight, a wireless fidelity (WiFi) module, a Bluetooth module, sensors with different functions, etc., which will not be described in detail here. Some or all of the methods described below may be applied in the following embodiments. Figure 2 in the terminal shown.

[0081] Next describe Figure 1 The product form of the server 200;

[0082] Figure 3 A structural diagram of a server 200 is provided, such as Figure 3 As shown, the server 200 includes a bus 201, a processor 202, a communication interface 203, and a memory 204. The processor 202, the memory 204, and the communication interface 203 communicate with each other via the bus 201.

[0083] The bus 201 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 3 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.

[0084] The processor 202 may be any one or more of a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP).

[0085] The memory 204 may include a volatile memory, such as a random access memory (RAM). The memory 204 may also include a non-volatile memory, such as a read-only memory (ROM), a flash memory, a hard disk drive (HDD), or a solid state drive (SSD).

[0086] It should be understood that the above-mentioned edge computing box 100 and server 200 can be centralized or distributed devices, and the processors in the above-mentioned edge computing box 100 and server 200 (such as processor 170 and processor 202) can be hardware circuits (such as application specific integrated circuit (ASIC), field-programmable gate array (FPGA), general-purpose processor, digital signal processor (DSP), microprocessor or microcontroller, etc.), or a combination of these hardware circuits. For example, the processor can be a hardware system with the function of executing instructions, such as CPU, DSP, etc., or a hardware system without the function of executing instructions, such as ASIC, FPGA, etc., or a combination of the above-mentioned hardware systems without the function of executing instructions and hardware systems with the function of executing instructions.

[0087] It is understandable that the space of the place to be monitored is large. If a small number of cameras are set up, there may be blind spots in the monitoring. If the object is located in the blind spot, there may be risks but it cannot be identified. Based on this, it is necessary to deploy more cameras in the monitoring place to avoid blind spots. Exemplarily, there is no intersection between the collection areas corresponding to the multiple cameras; or, there is a partial intersection between the collection areas corresponding to the multiple cameras.

[0088] In the related art, the same number of processes as the number of cameras deployed in the place to be monitored can be created. For example, if there are three cameras deployed in the place to be monitored, three processes are created, each process corresponds to one camera, and different processes correspond to different cameras. In the related art, different processes are not synchronized. Assume that there are two cameras deployed in the place to be monitored, namely the first camera and the second camera; create two processes, namely the first process and the second process; the first process corresponds to the first camera, and the second process corresponds to the second camera.

[0089] The following is an explanation of some processes in the related art, which includes steps A11 to A12.

[0090] Step A11: The first process determines whether the objects located in the collection area corresponding to the first camera meet the preset conditions based on the video image collected by the first camera in real time; if there are objects meeting the preset conditions in the video image collected by the first camera; the first process determines the first number of staff members located in the collection area corresponding to the first camera based on the video image collected by the first camera in real time.

[0091] Step A12: The second process determines whether the object located in the collection area corresponding to the first camera meets the preset conditions based on the video image collected in real time by the second camera; if the preset conditions are not met, return to the step of "determining whether the object located in the collection area corresponding to the second camera meets the preset conditions based on the video image collected in real time by the second camera".

[0092] It is understandable that, since the acquisition areas of the first camera and the second camera can cover the entire area of ​​the place to be monitored, the sum of the first number corresponding to the video images acquired by the first camera and the first number corresponding to the video images acquired by the second camera is the total number of people in the place to be monitored. If the first process and the second process cannot be synchronized in the link of "whether the object meets the preset conditions", that is, the first process cannot tell the second process "I have detected that the object meets the preset conditions", then the second process cannot execute the step of "determining the first number of staff members located in the acquisition area corresponding to the second camera based on the video images acquired in real time by the second camera", and thus cannot determine the total number of people in the place to be monitored.

[0093] Assuming that the first process and the second process in the related art both detect that the object meets the preset condition, the first process and the second process can store the first number detected by themselves in the shared memory. If the "alarm" synchronization between different processes cannot be achieved, the following problems may exist, which are explained below in conjunction with some processes in the related art. The process includes steps A13 to A14.

[0094] Step A13: The first process determines the first number of staff members located in the collection area corresponding to the first camera based on the video image collected in real time by the first camera, and stores it in the shared memory; obtains the first number stored by the second process from the shared memory, and if the sum of the first number of the first process and the first number of the second process is less than the preset compliance number, sends the video image collected by the first camera at the current time to the server.

[0095] Step A14: The second process determines the first number of staff members located in the collection area corresponding to the second camera based on the video image collected in real time by the second camera, and stores it in the shared memory; obtains the first number stored by the first process from the shared memory; if the sum of the first number of the first process and the first number of the second process is less than the preset compliance number, the video image collected by the second camera at the current time is sent to the server.

[0096] It is understandable that if the first process executes faster and the second process executes slower, the "current time" of the first process is earlier than the "current time" of the second process, resulting in inconsistent acquisition times of the video images uploaded to the server by different processes. If the acquisition times of the video images uploaded to the server by different processes are inconsistent, it will not be possible to use them as evidence of violation.

[0097] In order to solve the above problems, the embodiment of the present application provides a method for monitoring compliance of a place to be monitored by group map push. The following is a detailed introduction of the method for monitoring compliance of a place to be monitored by group map push in the embodiment of the present application in conjunction with the accompanying drawings.

[0098] Reference Figure 4 , Figure 4 A flow chart of a method for monitoring compliance of a place to be monitored by pushing a group of pictures provided in an embodiment of the present application, such as Figure 4 As shown, a compliance monitoring method for a monitored place by pushing a group of pictures provided in an embodiment of the present application may include steps S401 to S409, and these steps are described in detail below.

[0099] Step S401: Create multiple processes.

[0100] The number of the multiple processes is the same as the number of cameras deployed at the place to be monitored; different processes correspond to different cameras, and the threads correspond to the cameras one by one.

[0101] Step S402: For each of the processes, determine whether an object located in a capture area corresponding to the camera satisfies a preset condition based on a video image captured in real time by the process corresponding to the camera; and detect whether a first identifier representing that the preset condition is met is stored in the shared memory.

[0102] In the embodiment of the present application, shared memory is used as a channel and bridge for interaction between different processes.

[0103] It is understandable that if a process determines that the object located in the acquisition area corresponding to the camera meets the preset condition, it will set the first mark in the shared memory, so that it can tell other processes "I have detected that the object meets the preset condition", thereby achieving synchronization of "whether the object meets the preset condition" between different processes. Therefore, each process needs to use the video image collected in real time by its corresponding camera to determine whether the object located in the acquisition area corresponding to the camera meets the preset condition, and also needs to detect whether the first mark representing the satisfaction of the preset condition is stored in the shared memory.

[0104] The objects and pre-conditions are explained below.

[0105] For example, the object may be an inherent object in the scene to be monitored, for example, if the place to be monitored is a bank clearing room, the object may be a cash box, and the preset condition may be whether the cash box is open. It is understandable that if the cash box is in an open state, there must be a corresponding staff member greater than or equal to a preset compliance number operating, so it is necessary to further determine the number of staff members in the place to be monitored.

[0106] Exemplarily, the object may be an object carried by a staff member, for example, if the place to be monitored is a handover place, the object may be a handover box, and the preset condition may be that the number of handover boxes is not zero. It is understandable that if the number of handover boxes is not zero, there must be a corresponding number of staff members greater than or equal to the preset compliance number who are performing handovers, so it is necessary to further determine the number of staff members in the place to be monitored.

[0107] Exemplarily, the object may be an object placed in the scene to be monitored, such as cash or a cash bag, and the preset condition may be the presence of cash or a cash bag. It is understandable that if cash or a cash bag exists in the scene to be monitored, there must be a corresponding number of staff members greater than or equal to the preset compliance number who are performing handover, so it is necessary to further determine the number of staff members in the place to be monitored.

[0108] Step S403: for each of the processes, determine whether there is an object that meets the preset condition through the process, if not, return to step S402.

[0109] Step S404: for each of the processes, if the object that meets the preset condition exists and the shared memory does not store the first identifier, the first identifier is stored in the shared memory through the process.

[0110] It is understandable that if the object that meets the preset condition exists and the shared memory does not store the first identifier, it means that the process is the first to detect that the preset condition is met, so the first identifier needs to be stored in the shared memory to inform other processes.

[0111] Step S405: For each of the processes, when there is an object that meets the preset condition, determine the first number of staff members located in the collection area corresponding to the camera based on the video image collected in real time by the camera corresponding to the process; store the data set corresponding to the process number in the shared memory, the data set including the serial number of the video image and the first number corresponding to the video image.

[0112] Exemplarily, different processes have different numbers.

[0113] Exemplarily, the serial number of the video image represents the acquisition time of the video image. If the serial numbers of the video images acquired by different cameras are the same, it means that the video images were acquired at the same time. Exemplarily, after determining whether the monitored place is compliant or non-compliant, the serial numbers of the video images acquired by different cameras processed by different processes are set to start from the initial value.

[0114] Step S406: The control main process determines the total number of staff members in the place to be monitored based on at least one data set corresponding to each of the process numbers obtained from the shared memory.

[0115] The main process is any one of the multiple processes.

[0116] Exemplarily, when each process reads or writes data in the shared memory, the shared memory may be locked to prevent other processes from reading or writing data to the shared memory, that is, only one process reads or writes data to the shared memory at the same time.

[0117] It is understandable that a first number can be obtained based on a frame of video images. If the total number of places to be monitored is obtained based only on the first number corresponding to a frame of video images collected by each process, the "first number obtained based on a frame of video images" must be accurate. Therefore, the present application provides a fault-tolerant mechanism. Exemplarily, each process needs to analyze the first numbers corresponding to a set number of frames of video images, so that a set number of data sets can be obtained for each process. At this time, step S406 includes but is not limited to the following steps B1 to B4.

[0118] Step B1: Acquire all data sets corresponding to the serial numbers of the plurality of processes from the shared memory.

[0119] It can be understood that the number of all data sets corresponding to each process is a set number.

[0120] Step B2: group the video images with the same sequence number into the same image set.

[0121] In the following, the number is set to 3, assuming that two processes are created, namely the first process and the second process; and assuming that two cameras are deployed in the monitored place, namely the first camera and the second camera.

[0122] Assuming that the data set is represented by {sequence number, first number}, the data set corresponding to the first process is: {002, 1}, {003, 1}, {004, 1}; the data set corresponding to the second process is: {002, 2}, {003, 2}, {004, 1}. If the video images with the same sequence number are divided into the same image set, three image sets can be obtained: [{002, 1}, {002, 2}], [{003, 1}, {003, 2}], [{004, 1}, {004, 1}].

[0123] Step B3: for each image set corresponding to the serial number, determine the sum of the first numbers corresponding to all the video images in the image set as the first value corresponding to the serial number.

[0124] Still taking the above example, the first value of the image set [{002, 1}, {002, 2}] = 1+2=3; the first value of the image set [{003, 1}, {003, 2}] = 1+2=3; the first value of the image set [{004, 1}, {004, 1}] = 1+1=2.

[0125] Step B4: Determine the total number based on the first values ​​corresponding to the plurality of serial numbers.

[0126] It is understandable that if the first values ​​corresponding to the plurality of sequence numbers are the same, the total number is the first value. If the first values ​​corresponding to the plurality of sequence numbers are not completely the same, the first value with the largest proportion is determined as the total number.

[0127] Taking the above as an example, the first values ​​corresponding to the three serial numbers are 3, 3, and 2, respectively. Since 3 accounts for the largest proportion of 2 / 3, the total number is 3.

[0128] Step S407: If the total number is greater than or equal to the preset compliance number, the main process determines compliance with the specification.

[0129] For example, the preset compliance number may be determined based on actual conditions.

[0130] Exemplarily, the preset compliance numbers corresponding to different work types may be the same or different.

[0131] Step S408: If the total number is less than the preset compliance number, the alarm flag corresponding to the main process in the shared memory is set to a valid state through the main process.

[0132] Assuming that the alarm flag is 0, indicating an invalid state, and the alarm flag is -1, indicating a valid state, the alarm flag corresponding to the main process can be set from 0 to -1.

[0133] It can be understood that after step S409 is executed, the first mark and the alarm mark in the shared memory are restored.

[0134] Step S409: For each of the processes, determine through the process whether the alarm flag corresponding to the main process in the shared memory is in a valid state. If so, set the alarm flag corresponding to the process in the shared memory to a valid state; send the video image collected by the camera corresponding to the process at the target collection time to the server, and the target collection time is the moment when the alarm flags corresponding to all the processes in the shared memory are in a valid state.

[0135] It is understandable that, other processes except the main process, if they find that the alarm flag of the main process is in a valid state, can set their own alarm flag in the shared memory to a valid state, and in this way notify all processes that they already know that an alarm is needed; if the alarm flags corresponding to all processes in the shared memory are in a valid state, it means that all processes know that an alarm is needed. In order to achieve the same acquisition time for video images sent to the server by different processes, each process can send the collected video images to the server at the moment when the alarm flags corresponding to all processes are in a valid state, that is, the target acquisition time.

[0136] The embodiment of the present application provides a method for monitoring compliance of a place to be monitored by group map push, and creates the same number of processes as the number of cameras deployed in the place to be monitored; each process needs to determine whether the object located in the collection area corresponding to the camera meets the preset conditions through the video image collected in real time by the camera corresponding to itself, and also needs to detect whether the shared memory stores a first identifier representing the satisfaction of the preset conditions, and the first identifier is set in the shared memory by the first process that determines that "the object meets the preset conditions". In this way, other processes can be told "I have detected that the object meets the preset conditions", thereby realizing the synchronization of "whether the object meets the preset conditions" between different processes. When the object meets the preset conditions, the first number of staff members located in the collection area corresponding to the corresponding camera is determined by each process based on the video image collected in real time by the camera corresponding to it, and stored in the shared memory. The main process can determine the total number of staff members in the place to be monitored based on the first number stored in the shared memory. If the total number is less than the preset compliance number, the alarm identifier corresponding to the main process in the shared memory is set to a valid state through the main process. Other processes other than the main process, if the alarm identifier of the main process is found to be in a valid state, can set their own alarm identifier in the shared memory to a valid state, and notify all processes in this way that they already know that they need to alarm. If the alarm flags corresponding to all processes in the shared memory are in valid state, it means that all processes know that an alarm is needed. In order to achieve the purpose of having different processes send video images to the server at the same acquisition time, each process can send the acquired video images to the server at the target acquisition moment when the alarm flags corresponding to all processes are in valid state.

[0137] In a possible implementation, there are multiple ways to implement step S402. The embodiments of the present application provide but are not limited to the following two methods.

[0138] The first method for implementing step S402 includes the following steps C11 to C12.

[0139] Step C11: inputting the video image captured in real time by the camera corresponding to the process into a pre-built object recognition model, and obtaining the target category of the object contained in the video image through the object recognition model.

[0140] Exemplarily, the object recognition model is trained by taking a sample video image as input and the category to which the object in the sample video image belongs as a training target.

[0141] In the embodiment of the present application, the object recognition models corresponding to different processes are different, and the functions of the object recognition models corresponding to different processes are the same.

[0142] Step C12: If the target category is cash or a cash bag or a cash box or a transfer box, it is determined that the object meets the preset condition.

[0143] It is understandable that if there is cash or cash bags in the place to be monitored, it means that the place to be monitored may be a bank clearing room. When the staff are performing clearing operations, cash or cash bags may be placed in the bank clearing room; if there are no staff or the number of staff is less than the preset compliance number, there is a certain risk.

[0144] It is understandable that if the place to be monitored has a cash box or a handover box, it means that the place to be monitored may be a handover place, and a handover personnel is required to handle the handover; if there is no staff or the number of staff is less than the preset compliance number, there is a certain risk.

[0145] The second method for implementing step S402 includes the following steps C21 to C22.

[0146] Step C21: inputting the video image captured in real time by the camera corresponding to the process into a pre-built object state recognition model, and obtaining the target category of the object contained in the video image and the state of the object through the object recognition model.

[0147] Step C21: If the target category is a cash box and the state of the cash box is an open state, it is determined that the object meets the preset condition.

[0148] It can be understood that no matter what kind of place to be monitored is, if the cash box is in an open state, staff must be present; if there are no staff or the number of staff is less than the preset compliance number, there is a certain risk.

[0149] It is understandable that there are many types of staff entering the place to be monitored, and the number of staff of the same type needs to be greater than or equal to the preset compliance number. Assuming that the number of staff belonging to the target type needs to be monitored, the implementation method of step S405 includes the following steps: inputting the video image captured by the camera in real time into a pre-built type distinction model through the process, and obtaining the first number of staff belonging to the target staff type located in the collection area of ​​the camera through the type distinction model.

[0150] Illustratively, different types of workers have different work clothes, so the type can be determined based on the worker's attire.

[0151] Exemplarily, the training process of the type distinction model includes: taking the sample video image as the input of the type distinction model, taking the number of people corresponding to each category in the sample video image as the training target, and training the obtained type distinction model.

[0152] Exemplarily, in the embodiment of the present application, the type distinction models corresponding to different processes are different, but the functions of the type distinction models corresponding to different processes are the same.

[0153] In an optional implementation, in step S409, each process may directly send the video image captured by the camera corresponding to the process at the target capture time to the server.

[0154] Exemplarily, the server may stitch multiple video images to obtain a target image.

[0155] In an optional implementation, in step S409, each process can store the video image captured by the camera corresponding to the process at the target acquisition time in a shared memory; the main process will obtain the target image by stitching the video images captured at the target acquisition time corresponding to the multiple processes respectively obtained from the shared memory; and send the target image to the server.

[0156] In an optional implementation, in step S409, each process can send the video image collected by the camera corresponding to the process at the target collection time to the transfer device; the transfer device splices the video images collected by the multiple processes respectively corresponding to the target collection time to obtain the target image; and sends the target image to the server.

[0157] In an optional implementation, each process may use the target acquisition time as the initial acquisition time and send the acquired video images of a set number of frames to the server.

[0158] For example, the number of frames can be set based on actual conditions and is not limited here. This can form a dynamic image, such as a gif image.

[0159] The shared memory provided in the embodiment of the present application may be a memory block segmented from the physical memory of the edge computing box.

[0160] A method for monitoring compliance of a place to be monitored by pushing a group of pictures provided in an embodiment of the present application is introduced above. A device for executing the method for monitoring compliance of a place to be monitored by pushing a group of pictures will be introduced below.

[0161] See also Figure 5 , Figure 5 This is a schematic diagram of the structure of a compliance monitoring device for a monitored place with group image push provided in an embodiment of the present application. Figure 5 As shown in the figure, the compliance monitoring devices of the places to be monitored pushed by the group picture include:

[0162] A creation module 501 is used to create multiple processes; the number of the multiple processes is the same as the number of cameras deployed in the place to be monitored; different processes correspond to different cameras, and the threads correspond to the cameras one by one;

[0163] The first determination module 502 is used to determine, for each of the processes, whether an object located in a collection area corresponding to the camera meets a preset condition based on a video image collected in real time by the process corresponding to the camera; and detect whether a first identifier representing that the preset condition is met is stored in the shared memory;

[0164] A triggering module 503 is used for determining, for each of the processes, whether there is the object that meets the preset condition, and if not, triggering the first determining module;

[0165] A first storage module 504 is configured to, for each of the processes, store the first identifier in the shared memory through the process if the object that meets the preset condition exists and the shared memory does not store the first identifier;

[0166] The first processing module 505 is used for determining, for each of the processes, a first number of workers located in a collection area corresponding to the camera based on a video image collected in real time by a camera corresponding to the process when there is an object that meets the preset condition; storing a data set corresponding to the number of the process in the shared memory, the data set including a serial number of the video image and the first number corresponding to the video image;

[0167] A control module 506, configured to control a main process to determine the total number of staff members in the monitored place based on at least one data set corresponding to the serial numbers of the plurality of processes obtained from the shared memory; the main process is any one of the plurality of processes;

[0168] A second determination module 507, configured to determine compliance with the specification through the main process if the total number is greater than or equal to a preset compliance number;

[0169] A setting module 508, configured to set the alarm flag corresponding to the main process in the shared memory to a valid state through the main process if the total number is less than the preset compliance number;

[0170] The second processing module 509 is used to determine, for each of the processes, whether the alarm flag corresponding to the main process in the shared memory is in a valid state, and if so, set the alarm flag corresponding to the process in the shared memory to a valid state; and send the video image collected by the camera corresponding to the process at a target collection time to the server, and the target collection time is the time when the alarm flags corresponding to all the processes in the shared memory are in a valid state.

[0171] In a possible implementation, the control module includes:

[0172] A first acquisition unit, configured to acquire all data sets corresponding to the serial numbers of the plurality of processes from the shared memory;

[0173] A division unit, used for dividing the video images with the same sequence number into the same image set;

[0174] A first determining unit is used to determine, for each image set corresponding to the serial number, a sum of first numbers respectively corresponding to all the video images in the image set as a first value corresponding to the serial number;

[0175] The second determining unit is used to determine the total number based on the first values ​​respectively corresponding to the plurality of serial numbers.

[0176] In an optional implementation, the first determining module includes:

[0177] A second acquisition unit is used to input the video image collected in real time by the camera corresponding to the process into a pre-built object recognition model, and obtain the target category of the object contained in the video image through the object recognition model;

[0178] The third determining unit is used to determine that the object meets the preset condition if the target category is cash or a cash bag or a banknote box or a transfer box.

[0179] In an optional implementation, the first processing module includes:

[0180] A third acquisition unit is used to input the video image collected by the camera in real time into a pre-built type distinction model through the process, and obtain the first number of staff members belonging to the target type located in the collection area of ​​the camera through the type distinction model.

[0181] In an optional implementation, the second processing module includes:

[0182] A storage unit, used for storing the video image collected by the camera corresponding to the process at the target collection time into the shared memory;

[0183] Correspondingly, it also includes: a third processing module, which is used to splice the video images acquired at the target acquisition time corresponding to the multiple processes obtained from the shared memory to obtain a target image; and send the target image to the server.

[0184] The present application also provides an edge computing box. Figure 6 As shown, it shows a schematic diagram of the structure of an edge computing box suitable for implementing the embodiment of the present application. The edge computing box in the embodiment of the present application may include but is not limited to fixed terminals such as PDA (personal digital assistant), PAD (tablet computer), desktop computer, etc. Figure 6 The edge computing box shown is merely an example and should not bring any limitations to the functionality and scope of use of the embodiments of the present application.

[0185] like Figure 6 As shown, the edge computing box may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 601, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 602 or a program loaded from a storage device 608 to a random access memory (RAM) 603. When the edge computing box is powered on, various programs and data required for the operation of the edge computing box are also stored in the RAM 603. The processing device 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.

[0186] Typically, the following devices may be connected to the I / O interface 605: input devices 606 including, for example, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; output devices 607 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; storage devices 608 including, for example, a memory card, a hard disk, etc.; and communication devices 609. The communication device 609 may allow the edge computing box to communicate with other devices wirelessly or by wire to exchange data. Although Figure 6 An electronic device having various devices is shown, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed instead.

[0187] Also provided in an embodiment of the present application is a computer program product including computer-readable instructions. When the computer-readable instructions are executed on an edge computing box, the edge computing box implements any one of the group map push compliance monitoring methods for monitored places provided in an embodiment of the present application.

[0188] A computer-readable storage medium is also provided in an embodiment of the present application. The storage medium carries one or more computer programs. When one or more computer programs are executed by the edge computing box, the edge computing box can implement any one of the group map push compliance monitoring methods for the monitored places provided in the embodiment of the present application.

[0189] It should be noted that the compliance monitoring method and related device for monitoring places to be monitored by group map push provided by the present invention can be used in the field of artificial intelligence or finance. The above is only an example and does not limit the application field of the compliance monitoring method and related device for monitoring places to be monitored by group map push provided by the present invention.

[0190] It should also be noted that the device embodiments described above are merely schematic, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed over multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the scheme of this embodiment. In addition, in the drawings of the device embodiments provided by the present application, the connection relationship between the modules indicates that there is a communication connection between them, which may be specifically implemented as one or more communication buses or signal lines.

[0191] Through the description of the above implementation mode, the technicians in the field can clearly understand that the present application can be implemented by means of software plus necessary general hardware, and of course, it can also be implemented by special hardware including special integrated circuits, special CPUs, special memories, special components, etc. In general, all functions completed by computer programs can be easily implemented by corresponding hardware, and the specific hardware structure used to implement the same function can also be various, such as analog circuits, digital circuits or special circuits. However, for the present application, software program implementation is a better implementation mode in more cases. Based on such an understanding, the technical solution of the present application is essentially or the part that contributes to the prior art can be embodied in the form of a software product, which is stored in a readable storage medium, such as a computer floppy disk, a U disk, a mobile hard disk, a ROM, a RAM, a disk or an optical disk, etc., including a number of instructions to enable a computer device (which can be a personal computer, a training device, or a network device, etc.) to execute the methods described in each embodiment of the present application.

[0192] In the above embodiments, all or part of the embodiments may be implemented by software, hardware, firmware or any combination thereof. When implemented by software, all or part of the embodiments may be implemented in the form of a computer program product.

[0193] The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in the embodiment of the present application is generated in whole or in part. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from a website site, a computer, a training device, or a data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, training device, or data center. The computer-readable storage medium may be any available medium that a computer can store or a data storage device such as a training device, a data center, etc. that includes one or more available media integrations. The available medium may be a magnetic medium, (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive (SSD)), etc.

Claims

1. A method for monitoring compliance of a place to be monitored by pushing a group of pictures, characterized in that: include: Create multiple processes; The number of the plurality of processes is the same as the number of cameras deployed at the location to be monitored; Different processes correspond to different cameras, and the threads correspond to the cameras one by one; For each of the processes, determining whether an object located in a collection area corresponding to the camera satisfies a preset condition based on a video image collected in real time by the camera corresponding to the process; Detecting whether a first identifier representing that the preset condition is met is stored in the shared memory; For each of the processes, determining whether there is an object that meets the preset condition through the process, and if not, returning to the step of determining whether an object located in a collection area corresponding to the camera meets the preset condition through the process based on a video image collected in real time by the camera corresponding to the object; For each of the processes, if the object that meets the preset condition exists and the shared memory does not store the first identifier, the first identifier is stored in the shared memory through the process; For each of the processes, when there is the object that meets the preset condition, determining the first number of staff members located in the collection area corresponding to the camera based on the video image collected in real time by the camera corresponding to the process; storing a data set corresponding to the process number in the shared memory, the data set including the serial number of the video image and the first number corresponding to the video image; Controlling the main process to determine the total number of staff members in the monitored place based on at least one data set corresponding to the serial numbers of the plurality of processes obtained from the shared memory; the main process is any one of the plurality of processes; If the total number is greater than or equal to the preset compliance number, compliance is determined by the main process; If the total number is less than the preset compliance number, setting the alarm flag corresponding to the main process in the shared memory to a valid state through the main process; For each of the processes, determine whether the alarm flag corresponding to the main process in the shared memory is in a valid state through the process. If so, set the alarm flag corresponding to the process in the shared memory to a valid state; send the video image collected by the camera corresponding to the process at a target collection time to the server, and the target collection time is the time when the alarm flags corresponding to all the processes in the shared memory are in a valid state.

2. The method for monitoring compliance of a place to be monitored by pushing a group of images according to claim 1, characterized in that: The control main process determines the total number of staff members in the monitored place based on at least one data set corresponding to the serial numbers of the plurality of processes obtained from the shared memory, including: Acquire all data sets corresponding to the serial numbers of the plurality of processes from the shared memory; Grouping the video images having the same sequence number into the same image set; For each of the image sets corresponding to the serial number, determine the sum of the first numbers corresponding to all the video images in the image set as the first value corresponding to the serial number; The total number is determined based on the first values ​​respectively corresponding to the plurality of serial numbers.

3. The method for monitoring compliance of a place to be monitored by pushing a group of images according to claim 1, characterized in that: The step of determining whether an object located in a collection area corresponding to the camera satisfies a preset condition based on a video image collected in real time by the camera corresponding to the camera comprises: Inputting the video image collected in real time by the camera corresponding to the process into a pre-built object recognition model, and obtaining the target category of the object contained in the video image through the object recognition model; If the target category is cash or a cash bag or a cash box or a transfer box, it is determined that the object meets the preset condition.

4. The method for monitoring compliance of a place to be monitored by pushing a group of images according to claim 1, characterized in that: The step of determining the first number of workers located in the collection area corresponding to the camera based on the video image collected in real time by the corresponding camera through the process includes: The process inputs the video image captured by the camera in real time into a pre-built type differentiation model, and the first number of workers belonging to the target type and located in the capture area of ​​the camera is obtained through the type differentiation model.

5. The method for monitoring compliance of a place to be monitored by pushing a set of images according to any one of claims 1 to 4, characterized in that: The step of sending the video image collected by the camera corresponding to the process at the target collection time to the server includes: storing the video image collected by the camera corresponding to the process at the target collection time in the shared memory; Correspondingly, the main process is also used to: stitch the video images acquired by the plurality of processes respectively corresponding to the target acquisition time obtained from the shared memory to obtain a target image; and send the target image to the server.

6. A compliance monitoring device for a place to be monitored with group map push, characterized in that: include: Create a module to create multiple processes; The number of the plurality of processes is the same as the number of cameras deployed at the location to be monitored; Different processes correspond to different cameras, and the threads correspond to the cameras one by one; A first determination module is used to determine, for each of the processes, whether an object located in a collection area corresponding to the camera satisfies a preset condition based on a video image collected in real time by the process corresponding to the camera; Detecting whether a first identifier representing that the preset condition is met is stored in the shared memory; a triggering module, configured to determine, for each of the processes, whether there is the object that meets the preset condition, and if not, trigger the first determining module; A first storage module is used for storing the first identifier in the shared memory through the process for each of the processes if there is the object that meets the preset condition and the shared memory does not store the first identifier; A first processing module is used for determining, for each of the processes, a first number of workers located in a collection area corresponding to the camera based on a video image collected in real time by a camera corresponding to the process when there is the object meeting the preset condition; storing a data set corresponding to the process number in the shared memory, the data set including the serial number of the video image and the first number corresponding to the video image; A control module, used to control a main process to determine the total number of staff members in the monitored place based on at least one data set corresponding to the serial numbers of the plurality of processes obtained from the shared memory; the main process is any one of the plurality of processes; A second determination module, configured to determine compliance with the specification through the main process if the total number is greater than or equal to a preset compliance number; A setting module, configured to set the alarm flag corresponding to the main process in the shared memory to a valid state through the main process if the total number is less than the preset compliance number; The second processing module is used to determine, for each of the processes, whether the alarm flag corresponding to the main process in the shared memory is in a valid state. If so, set the alarm flag corresponding to the process in the shared memory to a valid state; send the video image collected by the camera corresponding to the process at a target collection time to the server, and the target collection time is the time when the alarm flags corresponding to all the processes in the shared memory are in a valid state.

7. The device for monitoring compliance of a place to be monitored by group map push according to claim 6, characterized in that: The control module comprises: A first acquisition unit, configured to acquire all data sets corresponding to the serial numbers of the plurality of processes from the shared memory; A division unit, used for dividing the video images with the same sequence number into the same image set; A first determining unit is used to determine, for each image set corresponding to the serial number, a sum of first numbers respectively corresponding to all the video images in the image set as a first value corresponding to the serial number; The second determining unit is used to determine the total number based on the first values ​​respectively corresponding to the plurality of serial numbers.

8. A computer program product, characterized in that It includes computer-readable instructions. When the computer-readable instructions are executed on the edge computing box, the edge computing box implements the compliance monitoring method for the monitored place by pushing the group map as described in any one of claims 1 to 5.

9. An edge computing box, characterized in that: The method comprises at least one processor and a memory connected to the processor, wherein: The memory is used to store computer programs; The processor is used to execute the computer program so that the edge computing box can implement the compliance monitoring method for the monitored place by pushing the group map as described in any one of claims 1 to 5.

10. A computer storage medium, characterized in that: The storage medium carries one or more computer programs. When the one or more computer programs are executed by the edge computing box, the edge computing box can implement the compliance monitoring method for the monitored place by pushing the group map as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • USB camera data acquisition method and device, electronic equipment and storage medium

    CN112616024A

  • AI analysis method and system for multi-channel video streams based on multiple processes

    CN113221706A

  • Camera data sharing method and device, vehicle and storage medium

    CN116886872A

  • Video processing method and device and electronic equipment

    CN117979046A

  • Safety guardianship method, apparatus, terminal and computer readable storage medium

    WO2020125406A1