Method and system for evaluating object detection models

Through the improved IoU formula, considering the weights of intersection and union and the intersection of adjacent targets, the performance of the object detection model is evaluated, which solves the problem that traditional IoU cannot effectively evaluate text detection, and improves the accuracy of text detection and OCR results. Integrity.

CN113850264BActive Publication Date: 2024-12-17ADVANCED NEW TECHNOLOGIES CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111073590.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2019-06-10
Filing Date
2020-05-07
Publication Date
2024-12-17
Estimated Expiration
2040-05-07

AI Technical Summary

Technical Problem

The traditional inter-union ratio (IoU) formula cannot effectively evaluate the performance of the object detection model in text detection, resulting in reduced text recognition accuracy, especially failure to consider area loss caused by small intersections and large union and predict text boxes. The effect of intersection with other truth-value text boxes on OCR results.

Method used

A modified IoU formula is proposed to evaluate the corrected union area between the predicted bounding box and the truth bounding box by weighting the union area and the intersection area of ​​adjacent targets, and divide the intersection area by the corrected union area to obtain Performance score, penalties for smaller intersections and larger unions, and prediction of intersections between text boxes and other truth-value text boxes.

Benefits of technology

It improves the selection accuracy of text detection models, enhances the final accuracy of OCR, and ensures the completeness and accuracy of detection results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113850264B_ABST
    Figure CN113850264B_ABST
Patent Text Reader

Abstract

The present invention provides a method and system for evaluating a target detection model. The method includes: generating a predicted bounding box representing a target based on a target detection model. The target is located near one or more adjacent targets. The method also includes determining the intersection area between the predicted bounding box and the true value bounding box of the target, and determining the corrected union area between the predicted bounding box and the true value bounding box of the target. Determining the corrected union area includes: determining a weighted union area between the predicted bounding box and the true value bounding box based on one or more weights, and adding the intersection area between the predicted bounding box and at least one true value bounding box of the one or more adjacent targets to the weighted union area. The method further includes determining a score equal to the intersection area between the predicted bounding box and the true value bounding box of the target divided by the corrected union area. The score represents the performance of the target detection model.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention generally relates to methods and systems for evaluating object detection models, and to object detection methods and apparatus. Background Art

[0002] Optical Character Recognition (OCR) mechanically or electronically converts printed, handwritten or printed text images into machine-encoded text, whether the text image comes from a scanned document, a document photo, a scene photo, or subtitle text superimposed on an image, etc. In order to recognize text, the first step is to detect the bounding boxes of each text segment. Algorithms for detecting text belong to the field of "object detection" in computer vision.

[0003] In object detection, Intersection over Union (IoU) is a common standard metric for evaluating the accuracy of detectors and model selection. The traditional IoU formula is defined as "the area of ​​the intersection between the predicted bounding box and the ground truth bounding box divided by the area of ​​the union between the predicted bounding box and the ground truth bounding box". In most cases, this formula works well. However, in the case of text detection, the traditional IoU may not select the best model / parameters, so using the traditional IoU may significantly reduce the final accuracy of text recognition.

[0004] For example, the traditional IoU formula does not consider at least two situations, namely, (1) the traditional IoU does not take into account that a small intersection and a large union will similarly lead to a small IoU, but for text detection, a small intersection is worse than a large union because it may cause some areas of the text to be lost and affect the subsequent OCR results; (2) the traditional IoU does not consider the intersection between the predicted text box and other true value text boxes. If the above two situations are not taken into account, even if the IoU value is higher, the model is not necessarily better.

[0005] Therefore, there is a need to provide methods and apparatus that can improve the evaluation of object detection models for text detection. Summary of the invention

[0006] A first aspect of the present disclosure provides a method for evaluating the performance of a target detection model. The method includes generating a predicted bounding box representing a target based on the target detection model, wherein the target is located near one or more adjacent targets; determining the intersection area between the predicted bounding box and the true bounding box of the target; and determining the corrected union area between the predicted bounding box and the true bounding box of the target. Determining the corrected union area includes determining the weighted union area between the predicted bounding box and the true bounding box according to one or more weights; and adding the weighted union area to the intersection area between the predicted bounding box and at least one true bounding box of the one or more adjacent targets. The method also includes determining a score, which is equal to the intersection area between the predicted bounding box and the true bounding box of the target divided by the corrected union area. The score represents the performance of the target detection model.

