Image annotation method, device, equipment, computer readable medium and program product

By constructing graph structure data in the image annotation method and selecting the image node to be marked, the problem of inability to decouple the sampler and learner and lack of correlation utilization in the prior art is solved, and resource saving and model training effect are improved.

CN119625364APending Publication Date: 2025-03-14BEIJING WODONG TIANJUN INFORMATION TECH CO LTD +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311190247.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-09-14
Publication Date
2025-03-14

AI Technical Summary

Technical Problem

In the prior art, the sampler of the task-dependent active learning method cannot be decoupled from the learner, resulting in wasted development resources; while the task-independent active learning method lacks a mechanism to utilize the correlation between labeled images and unlabeled images, resulting in a smaller improvement in model training effect.

Method used

Through the image annotation method based on the annotated image set and the unlabeled image set, the learner of the target task is trained, the feature vector is extracted, the graph structure data is constructed, and the unlabeled image node that meets the preset distance condition is selected as the image node to be marked, and the labeling process is performed.

Benefits of technology

Decoupling between the sampler and the learner is realized, and the improvement effect of image data on model training is improved by utilizing the correlation between the labeled image and the unlabeled image.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119625364A_ABST
    Figure CN119625364A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses an image annotation method, device and equipment, a computer readable medium and a program product. A specific embodiment of the method comprises the following steps: based on an annotated image set and an unannotated image set, executing the following annotation steps: training a learning device corresponding to a target task based on the annotated image set; extracting a feature vector of each annotated image in the annotated image set and a feature vector of each unannotated image in the unannotated image set to obtain an annotated image feature vector set and an unannotated image feature vector set; constructing graph structure data according to the labeled image feature vector set and the unlabeled image feature vector set; selecting each unlabeled image node meeting a preset distance condition from the graph structure data as a to-be-labeled image node set; and performing annotation processing on each unannotated image corresponding to the to-be-annotated image node set. The implementation mode is related to sample labeling, development resources are saved, and the improvement effect of labeled image data on model training is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present disclosure relate to the field of computer technology, and in particular to image annotation methods, devices, equipment, computer-readable media, and program products. Background Art

[0002] Due to the availability of powerful computing infrastructure and large-scale datasets, deep learning has shown great improvements in many computer vision tasks such as image classification and 3D gesture estimation. However, manual data labeling is still a costly and time-consuming task that requires experts with relevant experience and is expensive. In this context, active learning attempts to train a better performing model by selectively labeling less data. Currently, when selecting image data to be labeled through active learning, the usual approach is to use task-dependent or task-independent active learning methods.

[0003] However, the inventors have found that when the above-mentioned method is adopted, the following technical problems often exist: in the task-dependent active learning method, the sampler is specially designed for the specific task of the learner. When the task of the learner changes, the sampler also needs to be redesigned, and the decoupling of the sampler and the learner cannot be achieved, resulting in a waste of development resources; the task-independent active learning method lacks a mechanism to utilize the correlation between labeled images and unlabeled images, resulting in little improvement in the model training effect after the selected image data is labeled.

[0004] The above information disclosed in this Background section is only for enhancement of understanding of the background of the inventive concept and therefore it may contain information that does not form the prior art that is already known in this country to a person of ordinary skill in the art. Summary of the invention

[0005] The content of this disclosure is used to introduce concepts in a brief form, which will be described in detail in the detailed implementation section below. The content of this disclosure is not intended to identify the key features or essential features of the technical solution claimed for protection, nor is it intended to limit the scope of the technical solution claimed for protection.

[0006] Some embodiments of the present disclosure provide image annotation methods, devices, electronic devices, computer-readable media, and computer program products to solve one or more of the technical problems mentioned in the above background technology section.

[0007] In a first aspect, some embodiments of the present disclosure provide an image annotation method, the method comprising: based on an annotated image set and an unlabeled image set, performing the following annotation steps: based on the annotated image set, training a learner corresponding to a target task; extracting, by the learner, feature vectors of each annotated image in the annotated image set and feature vectors of each unlabeled image in the unlabeled image set, to obtain an annotated image feature vector set and an unlabeled image feature vector set; constructing graph structure data according to the annotated image feature vector set and the unlabeled image feature vector set, wherein the graph structure data comprises each annotated image node and each unlabeled image node; according to each annotated image node included in the graph structure data, selecting each unlabeled image node that meets a preset distance condition from the graph structure data as a set of image nodes to be annotated; and annotating each unlabeled image corresponding to the set of image nodes to be annotated.

[0008] Optionally, the above-mentioned labeling step also includes: in response to determining that the total amount of the labeled unlabeled images does not meet a preset quantity condition, adding each unlabeled image after the labeling process as a labeled image to the labeled image set, removing each unlabeled image after the labeling process from the unlabeled image set, and performing the above-mentioned labeling step again.

[0009] Optionally, before performing the following labeling steps based on the labeled image set and the unlabeled image set, the method also includes: selecting a target number of unlabeled images from the initial unlabeled image set; sending each selected unlabeled image to a labeling terminal to receive the labeled unlabeled images as a labeled image set by the above-mentioned labeling terminal; and removing each selected unlabeled image from the initial unlabeled image set.

[0010] Optionally, the above-mentioned constructing graph structure data based on the annotated image feature vector set and the unlabeled image feature vector set includes: determining the above-mentioned annotated image feature vector set and the above-mentioned unlabeled image feature vector set as an image feature vector set; for each image feature vector in the above-mentioned image feature vector set, performing the following steps: selecting a predetermined number of individual image feature vectors from the above-mentioned image feature vector set whose similarity with the above-mentioned image feature vector satisfies a preset similarity condition; determining the selected individual image feature vectors as a similar image feature vector set of the above-mentioned image feature vectors; constructing graph structure data based on the similar image feature vector set of each image feature vector in the above-mentioned image feature vector set, wherein the image feature vector corresponding to the annotated image in the above-mentioned graph structure data is a annotated image node, and the image feature vector corresponding to the unlabeled image is an unlabeled image node.

