A data management method, apparatus, and computer-readable storage medium

By assigning class tags to objects to be stored, the problem of repeated storage of object-related information in multiple business libraries is solved, and efficient utilization of storage resources is achieved.

CN114332714BActive Publication Date: 2025-07-29HANGZHOU HIKVISION DIGITAL TECHNOLOGY CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202111652716.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-30
Publication Date
2025-07-29
Estimated Expiration
2041-12-30

AI Technical Summary

Technical Problem

In the prior art, the repeated storage of relevant information of objects in multiple service libraries leads to waste of storage resources.

Method used

By assigning class tags to objects to be stored, using class tags to indicate business categories, and only the relevant information of the object and the corresponding relationship between the class tags is stored in a specific storage area.

Benefits of technology

It greatly reduces the consumption of storage resources and improves the utilization efficiency of storage resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114332714B_ABST
    Figure CN114332714B_ABST
Patent Text Reader

Abstract

An embodiment of the present application provides a data management method, an apparatus, and a computer-readable storage medium, which relate to the field of data management and can reduce the consumption of storage resources for data storage. The method includes: obtaining relevant information and a service category of an object to be stored; where the relevant information includes a shape feature and attribute information; determining a class label of the object to be stored according to the service category of the object to be stored; the class label is used to indicate all service categories of the object to be stored, and the data volume of the class label is smaller than the data volume of all service categories of the object to be stored; storing the correspondence between the relevant information of the object to be stored and the class label of the object to be stored.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data management, and in particular, to a data management method, an apparatus, and a computer-readable storage medium. Background Art

[0002] In the monitoring field, in order to conveniently monitor the objects to be monitored (such as a certain target object) and determine the shape features, attribute information (such as name, gender, etc.), and types of these objects, etc., the relevant information (including features and attribute information) of the objects to be monitored will be managed by building a database in advance. Specifically, different business databases can be established, and each business database is used to store objects of the same type (which can be called business categories in this application) and their relevant information (i.e., shape features, attribute information, etc.). After storage, the uniqueness of an object can be represented by a library identification code (identity document, id)_object identification code. However, since an object may correspond to multiple types, there will be a situation where the relevant information of an object exists in multiple business databases, resulting in a waste of storage resources. Summary of the Invention

[0003] Embodiments of this application provide a data management method, an apparatus, and a computer-readable storage medium, which can reduce the consumption of storage resources by data storage.

[0004] To achieve the above object, the embodiments of this application adopt the following technical solutions:

[0005] In a first aspect, a data management method is provided, including: obtaining the relevant information and business category of an object to be stored; where the relevant information includes shape features and attribute information; determining a class label of the object to be stored according to the business category of the object to be stored; the class label is used to indicate all business categories of the object to be stored, and the data volume of the class label is smaller than the data volume of all business categories of the object to be stored; storing the correspondence between the relevant information of the object to be stored and the class label of the object to be stored.

[0006] Based on the technical solution provided by the embodiment of this application, the class label of the person to be stored can be determined according to the business category of the person to be stored. The class label can then be used to indicate the business category. After that, a specific storage area can be allocated for the person to be stored to store the correspondence between the relevant information and the class label of the stored person. In this way, since the class label can be used to indicate the business category, the person to be stored does not need to store the same information in multiple business databases as in the prior art, resulting in a waste of storage resources. Instead, it is only necessary to store the correspondence between the relevant information and the class label of the person to be stored in a specific storage area (for example, store the relevant information and the class label of the person to be stored in the same storage area). This greatly reduces the consumption of storage resources.

[0007] In a second aspect, a data management device is provided, including an acquisition module and a processing module. Among them, the acquisition module is used to acquire relevant information and business categories of an object to be stored; the acquisition module is used to acquire relevant information and business categories of an object to be stored; among them, the relevant information includes shape characteristics and attribute information; the processing module is used to determine a class label of the object to be stored according to the business category of the object to be stored acquired by the acquisition module; the class label is used to indicate all business categories of the object to be stored, and the data volume of the class label is smaller than the data volume of all business categories of the object to be stored; the storage module is used to store the correspondence between the relevant information of the object to be stored acquired by the acquisition module and the class label of the object to be stored determined by the processing module.

[0008] In a third aspect, an electronic device is provided, including a processor and a memory for storing executable instructions for processing; among them, the processor is configured to execute the executable instructions so that the electronic device implements the data management method provided in the first aspect.

[0009] In a fourth aspect, a computer-readable storage medium is provided. The computer-readable storage medium includes computer-executable instructions. When the computer-executable instructions run on an electronic device, the electronic device is caused to execute the data management method provided in the first aspect.

[0010] In a fifth aspect, a computer program product is provided, including instructions which, when running on an electronic device, cause the electronic device to execute the data management method provided in the first aspect.

[0011] It can be understood that the solutions provided in the second to fifth aspects above all correspond to the data management method in the first aspect. Therefore, the beneficial effects that can be achieved can refer to the beneficial effects in the corresponding data management method provided above, and will not be elaborated here.

[0012] It should be understood that the above general description and the following detailed description are only exemplary and explanatory, and cannot limit this application. Description of the Drawings

[0013] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the drawings required for use in the description of the embodiments or the prior art. Obviously, the following drawings are only some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.

[0014] Figure 1 Schematic diagram of the monitoring system provided in the embodiment of the present application;

[0015] Figure 2 Schematic diagram of the software architecture of a server provided in the embodiment of the present application;

[0016] Figure 3 Flow schematic of a data management method provided by an embodiment of the present application Figure 1 ;

[0017] Figure 4 Flow schematic of a data management method provided by an embodiment of the present application Figure 2 ;

[0018] Figure 5 Flow schematic of a data management method provided by an embodiment of the present application Figure 3 ;

[0019] Figure 6 Flow schematic of a data management method provided by an embodiment of the present application Figure 4 ;

[0020] Figure 7 Flow schematic of a data management method provided by an embodiment of the present application Figure 5 ;

[0021] Figure 8 Flow schematic of a server's software architecture for storing data provided by an embodiment of the present application;

[0022] Figure 9 Supplementary flow schematic of a data management method provided by an embodiment of the present application Figure 1 ;

[0023] Figure 10 Supplementary flow schematic of a data management method provided by an embodiment of the present application Figure 2 ;

[0024] Figure 11 Supplementary flow schematic of a data management method provided by an embodiment of the present application Figure 3 ;

[0025] Figure 12 Supplementary flow schematic of a data management method provided by an embodiment of the present application Figure 4 ;

[0026] Figure 13 Structure schematic of a data management device provided by an embodiment of the present application;

[0027] Figure 14 Structure schematic of an electronic device provided by an embodiment of the present application. Detailed implementation manners

[0028] Next, the technical solutions in the embodiments of the present application will be clearly and completely described in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.

[0029] It should be noted that in the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or explanations. Any embodiment or design solution described as "exemplary" or "for example" in the embodiments of the present application should not be construed as being more preferred or having more advantages than other embodiments or design solutions. Rather, the use of words such as "exemplary" or "for example" is intended to present relevant concepts in a specific manner. It should also be noted that in the embodiments of the present application, "(English: of)", "corresponding (English: corresponding, relevant)" and "corresponding (English: corresponding)" can sometimes be used interchangeably. It should be pointed out that when not emphasizing their differences, the meanings they express are the same.

[0030] In order to facilitate the clear description of the technical solutions in the embodiments of the present application, in the embodiments of the present application, words such as "first" and "second" are used to distinguish the same items or similar items with basically the same functions and roles. Those skilled in the art can understand that words such as "first" and "second" do not limit the quantity and execution order.

[0031] For the convenience of understanding, the words in the embodiments of the present application are introduced first:

[0032] Label: Classify and mark features or data (in this application, it refers to the object to be stored). For example, middle-aged, elderly, people wearing blue clothes. In this application, 1 bit (binary digit, bit) is used to represent 1 type of information. Taking "middle-aged" as an example, "1" can represent being middle-aged, and "0" can represent not being middle-aged. The same applies to other cases.

[0033] Bit (binary digit, bit): A bit is the smallest unit for representing information, which is the information contained in one bit of a binary number or the amount of information required to specifically specify 1 out of 2 options.

[0034] Business library: A library generated for classifying and managing a batch of object information (related information of the object to be stored). One business library represents one classification. For example, taking the object to be stored as a person, the business library can be classifications such as smoking population, drinking population, middle-aged population, etc., which can describe the general information of the population.

[0035] Business category: The category to which an object belongs (such as an object stored in a business library, or a to-be-stored object in the technical solution provided in this application, or any object that needs to store or has already stored relevant information in the data management solution provided in this application), such as the smoking population, etc.

[0036] Virtual library: The business library is converted into a virtual classification method according to a certain strategy, and this virtual classification is called a virtual library. Different business categories are distinguished by virtual tags in the virtual library, that is, different virtual tags in the same virtual library correspond to different business categories.

[0037] Graphics Processing Unit (GPU): The image processor is also known as the display core, visual processor, display chip, etc. It is a microprocessor specifically used for image operation work on personal computers, workstations, game consoles, and some mobile devices (such as tablets, smartphones, etc.).

[0038] Currently in the monitoring field, in order to conveniently monitor some specific objects, the relevant information of these specific objects (such as appearance features and attribute information) will be pre-built and managed in a library in advance. Specifically, the relevant information of specific objects belonging to the same type (such as the smoking population) can be stored in the same business library, and different business libraries store the relevant information of different types of specific objects. After storage, the uniqueness of an object can be represented by the library identification code_object identification code.

[0039] Exemplarily, taking three objects as three specific persons, and the ids of these three persons are human1, human2, and human3 respectively. human1, human2, and human3 belong to the first type, human3 also belongs to the second type, human2 also belongs to the third type, human1 and human3 belong to the fourth type and the eighth type, human2 and human3 also belong to the fifth type and the seventh type, and human1 belongs to the sixth type as an example, there will ultimately be eight business libraries, and the specific classification results are shown in Table 1 below.

[0040] Table 1

[0041]

[0042] Among them, lib1-lib8 are the ids corresponding to business libraries 1-8 respectively. humanX, humanX', humanX", etc. all represent the same person. After storage, humanX_libY can represent humanX stored in business library Y. It can be seen that because a person may correspond to multiple types, there will be relevant information of a person existing in multiple business libraries, resulting in a waste of storage resources.

[0043] In view of the above problems, an embodiment of the present application provides a data management method applied to a data management device, which can determine the class label of each object to be stored according to the service category of multiple objects to be stored. The class label can be used to indicate the service category. Then, a specific storage area can be allocated for each object to be stored to store the relevant information and class label of the storage object. In this way, since the class label can be used to indicate the service category, the object to be stored does not need to store the same information in multiple service libraries as in the prior art, resulting in waste of storage resources. Instead, it is only necessary to store the relevant information and class label of the object to be stored in a specific storage area. This greatly reduces the consumption of storage resources.

[0044] The data management method provided by the embodiment of the present application can be applied to a monitoring system. Figure 1 A possible structure of the monitoring system is shown. As Figure 1 shown, the monitoring system includes a server 01, a client 02, and a monitoring device 03. Figure 1 In, the monitoring devices 03-1, 03-2, and 03-3 are taken as examples of the monitoring device 03, and in practice, there may be more or fewer. Among them, the server 01 and the client 02 are communicatively connected by wireless or wired means. The monitoring device 03 and the server 01 are communicatively connected by wireless or wired means.

[0045] Exemplarily, the server 01 in the present disclosure can be a single server, a server cluster composed of multiple servers, or a cloud computing service center, and the present disclosure does not make any limitation thereto. The server 01 is mainly used to receive information of some persons to be stored sent by the client 01 and store them by using the data management method provided by the embodiment of the present application. The server 01 is also used to receive some add, delete, and modify instructions (machine addition instructions, deletion instructions, and modification instructions) from the client to process the corresponding object data. The server 01 is also used to receive some monitoring instructions from the client to monitor the corresponding objects.

[0046] To implement the data management method provided by the present application, referring to Figure 2 shown, the software structure of the server 01 can include an application layer, a conversion layer, and a storage layer.