[0007] The second aspect of the present disclosure provides a target detection method. The method includes: receiving unlabeled actual data and multiple target detection models, wherein the multiple target detection models are generated by a neural network based on labeled training data; using the method described in the first aspect, evaluating each of the target detection models using verification data to identify the target detection model with the highest score; and detecting targets in the unlabeled actual data according to the identified target detection model.

[0008] A third aspect of the present disclosure provides a system for evaluating a target detection model. The system includes a processor and a computer-readable memory coupled to the processor and storing instructions. The instructions can be executed by the processor to generate a predicted bounding box representing a target based on the target detection model, wherein the target is located near one or more adjacent targets; determine the intersection area between the predicted bounding box and the true bounding box of the target; and determine the corrected union area between the predicted bounding box and the true bounding box of the target. The union correction area is the sum of: the weighted union area between the predicted bounding box and the true bounding box based on one or more weights; and the intersection area between the predicted bounding box and at least one true bounding box of the one or more adjacent targets. The instructions can also be executed by the processor to determine a score equal to the intersection area between the predicted bounding box and the true bounding box of the target divided by the corrected union area. The score represents the performance of the target detection model.

[0009] A fourth aspect of the present disclosure provides an apparatus, comprising: a target detection module, which is configured to generate a predicted bounding box representing a target based on a target detection model, wherein the target is located near one or more adjacent targets; and an evaluation module. The evaluation module is configured to determine the intersection area between the predicted bounding box and the true bounding box of the target; and determine the corrected union area between the predicted bounding box and the true bounding box of the target. The corrected union area is the sum of: a weighted union area between the predicted bounding box and the true bounding box based on one or more weights; and an intersection area between the predicted bounding box and at least one true bounding box of the one or more adjacent targets. The evaluation module is also configured to determine a score, which is equal to the intersection area between the predicted bounding box and the true bounding box of the target divided by the corrected union area; and based on the score, evaluate the performance of the target detection model.

[0010] A fifth aspect of the present disclosure provides a target detector. The target detector includes a receiver module, which is configured to receive unlabeled actual data and multiple target detection models. The multiple target detection models are generated by a neural network based on labeled training data. The target detector also includes a device as defined in the fourth aspect, which is coupled to the receiver module and is configured to evaluate each of the target detection models using verification data to identify the target detection model with the highest score. The target detection module is also configured to detect targets in the unlabeled actual data based on the identified target detection model. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] Through the following textual description which is merely an example and in conjunction with the accompanying drawings, a person skilled in the art will better understand and appreciate the embodiments of the present invention, in which:

[0012] Figure 1 The present invention is a flowchart of a method for evaluating a target detection model according to an embodiment.

[0013] Figure 2a and Figure 2b Shown in Figure 1 Schematic diagram of an implementation of determining the corrected union area in the method.

[0014] Figure 3 The figure is a flow chart of a target detection method according to an embodiment.

[0015] Figure 4 is a schematic diagram of a target detector according to an embodiment.

[0016] Figure 5 shows that it is suitable for implementing Figure 1 and Figure 3 Methods and Figure 4 Schematic diagram of the computer system of the object detector.

[0017] The skilled person will appreciate that the elements in the drawings are shown for simplicity and clarity and are not necessarily drawn to scale. For example, the size of some elements in the illustrations, block diagrams or flow charts may be enlarged relative to other elements to help improve understanding of the present embodiment. DETAILED DESCRIPTION

[0018] The present disclosure provides a method and device for evaluating an object detection model based on an improved IoU formula, which takes into account the following factors: (1) for text detection, a smaller intersection is worse than a larger union because this may cause some areas of the text to be lost and affect the subsequent OCR results, and (2) for text detection, the intersection between the predicted text box and other true text boxes may also have an adverse effect on the subsequent OCR results. As described in more detail below, the evaluation is based on a score, which not only penalizes the combination of a smaller intersection and a larger union (as done in the traditional IoU formula), but also penalizes a smaller intersection more heavily than a larger union. In addition, the evaluation penalizes the intersection between the predicted text box and multiple other true text boxes. Therefore, given several different object detection models, the evaluation can identify or select the model that is most suitable for text detection.