[0011] Optionally, the above-mentioned selecting each unlabeled image node that meets a preset distance condition from the graph structure data as the set of image nodes to be labeled includes: training a node labeling prediction model according to the above-mentioned graph structure data, wherein the above-mentioned node labeling prediction model is a graph neural network model; determining the embedding representation vector of each node in the above-mentioned graph structure data through the above-mentioned node labeling prediction model; determining the embedding representation vector of each labeled image node in the above-mentioned graph structure data as each target embedding representation vector; based on the graph structure data and each target embedding representation vector, performing the following selection steps: for each unlabeled image node in the graph structure data, determining the minimum value of the distance between the embedding representation vector corresponding to the above-mentioned unlabeled image node and each target embedding representation vector as the minimum distance; determining the unlabeled image node corresponding to the maximum value of each determined minimum distance as the image node to be labeled; and adding the image node to be labeled to the set of image nodes to be labeled.

[0012] Optionally, the above-mentioned selection step also includes: in response to determining that the number of each image node to be labeled included in the set of image nodes to be labeled is less than a preset number, adding the embedding representation vector of the image node to be labeled as the target embedding representation vector to each target embedding representation vector, taking the set of image nodes to be labeled after adding the image nodes to be labeled as the set of image nodes to be labeled, and performing the above-mentioned selection step again.

[0013] Optionally, the above-mentioned labeling processing of each unlabeled image corresponding to the set of image nodes to be labeled includes: sending each of the above-mentioned unlabeled images to a labeling terminal, so that a user corresponding to the labeling terminal labels each of the above-mentioned unlabeled images; and receiving each unlabeled image after labeling processing sent by the labeling terminal.

[0014] In a second aspect, some embodiments of the present disclosure provide an image annotation device, the device comprising: an execution unit, configured to perform the following annotation steps based on an annotated image set and an unlabeled image set: based on the annotated image set, training a learner corresponding to the target task; extracting, through the learner, feature vectors of each annotated image in the annotated image set and feature vectors of each unlabeled image in the unlabeled image set, to obtain an annotated image feature vector set and an unlabeled image feature vector set; constructing graph structure data based on the annotated image feature vector set and the unlabeled image feature vector set, wherein the graph structure data includes each annotated image node and each unlabeled image node; based on each annotated image node included in the graph structure data, selecting each unlabeled image node that meets a preset distance condition from the graph structure data as a set of image nodes to be annotated; and annotating each unlabeled image corresponding to the set of image nodes to be annotated.

[0015] Optionally, the above-mentioned labeling step also includes: in response to determining that the total amount of the labeled unlabeled images does not meet a preset quantity condition, adding each unlabeled image after the labeling process as a labeled image to the labeled image set, removing each unlabeled image after the labeling process from the unlabeled image set, and performing the above-mentioned labeling step again.

[0016] Optionally, before the execution unit, the image annotation device further includes: a selection unit, a sending unit and a removal unit. The selection unit is configured to select a target number of unlabeled images from the initial unlabeled image set. The sending unit is configured to send the selected unlabeled images to the annotation terminal to receive the unlabeled images annotated by the annotation terminal as the annotated image set. The removal unit is configured to remove the selected unlabeled images from the initial unlabeled image set.

[0017] Optionally, the execution unit is further configured to: determine the above-mentioned annotated image feature vector set and the above-mentioned unlabeled image feature vector set as an image feature vector set; for each image feature vector in the above-mentioned image feature vector set, perform the following steps: select a predetermined number of individual image feature vectors from the above-mentioned image feature vector set whose similarity with the above-mentioned image feature vector satisfies a preset similarity condition; determine the selected individual image feature vectors as a similar image feature vector set of the above-mentioned image feature vector; and construct graph structure data based on the similar image feature vector set of each image feature vector in the above-mentioned image feature vector set, wherein the image feature vector corresponding to the annotated image in the above-mentioned graph structure data is a annotated image node, and the image feature vector corresponding to the unlabeled image is an unlabeled image node.

[0018] Optionally, the execution unit is further configured to: train a node labeling prediction model according to the above-mentioned graph structure data, wherein the above-mentioned node labeling prediction model is a graph neural network model; determine the embedding representation vector of each node in the above-mentioned graph structure data through the above-mentioned node labeling prediction model; determine the embedding representation vector of each labeled image node in the above-mentioned graph structure data as each target embedding representation vector; based on the graph structure data and each target embedding representation vector, perform the following selection steps: for each unlabeled image node in the graph structure data, determine the minimum value of the distance between the embedding representation vector corresponding to the above-mentioned unlabeled image node and each target embedding representation vector as the minimum distance; determine the unlabeled image node corresponding to the maximum value among the determined minimum distances as the image node to be labeled; add the image node to be labeled to the set of image nodes to be labeled.

[0019] Optionally, the above-mentioned selection step also includes: in response to determining that the number of each image node to be labeled included in the set of image nodes to be labeled is less than a preset number, adding the embedding representation vector of the image node to be labeled as the target embedding representation vector to each target embedding representation vector, taking the set of image nodes to be labeled after adding the image nodes to be labeled as the set of image nodes to be labeled, and performing the above-mentioned selection step again.

[0020] Optionally, the execution unit is further configured to: send the above-mentioned unlabeled images to a labeling terminal, so that a user corresponding to the labeling terminal labels the above-mentioned unlabeled images; and receive the labeled unlabeled images sent by the labeling terminal.

[0021] In a third aspect, some embodiments of the present disclosure provide an electronic device comprising: one or more processors; a storage device on which one or more programs are stored, and when the one or more programs are executed by the one or more processors, the one or more processors implement the method described in any implementation manner of the above-mentioned first aspect.

[0022] In a fourth aspect, some embodiments of the present disclosure provide a computer-readable medium having a computer program stored thereon, wherein when the program is executed by a processor, the method described in any implementation manner of the above-mentioned first aspect is implemented.

[0023] In a fifth aspect, some embodiments of the present disclosure provide a computer program product, including a computer program, which implements the method described in any implementation manner of the above-mentioned first aspect when executed by a processor.