[0047] Among them, the application layer is mainly used to manage the information of the object to be stored. After obtaining the relevant information of the object to be stored (such as shape features and attribute information), the application layer can classify the object to be stored according to the relevant information to determine the business category of the object to be stored. If the business category of the object to be stored can be directly obtained, the operation of business classification is not required. The application layer is also used to determine whether an object already exists when receiving information (such as business category) about adding a certain object. The application layer is also used to send the received add / delete / modify instructions and feature comparison instructions (which can be generated according to monitoring instructions) to the conversion layer for processing.

[0048] The conversion layer is mainly used to generate corresponding virtual libraries, virtual tags and even virtual mapping tables according to the business library classification of the object to be stored obtained from the application layer, based on a certain conversion strategy. The conversion layer is also used to determine the corresponding virtual libraries and virtual tags according to the information carried in the instructions issued by the application layer, and issue corresponding instructions to the storage layer to enable the storage layer to complete data storage or update (specifically, it can be the relevant information of a certain or some objects).

[0049] The storage layer is mainly used to determine the class label of each object to be stored according to the virtual library or virtual mapping table generated by the conversion layer. The storage layer is also used to allocate a certain storage space (which can include memory and video memory space) for each object to be stored corresponding to the virtual library to store the relevant information and class label of the object to be stored. The storage layer is also used to complete data storage or update according to the instructions issued by the conversion layer.

[0050] Of course, the above descriptions are only for illustrative purposes, and the specific functions or contents that each layer can achieve refer to the relevant descriptions in the subsequent embodiments.

[0051] Exemplarily, the client 02 in the embodiments of the present disclosure can be a mobile phone, a tablet computer, a desktop computer, a laptop computer, a handheld computer, a notebook computer, an ultra-mobile personal computer (UMPC), a netbook, as well as a cellular phone, a personal digital assistant (PDA), an augmented reality (AR) / virtual reality (VR) device, etc., which can interact with the server 01 to view the content to be viewed and make corresponding modifications. The embodiments of the present disclosure do not impose special restrictions on the specific form of the developed client.

[0052] Exemplarily, the monitoring device 03 can be a camera, or a device with a video or photo function. For example, a camera, a snapshot camera, a video camera, etc. The monitoring device 03 is specifically used to monitor objects in a specific area and report the monitoring information (i.e., a picture of the monitored object or the appearance characteristics obtained based on the picture) to the server 01. Depending on the type of the monitoring device 03, the corresponding specific area can be fixed or not. For example, when the monitoring device is a camera, and the type of the camera is a gun camera, a small hemisphere, or a large hemisphere, the corresponding specific range is unique; when the type of the camera is a dome camera, since the dome camera is provided with a high-speed stepper motor pan / tilt, the high-speed stepper motor pan / tilt is controlled to rotate, so that the specific range corresponding to the dome camera can be changed.

[0053] In addition, the specific configuration of monitoring device 03 may vary depending on the type of information uploaded by monitoring device 03 to server 01. For example, if monitoring device 03 needs to report images of objects it monitors to server 01, then the monitoring device 03 only needs to be equipped with a module capable of detecting the human body. If monitoring device 03 needs to report the physical features of objects it monitors to server 01, then in addition to being equipped with a module capable of detecting the human body, the monitoring device 03 also needs to be equipped with a module capable of extracting features from object images. Of course, in practice, monitoring device 03 may also include any other feasible functional modules depending on specific needs, and this application does not impose any specific restrictions on this.

[0054] Based on the above Figure 1 The monitoring system shown and Figure 2 The software architecture shown in Figure 3 As shown, the embodiment of the present application provides a data management method, which is applied to a data management device. The subsequent embodiments take personnel as an example to illustrate the technical solution provided by the present application. The data management device can be Figure 1 The method may include 301-303:

[0055] 301. Obtain relevant information and business categories of the personnel to be stored.

[0056] Generally, 301 can obtain relevant information and business categories of multiple people to be stored.

[0057] In one possible implementation, the client may provide the relevant information and business categories of the multiple persons to be stored to the server. Upon receiving the storage instruction sent by the client, the server may obtain the relevant information and business categories of the multiple persons to be stored from the storage instruction.

[0058] In another implementable manner, the server may extract the relevant information of all personnel previously stored according to the existing storage scheme as the relevant information of multiple personnel to be stored, and use the categories of the previously generated business libraries as the corresponding business categories of the personnel to be stored.

[0059] In yet another implementable manner, the relevant information and business categories of multiple personnel to be stored may be a combination of the relevant information and business categories of the personnel to be stored obtained by the aforementioned two methods.

[0060] In addition, in practice, the business category of the personnel to be stored may be determined by the data entry personnel before storing the personnel to be stored. It may also be classified by the server or the client according to certain classification rules after receiving the relevant information of the personnel to be stored input by the data entry personnel. This application does not make specific restrictions on this.

[0061] Exemplarily, in the embodiments of this application, the relevant information may include appearance features and attribute information. Among them, the appearance features may be information such as face recognition features extracted from the personnel pictures that can directly reflect the appearance of the personnel. The attribute information may include information such as name, gender, city, and age that indirectly indicate a certain person.

[0062] Figure 2 The application layer in the software structure shown is mainly used to implement the above-mentioned step 301.

[0063] 302. Determine the class label of the personnel to be stored according to the business category of the personnel to be stored; the class label is used to indicate all business categories of the personnel to be stored, and the data volume of the class label is smaller than the data volume of all business categories of the personnel to be stored.

[0064] In one implementable manner, multiple business categories of multiple personnel to be stored may be distinguished by creating a virtual library, and then the class label of each personnel to be stored is determined. Exemplarily, in combination with Figure 3 , referring to Figure 4 shown, step 302 may specifically include S1 and S2:

[0065] S1. Establish at least one virtual library according to the business categories of multiple personnel to be stored.

[0066] Among them, the virtual library includes at least one virtual label and at least one original label of the personnel to be stored. The virtual library is used to represent the corresponding relationship between the virtual label and the original label in the virtual library. Each virtual label corresponds to the same business category, and different virtual labels correspond to different business categories. The original label is used to indicate one business category of the personnel to which it belongs.

[0067] In addition, in order for the virtual library to classify all business categories of all persons to be stored, the sum of the numbers of virtual tags in all virtual libraries is greater than or equal to the number of types of business categories corresponding to all persons to be stored. The sum of the numbers of original tags in all virtual libraries is equal to the sum of the numbers of business categories of all persons to be stored.

[0068] Exemplarily, taking the business library classification result shown in Table 1 and the corresponding persons to be stored as an example, the original tag "human1_lib1" can be used to indicate the business category "lib1" of "human1".

[0069] Exemplarily, taking the virtual library LIB1 with three persons to be stored, namely human1, human2, and human3, and including three virtual tags (LAB0 - LAB2) as an example, the format of this virtual library can be referred to as shown in Table 2 below.

[0070] Table 2

[0071]

[0072] Among them, LIB1 can be the id of this virtual library, and "human1_lib1" can be the original tag corresponding to the business category "lib1" of "human1".

[0073] It should be noted that the id of a person (such as a person to be stored) in this application (i.e., "humanX" in the embodiments of this application) can be information such as the name or ID card of this person, or can be automatically generated by the server, and this application does not make specific limitations on this.

[0074] Because in reality, the numbers of business categories of different persons to be stored are different. If this is not considered and a virtual library is directly generated, the number of virtual tags in this virtual library will be the same as the largest one among the numbers of business categories of all persons to be stored. And since the class tags of the stored persons are determined based on the virtual library, in this way, the class tags of each person to be stored finally generated will be very long or numerous. This will result in a large amount of storage resources being required for storing the class tags finally. Moreover, in subsequent monitoring tasks, if it is necessary to determine which business category the monitored person belongs to, due to the long class tags, the latency will be relatively high. Therefore, optionally, in combination with Figure 4 , referring to Figure 5 as shown, S1 can specifically include S11 and S12:

[0075] S11. When the number of business categories of each person to be stored is less than or equal to the preset maximum number of virtual tags, only one virtual library is established.

[0076] In this application, the preset maximum number of virtual tags can be determined based on aspects such as the amount of storage resources of the server, the number of business categories of the actual personnel to be stored, and the performance of the computing platform (used for feature comparison and business category screening determination in monitoring tasks). The more storage resources there are, the larger the preset maximum number of virtual tags can be. The preset maximum number of virtual tags should be closer to the quantity value with the largest proportion among the number of business categories of the actual personnel to be stored. For example, if the numbers of business categories of three personnel to be stored are 2, 2, and 3 respectively, the preset maximum number of virtual tags can be 2. The stronger the performance of the computing platform, the larger the preset maximum number of virtual tags can also be.

[0077] Exemplarily, taking the business library classification of three personnel to be stored, namely human1, human2, and human3, as shown in Table 3 below as an example, the finally established first virtual library LIB1 can be as shown in Table 4.

[0078] Table 3

[0079]

[0080] Table 4

[0081]

[0082] Among them, humanX_libY is the original tag corresponding to the business category of libY of humanX. It can be seen that for the situation where the number of business categories of each personnel to be stored is less than or equal to the preset maximum number of virtual tags, only one virtual library containing the first quantity of virtual tags is required to successfully complete the correspondence between all the original tags and the virtual tags, that is, to place the original tags well in the appropriate positions in this virtual library. If there is a corresponding original tag for a certain virtual tag, the corresponding position in the corresponding class tag is set to "1", otherwise it is set to "0". The class tags of the subsequent three personnel can be referred to as shown in Table 5 below.

[0083] Table 5

[0084]

[0085]

[0086] Among them, the class tag of human1 is 100, the class tag of human2 is 101, and the class tag of human3 is 110. And this is also the class tag data finally stored in the storage area corresponding to each personnel.

[0087] Taking the relevant information of each person, including physical characteristics and attribute information, where the physical characteristics have 1024 bytes of data and the attribute information has 1024 bytes of data as an example. Referring to Table 3, it can be seen that if the relevant information of these three people is stored according to the existing data management scheme, the relevant information of human1, human2, and human3 needs to be stored in the storage area corresponding to the lib1 business library, the relevant information of human3 needs to be stored in the storage area corresponding to the lib2 business library, and the relevant information of human2 needs to be stored in the storage area corresponding to the lib3 business library. A total of the relevant information of 5 people needs to be stored, and the size of the final required storage space is (1024 + 1024) * 5 = 10240 bytes.

[0088] Referring to Table 5, only the relevant information of three people (human1, human2, and human3) and the corresponding class labels need to be stored, and one bit in each class label is only 1 bit of data. Then the size of the final required storage space is (1024 + 1024 + 3 / 8) * 3 = 6145.125 bytes. One byte has eight bits, and each person's class label in Table 5 has three bits, that is, the data volume of each person's class label in Table 5 is 3 / 8 of a byte. Here, 3 / 8 is used to calculate the total data volume of all data of the three people in Table 5, and 3 / 8 is used to represent the data volume of each person's class label.

[0089] It can be seen that in the above situation, the technical solution provided by the embodiment of the present application can greatly reduce the consumption of storage resources.

[0090] S12. In the case where there are persons to be stored among all persons to be stored whose number of business categories is greater than the preset maximum virtual label number, establish multiple virtual libraries.

[0091] Based on the technical solutions corresponding to S11 and S12, an appropriate number of virtual libraries can be established, and the data volume of the class labels of most persons to be stored is also within an appropriate range, ensuring the effective utilization of storage resources.

[0092] Further, in combination with Figure 5 , referring to Figure 6 shown, S12 may include S121 - S122 (S122 may specifically be S122A or S122B):

[0093] S121. Determine the original labels of all persons to be stored according to the business categories of all persons to be stored.

[0094] Exemplarily, taking the persons corresponding to the business library classification results shown in Table 1 as the persons to be stored, and the original label is composed of the person id and the business library id as an example, the original labels of all persons to be stored finally obtained can be referred to the following Table 6.

[0095] Table 6

[0096]

[0097] In an implementable manner, after S121, S122A can be executed:

[0098] S122A. Establish at least two target virtual libraries based on the original tags of all personnel to be stored.