[0019] Embodiments will be described, by way of example only, with reference to the accompanying drawings. Like reference numerals and characters in the drawings indicate like elements or equivalents.

[0020] Portions of the following description are presented, either explicitly or implicitly, in terms of algorithms and functional or symbolic representations of operations on data within a computer memory. These algorithmic descriptions and functional or symbolic representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, generally conceived to be a self-consistent sequence of steps leading to a desired result. These steps are steps requiring physical manipulation of physical quantities, such as electrical, magnetic or optical signals capable of being stored, transferred, combined, compared, and otherwise manipulated.

[0021] Unless specifically stated otherwise and as will become apparent from the ensuing content, it is to be understood that throughout this specification, discussions using terms such as “scan,” “receive,” “calculate,” “detect,” “determine,” “replace,” “generate,” “initialize,” “output,” “evaluate” and the like refer to operations and processes of a computer system or similar electronic device that processes and converts data represented as physical quantities within the computer system into other data represented as physical quantities in the computer system or other information storage, transmission, or display device.

[0022] This specification also discloses a device for performing the operation of the method. Such a device may be specially constructed for the desired purpose, or may include a computer or other device selectively activated or reconfigured by a computer program stored in the computer. The algorithms and displays presented herein are not inherently associated with any particular computer or other device. According to the teachings of this article, various machines can be used with the program. Alternatively, it may be appropriate to build a more specialized device to perform the required method steps. The structure of a computer suitable for performing the various methods / processes described herein will be shown from the description herein.

[0023] In addition, this specification also implicitly discloses a computer program, because it is obvious to those skilled in the art that the various steps of the method described herein can be implemented by computer code. The computer program is not intended to be limited to any specific programming language and its implementation method. It is understandable that various programming languages ​​and codes thereof can be used to implement the teachings of the present disclosure contained herein. In addition, the computer program is not intended to be limited to any specific control flow. There are many other variations of the computer program, and these variations can use different control flows without departing from the spirit or scope of the present invention.

[0024] In addition, one or more steps of the computer program can be performed in parallel rather than sequentially. Such a computer program can be stored on any computer-readable medium. The computer-readable medium can include a storage device, such as a disk or optical disk, a memory chip, or other storage devices that are suitable for interacting with a computer. The computer-readable medium can also include a hard-wired medium such as exemplified in an Internet system, or include a wireless medium, such as exemplified in a GSM, GPRS, 3G or 4G mobile phone system, and other wireless systems such as Bluetooth, ZigBee, Wi-Fi. When loading and executing the computer program on such a computer, a device for realizing the preferred method steps is effectively generated.

[0025] The present invention may also be implemented as a hardware module. More specifically, in hardware, a module is a functional hardware unit designed to be used with other components or modules. For example, a module may be implemented using discrete electronic components, or a module may constitute part of an entire electronic circuit, such as an Application Specific Integrated Circuit (ASIC) or a Field Programmable Gate Array (FPGA). There are many other possibilities. Those skilled in the art will appreciate that the system may also be implemented as a combination of hardware and software modules.

[0026] According to various embodiments, a "circuit" may be understood as any kind of logic implementation entity, which may be a dedicated circuit or a processor that executes software stored in a memory, firmware, or any combination thereof. Thus, in one embodiment, a "circuit" may be a hard-wired logic circuit or a programmable logic circuit, such as a programmable processor, such as a microprocessor (e.g., a Complex Instruction Set Computer (CISC) processor or a Reduced Instruction Set Computer (RISC) processor). A "circuit" may also be a processor that executes software, such as any kind of computer program, such as a computer program using a virtual machine code such as Java. According to alternative embodiments, any other kind of implementation of the various functions that may be described in more detail herein may also be understood as a "circuit".

[0027] Figure 1 A flowchart 100 illustrating a method for evaluating the performance of an object detection model is shown according to an embodiment.