[0024] The above-mentioned embodiments of the present disclosure have the following beneficial effects: through the image annotation method of some embodiments of the present disclosure, development resources are saved and the improvement effect of the annotated image data on model training is improved. Specifically, the reasons for the waste of development resources and the small improvement of the model training effect after the selected data is labeled are: in the task-dependent active learning method, the sampler is specially designed for the specific task of the learner. When the task of the learner changes, the sampler also needs to be redesigned, and the decoupling of the sampler and the learner cannot be achieved, resulting in a waste of development resources; the task-independent active learning method lacks a mechanism to utilize the correlation between the labeled image and the unlabeled image, resulting in a small improvement in the model training effect after the selected image data is labeled. Based on this, the image annotation method of some embodiments of the present disclosure performs the following annotation steps based on the annotated image set and the unlabeled image set: the first step is to train the learner corresponding to the target task based on the annotated image set. Thus, the learner corresponding to the target task can be trained in advance through the initial annotated image set. In the second step, the feature vectors of each labeled image in the labeled image set and the feature vectors of each unlabeled image in the unlabeled image set are extracted by the learner to obtain the labeled image feature vector set and the unlabeled image feature vector set. Thus, the labeled image feature vector set and the unlabeled image feature vector set extracted by the learner can be used as the input of the sampling stage. In the third step, the graph structure data is constructed according to the labeled image feature vector set and the unlabeled image feature vector set. Among them, the graph structure data includes each labeled image node and each unlabeled image node. Thus, the graph structure data can be pre-constructed by using the relationship between the labeled image feature vector set and the unlabeled image feature vector set. In the fourth step, according to each labeled image node included in the graph structure data, each unlabeled image node that meets the preset distance condition is selected from the graph structure data as the image node set to be labeled. Thus, the distance between the unlabeled image node and the labeled image node can be used to select the image node to be labeled. In the fifth step, each unlabeled image corresponding to the image node set to be labeled is labeled. Thus, the unlabeled images corresponding to each selected image node to be labeled can be labeled. Also, because the sampling stage selects the image nodes to be labeled by the distance between the unlabeled image nodes and the labeled image nodes in the pre-constructed graph structure data, which is independent of the target task of the corresponding learner, the decoupling of the sampler and the learner can be achieved, thereby saving development resources. Also, because when selecting the image nodes to be labeled, they are selected through the graph structure data, and the graph structure data is constructed using the relationship between the labeled image feature vector set and the unlabeled image feature vector set, the mechanism of the correlation between the labeled image and the unlabeled image is used, thereby improving the effect of the labeled image data on the model training. As a result, development resources are saved and the effect of the labeled image data on the model training is improved. BRIEF DESCRIPTION OF THE DRAWINGS

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

[0026] Figure 1 is a schematic diagram of an application scenario of the image annotation method according to some embodiments of the present disclosure;

[0027] Figure 2 is a flow chart of some embodiments of the image annotation method according to the present disclosure;

[0028] Figure 3 are flow charts of other embodiments of the image annotation method according to the present disclosure;

[0029] Figure 4 are flowcharts of some further embodiments of the image annotation method according to the present disclosure;

[0030] Figure 5 is a schematic diagram of the structure of graph structure data according to the image annotation method disclosed in the present invention;

[0031] Figure 6 is a schematic diagram of the structure of some embodiments of the image annotation device according to the present disclosure;

[0032] Figure 7 It is a schematic diagram of the structure of an electronic device suitable for implementing some embodiments of the present disclosure. DETAILED DESCRIPTION

[0033] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although certain embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as being limited to the embodiments set forth herein. On the contrary, these embodiments are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for exemplary purposes and are not intended to limit the scope of protection of the present disclosure.

[0034] It should also be noted that, for ease of description, only the parts related to the invention are shown in the drawings. In the absence of conflict, the embodiments and features in the embodiments of the present disclosure can be combined with each other.

[0035] It should be noted that the concepts such as "first" and "second" mentioned in the present disclosure are only used to distinguish different devices, modules or units, and are not used to limit the order or interdependence of the functions performed by these devices, modules or units.

[0036] It should be noted that the modifications of "one" and "plurality" mentioned in the present disclosure are illustrative rather than restrictive, and those skilled in the art should understand that unless otherwise clearly indicated in the context, it should be understood as "one or more".

[0037] The names of the messages or information exchanged between multiple devices in the embodiments of the present disclosure are only used for illustrative purposes and are not used to limit the scope of these messages or information.

[0038] The present disclosure will be described in detail below with reference to the accompanying drawings and in conjunction with embodiments.

[0039] Figure 1 It is a schematic diagram of an application scenario of the image annotation method according to some embodiments of the present disclosure.

[0040] exist Figure 1 In the application scenario, the computing device 101 can perform the following labeling steps based on the labeled image set 102 and the unlabeled image set 103: the first step is to train a learner 105 corresponding to the target task 104 based on the labeled image set 102. The second step is to extract the feature vectors of each labeled image in the labeled image set 102 and the feature vectors of each unlabeled image in the unlabeled image set 103 through the learner 105 to obtain a labeled image feature vector set 106 and an unlabeled image feature vector set 107. The third step is to construct graph structure data 108 based on the labeled image feature vector set 106 and the unlabeled image feature vector set 107. Among them, the graph structure data 108 includes each labeled image node and each unlabeled image node. The fourth step is to select each unlabeled image node that meets the preset distance condition from the graph structure data as the image node set to be labeled 109 based on each labeled image node included in the graph structure data. The fifth step is to perform labeling processing on each unlabeled image corresponding to the image node set to be labeled 109.

[0041] It should be noted that the computing device 101 can be hardware or software. When the computing device is hardware, it can be implemented as a distributed cluster consisting of multiple servers or terminal devices, or as a single server or a single terminal device. When the computing device is embodied as software, it can be installed in the hardware devices listed above. It can be implemented as multiple software or software modules for providing distributed services, or as a single software or software module. No specific limitation is made here.

[0042] It should be understood that Figure 1 The number of computing devices in the embodiment is only illustrative. Any number of computing devices may be provided according to implementation requirements.

[0043] Continue to refer Figure 2, shows a process 200 of some embodiments of the image annotation method according to the present disclosure. The image annotation method comprises the following steps:

[0044] Step 201, based on the labeled image set and the unlabeled image set, perform the following labeling steps:

[0045] Step 2011: Based on the annotated image set, train a learner corresponding to the target task.