[0099] In an implementable manner, establishing the target virtual library may specifically include the following steps: Select the original tags corresponding to a preset maximum number of virtual tags for several first service categories to construct the target virtual library. Among them, the first service category is one of all service categories of all personnel to be stored; the number of original tags corresponding to each first service category is greater than the number of original tags corresponding to any service category that has not been selected among all service categories of all personnel to be stored. The target virtual library includes a preset maximum number of virtual tags.

[0100] Among them, the original tags corresponding to the first service category specifically refer to all original tags that can indicate the first service category.

[0101] Specifically, the above steps of establishing the target virtual library can be executed multiple times until all the original tags are filled into the target virtual library.

[0102] The significance of the limitation that "the number of original tags corresponding to each first service category is greater than the number of original tags corresponding to any service category that has not been selected among all service categories of at least one person to be stored" is that: it can make the first tags selected each time when executing the first step be the part of service categories with the largest number of corresponding original tags that have not been selected, so that the total data volume of the class tags of the personnel to be stored finally obtained can be smaller. A specific example will be used to prove this later.

[0103] Exemplarily, with the preset maximum number of virtual tags being 3 and the original tags of all personnel to be stored as shown in Table 6, then N can be obtained as 2, and the virtual library LIB obtained by executing the step of establishing the target virtual library for the first time is as shown in Table 7 below.

[0104] Table 7

[0105]

[0106] It can be seen that the first service categories selected when executing the first step for the first time are lib1, lib4, and lib8, and these three service categories are also the service categories with the top three corresponding original tag quantities among all service categories in Table 6.

[0107] After that, the virtual library LIB2 obtained by the second execution of the step of establishing the target virtual library can be as shown in Table 8 below.

[0108] Table 8

[0109]

[0110] It can be seen that the first service categories selected in the second execution of the step of establishing the target virtual library are lib5, lib7, and lib2, and these three service categories are also the service categories among all the remaining service categories in Table 6 whose corresponding original labels rank among the top three.

[0111] After that, the virtual library LIB3 obtained by the third execution of the step of establishing the target virtual library can be as shown in Table 9-1 below.

[0112] Table 9-1

[0113]

[0114] It can be seen that the first service categories selected in the third execution of the step of establishing the target virtual library are lib3 and lib6, and these two service categories are also all the remaining service categories in Table 6.

[0115] In another implementable way, after S121, S122B is executed:

[0116] S122B. Establish at least one target virtual library and an end virtual library based on the original labels of all the persons to be stored.

[0117] Among them, the step of establishing the target virtual library can refer to the relevant description in the foregoing S122A and will not be elaborated here. The step of establishing the end virtual library can be: after establishing at least one target virtual library, select the original labels corresponding to the second service categories that have not been selected before to construct the end virtual library. Among them, the number of virtual labels included in the end virtual library is greater than or equal to the number of the second service categories.

[0118] It should be noted that S122B can be a special case of S122A. In S122A, since the number of virtual labels in each target virtual library is the same, and because the number of types of service categories of all the persons to be stored may not be divisible by the preset maximum number of virtual labels, so in the technical solution corresponding to S122A, there may be a virtual label in the finally generated target virtual library that does not have a corresponding original label, and for the purpose of saving storage resources, this virtual label can not exist, and for this purpose, S122B can be used.

[0119] Exemplarily, based on the examples corresponding to the foregoing Tables 6-8, the end virtual library LIB3 finally obtained in the step of S122B can be as shown in the previous Table 9-1 or Table 9-2 below.

[0120] Table 9-2

[0121]

[0122] It can be seen that the original tags corresponding to lib3 and lib6 exist in the final virtual library. Since only the original tags corresponding to these two business categories remain in the end, there can be only two virtual tags in the final virtual library as shown in Table 9-2, or there can be the preset maximum number of virtual tags as shown in Table 9-1. Which one to choose specifically can be determined according to actual needs and is not specifically restricted here.

[0123] When selecting the virtual library with the preset maximum number of virtual tags as shown in Table 9-1 as the final virtual library, the aforementioned S122B can be converted to S122A.

[0124] In addition, taking the original tags of all personnel to be stored as shown in Table 6 and the preset maximum number of virtual tags being 3 as an example, if the first business category in the aforementioned step of establishing the target virtual library is randomly selected from the business categories that have not been selected before, the three final virtual libraries LIB1-LIB3 can be as shown in Table 10 below.

[0125] Table 10

[0126]

[0127] It can be seen that, taking the example that if there is a corresponding original tag for a certain virtual tag, the corresponding position in the corresponding class tag is set to "1", otherwise it is set to "0", the total data volume of the class tags of the personnel to be stored in all virtual libraries in Table 10 is 27bit, while the total data volume of the class tags of the personnel to be stored in all virtual libraries shown in Table 7-Table 9 (specifically referring to Table 9-1) is 21bit. Therefore, the selection rule of the first business category in the aforementioned step of establishing the target virtual library can reduce the consumption of storage resources.

[0128] It should be noted that, combining the relevant content of Table 6-Table 9 (Table 9-1), when selecting the first business category in the step of establishing the target virtual library, in addition to the rules stated in the aforementioned step of establishing the target virtual library, each time the first business category is selected, it is best to make the personnel to be stored indicated by the original tags corresponding to all the first business categories the same (for example, the original tags corresponding to Lib4 and Lib7 in LIB1 shown in Table 7 both indicate human1 and human3), otherwise it will also cause an increase in the data volume of the class tags of the personnel to be stored finally.

[0129] For example, taking the case where the original tags of all personnel to be stored are as shown in Table 6 and the preset maximum number of virtual tags is 3. For the first selection of the first business category, the corresponding original tags with the top three quantities can be selected, namely lib1, lib4, and lib5. For the second selection of the first business category, the original tags with the top three quantities among the remaining business categories can be selected, namely lib2, lib7, and lib8. The last virtual library selects the original tags corresponding to lib3 and lib6 to fill in. The final three virtual libraries LIB1 - LIB3 can be as shown in Table 11.

[0130] Table 11

[0131]

[0132]

[0133] It can be seen that the total data volume of the class tags of the personnel to be stored in all virtual libraries in Table 11 will be 24 bit, which is larger than the total data volume of the class tags of the personnel to be stored in all virtual libraries indicated in Tables 7 - 9 (Table 9 - 1). It can be seen that if we want to ensure the minimum data volume of the class tags, when selecting the first business category in the steps of establishing the target virtual library, we also need to make the personnel indicated by the original tags corresponding to all first business categories the same as much as possible.

[0134] Based on the technical solutions corresponding to the foregoing S121 - S123, at least one virtual library can be created in a more appropriate manner, so that the data volume of the class tags of the personnel to be stored finally obtained based on the at least one virtual library is also better, reducing the consumption of storage resources.

[0135] S2. Determine the class tags of the personnel to be stored according to the corresponding relationship between the virtual tags and the original tags of the personnel to be stored in at least one virtual library.

[0136] Here, the virtual tag of the personnel to be stored corresponding to a certain virtual library refers to the virtual tag of the personnel to be stored to which the original tag corresponding to it belongs as the same personnel to be stored. The original tag of the personnel to be stored corresponding to a certain virtual library is the original tag belonging to the personnel to be stored in the virtual library. The corresponding relationship between the virtual tag and the original tag of the personnel to be stored corresponding to a certain virtual library can refer to whether the virtual tag corresponding to the personnel to be stored in the virtual library has the original tag corresponding to the personnel to be stored.

[0137] For example, taking one virtual library shown in Table 2 as an example of at least one virtual library, the virtual tags corresponding to human1 are LAB0 - LAB2, the original tag for human1 is human1_lib1, and the correspondence between the virtual tag and the original tag for human1 is that human1_lib1 corresponds to LAB0, and LAB1 and LAB2 do not have corresponding original tags.

[0138] In addition, in order to make the amount of data of the class label less than the amount of data of all business categories of the person to be stored to which it belongs, the class label can be generated in the form of binary data. In one implementable way, the determination method of the class label can be: if a certain virtual tag has a corresponding original tag, then set the corresponding position in the corresponding class label to "1", otherwise set it to "0".

[0139] Exemplarily, taking three virtual libraries shown in Table 7 - Table 9 (specifically referring to Table 9 - 1) as an example of at least one virtual library, the class label of each person to be stored finally determined can be referred to Table 12.

[0140] Table 12

[0141]

[0142] It can be seen that the class label of human1 specifically includes: 111 corresponding to LIB1 and 010 corresponding to LIB3; the class label of human2 specifically includes: 100 corresponding to LIB1, 110 corresponding to LIB2, and 100 corresponding to LIB3; the class label of human3 specifically includes: 111 corresponding to LIB1 and 111 corresponding to LIB2.

[0143] The business categories indicated by the original tags corresponding to each virtual tag in the virtual library are the same. As shown in Table 2, the original tags corresponding to LAB0 all need to correspond to or indicate the business category of lib1, and the second half of the original tags corresponding to LAB0 should all be lib1. Of course, the person id and its related content included in the above virtual library instance, that is, the "person id" and "human1" - "human3" in Table 2, are for making the structure of the virtual library more reasonable, more convenient to use and explain. Because the original tag can itself indicate the person to be stored to which it belongs, the virtual library in practice may not include the person id and its related content in the virtual library instance shown in Table 2. In addition, in subsequent embodiments, for the convenience of explanation, all examples are based on the virtual library including the person id and its related content.

[0144] Specifically, the above S1 is implemented by the conversion layer in the software architecture shown by Figure 2 and the S2 step is implemented by the storage layer in the software architecture shown by Figure 2

[0145] Based on the technical solutions corresponding to S1 and S2, it is possible to smoothly obtain the class labels that can characterize the business category for each person to be stored, which is convenient for subsequently storing the relevant information and business category of the person to be stored in a more storage space-saving manner.

[0146] In some embodiments, for the convenience of statistics and obtaining class labels, step 302 may further include: constructing a virtual mapping table based on all virtual libraries, and determining the class label of each person to be stored according to the virtual mapping table.

[0147] Among them, the virtual mapping table may be a simple combination of at least one virtual library. Exemplarily, taking the example that at least one virtual library includes three virtual libraries shown in Table 7 - Table 9 (Table 9 - 1), the finally determined virtual mapping table may be as shown in Table 13 below.

[0148] Table 13

[0149]

[0150] For the specific method of determining the class label, reference may be made to the relevant descriptions in the foregoing embodiments, which will not be elaborated here.

[0151] In addition, the steps or processes for determining the class label in the foregoing embodiments may be implemented by the storage layer in the software architecture shown in Figure 2 shown.

[0152] 303. Store the correspondence between the relevant information of the person to be stored and the class label of the person to be stored.

[0153] In an implementable manner, when specifically executing step 303, it may be to allocate a corresponding storage area for each person to be stored, and store the relevant information and class label of the person in the storage area corresponding to each person to be stored. Specifically, since it is necessary to compare the appearance features (such as facial recognition features) of the monitoring personnel and the person to be stored and determine the business category during subsequent monitoring, a part of the storage area of each person to be stored can be memory and a part can be video memory. Among them, the memory is used to store the attribute information in the relevant information of the person to be stored, and the video memory stores the features and class label in the relevant information.

[0154] Here, it should be noted that since the class labels of the personnel to be stored may be obtained from multiple virtual libraries, and the business categories corresponding to each virtual library are different, in order to conveniently determine the business category of the personnel to be stored accurately based on the previously obtained virtual libraries and class labels, when storing the class labels, the corresponding relationship between each part of the class label and the virtual library can also be stored. Specifically, the identifier of the virtual library can be added before each corresponding part of the virtual library. For example, different virtual libraries can be represented by binary data. For example, taking the instance corresponding to Table 12 as an example, the class label finally stored for human1 can be 00 111 10 010. Among them, the first two digits "00" can be used to indicate LIB1, the following "111" is the part of the class label corresponding to LIB1, the subsequent "10" can be used to indicate LIB3, and the last "010" is the part of the class label corresponding to LIB3. Of course, in practice, there can also be other storage methods, and the present application does not make specific restrictions on this.

[0155] Based on the above implementation method, the storage resource consumption when storing the relevant information and business category of the personnel to be stored can be greatly reduced.