[0028] In step 102, a predicted bounding box representing the target is generated based on the target detection model. There are usually one or more neighboring targets near the target. For example, the target can be a text string (e.g., a word or a phrase) that is close to other multiple text strings (e.g., other multiple words and multiple phrases in a sentence or paragraph). Parameters such as the size and position of the predicted bounding box may vary depending on the target detection model. Therefore, the performance of the target detection model depends on the predicted bounding box.

[0029] In step 104, the intersection area between the predicted bounding box and the true bounding box of the target is determined. Generally, the larger the intersection area between the predicted bounding box and the true bounding box of the target, the higher the degree of overlap between the bounding boxes, and a larger intersection area is more desirable than a smaller intersection area.

[0030] In step 106, a modified union area between the predicted bounding box and the true bounding box of the target is determined by the following operations (1) and (2), wherein: (1) a weighted union area between the predicted bounding box and the true bounding box is determined based on one or more weights, and (2) an intersection area between the predicted bounding box and at least one true bounding box of one or more adjacent targets is added to the weighted union area.

[0031] As reference below Figure 2aFurther explained, since the union area between two targets is the sum of their intersection area and multiple non-intersection areas, in this example, the weighted union area between the predicted bounding box and the true bounding box can be determined by assigning appropriate weights to each component area, which includes multiple non-intersection areas between the predicted bounding box and the true bounding box of the target.

[0032] refer to Figure 2b , further illustrating the intersection area between the predicted bounding box and at least one ground-truth bounding box of one or more adjacent objects.

[0033] The final result of step 106 is a corrected union area, which is larger if the predicted bounding box does not overlap well with the true bounding box of the object and / or the predicted bounding box overlaps with one or more true bounding boxes of one or more adjacent objects. Generally, a smaller union corrected area is more desirable than a larger union corrected area.

[0034] In step 108, a score is determined by dividing the intersection area between the predicted bounding box and the true bounding box of the object by the corrected union area. The score represents the performance of the object detection model. For example, if the object detection model produces a larger corrected union area, the score will be lower. On the other hand, if the object detection model produces a smaller corrected union area, the score will be higher. A score close to 1 indicates a high accuracy of object detection.

[0035] Figure 2a and Figure 2b Shown in Figure 1 Schematic diagram of an implementation of determining the corrected union area in the method. In this implementation, the target and the plurality of adjacent targets are text strings containing characters and numbers, and the bounding box may also be referred to as a "text box". However, those skilled in the art will appreciate that text detection is only an example, and the method may be applied to other types of target detection.

[0036] refer to Figure 2a to Figure 2b , the predicted bounding boxes can be labeled as set A, the true bounding boxes of the target can be labeled as set B, and the multiple true bounding boxes of multiple adjacent targets can be labeled as sets C and D, respectively. Given the labeled verification data, the sizes and positions of B, C, and D are known, while the size and position of A can vary depending on the detection model used. Although the bounding boxes of two adjacent targets are shown in this example, it should be understood that the calculation can be applied to a larger number of adjacent targets.

[0037] exist Figure 1 The modified union area modified(A∪B) in step 106 can be expressed as:

[0038] modified(A∪B)=weighted(A∪B)+A∩C+A∩D (I)

[0039] Among them, weighted(A∪B) represents the weighted union area between set A and set B, A∩C represents the intersection between set A and set C, and A∩D represents the intersection between set A and set D. The corresponding areas of A∩C and A∩D are as follows Figure 2b shown.

[0040] Reference Figure 2a , the standard union area is the area of ​​the intersection (A∩B) and the sum of the areas of multiple non-intersections (A1 and B1). In formula (I), the value of weighted(A∪B) is determined by considering the following factors: the larger the B1, the smaller the intersection between the predicted bounding box and the true bounding box, and the larger the A1, the larger the union. Therefore, in this embodiment, B1 is punished more heavily than A1.

[0041] For example, weighted(A∪B) can be expressed as:

[0042] weighted(A∪B)=w1A1+w2B1+(A∩B) (II)

[0043] In formula (II), weights w1 and w2 are used to adjust the penalty for A1 and B1. The larger B1 is, the smaller the intersection is, while the larger A1 is, the larger the union is. Therefore, B1 should be penalized more heavily, which means w1<w2. The exact values ​​of w1 and w2 can be selected based on actual data and can vary depending on the situation. In a non-limiting example, w1+w2=2. The area corresponding to A1, B1 and A∩B is as follows Figure 2a shown.