[0046] In some embodiments, the execution subject of the image annotation method (eg Figure 1 The computing device 101 shown in the figure can train a learner corresponding to the target task based on the annotated image set. The annotated image set can be each annotated image. The unannotated image set can be each unannotated image. Here, the annotation can be the type of object displayed in the annotated image. For example, the annotated image and the unannotated image can be images showing objects. The number of each unannotated image included in the unannotated image set can be much larger than the number of each annotated image included in the annotated image set. The target task can be a downstream training task. For example, the target task can represent a classification task or a regression task. The learner can be a model consistent with the task model corresponding to the target task. For example, the learner can be a classification model or a regression model.

[0047] Step 212: extracting the feature vectors of each labeled image in the labeled image set and the feature vectors of each unlabeled image in the unlabeled image set through the learner, to obtain a labeled image feature vector set and an unlabeled image feature vector set.

[0048] In some embodiments, the execution subject may extract feature vectors of each labeled image in the labeled image set and feature vectors of each unlabeled image in the unlabeled image set through a learner, and obtain a labeled image feature vector set and an unlabeled image feature vector set. In practice, the execution subject may perform feature extraction on each labeled image in the labeled image set through a trained learner, and obtain each feature vector as a labeled image feature vector set. Then, the execution subject may perform feature extraction on each unlabeled image in the unlabeled image set through a trained learner, and obtain each feature vector as an unlabeled image feature vector set.

[0049] Step 2013: construct graph structure data according to the labeled image feature vector set and the unlabeled image feature vector set.

[0050] In some embodiments, the execution subject may construct graph structure data based on the annotated image feature vector set and the unlabeled image feature vector set. In practice, the execution subject may determine the annotated image feature vector set and the unlabeled image feature vector set as an image feature vector set. Then, the execution subject may construct graph structure data by taking each image feature vector as a node and the similarity between each two image feature vectors as an edge relationship. In the graph structure data, the node corresponding to the annotated image feature vector is the annotated image node, and the node corresponding to the unlabeled image feature vector is the unlabeled image node.

[0051] Step 2014 : According to each labeled image node included in the graph structure data, each unlabeled image node that meets a preset distance condition is selected from the graph structure data as a set of image nodes to be labeled.

[0052] In some embodiments, the above-mentioned execution subject can select various unlabeled image nodes that meet the preset distance conditions from the graph structure data as the set of image nodes to be labeled according to the various labeled image nodes included in the graph structure data. In practice, for each of the above-mentioned unlabeled image nodes, the above-mentioned execution subject can perform the following steps: the first step is to determine the distance between the unlabeled image feature vector corresponding to the above-mentioned unlabeled image node and the various labeled image feature vectors to obtain each distance. The second step is to determine the minimum distance by the minimum value of the above-mentioned distances. Then, the determined minimum distances can be arranged in descending order to obtain a minimum distance sequence. Secondly, the minimum distances of the first preset number in the above-mentioned minimum distance sequence can be determined as the target minimum distances. Finally, the unlabeled image nodes corresponding to the above-mentioned target minimum distances can be determined as the unlabeled image nodes that meet the preset distance conditions, that is, the set of image nodes to be labeled.

[0053] Step 2015 , labeling is performed on each unlabeled image corresponding to the set of image nodes to be labeled.

[0054] In some embodiments, the execution subject may perform annotation processing on each unlabeled image corresponding to the set of image nodes to be labeled. In practice, the execution subject may display each unlabeled image corresponding to the set of image nodes to be labeled to receive annotation information corresponding to the unlabeled image input by the user to perform annotation processing on the unlabeled image. Here, the annotation information may include the label of the unlabeled image input by the user.

[0055] In some optional implementations of some embodiments, the execution subject may perform labeling processing on each unlabeled image corresponding to the set of image nodes to be labeled by the following steps:

[0056] In the first step, each of the unlabeled images is sent to a labeling terminal, so that a user corresponding to the labeling terminal labels each of the unlabeled images.

[0057] The second step is to receive the unlabeled images after labeling from the labeling terminal, so that the users corresponding to the labeling terminals can label the images in a centralized manner.

[0058] Optionally, the above-mentioned labeling step may also include: in response to determining that the total amount of each labeled unlabeled image does not meet the preset quantity condition, adding each unlabeled image after the labeling process as a labeled image to the labeled image set, removing each unlabeled image after the labeling process from the unlabeled image set, and performing the above-mentioned labeling step again. Among them, the preset quantity condition may be that the total amount of each labeled unlabeled image is greater than the preset labeling quantity. Here, the specific setting of the preset labeling quantity is not limited. Therefore, the labeling step can be performed within the preset quantity cost.

[0059] Optionally, before step 201, the execution subject may further perform the following steps:

[0060] In the first step, a target number of unlabeled images is selected from the initial unlabeled image set. The target number may be a preset value much smaller than the number of each unlabeled image included in the unlabeled image set. In practice, the execution subject may randomly select the target number of unlabeled images from the initial unlabeled image set.

[0061] The second step is to send the selected unlabeled images to the labeling terminal, so as to receive the unlabeled images labeled by the labeling terminal as a labeling image set. The labeling terminal can be a terminal device corresponding to the image labeling user. For example, the terminal device corresponding to the image labeling user can be a terminal device for the image labeling user to log in to the user account. In this way, the image labeling user can label the image.

[0062] In the third step, each selected unlabeled image is removed from the initial unlabeled image set. Thus, the unlabeled image set can be continuously updated.

[0063] The above-mentioned embodiments of the present disclosure have the following beneficial effects: through the image annotation method of some embodiments of the present disclosure, development resources are saved and the improvement effect of the annotated image data on model training is improved. Specifically, the reasons for the waste of development resources and the small improvement of the model training effect after the selected data is labeled are: in the task-dependent active learning method, the sampler is specially designed for the specific task of the learner. When the task of the learner changes, the sampler also needs to be redesigned, and the decoupling of the sampler and the learner cannot be achieved, resulting in a waste of development resources; the task-independent active learning method lacks a mechanism to utilize the correlation between the labeled image and the unlabeled image, resulting in a small improvement in the model training effect after the selected image data is labeled. Based on this, the image annotation method of some embodiments of the present disclosure performs the following annotation steps based on the annotated image set and the unlabeled image set: the first step is to train the learner corresponding to the target task based on the annotated image set. Thus, the learner corresponding to the target task can be trained in advance through the initial annotated image set. In the second step, the feature vectors of each labeled image in the labeled image set and the feature vectors of each unlabeled image in the unlabeled image set are extracted by the learner to obtain the labeled image feature vector set and the unlabeled image feature vector set. Thus, the labeled image feature vector set and the unlabeled image feature vector set extracted by the learner can be used as the input of the sampling stage. In the third step, the graph structure data is constructed according to the labeled image feature vector set and the unlabeled image feature vector set. Among them, the graph structure data includes each labeled image node and each unlabeled image node. Thus, the graph structure data can be pre-constructed by using the relationship between the labeled image feature vector set and the unlabeled image feature vector set. In the fourth step, according to each labeled image node included in the graph structure data, each unlabeled image node that meets the preset distance condition is selected from the graph structure data as the image node set to be labeled. Thus, the distance between the unlabeled image node and the labeled image node can be used to select the image node to be labeled. In the fifth step, each unlabeled image corresponding to the image node set to be labeled is labeled. Thus, the unlabeled images corresponding to each selected image node to be labeled can be labeled. Also, because the sampling stage selects the image nodes to be labeled by the distance between the unlabeled image nodes and the labeled image nodes in the pre-constructed graph structure data, which is independent of the target task of the corresponding learner, the decoupling of the sampler and the learner can be achieved, thereby saving development resources. Also, because when selecting the image nodes to be labeled, they are selected through the graph structure data, and the graph structure data is constructed using the relationship between the labeled image feature vector set and the unlabeled image feature vector set, the mechanism of the correlation between the labeled image and the unlabeled image is used, thereby improving the effect of the labeled image data on the model training. As a result, development resources are saved and the effect of the labeled image data on the model training is improved.

[0064] Further references Figure 3 , which shows a process 300 of another embodiment of the image annotation method. The process 300 of the image annotation method includes the following steps:

[0065] Step 301: Based on the labeled image set and the unlabeled image set, perform the following labeling steps:

[0066] Step 3011: Based on the annotated image set, train a learner corresponding to the target task.

[0067] Step 3012: extract the feature vectors of each labeled image in the labeled image set and the feature vectors of each unlabeled image in the unlabeled image set through the learner to obtain a labeled image feature vector set and an unlabeled image feature vector set.

[0068] In some embodiments, the specific implementation of steps 3011-3012 and the technical effects brought about can be referred to Figure 2 The corresponding steps 2011-2012 in the embodiments are not described in detail here.

[0069] Step 3013: determine the labeled image feature vector set and the unlabeled image feature vector set as the image feature vector set.

[0070] In some embodiments, the execution subject of the image annotation method (eg Figure 1 The computing device 101) shown can determine the above-mentioned labeled image feature vector set and the above-mentioned unlabeled image feature vector set as an image feature vector set.

[0071] Step 3014: for each image feature vector in the image feature vector set, perform the following steps:

[0072] Step 30141: Select a predetermined number of image feature vectors from the image feature vector set whose similarity with the image feature vector satisfies a preset similarity condition.

[0073] In some embodiments, the execution subject may select a predetermined number of image feature vectors from the image feature vector set whose similarity to the image feature vector satisfies a preset similarity condition. Here, the similarity may be a similarity determined by Euclidean distance. The preset similarity condition may be that the similarities between the selected image feature vectors and the image feature vectors are the first predetermined number of similarities in a similarity sequence. The similarity sequence is the similarity between the image feature vectors in the image feature vector set that are different from the image feature vector and the image feature vector in descending order.

[0074] Step 30142: determine each selected image feature vector as a similar image feature vector set of the above image feature vector.

[0075] In some embodiments, the execution entity may determine the selected image feature vectors as a similar image feature vector set of the image feature vectors, thereby determining a predetermined number of image feature vectors that are most similar to each image feature vector.

[0076] Step 3015: construct graph structure data according to a similar image feature vector set of each image feature vector in the image feature vector set.

[0077] In some embodiments, the execution subject may construct graph structure data based on the similar image feature vector set of each image feature vector in the image feature vector set. In practice, for each image feature vector in the image feature vector set, the execution subject may use the image feature vector and each similar image feature vector in the similar image feature vector set corresponding to the image feature vector as a node, and establish an edge relationship between the image feature vector and each similar image feature vector in the similar image feature vector set corresponding to the image feature vector. Then, the data in which each node and each edge relationship is established may be determined as graph structure data. Among them, the image feature vector corresponding to the annotated image in the graph structure data is an annotated image node, and the image feature vector corresponding to the unannotated image is an unannotated image node.

[0078] Step 3016: According to each labeled image node included in the graph structure data, each unlabeled image node that meets a preset distance condition is selected from the graph structure data as a set of image nodes to be labeled.

[0079] Step 3017: label each unlabeled image corresponding to the set of image nodes to be labeled.

[0080] In some embodiments, the specific implementation of steps 3016-3017 and the technical effects brought about can be referred to Figure 2 The corresponding steps 2014-2015 in the embodiments will not be repeated here.

[0081] from Figure 3 It can be seen that Figure 2 Compared with the description of some corresponding embodiments, Figure 3 The process 300 of the image annotation method in some corresponding embodiments embodies the steps of expanding the construction of graph structure data. Therefore, the solutions described in these embodiments do not need to fully connect all nodes to determine similarity when constructing graph structure data, thereby saving memory resources.

[0082] Further references Figure 4, which shows a process 400 of some other embodiments of the image annotation method. The process 400 of the image annotation method includes the following steps:

[0083] Step 401: Based on the labeled image set and the unlabeled image set, perform the following labeling steps:

[0084] Step 4011, based on the annotated image set, train a learner corresponding to the target task.

[0085] Step 4012: extracting the feature vectors of each labeled image in the labeled image set and the feature vectors of each unlabeled image in the unlabeled image set through the learner, to obtain a labeled image feature vector set and an unlabeled image feature vector set.

[0086] Step 4013, constructing graph structure data according to the labeled image feature vector set and the unlabeled image feature vector set.

[0087] In some embodiments, the specific implementation of steps 4011-4013 and the technical effects brought about can be referred to Figure 2 The corresponding steps 2011-2013 in the embodiments are not described in detail here. The specific implementation of step 4013 and the technical effects brought about can also be referred to. Figure 3 The corresponding steps 3013-3015 in the embodiments are not repeated here.

[0088] Step 4014, training a node annotation prediction model based on the graph structure data.

[0089] In some embodiments, the execution subject of the image annotation method (eg Figure 1 The computing device 101 shown can train a node annotation prediction model based on the graph structure data. The node annotation prediction model is a graph neural network model. For example, the node annotation prediction model can be GraphSAGE. The node annotation prediction model can be used to predict whether a node in the graph structure data has been labeled. The loss function of the node annotation prediction model can be a binary cross entropy loss function, which can be expressed as:

[0090]

[0091] Where t represents the label of the image. When the image is a labeled image, t is 1. When the image is an unlabeled image, t is 0. y represents the predicted value, that is, the probability that the image is a labeled image. n represents the total number of images. i Represents the predicted value of the i-th image. i Represents the label of the i-th image. iThe smaller the value, the greater the difference between the i-th image and the already labeled images, the greater the uncertainty of the task model, and the poorer the current task model's prediction ability for these data.

[0092] Step 4015, determine the embedding representation vector of each node in the graph structure data through the node annotation prediction model.

[0093] In some embodiments, the execution subject may determine the embedded representation vector of each node in the graph structure data through the node annotation prediction model. In practice, the execution subject may determine the embedded representation vector of the image feature vector of the node through the trained node annotation prediction model. Thus, nodes with similar semantics may have similar node representations.

[0094] Step 4016, determining the embedding representation vector of each labeled image node in the graph structure data as each target embedding representation vector.

[0095] In some embodiments, the execution subject may determine the embedding representation vector of each annotated image node in the graph structure data as each target embedding representation vector. Thus, when the selection step is performed for the first time, each target embedding representation vector may be the embedding representation vector of each annotated image node.

[0096] Step 4017, based on the graph structure data and each target embedding representation vector, perform the following selection steps:

[0097] Step 40171, for each unlabeled image node in the graph structure data, the minimum value of the distance between the embedding representation vector corresponding to the unlabeled image node and each target embedding representation vector is determined as the minimum distance.

[0098] In some embodiments, for each unlabeled image node in the graph structure data, the execution entity may determine the minimum value of the distance between the embedding representation vector corresponding to the unlabeled image node and each target embedding representation vector as the minimum distance. Here, the distance may be the Euclidean distance.

[0099] Step 40172: determine the unlabeled image node corresponding to the maximum value among the determined minimum distances as the image node to be labeled.

[0100] In some embodiments, the execution subject may determine the unlabeled image node corresponding to the maximum value among the determined minimum distances as the image node to be labeled. Thus, the unlabeled image node that is most different from the labeled image node may be selected from the unlabeled image nodes as the image node to be labeled.

[0101] As an example, the schematic diagram of graph structure data can be referred to Figure 5 . Figure 5 In the figure, solid nodes can represent labeled image nodes. Solid hollow nodes can represent unlabeled image nodes. Dotted hollow nodes can represent image nodes to be labeled. Numbers can represent the minimum distance between nodes and each labeled image node. If the minimum distance at the dotted hollow node is the largest, the dotted hollow node is used as the image node to be labeled.

[0102] Step 40173, adding the image node to be labeled to the image node set to be labeled.

[0103] In some embodiments, the execution subject may add the image nodes to be annotated to the image node set to be annotated. When the selection step is performed for the first time, the image node set to be annotated may be empty, and when the selection step is performed subsequently, the image node set to be annotated may be the image node set to be annotated updated when the selection step was performed last time.

[0104] Optionally, the above-mentioned selection step may also include: in response to determining that the number of each image node to be labeled included in the set of image nodes to be labeled is less than a preset number, the embedded representation vector of the image node to be labeled is added as the target embedded representation vector to each target embedded representation vector, and the set of image nodes to be labeled after adding the image nodes to be labeled is used as the set of image nodes to be labeled, and the above-mentioned selection step is performed again. Thus, when the image nodes to be labeled are not selected enough, the currently selected image node to be labeled can be added as the target embedded representation vector to each target embedded representation vector, so that when the selection step is performed next time, the currently selected image node to be labeled can also be used as a node object to be compared with the unlabeled image node, so that more consideration of the correlation between the labeled image and the unlabeled image can be introduced.

[0105] Step 4018: label each unlabeled image corresponding to the set of image nodes to be labeled.

[0106] In some embodiments, the specific implementation of step 4018 and the technical effects brought about can be referred to Figure 2 The corresponding step 2015 in the embodiments will not be repeated here.

[0107] from Figure 4 It can be seen that Figure 2 Compared with the description of some corresponding embodiments, Figure 4The process 400 of the image annotation method in some corresponding embodiments embodies the step of expanding the selection of image nodes to be annotated. Therefore, the schemes described in these embodiments can use the node annotation prediction model to distinguish the annotated images from the unannotated images, so as to find the correlation between the annotated images and the unannotated images, and then make the annotated images more accurately represent the overall data set, and the task model can well predict the overall data set after being trained with a small amount of annotated data set.

[0108] Further references Figure 6 As an implementation of the methods shown in the above figures, the present disclosure provides some embodiments of an image annotation device. These device embodiments are similar to Figure 2 Corresponding to the method embodiments shown, the device can be specifically applied to various electronic devices.

[0109] like Figure 6 As shown, the image annotation apparatus 600 of some embodiments includes: an execution unit 601. The execution unit 601 is configured to perform the following annotation steps based on the annotated image set and the unannotated image set: based on the annotated image set, train a learner corresponding to the target task; extract the feature vectors of each annotated image in the annotated image set and the feature vectors of each unannotated image in the unannotated image set through the learner to obtain an annotated image feature vector set and an unannotated image feature vector set; construct graph structure data according to the annotated image feature vector set and the unannotated image feature vector set, wherein the graph structure data includes each annotated image node and each unannotated image node; according to each annotated image node included in the graph structure data, select each unannotated image node that meets a preset distance condition from the graph structure data as a set of image nodes to be annotated; and perform annotation processing on each unannotated image corresponding to the set of image nodes to be annotated.

[0110] Optionally, the above-mentioned labeling step also includes: in response to determining that the total amount of the labeled unlabeled images does not meet a preset quantity condition, adding each unlabeled image after the labeling process as a labeled image to the labeled image set, removing each unlabeled image after the labeling process from the unlabeled image set, and performing the above-mentioned labeling step again.

[0111] Optionally, before the execution unit 601, the image annotation device 600 may further include: a selection unit, a sending unit and a removal unit (not shown in the figure). The selection unit is configured to select a target number of unlabeled images from the initial unlabeled image set. The sending unit is configured to send the selected unlabeled images to the annotation terminal to receive the unlabeled images annotated by the annotation terminal as the annotated image set. The removal unit is configured to remove the selected unlabeled images from the initial unlabeled image set.

[0112] Optionally, the execution unit 601 can be further configured to: determine the above-mentioned annotated image feature vector set and the above-mentioned unlabeled image feature vector set as an image feature vector set; for each image feature vector in the above-mentioned image feature vector set, perform the following steps: select a predetermined number of individual image feature vectors from the above-mentioned image feature vector set whose similarity with the above-mentioned image feature vector satisfies a preset similarity condition; determine the selected individual image feature vectors as a similar image feature vector set of the above-mentioned image feature vector; and construct graph structure data based on the similar image feature vector set of each image feature vector in the above-mentioned image feature vector set, wherein the image feature vector corresponding to the annotated image in the above-mentioned graph structure data is a annotated image node, and the image feature vector corresponding to the unlabeled image is an unlabeled image node.

[0113] Optionally, the execution unit 601 can be further configured to: train a node labeling prediction model based on the above-mentioned graph structure data, wherein the above-mentioned node labeling prediction model is a graph neural network model; determine the embedding representation vector of each node in the above-mentioned graph structure data through the above-mentioned node labeling prediction model; determine the embedding representation vector of each labeled image node in the above-mentioned graph structure data as each target embedding representation vector; based on the graph structure data and each target embedding representation vector, perform the following selection steps: for each unlabeled image node in the graph structure data, determine the minimum value of the distance between the embedding representation vector corresponding to the above-mentioned unlabeled image node and each target embedding representation vector as the minimum distance; determine the unlabeled image node corresponding to the maximum value among the determined minimum distances as the image node to be labeled; add the image node to be labeled to the set of image nodes to be labeled.

[0114] Optionally, the above-mentioned selection step also includes: in response to determining that the number of each image node to be labeled included in the set of image nodes to be labeled is less than a preset number, adding the embedding representation vector of the image node to be labeled as the target embedding representation vector to each target embedding representation vector, taking the set of image nodes to be labeled after adding the image nodes to be labeled as the set of image nodes to be labeled, and performing the above-mentioned selection step again.

[0115] Optionally, the execution unit 601 may be further configured to: send the above-mentioned unlabeled images to a labeling terminal, so that a user corresponding to the labeling terminal labels the above-mentioned unlabeled images; and receive the labeled unlabeled images sent by the labeling terminal.

[0116] It is understood that the units described in the device 600 are similar to those described in the reference Figure 2 Therefore, the operations, features and beneficial effects described above for the method are also applicable to the device 600 and the units included therein, and will not be described in detail here.

[0117] Reference below Figure 7 , which shows an electronic device 700 (eg, Figure 1 Schematic diagram of the structure of the computing device 101). Figure 7 The electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0118] like Figure 7 As shown, the electronic device 700 may include a processing device 701 (e.g., a central processing unit, a graphics processing unit, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 702 or a program loaded from a storage device 708 into a random access memory (RAM) 703. In the RAM 703, various programs and data required for the operation of the electronic device 700 are also stored. The processing device 701, the ROM 702, and the RAM 703 are connected to each other via a bus 704. An input / output (I / O) interface 705 is also connected to the bus 704.

[0119] Typically, the following devices may be connected to the I / O interface 705: an input device 706 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 707 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 708 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 709. The communication device 709 may allow the electronic device 700 to communicate with other devices wirelessly or by wire to exchange data. Although Figure 7 The electronic device 700 is shown with various devices, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed instead. Figure 7 Each block shown in the figure may represent one device, or may represent multiple devices as required.

[0120] In particular, according to some embodiments of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, some embodiments of the present disclosure include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In some such embodiments, the computer program can be downloaded and installed from the network through the communication device 709, or installed from the storage device 708, or installed from the ROM 702. When the computer program is executed by the processing device 701, the above-mentioned functions defined in the method of some embodiments of the present disclosure are executed.

[0121] It should be noted that the computer-readable medium recorded in some embodiments of the present disclosure may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In some embodiments of the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that can be used by or in combination with an instruction execution system, device or device. In some embodiments of the present disclosure, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, which carries a computer-readable program code. This propagated data signal may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. The computer readable signal medium may also be any computer readable medium other than a computer readable storage medium, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. The program code contained on the computer readable medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.

[0122] In some embodiments, the client and the server may communicate using any currently known or future developed network protocol such as HTTP (HyperText Transfer Protocol), and may be interconnected with any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), an internet (e.g., the Internet), and a peer-to-peer network (e.g., an ad hoc peer-to-peer network), as well as any currently known or future developed network.

[0123] The computer-readable medium may be included in the electronic device; or it may exist independently without being assembled into the electronic device. The computer-readable medium carries one or more programs. When the one or more programs are executed by the electronic device, the electronic device: performs the following annotation steps based on the annotated image set and the unannotated image set: trains a learner corresponding to the target task based on the annotated image set; extracts the feature vectors of each annotated image in the annotated image set and the feature vectors of each unannotated image in the unannotated image set through the learner, and obtains an annotated image feature vector set and an unannotated image feature vector set; constructs graph structure data according to the annotated image feature vector set and the unannotated image feature vector set, wherein the graph structure data includes each annotated image node and each unannotated image node; selects each unannotated image node that meets a preset distance condition from the graph structure data as a set of image nodes to be annotated according to each annotated image node included in the graph structure data; and annotates each unannotated image corresponding to the set of image nodes to be annotated.

[0124] Computer program code for performing the operations of some embodiments of the present disclosure may be written in one or more programming languages ​​or a combination thereof, including object-oriented programming languages ​​such as Java, Smalltalk, C++, and conventional procedural programming languages ​​such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).