[0156] In practice, the storage of the relevant information of personnel is ultimately for subsequent monitoring. During the monitoring process, it is necessary to compare the external features of the monitored personnel with the external features of the stored personnel, and obtain the business category of the finally matched personnel as part of the monitoring result. The comparison is executed by the GPU. Since there may be many stored personnel, in order to obtain the comparison result faster, it is best for the GPU to use the external features of multiple stored personnel to compare with the external features of the monitored personnel simultaneously.

[0157] However, based on the existing technology, to achieve this, it is necessary to make the total amount of data of the external features of multiple personnel to be stored and the information indicating the business category extracted by the GPU from the video memory the same. Therefore, based on this, in order to reduce the storage resource consumption while ensuring that the efficiency of subsequent GPU feature comparison is not low, a corresponding storage area (including the memory storage space for storing attribute information and the video memory storage space for storing external features) needs to be allocated for each personnel to be stored corresponding to each virtual library. At the same time, in order to conveniently find the data storage location based on the virtual library subsequently, the corresponding relationship between each virtual library and the storage area of each personnel to be stored corresponding to it will also be established. Then, the relevant information of each personnel to be stored corresponding to the virtual library and the part of the class label corresponding to the virtual library will be stored in the corresponding storage area.

[0158] In this application, step 303 is specifically implemented by Figure 2 the storage layer in the software architecture shown.

[0159] Based on the foregoing description, optionally, in combination with Figure 3 , referring to Figure 7 shown, step 303 may specifically include 3031 and 3032:

[0160] 3031. Allocate a corresponding storage area for each person to be stored corresponding to the virtual library.

[0161] Exemplarily, taking the example corresponding to Table 12 as an example, there will ultimately be 7 storage areas for persons to be stored, and these 7 persons to be stored are respectively: human1 in LIB1, human2 in LIB1, human3 in LIB1, human2 in LIB2, human3 in LIB2, human1 in LIB3, and human3 in LIB3.

[0162] 3032. Store the relevant information of each person to be stored corresponding to the virtual library and the part corresponding to the virtual library in the class label in the corresponding storage area.

[0163] Exemplarily, in combination with the foregoing embodiments, taking the preset maximum virtual label as 64 and the number of business library types (i.e., business categories) of all persons to be stored as 1024 as an example, when the technical solutions corresponding to 3031 and 3032 are implemented by the Figure 2 shown software architecture, the specific scenario process may refer to Figure 8 shown. Among them, the application layer is used to classify all persons to be stored (human1, human2... humanN) into 1024 business categories, that is, lib1 - lib1024.

[0164] After that, the conversion layer will establish 16 virtual libraries LIB1 - LIB64, and each virtual library includes 64 virtual labels such as LAB0 - LAB63, which are used to classify 1024 business categories, that is, the original labels corresponding to 1024 business categories stored in the foregoing embodiments.

[0165] Then, the storage layer will allocate different storage areas for each person to be stored in each virtual library (including the storage space in the memory or hard disk (mainly storing attribute information), and the storage space in the GPU video memory (mainly storing shape features and class labels)). The specific quantity is the number of virtual libraries * the number of persons to be stored. Among them, LIBX_human1 refers to human1 in the virtual library LIBX.

[0166] In the technical solutions corresponding to 3031 and 3032, in order to ensure that the size of the partial class labels stored in the storage space of each person to be stored is consistent, the number of virtual labels in the last virtual library in the foregoing embodiments should be equal to the preset maximum virtual label number (for example Figure 8As shown in 64). In this way, for each person to be stored in each virtual library, the class label corresponding to the person to be stored corresponds to the same amount of data in the part of the virtual library (such as Figure 8 The Long string shown in, 8 bytes, 64 bits).

[0167] Based on the technical solution provided in the embodiments of the present application, the class label of each person to be stored can be determined according to the business categories of multiple persons to be stored. The class label can be used to indicate the business category. Then, a specific storage area can be allocated for each person to be stored to store the corresponding relationship between the relevant information of the stored person and the class label. In this way, because the class label can be used to indicate the business category, the person to be stored does not need to store the same information in multiple business libraries as in the prior art, resulting in waste of storage resources. Instead, the relevant information of the person to be stored and the class label can be stored in a specific storage area. This greatly reduces the consumption of storage resources.

[0168] In another implementable manner, when step 303 is specifically executed, it can also be that after storing the relevant information and class label of the person to be stored in different storage areas, a correspondence table of the relevant information and class label of the person to be stored is stored in both storage areas. Or, it can also be that after storing the relevant information and class label of the person to be stored in different storage areas, a correspondence table of the relevant information and class label of the person to be stored is stored in another storage area. Of course, it can also be any other feasible manner, and the present application does not make specific limitations on this.

[0169] In some embodiments, after storing all the relevant information and class labels of the persons to be stored, there may still be a need to add some relevant information and business categories of new persons. So referring to Figure 9 As shown, the method further includes S901 - S909:

[0170] S901. Receive an addition instruction.

[0171] Among them, the addition instruction carries the relevant information of the target person and the business category of the target person. The addition instruction is used to indicate storing the relevant information and business category of the target person.

[0172] The relevant information may include appearance characteristics and attribute information, and the relevant information may also include the picture and attribute information of the target person. In the case where the relevant information may include the picture and attribute information of the target person, the server will determine the appearance characteristics of the target person based on the picture before step S902. How to determine specifically can be any feasible feature extraction method, and the present application does not make specific limitations on this.

[0173] The addition instruction can specifically be generated by the client after receiving the relevant operations of the user and sent to the server.

[0174] S902. When it is determined that the relevant information of the target person is not stored, determine the original label of the target person according to the business category of the target person.

[0175] Specifically, determining whether the relevant information of the target person is stored can be done by searching for the relevant information (such as name, gender, etc.) in the attributes of the relevant information in the add instruction from the relevant information of the persons to be stored that have been stored, or by generating a person ID for the target person according to certain rules based on the relevant information and then combining with the virtual library, or by comparing the appearance features in the relevant information of the add instruction with the appearance features of the persons to be stored that have been stored.

[0176] There is also a special case. Although it is determined that the relevant information of the target person has been stored using the attribute information in the relevant information of the add instruction, the similarity threshold after comparing the appearance features in the relevant information of the add instruction with the appearance features of the persons to be stored that have been stored is less than a certain threshold (such as 85%). For example, if the appearance features of the target person were stored 10 years ago, this situation may occur. At this time, relevant instructions need to be sent to the client to let the client operator determine whether they think the relevant information of the target person has been stored. If an instruction is received determining that the relevant information of the target person has been stored, it is determined that the relevant information of the target person is stored; otherwise, it is determined that the relevant information of the target person is not stored.

[0177] Among them, if it is determined by comparing the appearance features in the relevant information of the add instruction with the appearance features of the persons to be stored that have been stored, in order to ensure the accuracy of the comparison, when the similarity between the appearance features of a certain person to be stored and the appearance features of the target person is greater than a certain threshold (such as 85%), all their information is sent to the client for the client user to identify. Then, in the case of receiving a determination instruction, it is determined that the two are the same person. Otherwise, they are not the same person. Exemplarily, generally, the server sends the pictures of both to the client, and the pictures of both can exist in the attribute information of their relevant information.

[0178] Exemplarily, taking the persons corresponding to Tables 7 - 9 (specifically Table 9 - 1) that have been stored as the persons to be stored, and the ID of the target person is human4, and the business categories are lib4, lib8, and lib9 as an example, the original labels can be human4_lib4, human4_lib8, and human4_lib9.

[0179] S903. Update the first virtual library corresponding to the third business category according to the original label corresponding to the third business category of the target person.

[0180] After S903, S904 is executed. At this time, after S904, S905 is executed.

[0181] Among them, the third business category is the business category among all business categories corresponding to at least one virtual library in the business categories of the target person.

[0182] Exemplarily, taking the person to be stored who has been stored as the person corresponding to Tables 7 - 9 (specifically Table 9 - 1), the id of the target person is human4, and the business categories are lib4, lib8, and lib9 as an example. Here, the third business category is lib4 and lib8. The first virtual library is LIB1.

[0183] The updated first virtual library is shown in Table 14 below.

[0184] Table 14

[0185]

[0186] S904. Establish at least one new virtual library according to all the fourth business categories of the target person and their corresponding original labels.

[0187] Among them, the fourth business category is the business category of the target person other than the third business category. The new virtual library includes at least one virtual label and the original labels corresponding to at least one fourth business category of the target person; the new virtual library is used to represent the correspondence between the virtual labels and the original labels in the new virtual library; the sum of the numbers of virtual labels in all new virtual libraries is greater than or equal to the number of types of all business categories corresponding to the target person; the sum of the numbers of original labels in all new virtual libraries is equal to the number of fourth business categories of the target person.

[0188] Specifically, the number of new virtual libraries to be established depends on the number of fourth business categories. If the number of fourth business categories is less than or equal to the number of virtual labels of the previously established virtual library (for the purposes of the technical solutions corresponding to 3031 and 3032, the number of virtual labels in each virtual library is the same, that is, the number of virtual labels in the new virtual library is the same as the number of virtual labels in the previously established virtual library), then only one new virtual library needs to be established. If the number of fourth business categories is greater than the number of original labels of the previously established virtual library, then M new virtual libraries need to be established, where M is the ceiling of the quotient of the number of fourth business categories divided by the number of virtual labels of the previously established virtual library.

[0189] Exemplarily, taking the person corresponding to Tables 7 - 9 (specifically Table 9 - 1) among the stored persons to be stored as an example, with the id of the target person being human4 and the business categories being lib4, lib8, and lib9, here the fourth business category is lib9, and the corresponding original label is human4_lib9. At this time, only a virtual library needs to be newly created, based on the technical solutions corresponding to 3031 and 3032, and the virtual library LIB4 can be referred to as shown in Table 15 below.

[0190] Table 15

[0191]

[0192] In some other embodiments, if there are some virtual labels in the existing virtual library that do not have corresponding original labels, then a part of the original labels corresponding to all the fourth business categories can be stored in the corresponding virtual library. That is, if there are X virtual labels in the existing virtual library that do not have corresponding original labels, then the original labels corresponding to the X fourth business categories can be stored in the corresponding virtual library to complete the update.

[0193] Exemplarily, taking the person corresponding to Tables 7 - 9 (specifically Table 9 - 1) among the stored persons to be stored as an example, with the id of the target person being human4 and the business categories being lib4, lib8, and lib9, here the fourth business category is lib9, and the corresponding original label is human4_lib9. At this time, because LAB2 in the virtual library LIB3 does not have a corresponding original label, then human4_lib9 can be filled into this virtual library, and the final virtual library LIB3 can be referred to as shown in Table 16 below.

[0194] Table 16

[0195]

[0196] S905. Determine the class label of the target person according to the updated first virtual library and at least one newly created virtual library.

[0197] Exemplarily, taking the examples corresponding to Table 14 and Table 15 as an example, if the determination method of the class label can be: if a certain virtual label has a corresponding original label, then set the corresponding position in the corresponding class label to "1", otherwise set it to "0". Then the class label of the target person human4 includes: 011 corresponding to LIB1, 100 corresponding to LIB4.

[0198] It should be noted that in practice, there may not be the above S904 step, and no relevant processing (i.e., updating the class label and storing the corresponding data) may be done for the fourth business category either. At this time, S905 is to update the class label of the target person based on the updated first virtual library.

[0199] S906. Store the correspondence between the relevant information of the target person and the class label of the target person.

[0200] In an implementable manner, S906 can specifically store the part of the relevant information of the target person and the class label corresponding to the first virtual library in the first virtual library and the storage area corresponding to the target person, and store the part of the relevant information of the target person and the class label corresponding to the newly created virtual library in the newly created virtual library and the storage area corresponding to the target person.

[0201] Among them, the part of the class label corresponding to the first virtual library refers to the part of the class label obtained according to the first virtual library, and the same applies to the part of the class label corresponding to the newly created virtual library. The same applies to the subsequent relevant content, and it will not be elaborated later.

[0202] Optionally, a corresponding storage area needs to be established for the target person before step S906, and then the subsequent step S906 can store all the relevant information and class labels of the target person in this storage area. At this time, this storage area is a combination of the storage area corresponding to the first virtual library and the target person and the storage area corresponding to the newly created virtual library and the target person.