[0044] By combining the above two formulas (I) and (II):

[0045] modified(A∪B)=w1A1+w2B1+(A∩B)+A∩C+A∩D (III)

[0046] refer to Figure 1 In step 108, the score can be calculated as:

[0047]

[0048] In formulas (III) and (IV), w1<w2, and in one non-limiting example, w1+w2=2.

[0049] As can be seen from the above formula (IV), although the numerator is the same as that used to determine the traditional IoU, the denominator is adjusted to: (1) more heavily penalize smaller intersections between sets A and B, and less heavily penalize larger unions between sets A and B (such as w1 < w2), and (2) penalize any intersection between sets A and C or between sets A and D (such as components A∩C and A∩D are not zero). In other words, if one or both of conditions (1) and (2) occur, the score is low (indicating low performance of the target detection model). On the contrary, if the intersection between sets A and B is large, and there is no intersection between sets A and C or between sets A and D, the score is high. A higher score (such as close to 1) indicates a higher accuracy of the target detection model.

[0050] The evaluation method described above can be used for object detection by first identifying an appropriate model for the detection task and then using the model to analyze real data. Figure 3 FIG. 3 is a flow chart 300 showing a method for detecting an object according to an embodiment.

[0051] In step 302, unlabeled actual data and a plurality of target detection models are received. The target detection model may be generated by a neural network (e.g., a convolutional neural network) based on labeled training data. The unlabeled actual data may be in the form of image data of an optical image of a target. For example, the optical image may be a scanned document or a photo of a document uploaded by a customer, which contains text information that the customer wishes to provide.

[0052] In step 304, given the marked verification data, use the above reference Figure 1 and Figure 2a to Figure 2b The described method evaluates each of the object detection models to identify the object detection model with the highest score. In step 306, the identified object detection model is used to detect objects in the unlabeled real data.

[0053] exist Figure 3 In an embodiment of the target detection method, the multiple target detection models in step 302 may have associated hyperparameters, and the target detection model with the highest score having the associated hyperparameters is identified in step 306. Then, the identified model and the associated hyperparameters are used to detect targets in the unlabeled real data.

[0054] Figure 44 is a schematic diagram of an object detector 400 shown according to one embodiment. The object detector includes a receiver module 402 coupled to a device 404. The device 404 includes a target detection module 406 and an evaluation module 408. Typically, a labeled validation data set 410 is provided to the evaluation module 408. The receiver module 402 is configured to receive unlabeled actual data and multiple target detection models. The multiple target detection models are generated by a neural network based on labeled training data. The device 404 can evaluate each target detection model based on the validation data to identify the target detection model with the highest score.

[0055] In one example, the target detection module 406 is configured to generate a predicted bounding box representing the target based on the target detection model. There are one or more adjacent targets near the target. The evaluation module 408 is configured to determine the intersection area between the predicted bounding box and the true bounding box of the target, and determine the corrected union area between the predicted bounding box and the true bounding box of the target. The corrected union area is the sum of the following areas: the weighted union area between the predicted bounding box and the true bounding box based on one or more weights; and the intersection area between the predicted bounding box and at least one true bounding box of one or more adjacent targets. The evaluation module 408 is also configured to determine the score obtained by dividing the intersection area between the predicted bounding box and the true bounding box of the target by the corrected union area, and evaluate the performance of the target detection model based on the score. These steps are performed for each target detection model to identify the target detection model with the highest score.

[0056] Then, the object detection module 406 can detect objects in unlabeled real data based on the identified object detection model.

[0057] The described method, system and device can improve the performance of model selection in text box detection and improve the final accuracy of OCR when applied to text detection. If a small intersection is presented between the predicted text box and the true value text box of the target text string according to the detection model, the data output by the detection model may be incomplete or truncated. Similarly, if a certain degree of intersection is presented between the predicted text box and the true value text boxes of multiple adjacent text strings according to the detection model, the data output by the detection model may be noisy or inaccurate. According to this embodiment, such a detection model has a low evaluation score and will not be selected. On the contrary, if a large intersection is presented between the predicted text box and the true value text box of the target text string according to the detection model, and there is no intersection between the predicted text box and the true value text boxes of multiple adjacent text strings, the detection model has a high evaluation score and is selected. When used to detect text boxes in real / actual optical images, the selected model can output accurate data to help improve the accuracy of subsequent OCR steps.