[0125] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some implementations as replacements, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0126] The units described in some embodiments of the present disclosure may be implemented by software or hardware. The units described may also be provided in a processor, for example, may be described as: a processor includes an execution unit. The names of these units do not, in some cases, constitute limitations on the units themselves.

[0127] The functions described above herein may be performed at least in part by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), and the like.

[0128] Some embodiments of the present disclosure further provide a computer program product, including a computer program, which implements any of the above-mentioned image annotation methods when executed by a processor.

[0129] The above descriptions are only some preferred embodiments of the present disclosure and an explanation of the technical principles used. Those skilled in the art should understand that the scope of the invention involved in the embodiments of the present disclosure is not limited to the technical solutions formed by a specific combination of the above-mentioned technical features, but should also cover other technical solutions formed by any combination of the above-mentioned technical features or their equivalent features without departing from the above-mentioned inventive concept. For example, the above-mentioned features are replaced with the technical features with similar functions disclosed in the embodiments of the present disclosure (but not limited to) and the technical solutions formed.

Claims

1. An image annotation method, comprising: Based on the labeled image set and the unlabeled image set, the following labeling steps are performed: Based on the annotated image set, train the learner corresponding to the target task; Extracting feature vectors of each labeled image in the labeled image set and feature vectors of each unlabeled image in the unlabeled image set through the learner to obtain a labeled image feature vector set and an unlabeled image feature vector set; Constructing graph structure data according to the labeled image feature vector set and the unlabeled image feature vector set, wherein the graph structure data includes each labeled image node and each unlabeled image node; According to each labeled image node included in the graph structure data, each unlabeled image node that meets a preset distance condition is selected from the graph structure data as a set of image nodes to be labeled; Perform labeling on each unlabeled image corresponding to the set of labeled image nodes.