[0203] Optionally, based on the technical solutions corresponding to 3031 and 3032, two different storage areas (for example, the first storage area corresponding to human4 in LIB1 and the second storage area corresponding to human4 in LIB4) need to be established for the target persons human4 corresponding to the virtual library LIB1 and the virtual library LIB4 respectively before step S906 is executed, and then S906 is executed. Specifically, store the part of the relevant information of the target person and the class label corresponding to the first virtual library in the first storage area, and store the part of the relevant information of the target person and the class label corresponding to the newly created virtual library in the second storage area.

[0204] S907. When it is determined that there is historical relevant information of the target person stored, and the original label corresponding to the third business category of the target person does not exist in at least one virtual library, if the first original label corresponding to the first virtual label of the second virtual library does not exist in at least one virtual library, and the business category corresponding to the first virtual label does not exist or is the third business category, then use the original label corresponding to the third business category of the target person as the first original label to update the second virtual library.

[0205] Among them, the second virtual library is a virtual library that includes the original label corresponding to the target person (but the first original label does not exist in the second virtual library), and the original label corresponding to the third business category of the target person refers to the original label that can indicate the third business category of the target person.

[0206] When it is determined that the historical relevant information of the target person is stored and the original tags corresponding to the third business category of the target person exist in at least one virtual library, it is not necessary to update or modify all the information corresponding to the third business category.

[0207] Exemplarily, taking the person to be stored as the person corresponding to Tables 7 - 9 (specifically Table 9 - 1), the id of the target person is human2, the business categories are lib4, lib8, and lib9, and the original tags are human2_lib4, human2_lib8, and human2_lib9. At this time, the third business categories are lib4 and lib8.

[0208] It can be seen that human2_lib4 and human2_lib8 do not exist in the existing virtual libraries. The original tags corresponding to lib4 and lib8 in LIB1 are both empty, and all the original tags of LAB2 do not exist in LIB3 and the corresponding business categories also do not exist. Then, at this time, LIB1 and LIB3 can be used as the second virtual libraries. It is possible to use only LIB1 as the second virtual library, or both LIB1 and LIB3 as the second virtual libraries.

[0209] In the case of using only LIB1 as the second virtual library, the updated LIB1 finally obtained can be referred to as shown in Table 17 below.

[0210] Table 17

[0211]

[0212] In the case of using both LIB1 and LIB3 as the second virtual libraries, the updated LIB1 and LIB3 finally obtained can be referred to as shown in Table 18 and Table 19 below.

[0213] Table 18 [[ID=2...]]

[0214]

[0215] Table 19

[0216]

[0217] Of course, human2_lib4 may not exist in Table 18, and human2_lib8 can be placed in the vacant position corresponding to LAB2. At this time, human2_lib8 in Table 19 can be replaced by human2_lib4.

[0218] Execute S904 after S907. At this time, execute S908 after S904.

[0219] For the specific implementation process of S904, reference can be made to the relevant description of S904 in the foregoing embodiments. In a specific example, it is only necessary to change human4 to human2, which will not be elaborated here.

[0220] Exemplarily, the newly created virtual library LIB4 can be as shown in Table 20 below.

[0221] Table 20

[0222]

[0223] S908. Update the class label of the target person according to the updated second virtual library and at least one newly created virtual library to obtain the updated class label of the target person.

[0224] Exemplarily, taking the examples corresponding to Table 17 and Table 20 as an example, if the determination method of the class label can be: if there is a corresponding original label for a certain virtual label, then set the corresponding position in the corresponding class label to "1", otherwise set it to "0". Then the updated class label of the target person human2 includes: 111 corresponding to LIB1, 110 corresponding to LIB2, 100 corresponding to LIB3, and 100 corresponding to LIB4. It should be noted that in practice, the above S904 step may not exist, and for the fourth service category, it may not be stored either. In this case, S908 is to update the class label of the target person according to the updated second virtual library and at least one newly created virtual library to obtain the updated class label of the target person.

[0225] It should be noted that in practice, the above S904 step may not exist, and for the fourth service category, no relevant processing (i.e., updating the class label and storing the corresponding data) may be performed either. In this case, S908 is to update the class label of the target person based on the updated second virtual library to obtain the updated class label of the target person.

[0226] S909. Store the correspondence between the relevant information of the target person and the updated class label of the target person.

[0227] In an implementable manner, S909 can specifically be: store the part corresponding to the second virtual library in the relevant information of the target person and the updated class label in the second virtual library and the storage area corresponding to the target person, and store the part corresponding to the newly created virtual library in the relevant information of the target person and the updated class label in the newly created virtual library and the storage area corresponding to the target person.

[0228] For the specific implementation of S909, reference can be made to the relevant description of S906, which will not be elaborated here.

[0229] Among them, the relevant information of the target person and the part corresponding to the second virtual library in the update class label are stored in the second virtual library and the storage area corresponding to the target person, that is, the relevant information of the target person and the part corresponding to the second virtual library in the update class label are used to update the historical relevant information and partial class labels originally stored in the second virtual library and the storage area corresponding to the target person. Similarly, the relevant information of the target person and the part corresponding to the newly created virtual library in the update class label are stored in the newly created virtual library and the storage area corresponding to the target person.