[0058] Figure 5 An exemplary computing device 500, also referred to hereinafter as a computer system 500, is depicted, wherein one or more such computing devices 500 may be used to Figure 4 The target detector 400, or for implementing Figure 1 and Figure 3 The following description of computing device 500 is provided by way of example only and is not intended to be limiting.

[0059] like Figure 5 As shown, the example computing device 500 includes a processor 504 for executing software routines. Although a single processor is shown for clarity, the computing device 500 may also include a multi-processor system. The processor 504 is connected to a communication infrastructure 506 for communicating with other components of the computing device 500. The communication infrastructure 506 may include, for example, a communication bus, a crossbar switch, or a network.

[0060] The computing device 500 also includes a main memory 508, such as a random access memory (RAM), and an auxiliary memory 510. The auxiliary memory 510 may include, for example, a hard disk drive 512 and / or a removable storage drive 514, which may include a floppy disk drive, a tape drive, an optical disk drive, etc. The removable storage drive 514 reads and / or writes to a removable storage unit 518 in a conventional manner. The removable storage unit 518 may include a floppy disk, a tape, an optical disk, etc. that is read and written by the removable storage drive 514. It will be appreciated by those skilled in the relevant art that the removable storage unit 518 includes a computer-readable storage medium having computer-executable program code instructions and / or data stored thereon.

[0061] In an alternative embodiment, the secondary memory 510 may additionally or alternatively include other similar means for allowing computer programs or other instructions to be loaded into the computing device 500. Such means may include, for example, a removable storage unit 522 and an interface 520. Examples of removable storage units 522 and interfaces 520 include: program cartridges and cartridge interfaces (such as those found in video game console devices), removable storage chips (such as EPROM or PROM) and associated slots, and other removable storage units 522 and interfaces 520 that allow software and data to be transferred from the removable storage unit 522 to the computer system 500.

[0062] The computing device 500 also includes at least one communication interface 524. The communication interface 524 allows software and data to be transmitted between the computing device 500 and an external device via a communication path 526. In various embodiments of the present invention, the communication interface 524 allows data to be transmitted between the computing device 500 and a data communication network such as a public data or private data communication network. The communication interface 524 can be used to exchange data between different computing devices 500, which form part of an interconnected computer network. Examples of the communication interface 524 can include a modem, a network interface (such as an Ethernet card), a communication port, an antenna with associated circuits, and the like. The communication interface 524 can be wired or can be wireless. The software and data transmitted via the communication interface 524 are in the form of signals, which can be electrical, magnetic, optical or other signals that can be received by the communication interface 524. These signals are provided to the communication interface via a communication path 526.

[0063] like Figure 5 As shown, computing device 500 also includes a display interface 502 that performs operations for rendering images to an associated display 530 , and an audio interface 532 that performs operations for playing audio content through associated speakers 534 .

[0064] In this application document, the term "computer program product" may refer in part to: removable storage unit 518, removable storage unit 522, a hard disk installed in hard disk drive 512, or a carrier wave carrying the software through communication path 526 (wireless link or cable) to communication interface 524. Computer-readable storage media refers to any non-transitory tangible storage medium that provides recorded instructions and / or data to computing device 500 for execution and / or processing. Examples of such storage media include floppy disks, tapes, CD-ROMs, DVDs, Blu-rays, and other media. TM An optical disk, hard drive, ROM or integrated circuit, USB memory, magneto-optical disk, or computer-readable card such as a PCMCIA card, etc., may be internal or external to the computing device 500. Transient or non-tangible computer-readable transmission media may also be involved in providing software, applications, instructions and / or data to the computing device 500, examples of which include radio or infrared transmission channels, a network connection to another computer or another networked device, and the Internet or an intranet including electronic mail transmissions and information recorded on websites, etc.