2. The method according to claim 1, wherein: The marking step further comprises: In response to determining that the total amount of the labeled unlabeled images does not meet the preset quantity condition, each unlabeled image after the labeling process is added as a labeled image to the labeled image set, each unlabeled image after the labeling process is removed from the unlabeled image set, and the labeling step is performed again.

3. The method according to claim 1, wherein: Before performing the following labeling step based on the labeled image set and the unlabeled image set, the method further includes: Select a target number of unlabeled images from an initial set of unlabeled images; Sending the selected unlabeled images to the labeling terminal, so as to receive the labeled unlabeled images from the labeling terminal as a labeled image set; Each selected unlabeled image is removed from the initial unlabeled image set.

4. The method according to claim 1, wherein: The step of constructing graph structure data according to the labeled image feature vector set and the unlabeled image feature vector set includes: Determining the labeled image feature vector set and the unlabeled image feature vector set as an image feature vector set; For each image feature vector in the image feature vector set, the following steps are performed: Selecting a predetermined number of individual image feature vectors from the image feature vector set whose similarity to the image feature vector satisfies a preset similarity condition; Determining each selected image feature vector as a similar image feature vector set of the image feature vector; According to a similar image feature vector set of each image feature vector in the image feature vector set, graph structure data is constructed, wherein the image feature vectors corresponding to the labeled images in the graph structure data are labeled image nodes, and the image feature vectors corresponding to the unlabeled images are unlabeled image nodes.