[0230] It should be noted that in practice, when it is determined that there is historical relevant information of the target person, that is, the information of the target person has been stored before, because the appearance features (which can also be the user's image) in the historical relevant information of the target person are very likely to be stored a long time ago, and the current appearance features of the target person may have changed to some extent, so the user determines whether to update the appearance features. Therefore, before step S909, the server can send an addition confirmation instruction to the client, and this addition confirmation instruction is used to instruct the user to determine whether to update the appearance features in the historical relevant information of the target person. When the server receives the instruction to confirm the update of the appearance features in the historical relevant information of the target person, S909 is executed. When the server receives the instruction to confirm not to update the appearance features in the historical relevant information of the target person, the historical class label of the stored target person is updated according to the update class label of the target person, and the attribute information in the historical relevant information of the target person is updated according to the attribute information in the relevant information of the target person.

[0231] In addition, the actual addition instruction may not have relevant information, but has the person ID of the target person. In this case, it is not necessary to store or update the relevant information of the target person, and only the class label corresponding to the business category of the target person needs to be stored or updated. The specific implementation can refer to the relevant expressions in the foregoing embodiments and will not be elaborated here.

[0232] Based on the technical solutions corresponding to the above S901 - S909, the addition or update of the relevant information and business categories of the target person can be successfully completed, improving the expandability of the relevant information of the existing persons to be stored.

[0233] In some embodiments, after storing all the relevant information and class labels of the persons to be stored, there may still be a need to delete some person business categories (specifically, a part of the class label). So in combination with Figure 3 , referring to Figure 10 as shown, the method further includes S1001 - S1005:

[0234] S1001. Receive a deletion instruction.

[0235] The deletion instruction can be generated by the client after receiving a user operation and sent to the server.

[0236] The deletion instruction can be a first deletion instruction or a second deletion instruction. Among them, the first deletion instruction carries the service category to be deleted and the identifier to be deleted, and the first deletion instruction is used to indicate deleting the service category to be deleted of the person to be deleted corresponding to the identifier to be deleted. The second deletion instruction carries the service category to be deleted, and the first deletion instruction is used to indicate the service category to be deleted.

[0237] Among them, the identifier to be deleted is the person ID of the person to be deleted.

[0238] When the deletion instruction is the first deletion instruction, S1002 - S1004 are executed after S1001; when the deletion instruction is the second deletion instruction, S1005 is executed after S1001.

[0239] S1002. Determine the original label to be deleted corresponding to the service category to be deleted of the person to be deleted according to the identifier to be deleted and the service category to be deleted.

[0240] S1003. Determine the third virtual library corresponding to the person to be deleted in at least one virtual library according to the original label to be deleted.

[0241] For the specific method of determining the original label and the third virtual library, reference can be made to the relevant descriptions in the foregoing embodiments, and details are not elaborated here.

[0242] Exemplarily, taking the person corresponding to Tables 7 - 9 (Table 9 - 1) as the person to be stored, the identifier to be deleted as human2, and the service category to be deleted as lib1, the original label to be deleted corresponding to the service category to be deleted of the person to be deleted is human2_lib1. The third virtual library is LIB1.

[0243] S1004. Delete the original label to be deleted of the person to be deleted in the third virtual library, and delete the part corresponding to the service category to be deleted in the class label corresponding to the third virtual library and the person to be deleted.

[0244] Exemplarily, taking the person corresponding to Tables 7 - 9 (specifically Table 9 - 1) as the person to be stored, the identifier to be deleted as human2, and the service category to be deleted as lib1, the third virtual library after executing S1004 can be referred to the following Table 21.

[0245] Table 21

[0246]

[0247] In addition, the original class labels of human2 included: 100 corresponding to LIB1, 110 corresponding to LIB2, and 100 corresponding to LIB3. After executing "deleting the part corresponding to the business category to be deleted in the class labels of the third virtual library and the person to be deleted" in S1004, the class labels of human2 included: 000 corresponding to LIB1, 110 corresponding to LIB2, and 100 corresponding to LIB3.

[0248] Furthermore, to reduce unnecessary storage, after executing S1004, if all the original labels corresponding to a certain person in a certain virtual library no longer exist, then delete the corresponding position in that virtual library and delete the corresponding part in the class labels of that person. Taking the example corresponding to Table 21, the final obtained third virtual library should be as shown in Table 22 below.

[0249] Table 22

[0250]

[0251] Finally, the class labels of human2 included: 110 corresponding to LIB2 and 100 corresponding to LIB3.

[0252] S1005. Delete the original labels to be deleted corresponding to the business category to be deleted in at least one virtual library, and delete the part corresponding to the original labels to be deleted in the class labels of all persons to be stored.

[0253] Among them, deleting the original labels to be deleted corresponding to the business category to be deleted in at least one virtual library specifically means deleting all the original labels in at least one virtual library that can indicate the business category to be deleted.

[0254] Exemplarily, taking the persons corresponding to LIB1 shown in Table 4 as the persons to be stored and the business category to be deleted as lib2, LIB1 after executing step S1005 can be referred to as shown in Table 23 below.

[0255] Table 23

[0256]

[0257] Furthermore, to reduce unnecessary storage, after executing S1005, if all the original labels corresponding to a certain person in a certain virtual library no longer exist, then delete the corresponding position in that virtual library and delete the corresponding part in the class labels of that person. The specific implementation can refer to the relevant descriptions after S1004 in the foregoing embodiments, and will not be elaborated here.

[0258] Further, if S1001 - S1005 are extended based on the technical solutions corresponding to 3031 and 3032, in the relevant descriptions after the above S1004 or S1005, if all the original tags corresponding to a certain person in a certain virtual library no longer exist, it is also necessary to delete the relevant information of this person in the storage area corresponding to this person in this virtual library, that is, this storage area no longer corresponds to this person in this virtual library. In this way, storage resources can be further saved.

[0259] In addition, in practice, the deletion instruction can also be used to delete some partial relevant information of some persons. The specific instruction can carry the person ID of the target person and the partial relevant information to be deleted. After receiving this deletion instruction, the server can directly delete this part of the relevant information in all the stored relevant information of the persons to be stored corresponding to this person ID.

[0260] Based on the technical solutions corresponding to the above S1001 - S1005, the deletion of the business category of the target person can be successfully completed, improving the expandability of the relevant information of the existing persons to be stored.

[0261] In some embodiments, after storing all the relevant information and class labels of the persons to be stored, there will still be a need to modify some relevant information of some persons. Therefore, in combination with Figure 3 , referring to Figure 11 as shown, the method further includes S1101 - S1104:

[0262] S1101. Receive a modification instruction.

[0263] Among them, the modification instruction carries the business category to be modified, the identifier of the person to be modified, and the modification information. The modification instruction is used to indicate modifying the relevant information of the person to be modified corresponding to the identifier of the person to be modified and the business category to be modified by using the modification information.

[0264] S1102. According to the business category to be modified and the identifier of the person to be modified, determine the original tag to be modified corresponding to the business category to be modified of the person to be modified.

[0265] S1103. According to the original tag to be modified, determine the fourth virtual library corresponding to the business category to be modified of the person to be modified in at least one virtual library.

[0266] Specifically, how to determine the original tag and the fourth virtual library can refer to the relevant descriptions in the foregoing embodiments and will not be elaborated here.

[0267] Exemplarily, taking the persons corresponding to Tables 7 - 9 (specifically Table 9 - 1) of the stored persons to be stored, the identifier of the person to be modified is human2, and the business category to be modified is lib7 as an example, the original tag to be modified corresponding to the business category to be modified of the person to be deleted is human2_lib7. The fourth virtual library isFigure 8 LIB2 shown above.

[0268] S1104. Modify the relevant information of the person to be repaired corresponding to the fourth virtual library according to the modification information.

[0269] Specifically, after determining the fourth virtual library, the relevant information of the person corresponding to the identifier of the fourth virtual library and the person to be repaired can be searched in the stored data, and modified according to the modification information.

[0270] In addition, in practice, the modification instruction can also indicate to modify the business category of a certain person. In this case, the modification instruction can carry the business category to be repaired, the identifier of the person to be repaired, and the target business category. The subsequent operation is equivalent to first deleting the business category to be repaired of the person corresponding to the identifier of the person to be repaired, and then adding the target business category to the person corresponding to the identifier of the person to be repaired. The specific implementation of the deletion process can refer to the technical solutions corresponding to S1001 - S1005 in the foregoing embodiment, and the specific implementation of the addition process can refer to the technical solutions corresponding to S901 - S909 in the foregoing embodiment.

[0271] Based on the technical solutions corresponding to S1101 - S1104 above, the modification of the relevant information of the target person can be successfully completed, improving the expandability of the relevant information of the existing persons to be stored.

[0272] In some embodiments, after storing all the relevant information and class labels of the persons to be stored, the monitoring of a certain type of person can be carried out. Therefore, in combination with Figure 3 , referring to Figure 12 shown above, the method further includes S1201 - S1205:

[0273] S1201. Receive a monitoring instruction.

[0274] Among them, the monitoring instruction carries at least one business category to be monitored and a preset comparison threshold; the monitoring instruction is used to indicate to execute a monitoring task with a comparison threshold of the preset comparison threshold and a monitoring business category of at least one business category to be monitored.

[0275] Specifically, the monitoring instruction can be generated by the client after receiving the user operation and sent to the server. In practice, because there are multiple monitoring devices and multiple monitoring areas in the monitoring system (as shown in Figure 1 ), there can also be multiple monitoring instructions here, and the monitoring instructions corresponding to each monitoring device or monitoring area (which can also be called a monitoring point) can be different.

[0276] Exemplarily, taking the persons corresponding to Tables 7 - 9 (Table 9 - 1) of the persons to be stored as an example, in practice, the deployment instruction can specifically be: Monitoring task 1: lib1, lib3, preset comparison threshold 80%.

[0277] Among them, at least one business category to be monitored is lib1 and lib3, and the preset comparison threshold is 80%.

[0278] S1202. Determine the fifth virtual library corresponding to the business category to be monitored in at least one virtual library and the second original label corresponding to the monitored business category in the fifth virtual library.

[0279] Exemplarily, taking the personnel corresponding to Tables 7 - 9 (specifically Table 9 - 1) of the to - be - stored personnel that have been stored as an example, and the actual deployment instruction specifically includes: Monitoring task 1: lib1, lib3, preset comparison threshold 80% for illustration as follows:

[0280] First, since the virtual library corresponding to lib1 and its virtual label are LAB0 of LIB1, and the virtual library corresponding to lib3 and its virtual label are LAB0 of LIB3. Therefore, the fifth virtual library corresponding to monitoring task 1 and the virtual labels corresponding to the monitored business category in the fifth virtual library include: LIB1->LAB0, LIB3->LAB0.

[0281] After that, according to LIB1->LAB0, the corresponding original labels can be obtained as: human1_lib1, human2_lib1, and human3_lib1. According to LIB3->LAB0, the corresponding original label can be obtained as: human2_lib3.

[0282] S1203. Determine the first to - be - stored personnel corresponding to the business category to be monitored according to the second original label.

[0283] Taking the example after S1202 as an example, it can be determined that the first - generation to - be - stored personnel are human1, human2, and human3 in the virtual library LIB1, and human2 in the virtual library LIB3.

[0284] S1204. Obtain the appearance features of the monitored personnel, and compare the appearance features of the monitored personnel with the appearance features of the first to - be - stored personnel.

[0285] In one implementable way, obtaining the appearance features of the monitored personnel can be: when the monitoring device monitors the monitored personnel, it can take a photo of them and send it to the server, and then the server extracts their appearance features according to the photo.

[0286] In another implementable way, obtaining the appearance features of the monitored personnel can be: when the monitoring device monitors the monitored personnel, it can take a photo of them and extract the corresponding appearance features, and then send the appearance features to the server.

[0287] The comparison method of the specific appearance features can be any feasible method, and the present application does not make specific restrictions on this. In addition, when searching for the appearance features of the first person to be stored, it is necessary to search in the target storage area corresponding to the first person to be stored.

[0288] If the technical solutions corresponding to S1201 - S1205 are expansion solutions based on the technical solutions corresponding to 3031 and 3032, taking the example shown after S1203 as an example, the storage areas corresponding to human2 in the virtual library LIB1 and human2 in the virtual library LIB3 are different, then the target storage area corresponds to the first person to be stored and its corresponding virtual library.

[0289] S1205. Determine the identifier of the second person to be stored and the target monitoring service category corresponding to the second person to be stored in the service categories to be monitored as the monitoring result of the monitoring task.

[0290] Among them, the second person to be stored is one of the first persons to be stored, and the similarity between the appearance features of the second person to be stored and the appearance features of the monitoring personnel is greater than a preset threshold.

[0291] Exemplarily, taking the example shown after S1202 as an example, if it is finally determined that the comparison result between the appearance features of human1 in LIB1 and the appearance features of the monitored monitoring personnel is greater than the preset comparison threshold, then human1 in LIB1 is determined as the second person to be stored. Then, it can be determined that the monitoring category of the second person to be stored is lib1 in at least one service category to be monitored. Since the original label can represent a service category of a person, the final monitoring result can be the original label human1_lib1 corresponding to human1 in LIB1.

[0292] Based on the technical solutions corresponding to S1201 - S1205 above, the monitoring of a certain type of target personnel can be successfully completed, ensuring the specific use of the relevant information of the stored persons to be stored. Moreover, due to the unique storage method in the embodiments of the present application, the number of copies of the relevant information stored for the same person is reduced, which can make the feature comparison (that is, the appearance features of the monitored person and the appearance features of the stored persons to be stored that meet the category) required during the monitoring process less, and improve the completion efficiency of the monitoring task.

[0293] Embodiments of the present application can divide a data management device (such as a server) capable of implementing the technical solutions provided in the above embodiments into functional modules according to the above method examples. For example, the data management device can correspond to each function and divide each functional module, or integrate two or more functions into one processing module. The above integrated module can be implemented in the form of hardware or in the form of a software functional module. It should be noted that the division of modules in the embodiments of the present disclosure is illustrative, only a logical function division, and there may be other division methods in actual implementation.

[0294] In the case of dividing each functional module corresponding to each function, Figure 13 A possible structural schematic diagram of the data management device is shown. The data management device is applied to a monitoring system (such as Figure 1 shown), and the data management device can be a server in the monitoring system or a part of the server. The data management device includes: an acquisition module 131 and a processing module 132.

[0295] Specifically, the acquisition module 131 is configured to acquire relevant information and service categories of the object to be stored; the acquisition module 131 is configured to acquire relevant information and service categories of the object to be stored; wherein, the relevant information includes shape characteristics and attribute information; the processing module 132 is configured to determine a class label of the object to be stored according to the service category of the object to be stored acquired by the acquisition module 131; the class label is used to indicate all service categories of the object to be stored, and the data volume of the class label is smaller than the data volume of all service categories of the object to be stored; the storage module is configured to store the correspondence between the relevant information of the object to be stored acquired by the acquisition module 131 and the class label of the object to be stored determined by the processing module 132.

[0296] Optionally, the processing module 132 is specifically configured to: establish at least one virtual library according to the service categories of multiple objects to be stored acquired by the acquisition module 131; the virtual library includes at least one virtual label and at least one original label of the object to be stored; the virtual library is used to represent the correspondence between the virtual label and the original label in the virtual library; each virtual label corresponds to the same service category, and different virtual labels correspond to different service categories; the original label is used to indicate one service category of the object to which it belongs; determine the class label of the object to be stored according to the correspondence between the virtual label and the original label of the object to be stored in at least one virtual library.

[0297] Further optionally, the processing module 132 is specifically configured to: establish one virtual library when the number of service categories of each object to be stored is less than or equal to the preset maximum number of virtual labels; establish multiple virtual libraries when there is an object to be stored with the number of service categories greater than the preset maximum number of virtual labels among all objects to be stored.

[0298] Further optionally, the processing module 132 is specifically configured to: determine the original tags of all objects to be stored according to the service categories of all objects to be stored obtained by the obtaining module 131; establish at least two target virtual libraries based on the original tags of all objects to be stored; or establish at least one target virtual library and a final virtual library based on the original tags of all objects to be stored; wherein, establishing a target virtual library includes: selecting the original tags corresponding to a preset maximum number of virtual tags of a first service category to construct a target virtual library; the first service category is one of all service categories of all objects to be stored; the number of original tags corresponding to each first service category is greater than or equal to the number of original tags corresponding to any service category that has not been selected among all service categories; establishing a final virtual library includes: after establishing at least one target virtual library, selecting the original tags corresponding to a second service category that has not been selected before to construct a final virtual library; the number of virtual tags included in the final virtual library is greater than or equal to the number of second service categories.

[0299] Optionally, when each virtual library includes a preset maximum number of virtual tags, the storage module is specifically configured to: allocate a corresponding storage area for each object to be stored corresponding to the virtual library established by the processing module 132; store the relevant information of each object to be stored corresponding to the virtual library and the part of the class tag determined by the processing module 132 corresponding to the virtual library in the corresponding storage area.

[0300] Optionally, the data management device further includes a receiving module 133. The receiving module 133 is configured to receive an adding instruction; the adding instruction is used to indicate the relevant information and service category of the target object; when the processing module 132 determines that the relevant information of the target object indicated by the adding instruction received by the receiving module 133 is not stored in the storage module, the processing module 132 determines the original tag of the target object according to the service category of the target object indicated by the adding instruction received by the receiving module 133; the processing module 132 is further configured to update the first virtual library corresponding to the third service category according to the original tag corresponding to the third service category of the target object; the third service category is the service category of the target object that belongs to the service category corresponding to at least one virtual library; the processing module 132 is further configured to determine the class tag of the target object based on the updated first virtual library; the storage module is further configured to store the corresponding relationship between the relevant information of the target object indicated by the adding instruction received by the receiving module 133 and the class tag of the target object determined by the processing module 132.

[0301] Optionally, before determining the class label of the target object based on the updated first virtual library, the processing module 132 is further configured to: establish at least one new virtual library according to all the fourth service categories of the target object and their corresponding original labels; the fourth service category is the service category of the target object other than the third service category; the new virtual library includes at least one virtual label and the original labels corresponding to at least one fourth service category of the target object; the new virtual library is used to represent the correspondence between the virtual labels and the original labels in the new virtual library; the sum of the numbers of virtual labels in all the new virtual libraries is greater than or equal to the number of types of all the service categories corresponding to the target object; the sum of the numbers of original labels in all the new virtual libraries is equal to the number of fourth service categories of the target object; the processing module 132 determines the class label of the target object based on the updated first virtual library, specifically including: determining the class label of the target object according to the updated first virtual library and at least one virtual library.

[0302] Optionally, after the receiving module 133 receives the addition instruction, the processing module 132 is further configured to: in the case where it is determined that there is historical related information of the target object and the original label corresponding to the third service category of the target object does not exist in at least one virtual library, if the first original label of the first virtual label of the second virtual library does not exist in at least one virtual library, and the service category corresponding to the first virtual label does not exist or is the third service category, then use the original label corresponding to the third service category of the target object as the first original label to update the second virtual library; the second virtual library is a virtual library including the original labels corresponding to the target object; update the class label of the target object based on the updated second virtual library; the storage module is further configured to store the correspondence between the relevant information of the target object indicated by the addition instruction received by the receiving module 133 and the class label of the target object updated by the processing module 132.

[0303] Optionally, before the processing module 132 updates the class label of the target object based on the updated second virtual library, the processing module 132 is further configured to establish at least one new virtual library according to all the fourth service categories of the target object and their corresponding original labels; the processing module 132 updates the class label of the target object based on the updated second virtual library, specifically including: updating the class label of the target object according to the updated second virtual library and at least one new virtual library.

[0304] Optionally, after the storage module stores the relevant information and class label of the object to be stored, the receiving module 133 is further configured to receive a first deletion instruction; the first deletion instruction is used to indicate deleting the business category to be deleted of the object to be deleted; the processing module 132 is further configured to determine the original label to be deleted corresponding to the business category to be deleted of the object to be deleted indicated by the first deletion instruction received by the receiving module 133; the processing module 132 is further configured to determine, according to the original label to be deleted, a third virtual library corresponding to the object to be deleted in at least one virtual library; the processing module 132 is further configured to delete the original label to be deleted of the object to be deleted in the third virtual library, and delete the part corresponding to the business category to be deleted in the third virtual library and the class label corresponding to the object to be deleted.

[0305] Optionally, after the storage module stores the relevant information and class label of the object to be stored, the receiving module 133 is further configured to receive a second deletion instruction; the second deletion instruction is used to indicate deleting the business category to be deleted; the processing module 132 is further configured to delete the original label to be deleted corresponding to the business category to be deleted in at least one virtual library, and delete the part corresponding to the original label to be deleted in the class labels of all objects to be stored.

[0306] Optionally, after the storage module stores the relevant information and class label of the object to be stored, the receiving module 133 is further configured to receive a modification instruction; the modification instruction is used to indicate modifying the relevant information of the object to be modified corresponding to the business category to be modified by using the modification information; the processing module 132 is further configured to determine the original label to be modified corresponding to the business category to be modified of the object to be modified indicated by the modification instruction received by the receiving module 133; the processing module 132 is further configured to determine, according to the original label to be modified, a fourth virtual library corresponding to the business category to be modified of the object to be modified in at least one virtual library; the processing module 132 is further configured to modify the relevant information of the object to be modified corresponding to the fourth virtual library according to the modification information.

[0307] Optionally, after the storage module stores the relevant information and class labels of the object to be stored, the receiving module 133 is further configured to receive a monitoring instruction; the monitoring instruction is used to indicate to execute a monitoring task with a preset comparison threshold and a monitoring service category to be monitored; the processing module 132 is further configured to determine a fifth virtual library corresponding to the monitoring service category in at least one virtual library for the monitoring task indicated by the monitoring instruction received by the receiving module 133, and a second original label corresponding to the monitoring service category in the fifth virtual library; the processing module 132 is further configured to determine a first object to be stored corresponding to the monitoring service category according to the second original label; the obtaining module 131 is further configured to obtain the external features of the monitoring object and compare the external features of the monitoring object with the external features of the first object to be stored determined by the processing module 132; the processing module 132 is further configured to determine the identifier of the second object to be stored and the target monitoring service category corresponding to the second object to be stored in the monitoring service category as the monitoring result of the monitoring task; the second object to be stored is one of the first objects to be stored, and the comparison similarity between the external features of the second object to be stored and the external features of the monitoring object is greater than a preset threshold.

[0308] Regarding the data management device in the above embodiments, the specific manners in which each module performs operations and the corresponding beneficial effects have been described in detail in the embodiments of the data management method described above, and will not be elaborated here.

[0309] The embodiment of the present application further provides an electronic device, which may be the data management device in the foregoing embodiments, or a device including the data management device. For example, the electronic device may be a server in a monitoring system as shown in Figure 1 or a part thereof. The electronic device may include: a storage unit and a processing unit. The processing unit is used for control and management. For example, the processing unit is used to support the electronic device to execute the steps performed by each module in the data management device in the foregoing embodiments; the storage unit is used to store the program code and data of the electronic device, and specifically may support the electronic device to execute the data management method in the foregoing embodiments.

[0310] Among them, taking the processing unit as the processor and the storage unit as the memory as an example. Referring to Figure 14 As shown, the embodiment of the present application further provides an electronic device, which includes a memory 141 and a processor 142. Among them, the memory 141 is used to store instructions executable by the processor 142, and the processor 142 is configured to execute the executable instructions to implement the data management method in the above embodiments.

[0311] In a specific implementation, as an embodiment, the processor 142 (142-1 and 142-2) may include one or more CPUs, for example Figure 14CPU0 and CPU1 shown in []. And as an embodiment, the data management device may include multiple processors 142, such as Figure 14 the processor 142-1 and the processor 142-2 shown in []. Each CPU in these processors 142 may be a single-core processor (Single-CPU) or a multi-core processor (Multi-CPU). The processor 142 here may refer to one or more devices, circuits, and / or processing cores for processing data (such as computer program instructions).

[0312] The memory 141 may be a read-only memory 141 (ROM) or other types of static storage devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compact discs, laser discs, optical discs, digital versatile discs, Blu-ray discs, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store the desired program code in the form of instructions or data structures and can be accessed by a computer, but not limited to this. The memory 141 may exist independently and be connected to the processor 142 through the bus 143. The memory 141 may also be integrated with the processor 142.

[0313] In a specific implementation, the memory 141 is used to store the data in this application and the computer execution instructions corresponding to the software program executing this application. The processor 142 can realize various functions of the data management device by running or executing the software program stored in the memory 141 and calling the data stored in the memory 141.

[0314] The communication interface 144 uses any device such as a transceiver to communicate with other devices or communication networks, such as a control system, a radio access network (RAN), a wireless local area network (WLAN), etc. The communication interface 144 may include a receiving unit to implement the receiving function and a transmitting unit to implement the transmitting function.

[0315] The bus 143 can be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, an Extended Industry Standard Architecture (EISA) bus, or the like. The bus 143 can be divided into an address bus, a data bus, a control bus, etc. For the sake of convenience of representation, Figure 14 only a thick line is used to represent it in Figure 14 , but it does not mean that there is only one bus or one type of bus.

[0316] The embodiment of the present application further provides a computer-readable storage medium. The computer-readable storage medium includes computer-executable instructions. When the computer-executable instructions run on an electronic device, the electronic device is enabled to execute the data management method provided in the foregoing embodiment.

[0317] The embodiment of the present application further provides a computer program product, including instructions, which when running on an electronic device, enable the electronic device to execute the data management method provided in the foregoing embodiment.

[0318] Those skilled in the art should be able to realize that in one or more of the above examples, the functions described in the present application can be implemented by hardware, software, firmware, or any combination thereof. When implemented using software, these functions can be stored in a computer-readable medium or transmitted as one or more instructions or codes on a computer-readable medium. The computer-readable medium includes a computer-readable storage medium and a communication medium, where the communication medium includes any medium facilitating the transmission of a computer program from one place to another. The storage medium can be any available medium accessible by a general-purpose or special-purpose computer.

[0319] Through the description of the above embodiments, those skilled in the art can clearly understand that for the convenience and brevity of description, only the above division of each functional module is used for illustration. In actual applications, the above functions can be allocated to different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above.

[0320] In several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the modules or units is only a logical function division, and there can be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another device, or some features can be ignored or not executed. Another point is that the displayed or discussed coupling or direct coupling or communication connection to each other can be through some interfaces, and the indirect coupling or communication connection of the devices or units can be in electrical, mechanical or other forms. The units described as separate components may or may not be physically separated, and the components displayed as units can be one physical unit or multiple physical units, that is, they can be located in one place, or can be distributed to multiple different places. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0321] In addition, each functional unit in various embodiments of the present application can be integrated in a processing unit, or each unit can exist physically alone, or two or more units can be integrated in one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of a software functional unit. If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on such an understanding, the technical solution of the embodiments of the present application, in essence, or the part that contributes to the prior art, or all or part of this technical solution, can be embodied in the form of a software product. This software product is stored in a storage medium and includes several instructions to enable a device (which can be a single-chip microcomputer, a chip, etc.) or a processor to execute all or part of the steps of the methods described in various embodiments of the present application. The aforementioned storage medium includes: various media such as USB flash drives, mobile hard disks, ROM, RAM, magnetic disks or optical discs that can store program codes.