[0065] Computer programs (also referred to as computer program code) are stored in the main memory 508 and / or the secondary memory 510. The computer programs may also be received via the communication interface 524. Such computer programs, when executed, enable the computing device 500 to perform one or more features of the embodiments discussed herein. In various embodiments, the computer programs, when executed, enable the processor 504 to perform the features of the above-described embodiments. Thus, such computer programs represent controllers of the computer system 500.

[0066] The software may be stored in a computer program product and loaded into computing device 500 using removable storage drive 514, hard drive 512, or interface 520. Alternatively, the computer program product may be downloaded to computer system 500 via communications path 526. The software, when executed by processor 504, causes computing device 500 to perform the functions of the embodiments described herein.

[0067] It should be understood that Figure 5 The embodiments are given by way of example only. Therefore, in some embodiments, one or more features of computing device 500 may be omitted. Moreover, in some embodiments, one or more features of computing device 500 may be combined together. In addition, in some embodiments, one or more features of computing device 500 may be separated into one or more components.

[0068] Understandably, Figure 5 The elements shown serve to provide a means of performing the various functions and operations of the server described in the above embodiments.

[0069] In one embodiment, a server can generally be described as a physical device including at least one processor and at least one memory including computer program code. The at least one memory and the computer program code are configured to work with the at least one processor to cause the physical device to perform necessary operations.

[0070] It will be appreciated by those skilled in the art that many variations and / or modifications may be made to the invention as shown in the specific embodiments without departing from the spirit or scope of the invention as broadly described. For example, the described methods, systems and apparatus may be adapted for different types of object detection, such as face detection or vehicle detection. The present embodiments are therefore to be considered in all respects as illustrative and not restrictive.

Claims

1. A method for evaluating the performance of object detection models, It is characterized in that The method comprises: Detecting a predicted bounding box of a target object using the target detection model; Determine a score for evaluating the performance of the object detection model, where The score is positively correlated with the first intersection area and negatively correlated with the weighted union area; and / or The score is positively correlated with the first intersection area, negatively correlated with the first union area, and negatively correlated with the second intersection area; The first intersection area is the intersection area of ​​the predicted bounding box and the real bounding box of the target object; the first union area is the union area of ​​the predicted bounding box and the real bounding box of the target object; the weighted union area is the weighted sum of multiple non-intersection areas in the first union area plus the first intersection area; the second intersection area is the intersection area of ​​the predicted bounding box of the target object and the real bounding box of at least one adjacent object.

2. The method according to claim 1, It is characterized in that The score is positively correlated with the first intersection area, and negatively correlated with the weighted union area and the second intersection area. The steps of obtaining the score include: Determine a modified union area according to the sum of the second intersection area and the weighted union area; The score is determined based on a ratio of the first intersection area to the modified union area.

3. The method according to claim 1, It is characterized in that The plurality of non-intersecting areas are assigned different weights.

4. The method according to claim 3, It is characterized in that The plurality of non-intersecting areas include: The portion of the predicted bounding box of the target object that does not intersect with the real bounding box corresponds to the first weight; The portion of the target object in the real bounding box that does not intersect with the predicted bounding box corresponds to a second weight; The first weight is smaller than the second weight, and / or the sum of the first weight and the second weight is a specified value.

5. The method according to claim 1, It is characterized in that The target object and the neighboring objects include text strings.

6. The method according to claim 1, It is characterized in that The score is positively correlated with the accuracy of the object detection model.

7. A detection method, It is characterized in that The method comprises: Evaluating the performance of multiple target detection models using the method described in any one of claims 1 to 6; Use the target detection model with the highest score to detect the object to be detected and obtain the detection result.

8. The method according to claim 7, It is characterized in that The object to be detected is an optical image, and the detection result includes text information.

9. An electronic device, It is characterized in that include: processor; a memory for storing a computer program executable by the processor; Wherein, when the processor executes the program, the steps of the method as described in any one of claims 1-6 or 7-8 are implemented.

10. A computer program product comprising a computer program, It is characterized in that When the computer program is executed by a processor, the steps of the method according to any one of claims 1-6 or 7-8 are implemented.

Citation Information

Patent Citations

  • Neural network training and construction method and device, and object detection method and device

    CN106295678A

  • Instance-level semantic segmentation system

    CN107958460A