5. The method according to any one of claims 1 to 4, wherein: The step of selecting each unlabeled image node satisfying a preset distance condition from the graph structure data as a set of image nodes to be labeled includes: According to the graph structure data, training a node annotation prediction model, wherein the node annotation prediction model is a graph neural network model; Determining an embedded representation vector of each node in the graph structure data by using the node annotation prediction model; Determine the embedding representation vector of each annotated image node in the graph structure data as each target embedding representation vector; Based on the graph structure data and each target embedding representation vector, the following selection steps are performed: For each unlabeled image node in the graph structure data, determining the minimum value of the distance between the embedding representation vector corresponding to the unlabeled image node and each target embedding representation vector as the minimum distance; Determine the unlabeled image node corresponding to the maximum value among the determined minimum distances as the image node to be labeled; Add the image node to be labeled to the image node collection to be labeled.

6. The method according to claim 5, wherein: The selecting step further comprises: In response to determining that the number of image nodes to be labeled included in the set of image nodes to be labeled is less than a preset number, the embedding representation vector of the image node to be labeled is added as the target embedding representation vector to each target embedding representation vector, and the set of image nodes to be labeled after the image nodes to be labeled are added is used as the set of image nodes to be labeled, and the selection step is performed again.

7. The method according to claim 1, wherein: The labeling process of each unlabeled image corresponding to the set of labeled image nodes includes: Sending each of the unlabeled images to a labeling terminal so that a user corresponding to the labeling terminal labels each of the unlabeled images; Receive each unlabeled image after labeling processing sent by the labeling terminal.

8. An image annotation device, comprising: The execution unit is configured to perform the following labeling steps based on the labeled image set and the unlabeled image set: training a learner corresponding to the target task based on the labeled image set; Through the learner, feature vectors of each labeled image in the labeled image set and feature vectors of each unlabeled image in the unlabeled image set are extracted to obtain a labeled image feature vector set and an unlabeled image feature vector set; graph structure data is constructed according to the labeled image feature vector set and the unlabeled image feature vector set, wherein the graph structure data includes each labeled image node and each unlabeled image node; according to each labeled image node included in the graph structure data, each unlabeled image node that meets a preset distance condition is selected from the graph structure data as a set of image nodes to be labeled; and each unlabeled image corresponding to the set of image nodes to be labeled is labeled.

9. An electronic device, comprising: one or more processors; a storage device having one or more programs stored thereon, When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 7.

10. A computer readable medium having a computer program stored thereon, wherein: When the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.

11. A computer program product, comprising a computer program, which, when executed by a processor, implements the method according to any one of claims 1 to 7.