[0322] The above is only the specific implementation manner of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions that can be easily thought of by those skilled in the art within the technical scope disclosed in the present application should be covered by the protection scope of the present application. Therefore, the protection scope of the present application should be subject to the protection scope of the claims.

Claims

1. A data management method, characterized in that, Including: Obtain the relevant information and business categories of the object to be stored; wherein, the relevant information includes the shape characteristics and attribute information; Determine the class label of the object to be stored according to the corresponding relationship between the virtual label and the original label corresponding to the object to be stored in at least one virtual library; the class label is used to indicate all business categories of the object to be stored, and the data volume of the class label is smaller than the data volume of all business categories of the object to be stored; the virtual library includes at least one virtual label and the original labels of at least one object to be stored; the virtual library is used to represent the corresponding relationship between the virtual label and the original label in the virtual library; the business categories corresponding to each virtual label are the same, and the business categories corresponding to different virtual labels are different; the original label is used to indicate one business category of the object to which it belongs; Store the corresponding relationship between the relevant information of the object to be stored and the class label of the object to be stored.

2. The method according to claim 1, characterized in that, Before determining the class label of the object to be stored according to the corresponding relationship between the virtual label and the original label corresponding to the object to be stored in at least one virtual library, the method further includes: Establish at least one virtual library according to the business categories of multiple objects to be stored.

3. The method according to claim 2, characterized in that The establishing at least one virtual library according to the business categories of multiple objects to be stored includes: When the number of business categories of each object to be stored is less than or equal to the preset maximum number of virtual labels, establish one virtual library; When there are objects to be stored with the number of business categories greater than the preset maximum number of virtual labels among all the objects to be stored, establish multiple virtual libraries.

4. The method according to claim 3, wherein The establishing multiple virtual libraries includes: Determine the original labels of all the objects to be stored according to the business categories of all the objects to be stored; Establish at least two target virtual libraries based on the original labels of all the objects to be stored; or, establish at least one target virtual library and an end virtual library based on the original labels of all the objects to be stored; Wherein, establishing the target virtual library includes: selecting the original labels corresponding to the preset maximum number of first business categories, and constructing the target virtual library; the first business category is one of all business categories of all the objects to be stored; the number of original labels corresponding to each first business category is greater than or equal to the number of original labels corresponding to any business category that has not been selected among all business categories; Establishing the end virtual library includes: after establishing the at least one target virtual library, selecting the original labels corresponding to the second business categories that have not been selected before, and constructing the end virtual library; the number of virtual labels included in the end virtual library is greater than or equal to the number of the second business categories.

5. The method according to claim 4, characterized in that Each virtual library includes the preset maximum number of virtual labels; the storing the relevant information and class label of the object to be stored includes: Allocate a corresponding storage area for each object to be stored corresponding to the virtual library; Store the part corresponding to the virtual library in the relevant information and class label of each object to be stored corresponding to the virtual library in the corresponding storage area.

6. The method according to any one of claims 2-5, characterized in that, After storing the relevant information and class label of the object to be stored, the following steps are further included: Receive an addition instruction; the addition instruction is used to indicate storing the relevant information and business category of a target object. When it is determined that the relevant information of the target object has not been stored, determine the original label of the target object according to the business category of the target object. Update the first virtual library corresponding to the third business category according to the original label corresponding to the third business category of the target object; the third business category is the business category among the business categories of the target object that belongs to the business category corresponding to at least one virtual library. Based on the updated first virtual library, determine the class label of the target object. Store the correspondence between the relevant information of the target object and the class label of the target object.

7. The method according to claim 6, characterized in that, Before determining the class label of the target object based on the updated first virtual library, the following steps are further included: Establish at least one new virtual library according to all the fourth business categories of the target object and their corresponding original labels; the fourth business category is the business category among the business categories of the target object other than the third business category; the new virtual library includes at least one virtual label and the original labels corresponding to at least one fourth business category of the target object; the new virtual library is used to represent the correspondence between the virtual labels and the original labels in the new virtual library; the sum of the numbers of virtual labels in all the new virtual libraries is greater than or equal to the number of types of all the business categories corresponding to the target object; the sum of the numbers of original labels in all the new virtual libraries is equal to the number of fourth business categories of the target object. Determining the class label of the target object based on the updated first virtual library includes: Determine the class label of the target object according to the updated first virtual library and the at least one virtual library.

8. The method according to claim 7, characterized in that After receiving the addition instruction, the following steps are further included: When it is determined that the historical relevant information of the target object is stored and the original label corresponding to the third business category of the target object does not exist in the at least one virtual library, if the first original label of the first virtual label of the second virtual library does not exist in the at least one virtual library, and the business category corresponding to the first virtual label does not exist or is the third business category, then use the original label corresponding to the third business category of the target object as the first original label to update the second virtual library; the second virtual library is the virtual library including the original label corresponding to the target object. Update the class label of the target object based on the updated second virtual library. Store the correspondence between the relevant information of the target object and the updated class label of the target object.

9. The method according to claim 8, wherein Before updating the class label of the target object based on the updated second virtual library, the following steps are further included: Establish at least one of the new virtual libraries according to all the fourth business categories of the target object and their corresponding original labels. Updating the class label of the target object based on the updated second virtual library includes: Update the class label of the target object according to the updated second virtual library and the at least one newly created virtual library.

10. The method according to any one of claims 2-5, characterized in that, After storing the relevant information and class label of the object to be stored, it further includes: Receiving a first deletion instruction; the first deletion instruction is used to indicate deleting the business category to be deleted of the object to be deleted. Determine the original label to be deleted corresponding to the business category to be deleted of the object to be deleted. According to the original label to be deleted, determine the third virtual library corresponding to the object to be deleted in the at least one virtual library. Delete the original label to be deleted of the object to be deleted in the third virtual library, and delete the part corresponding to the business category to be deleted in the class label corresponding to the third virtual library and the object to be deleted.

11. The method according to any one of claims 2-5, characterized in that, After storing the relevant information and class label of the object to be stored, it further includes: Receiving a second deletion instruction; the second deletion instruction is used to indicate deleting the business category to be deleted. Delete the original label to be deleted corresponding to the business category to be deleted in the at least one virtual library, and delete the part corresponding to the original label to be deleted in the class labels of all the objects to be stored.

12. The method according to any one of claims 2-5, characterized in that, After storing the relevant information and class label of the object to be stored, it further includes: Receiving a modification instruction; the modification instruction is used to indicate modifying the relevant information of the object to be modified corresponding to the business category to be modified by using modification information. Determine the original label to be modified corresponding to the business category to be modified of the object to be modified. According to the original label to be modified, determine the fourth virtual library corresponding to the business category to be modified of the object to be modified in the at least one virtual library. Modify the relevant information of the object to be modified corresponding to the fourth virtual library according to the modification information.

13. The method according to any one of claims 2-5, characterized in that, After storing the relevant information and class label of the object to be stored, it further includes: Receiving a monitoring instruction; the monitoring instruction is used to indicate executing a monitoring task with a comparison threshold being a preset comparison threshold and a monitoring business category being the business category to be monitored. Determine the fifth virtual library corresponding to the business category to be monitored in the at least one virtual library and the second original label corresponding to the monitoring business category in the fifth virtual library. According to the second original label, determine the first object to be stored corresponding to the business category to be monitored. Obtain the external shape feature of the monitoring object, and compare the external shape feature of the monitoring object with the external shape feature of the first object to be stored. Determine the identifier of the second object to be stored and the target monitoring business category corresponding to the second object to be stored in the business category to be monitored as the monitoring result of the monitoring task; the second object to be stored is one of the first objects to be stored, and the comparison similarity between the external shape feature of the second object to be stored and the external shape feature of the monitoring object is greater than the preset threshold.

14. A data management device, characterized in that, It includes: An acquisition module, configured to acquire the relevant information and business category of the object to be stored; wherein, the relevant information includes the external shape feature and attribute information. A processing module, configured to determine a class label of the object to be stored according to a correspondence between a virtual label and an original label corresponding to the object to be stored in at least one virtual library; the class label is used to indicate all business categories of the object to be stored, and the data volume of the class label is smaller than the data volume of all business categories of the object to be stored; the virtual library includes at least one virtual label and original labels of at least one object to be stored; the virtual library is used to represent the correspondence between the virtual labels and the original labels in the virtual library; the business categories corresponding to each virtual label are the same, and the business categories corresponding to different virtual labels are different; the original label is used to indicate one business category of the object to be stored to which it belongs. A storage module, configured to store a correspondence between relevant information of the object to be stored acquired by the acquisition module and the class label of the object to be stored determined by the processing module.

15. The apparatus according to claim 14, wherein before determining the class label of the object to be stored according to the correspondence between the virtual label and the original label corresponding to the object to be stored in at least one virtual library, the processing module is further configured to: establish at least one virtual library according to the business categories of multiple objects to be stored acquired by the acquisition module and / or, the processing module is specifically configured to: establish one virtual library when the number of business categories of each object to be stored is less than or equal to a preset maximum number of virtual labels; establish multiple virtual libraries when there are objects to be stored among all the objects to be stored whose number of business categories is greater than the preset maximum number of virtual labels; and / or, the processing module is specifically configured to: determine the original labels of all the objects to be stored according to the business categories of all the objects to be stored acquired by the acquisition module; establish at least two target virtual libraries based on the original labels of all the objects to be stored; or, establish at least one target virtual library and a final virtual library based on the original labels of all the objects to be stored; wherein, establishing the target virtual library includes: selecting original labels corresponding to a preset maximum number of first business categories, and constructing the target virtual library; the first business category is one of all business categories of all the objects to be stored; the number of original labels corresponding to each first business category is greater than or equal to the number of original labels corresponding to any business category that has not been selected among all the business categories; establishing the final virtual library includes: after establishing the at least one target virtual library, selecting original labels corresponding to second business categories that have not been selected before, and constructing the final virtual library; the number of virtual labels included in the final virtual library is greater than or equal to the number of second business categories; and / or, When each of the virtual libraries includes a preset maximum number of virtual tags, the storage module is specifically configured to: allocate a corresponding storage area for each object to be stored corresponding to the virtual library established by the processing module; store the relevant information of each object to be stored corresponding to the virtual library and the part of the class label determined by the processing module corresponding to the virtual library in the corresponding storage area; When the data management device further includes a receiving module, the receiving module is configured to receive an addition instruction; the addition instruction is used to indicate the relevant information and business category of the target object to be stored; when the processing module determines that the storage module does not store the relevant information of the target object indicated by the addition instruction received by the receiving module, the processing module determines the original label of the target object according to the business category of the target object indicated by the addition instruction received by the receiving module; the processing module is further configured to update the first virtual library corresponding to the third business category according to the original label corresponding to the third business category of the target object; the third business category is the business category of the target object that belongs to the business categories corresponding to the at least one virtual library; the processing module is further configured to determine the class label of the target object based on the updated first virtual library; the storage module is further configured to store the correspondence between the relevant information of the target object indicated by the addition instruction received by the receiving module and the class label of the target object determined by the processing module; and / or, Before the processing module determines the class label of the target object based on the updated first virtual library, the processing module is further configured to: establish at least one new virtual library according to all the fourth business categories of the target object and their corresponding original labels; the fourth business category is the business category of the target object other than the third business category; the new virtual library includes at least one virtual tag and the original labels corresponding to at least one fourth business category of the target object; the new virtual library is used to represent the correspondence between the virtual tags and the original labels in the new virtual library; the sum of the number of virtual tags in all the new virtual libraries is greater than or equal to the number of types of all the business categories corresponding to the target object; the sum of the number of original labels in all the new virtual libraries is equal to the number of fourth business categories of the target object; the processing module determines the class label of the target object based on the updated first virtual library, specifically including: determining the class label of the target object according to the updated first virtual library and the at least one virtual library; and / or, After the receiving module receives the addition instruction, the processing module is further configured to: when it is determined that the historical related information of the target object is stored and the original label corresponding to the third service category of the target object does not exist in the at least one virtual library, if the first original label of the first virtual label of the second virtual library does not exist in the at least one virtual library, and the service category corresponding to the first virtual label does not exist or is the third service category, then use the original label corresponding to the third service category of the target object as the first original label to update the second virtual library; the second virtual library is a virtual library including the original label corresponding to the target object; update the class label of the target object based on the updated second virtual library; The storage module is further configured to store the correspondence between the related information of the target object indicated by the addition instruction received by the receiving module and the class label of the target object updated by the processing module; and / or Before the processing module updates the class label of the target object based on the updated second virtual library, the processing module is further configured to establish at least one new virtual library according to all the fourth service categories of the target object and their corresponding original labels; the processing module updating the class label of the target object based on the updated second virtual library specifically includes: updating the class label of the target object according to the updated second virtual library and the at least one new virtual library; and / or After the storage module stores the related information and class label of the object to be stored, the receiving module is further configured to receive a first deletion instruction; the first deletion instruction is used to indicate deleting the service category to be deleted of the object to be deleted; the processing module is further configured to determine the original label to be deleted corresponding to the service category to be deleted of the object to be deleted indicated by the first deletion instruction received by the receiving module; the processing module is further configured to determine the third virtual library corresponding to the object to be deleted in the at least one virtual library according to the original label to be deleted; the processing module is further configured to delete the original label to be deleted of the object to be deleted in the third virtual library, and delete the part corresponding to the service category to be deleted in the class label corresponding to the third virtual library and the object to be deleted; and / or After the storage module stores the related information and class label of the object to be stored, the receiving module is further configured to receive a second deletion instruction; the second deletion instruction is used to indicate deleting the service category to be deleted; the processing module is further configured to delete the original label to be deleted corresponding to the service category to be deleted in the at least one virtual library, and delete the part corresponding to the original label to be deleted in the class labels of all the objects to be stored; and / or After the storage module stores the relevant information and class label of the object to be stored, the receiving module is further configured to receive a modification instruction; the modification instruction is used to indicate modifying the relevant information of the object to be modified corresponding to the business category to be modified by using modification information; the processing module is further configured to determine the original label to be modified corresponding to the business category to be modified of the object to be modified indicated by the modification instruction received by the receiving module; the processing module is further configured to determine, according to the original label to be modified, a fourth virtual library corresponding to the business category to be modified of the object to be modified in the at least one virtual library; the processing module is further configured to modify the relevant information of the object to be modified corresponding to the fourth virtual library according to the modification information. and / or After the storage module stores the relevant information and class label of the object to be stored, the receiving module is further configured to receive a monitoring instruction; the monitoring instruction is used to indicate executing a monitoring task with a comparison threshold being a preset comparison threshold and a monitoring business category being a business category to be monitored; the processing module is further configured to determine a fifth virtual library corresponding to the business category to be monitored in the monitoring task indicated by the monitoring instruction received by the receiving module in the at least one virtual library and a second original label corresponding to the business category to be monitored in the fifth virtual library; the processing module is further configured to determine a first object to be stored corresponding to the business category to be monitored according to the second original label; the obtaining module is further configured to obtain the external shape feature of the monitoring object and compare the external shape feature of the monitoring object with the external shape feature of the first object to be stored determined by the processing module; the processing module is further configured to determine the identifier of the second object to be stored and the target business category to be monitored corresponding to the second object to be stored in the business category to be monitored as the monitoring result of the monitoring task; the second object to be stored is one of the first objects to be stored, and the comparison similarity between the external shape feature of the second object to be stored and the external shape feature of the monitoring object is greater than a preset threshold.

16. An electronic device, characterized in that, It includes a processor and a memory for storing executable instructions for processing; wherein, the processor is configured to execute the executable instructions so that the electronic device executes the data management method according to any one of claims 1-13.

17. A computer-readable storage medium, characterized in that The computer-readable storage medium includes computer-executable instructions, and when the computer-executable instructions run on an electronic device, the electronic device is made to execute the data management method according to any one of claims 1-13.

Citation Information

Patent Citations

  • A method and apparatus for data management

    CN109213747A