Graph matching method and device, equipment, computer storage medium and program product

By calculating the minimum enclosure box of the graphics and cumulative angle correlation feature values, combined with target space operation, the fast and accurate matching between the graphics groups in the semiconductor chip design layout is achieved, and the problem of low graphics matching efficiency in the existing technology is solved, and the chip is improved Defect detection and correction efficiency of design layout.

CN119180971APending Publication Date: 2024-12-24SHENZHEN JINGYUAN INFORMATION TECH CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411237114.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-04
Publication Date
2024-12-24

AI Technical Summary

Technical Problem

The prior art In the process of defect detection and correction in semiconductor chip design layout, the graphics matching efficiency is low, resulting in limited production efficiency, especially when frequent operation of brand new chip design layout is required.

Method used

By obtaining the graphics group to be matched and the graphics group in the reference graphics library, calculate the simple feature values ​​associated with the minimum enclosure box of the graphics and the cumulative angle, and combine the target space operation to achieve fuzzy matching between the graphics groups, determine the number of matching graphics to judge Fuzzy matching relationships are amplified to improve defect detection and correction efficiency.

Benefits of technology

It realizes fast and accurate matching between graphics groups, improves the defect detection and correction efficiency of chip design layout, and reduces the consumption of hardware and time resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119180971A_ABST
    Figure CN119180971A_ABST
Patent Text Reader

Abstract

The invention discloses a graph matching method and device, equipment, a computer storage medium and a program product, and relates to the technical field of image detection. The method comprises the following steps: acquiring a to-be-matched first graph group and a second graph group in a reference graph library; the first graph group comprises M first graphs, and the second graph group comprises N second graphs; respectively calculating a minimum bounding box corresponding to each graph in the M first graphs and the N second graphs, and accumulating a simple characteristic value associated with the corner and a target space operation corresponding to the simple characteristic value; determining the number of matched graphs of the first graph group and the second graph group based on the minimum bounding box corresponding to each graph in the M first graphs and the N second graphs, the simple characteristic value and the target space operation; and based on the number of matched graphs, determining a graph group matching result between the first graph group and the second graph group. According to the embodiment of the invention, fuzzy matching among different graph groups can be realized quickly and accurately.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the field of image detection technology, and in particular, relates to a pattern matching method, device, equipment, computer storage medium and program product. Background Art

[0002] Currently in the semiconductor integrated circuit manufacturing process, graphics that cause manufacturing defects usually exist in the early chip design layout. In order to avoid defects in the actual chip preparation process, the manufacturer needs to perform defect detection and correction on the chip design layout before preparation. However, in the actual defect detection scenario, operations such as chip design layout simulation, defect detection, and graphic correction often require more hardware and time resources. If the operation is repeated on a new chip design layout every time, it will greatly restrict production efficiency.

[0003] In order to improve the efficiency of chip design layout defect detection, the prior art proposes a solution, namely: taking into account that similar defects are usually caused by similar one or more graphics (graphic groups). In chip design layouts with similar functions, similar graphics usually exist. Therefore, in chip design layouts of the same type, there may be similar defects and graphic groups corresponding to the defects. Based on this, the efficiency of defect detection and correction can be improved by establishing a graphic library containing graphic groups and correction solutions corresponding to existing defects. In this way, in the subsequent chip layout defect correction, it is only necessary to match the graphic group to be corrected in the chip design layout with the graphic group in the graphic library, and then obtain the correction solution corresponding to the graphic group that successfully matches it, so as to quickly complete the defect correction of the current chip design layout.

[0004] However, how to effectively achieve fast and accurate matching between graphic groups so as to subsequently implement efficient defect detection of chip design layouts based on the graphic group matching results is one of the hot issues that still needs to be urgently resolved in the industry today. Summary of the invention

[0005] The embodiments of the present application provide a graphic matching method, apparatus, device, computer storage medium and program product, which can quickly and accurately achieve fuzzy matching between different graphic groups.

[0006] In a first aspect, an embodiment of the present application provides a pattern matching method, the pattern matching method comprising:

[0007] Acquire a first graphic group to be matched and a second graphic group in a reference graphic library, wherein the reference graphic library stores at least one reference graphic group, and the second graphic group is any graphic group in the at least one reference graphic group; the first graphic group includes M first graphics, and the second graphic group includes N second graphics, where M and N are positive integers;

[0008] Calculate the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalue associated with the accumulated corners, and the target space operation corresponding to the simple eigenvalue respectively;

[0009] Determine the number of matching graphics of the first graphic group and the second graphic group based on the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalue, and the target space operation;

[0010] Based on the number of matching graphics, a graphic group matching result between the first graphic group and the second graphic group is determined; wherein the graphic group matching result is used to indicate whether the first graphic group and the second graphic group are in a fuzzy matching relationship.

[0011] In some possible implementations, the simple eigenvalue is the discrete cumulative rotation function integral of the graph after the perimeter is normalized under the target space operation;

[0012] The target spatial operation is a spatial operation that minimizes or maximizes the value of a simple eigenvalue among Q spatial operations, where Q is a positive integer; the Q spatial operations include: rotating the graphic at different set angles, and / or mirror-flipping the graphic and rotating it at different set angles.

[0013] In some possible implementations, determining the number of matching graphics of the first graphic group and the second graphic group based on the minimum bounding box corresponding to each of the M first graphics and the N second graphics, a simple eigenvalue, and a target space operation includes:

[0014] Selecting a current traversal graph from the first graph group;

[0015] Based on the minimum bounding box, simple feature value and target space operation corresponding to the current traversed graph and each of the N second graphs, the feature comparison is performed between the current traversed graph and at least part of the graphs in the second graph group. If it is determined that there is a second graph in the second graph group that matches the current traversed graph, the value of the number of matching graphs is increased by 1 until the traversal of the graphs in the first graph group is completed;

[0016] The number of matching graphics between the first graphic group and the second graphic group is obtained.

[0017] In some possible implementations, a feature comparison is performed between the currently traversed graph and at least part of the graphs in the second graph group. If it is determined that there is a second graph in the second graph group that matches the currently traversed graph, the value of the number of matching graphs is increased by 1 until the graph traversal in the first graph group is completed, including:

[0018] The currently traversed graph is the i-th first graph in the first graph group, the initial value of i is 1, i≤M, and i is a positive integer; the following steps are executed in a loop until the graph traversal in the first graph group is completed:

[0019] Based on the first characteristic item corresponding to the i-th first graphic and each of the N second graphics, X second graphics are obtained by screening from the second graphic group; the difference between the first characteristic item of any graphic among the X second graphics and the first characteristic item of the i-th first graphic is less than a first difference threshold, X≤N, and X is a non-negative integer;

[0020] When X=0, update i to i+1;

[0021] In the case of X≠0, the second feature item of the i-th first graphic is compared with the second feature items of at least part of the X second graphics in sequence, until a target graphic is matched among the X second graphics; and the difference between the second feature item of the target graphic and the second feature item of the i-th first graphic is less than a second difference threshold;

[0022] When the target space operation of the target graphic is consistent with the target space operation of the i-th first graphic, determine that the i-th first graphic matches the target graphic, increase the value of the number of matching graphics by 1, and update i to i+1;

[0023] When the target space operation of the target graph is inconsistent with the target space operation of the i-th first graph, return to the step of sequentially comparing the second feature item of the i-th first graph with the second feature items of at least some of the X second graphs until the traversal of the i-th first graph to the X second graphs is completed, and update i to i+1;

[0024] If the target graph does not exist in the X second graphs, update i to i+1;

[0025] The first feature item is one of the minimum bounding box and the simple eigenvalue, and the second feature item is the other of the minimum bounding box and the simple eigenvalue.

[0026] In some possible implementations, the graphic matching method further includes:

[0027] When the number of matching graphics is zero and the target graphics is obtained by the first matching, if it is determined that the target space operation of the target graphics is inconsistent with the target space operation of the i-th first graphics, then the graphics in the second graphics group are uniformly transformed in space according to the target space operation of the i-th first graphics;

[0028] and, updating the target space operation of the N second graphics in the second graphic group, increasing the value of the number of matching graphics by 1, and updating i to i+1;

[0029] The target space operation of the target graphic after the unified space transformation is consistent with the target space operation of the i-th first graphic.

[0030] In some possible implementations, determining a graphic group matching result between the first graphic group and the second graphic group based on the number of matching graphics includes:

[0031] When the number of matching graphics is less than a first set threshold, a graphic group matching result is obtained for indicating that the first graphic group and the second graphic group are not in a fuzzy matching relationship;

[0032] When the number of matching patterns is greater than or equal to the first set threshold, the number of matching patterns is processed according to the relative position relationship between the patterns in the first matching pattern group and the relative position relationship between the patterns in the second matching pattern group to obtain a final number of matching patterns; k first patterns in the first matching pattern group are matched one-to-one with k second patterns in the second matching pattern group, and the value of k is the number of matching patterns;

[0033] When the final number of graphic matches is less than the first set threshold, a graphic group matching result is obtained for indicating that the first graphic group and the second graphic group are not in a fuzzy matching relationship;

[0034] When the final number of graphic matches is greater than or equal to the first set threshold, a graphic group matching result is obtained, which is used to characterize that the first graphic group and the second graphic group are in a fuzzy matching relationship.

[0035] In some possible implementations, reducing the number of matching graphics according to the relative positional relationship between graphics in the first matching graphic group and the relative positional relationship between graphics in the second matching graphic group to obtain a final number of matching graphics includes:

[0036] Acquire a first relative position relationship between any two first graphics in the first matching graphic group and a second relative position relationship between corresponding two second graphics in the second matching graphic group;

[0037] Taking the first matching pattern group as a reference, f first patterns that make the first relative position relationship and the second relative position relationship consistent are selected from the k first patterns,

[0038] Alternatively, based on the second matching pattern group, f second patterns that match the first relative position relationship and the second relative position relationship are selected from the k second patterns, and the value of f is equal to the final pattern matching number.

[0039] In some possible implementations, before respectively calculating the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalues ​​associated with the accumulated corners, and the target space operation corresponding to the simple eigenvalues, the graphic matching method further includes:

[0040] Obtaining a difference in the number of graphics between the number of graphics M in the first graphics group and the number of graphics N in the second graphics group;

[0041] The minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalue associated with the accumulated corners, and the target space operation corresponding to the simple eigenvalue are calculated respectively, including:

[0042] When the difference in the number of graphics is less than a second set threshold, the minimum bounding box, simple eigenvalue and target space operation corresponding to each of the M first graphics and the N second graphics are calculated respectively.

[0043] In some possible implementations, before obtaining the first graphic group to be matched and the second graphic group in the reference graphic library, the graphic matching method further includes:

[0044] Acquire candidate graphics included in each candidate graphic group of a plurality of candidate graphic groups; the candidate graphic group includes at least one candidate graphic;

[0045] Based on the simple feature values ​​associated with the accumulated turning angles corresponding to the multiple candidate graphics, fuzzy clustering is performed on the multiple candidate graphics to obtain at least one clustered graphics group;

[0046] Determining fuzzy classification results of the plurality of candidate graphic groups based on the candidate graphic groups corresponding to the candidate pictures in at least one clustered graphic group;

[0047] Based on the fuzzy classification result, at least one reference graphic group is selected from the plurality of candidate graphic groups, and the reference graphic group is stored in a reference graphic library; wherein each reference graphic group in the at least one reference graphic group belongs to a different graphic group classification.

[0048] In some possible implementations, determining fuzzy classification results of multiple candidate graphic groups based on the candidate graphic groups corresponding to the candidate pictures in at least one clustered graphic group includes:

[0049] If the target clustered graphic group contains a first candidate graphic and a second candidate graphic belonging to different candidate graphic groups, pairwise matching is performed on the candidate graphics in the first candidate graphic group in the plurality of candidate graphic groups and the candidate graphics in the second candidate graphic group in the plurality of candidate graphic groups to obtain a fuzzy classification result;

[0050] The target clustering graph group is any clustering graph group in at least one clustering graph group, the first candidate graph group is the candidate graph group to which the first candidate graph belongs, and the second candidate graph group is the candidate graph group to which the second candidate graph belongs.

[0051] In some possible implementations, the reference graphic library further stores a defect correction solution corresponding to each reference graphic group in the at least one reference graphic group. After determining a graphic group matching result between the first graphic group and the second graphic group based on the number of matching graphics, the graphic matching method further includes:

[0052] When the pattern group matching result indicates that the first pattern group and the second pattern group are in a fuzzy matching relationship, a defect correction solution corresponding to the second pattern group is obtained from a reference pattern library to correct the defects of the first pattern group;

[0053] When the graphic group matching result indicates that the first graphic group and the second graphic group are not in a fuzzy matching relationship, receiving a defect correction solution corresponding to the first graphic group input from an external source;

[0054] The first pattern group and its corresponding defect correction solution are stored in a reference pattern library.

[0055] Based on the same inventive concept, in a second aspect, an embodiment of the present application provides a graphic matching device, the graphic matching device comprising:

[0056] A first acquisition module is used to acquire a first graphic group to be matched and a second graphic group in a reference graphic library, wherein the reference graphic library stores at least one reference graphic group, and the second graphic group is any graphic group in the at least one reference graphic group; the first graphic group includes M first graphics, and the second graphic group includes N second graphics, where M and N are positive integers;

[0057] A first calculation module is used to respectively calculate the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalue associated with the accumulated corners, and the target space operation corresponding to the simple eigenvalue;

[0058] A first determination module is used to determine the number of matching graphics of the first graphic group and the second graphic group based on the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalue and the target space operation;

[0059] The second determination module is used to determine the graphic group matching result between the first graphic group and the second graphic group based on the number of matching graphics; wherein the graphic group matching result is used to indicate whether the first graphic group and the second graphic group are in a fuzzy matching relationship.

[0060] In a third aspect, an embodiment of the present application provides a graphic matching device, the graphic matching device comprising:

[0061] a processor and a memory storing computer program instructions;

[0062] When the processor executes the computer program instructions, the graphic matching method provided in any one of the above embodiments of the present application is implemented.

[0063] In a fourth aspect, an embodiment of the present application provides a computer storage medium having computer program instructions stored thereon, and when the computer program instructions are executed by a processor, a graphic matching method as provided in any one of the above-mentioned embodiments of the present application is implemented.

[0064] In a fifth aspect, an embodiment of the present application provides a computer program product. When the instructions in the computer program product are executed by a processor of an electronic device, the electronic device executes a graphic matching method provided in any one of the above-mentioned embodiments of the present application.

[0065] The embodiments of the present application provide a method, device, equipment, computer storage medium and program product for matching graphics. The method obtains a first graphic group to be matched and a second graphic group in a reference graphic library, and then respectively calculates the minimum bounding box corresponding to each of the M first graphics in the first graphic group and the N second graphics in the second graphic group, the simple eigenvalue associated with the cumulative corner, and the target space operation corresponding to the simple eigenvalue. In this way, the graphics are compared based on the minimum bounding box, simple eigenvalue and target space operation corresponding to each of the M first graphics and the N second graphics, so as to determine the number of matching graphics between the first graphic group and the second graphic group. Finally, based on the number of matching graphics, it is determined whether there is a fuzzy matching relationship between the first graphic group and the second graphic group.

[0066] From the above description, it can be seen that a graphic matching method, device, equipment, computer storage medium and program product of an embodiment of the present application, in order to improve the fuzzy matching between two graphic groups, proposes to use simple eigenvalues ​​associated with the cumulative angle function of the graphic to achieve contour matching between graphics, match the size of the graphics through the minimum bounding box, and compare the target space operations corresponding to the simple eigenvalues ​​of the graphics to achieve comparison of graphic space operations, so as to finally compare and obtain the number of matching graphics between the first image group and the second image group, and finally determine whether the graphic groups are in a fuzzy matching relationship based on the number of matching graphics. By adopting the graphic matching method, device, equipment, computer storage medium and program product of the embodiment of the present application, fuzzy matching between single or multiple graphics in a graphic group can be achieved quickly and accurately, thereby effectively improving the layout matching efficiency and the defect detection and correction efficiency of the overall chip design layout. BRIEF DESCRIPTION OF THE DRAWINGS

[0067] In order to more clearly illustrate the technical solution of the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0068] Figure 1 is a defect detection schematic diagram provided by an embodiment of the present application;

[0069] Figure 2 is a flowchart of a pattern matching method provided in an embodiment of the present application;

[0070] Figure 3 It is a cumulative turning angle function definition diagram provided in an embodiment of the present application;

[0071] Figure 4 is a schematic diagram of an external angle and an internal angle provided by an embodiment of the present application;

[0072] Figure 5 is the cumulative rotation angle function of a cube-like body provided in an embodiment of the present application;

[0073] Figure 6 is a schematic diagram of space operation provided by an embodiment of the present application;

[0074] Figure 7 is a schematic diagram of a minimum enclosing frame provided by an embodiment of the present application;

[0075] Figure 8 This is a schematic diagram of an actual case provided by an embodiment of the present application;

[0076] Fig. 9 is a schematic diagram of the structure of the second graphic group after the spatial operation provided by an embodiment of the present application;

[0077] Fig.10 This is a schematic diagram of fuzzy classification provided by an embodiment of the present application;

[0078] Fig.11 is a structural schematic diagram of a pattern matching device provided in an embodiment of the present application;

[0079] Fig.12 It is a structural schematic diagram of a pattern matching device provided in one embodiment of the present application. DETAILED DESCRIPTION

[0080] The features and exemplary embodiments of various aspects of the present application will be described in detail below. In order to make the purpose, technical solutions and advantages of the present application clearer, the present application will be further described in detail below in conjunction with the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain the present application, rather than to limit the present application. For those skilled in the art, the present application can be implemented without the need for some of these specific details. The following description of the embodiments is only to provide a better understanding of the present application by illustrating the examples of the present application.

[0081] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the statement "include..." do not exclude the presence of other identical elements in the process, method, article or device including the elements.

[0082] It should be noted that in the embodiments of the present application, certain software, components, models and other existing solutions in the industry may be mentioned, and they should be regarded as exemplary. Their purpose is only to illustrate the feasibility of implementing the technical solution of the present application, but it does not mean that the applicant has or will necessarily use the solution.

[0083] like Figure 1 As shown, there are usually patterns in the chip design layout that cause manufacturing defects, such as Figure 1 Figures 1 and 2 are shown. In order to avoid defects in the actual chip preparation process, the manufacturer needs to detect and correct defects in the chip before preparation. The traditional process is as follows: 1) Use the OPC (Optical Proximity Correction) tool to correct the layout; 2) Perform model simulation on the corrected layout to simulate the pattern morphology after etching on the real silicon wafer; 3) Based on the morphology, use the LRC (Lithography Rule Check) tool to perform defect (hotspot) detection to determine whether there are areas in the chip design layout that may cause defects and the corresponding design graphics; 4) Correct the design graphics at the defect location; 5) Repeat steps 1-4) until the hotspot in the chip design layout is reduced to the acceptable requirements for actual preparation.

[0084] As described in the background technology section, in order to improve the efficiency of defect detection in the above-mentioned chip design layout, the current prior art proposes to improve the efficiency of defect detection and correction by establishing a graphics library that contains graphic groups and correction solutions corresponding to existing defects. In this way, it is only necessary to match the graphic group to be corrected in the chip design layout with the graphic group in the graphics library, and then obtain the correction solution corresponding to the graphic group that successfully matches it, so as to quickly complete the defect correction of the current chip design layout. Compared with conducting a full-process defect detection and correction on the chip, the above-mentioned solution of establishing a graphics library is more efficient in troubleshooting problem graphics, and after the graphics library is established, it also has a guiding role in chip design, and can avoid similar defective graphics in the chip design stage.

[0085] In the process of establishing a graphics library, it is necessary to classify repeated similar graphics to reduce data redundancy. This process belongs to the classification of graphics. Finding existing graphics in the graphics library in the design chip layout file belongs to the process of graphics matching. The classification and matching of similar graphics can be called the fuzzy matching problem of graphics.

[0086] There are many fuzzy matching methods for graphics, which can be divided into two categories: grayscale-based and feature-based matching methods. Among them, the grayscale-based matching method finds the connection between the template and the grayscale of the image to be matched, such as cross-correlation, while the eigenvalue-based method finds the connection between the template and the points, lines, and surfaces between the graphics to be matched.

[0087] However, for the graphic matching scenario similar to the chip design layout proposed in this application, if a grayscale-based matching method is used, the graphic composed of geometric edges needs to be converted into a grayscale-based image first, and then matched according to the grayscale-based matching method. This solution requires converting the graphics in the chip design layout into a grayscale image for processing, which greatly increases the amount of calculation. For the design layout of the full chip advanced node (such as 28nm and below technology nodes), the efficiency of this grayscale matching-based solution will be greatly reduced.

[0088] However, if a method based on eigenvalues ​​is used, the graphics need to be converted into images for processing when adopting specific solutions such as SIFT (Scale-Invariant Feature Transform), so there is also the problem of low matching efficiency; in other methods based on eigenvalue calculation, such as using the hash value of the edge to represent the shape of the graphics, although it can reduce the running time, its disadvantage is that it cannot realize the fuzzy matching function, and the fuzzy matching accuracy between graphics is low.

[0089] Based on this, the industry is currently in urgent need of a technical solution that can quickly realize fuzzy matching between graphic groups, so as to subsequently implement efficient defect detection of the chip design layout based on the graphic group matching results, thereby helping to effectively improve the layout matching efficiency and the defect detection and correction efficiency of the overall chip design layout.

[0090] In view of the above, in order to solve the problems of the prior art, the embodiments of the present application provide a pattern matching method, device, equipment, computer storage medium and program product. It should be noted that the embodiments provided in the present application are not intended to limit the scope of the present application.

[0091] The following first introduces the graphic matching method provided in the embodiment of the present application.

[0092] Figure 2 FIG. 1 is a flow chart of a pattern matching method provided by an embodiment of the present application. The pattern matching method is applied to an electronic device, which may include a server or a terminal. Figure 2 As shown, the graphic matching method includes the following steps:

[0093] S210, obtaining a first graphic group to be matched and a second graphic group in a reference graphic library, wherein the reference graphic library stores at least one reference graphic group, and the second graphic group is any graphic group in the at least one reference graphic group; the first graphic group includes M first graphics, and the second graphic group includes N second graphics, where M and N are positive integers;

[0094] S220, respectively calculating the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalue associated with the accumulated corners, and the target space operation corresponding to the simple eigenvalue;

[0095] S230, determining the number of matching graphics of the first graphic group and the second graphic group based on the minimum bounding box, simple eigenvalue and target space operation corresponding to each of the M first graphics and the N second graphics;

[0096] S240, determining a graphic group matching result between the first graphic group and the second graphic group based on the number of matching graphics; wherein the graphic group matching result is used to indicate whether the first graphic group and the second graphic group are in a fuzzy matching relationship.

[0097] The embodiment of the present application provides a method for matching graphics, which obtains a first graphics group to be matched and a second graphics group in a reference graphics library, and then respectively calculates the minimum bounding box corresponding to each of the M first graphics in the first graphics group and the N second graphics in the second graphics group, the simple eigenvalue associated with the cumulative corner, and the target space operation corresponding to the simple eigenvalue. In this way, the graphics are compared based on the minimum bounding box, simple eigenvalue, and target space operation corresponding to each of the M first graphics and the N second graphics, so as to determine the number of matching graphics between the first graphics group and the second graphics group. Finally, based on the number of matching graphics, it is determined whether there is a fuzzy matching relationship between the first graphics group and the second graphics group.

[0098] From the above description, it can be seen that a graphic matching method of an embodiment of the present application, in order to improve the fuzzy matching between two graphic groups, proposes to use simple eigenvalues ​​associated with the cumulative angle function of the graphics to achieve contour matching between graphics, match the size of the graphics through the minimum bounding box, and compare the target space operations corresponding to the simple eigenvalues ​​of the graphics to achieve comparison of graphic space operations, so as to finally compare and obtain the number of matching graphics between the first image group and the second image group, and finally determine whether the graphic groups are in a fuzzy matching relationship based on the number of matching graphics. By adopting the graphic matching method of the embodiment of the present application, fuzzy matching between single or multiple graphics in a graphic group can be achieved quickly and accurately, thereby effectively improving the layout matching efficiency and the defect detection and correction efficiency of the overall chip design layout.

[0099] The specific implementation of the above steps 210 to 240 is described in detail below.

[0100] In S210, in a specific implementation, a first graphic group to be matched and a second graphic group in a reference graphic library are obtained, wherein the first graphic group may be a graphic group in a chip design layout, and the second graphic group may be a graphic group for which an existing defect correction solution exists.

[0101] In S220, during specific implementation, the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalues ​​associated with the accumulated corners, and the target space operation corresponding to the simple eigenvalues ​​are calculated respectively.

[0102] The simple eigenvalue associated with the above-mentioned cumulative rotation angle can specifically be the value of the cumulative rotation angle function of the graphic under the target space operation, or the eigenvalue obtained by deformation transformation based on the cumulative transformation function of the graphic. This application does not make strict restrictions here.

[0103] The target space operation corresponding to the above simple eigenvalues ​​can be understood as follows: graphics under different spatial operations may have different eigenvalues ​​associated with the cumulative rotation function. In order to ensure the comparability of eigenvalues ​​between graphics, the minimum eigenvalue or maximum eigenvalue among the multiple eigenvalues ​​of graphics under multiple spatial operations is selected.

[0104] Taking the simple eigenvalue as the minimum eigenvalue as an example, the above target spatial operation is the spatial operation that minimizes the eigenvalue among multiple spatial operations. The above spatial operation can, for example, rotate the current graphic by 90 degrees, 180 degrees, rotate it by 0 degrees after mirror flipping, or rotate it by 90 degrees after mirror flipping, etc. This embodiment does not impose strict restrictions on this.

[0105] In a more specific example, in order to fully guarantee the matching operation efficiency between the graphic groups, the simple eigenvalues ​​mentioned above can be the discrete cumulative rotation function integral of the graphics after the perimeter normalization process under the target space operation;

[0106] The target spatial operation is a spatial operation that minimizes or maximizes the value of a simple eigenvalue among Q spatial operations, where Q is a positive integer; the Q spatial operations include: rotating the graphic at different set angles, and / or mirror-flipping the graphic and rotating it at different set angles.

[0107] Specifically, in order to fully understand the minimum bounding box corresponding to the graphics in this embodiment, the simple eigenvalues ​​associated with the accumulated corners, and the target space operations corresponding to the simple eigenvalues, they will be explained in detail below.

[0108] 1) Simple eigenvalue:

[0109] Please see first Figure 3 , Figure 3 This is a cumulative turning angle function definition diagram provided by an embodiment of the present application. Figure 3 As shown in , the cumulative rotation function is expanded along the geometric edge of the figure, indicating that as each point on the edge of the figure accumulates its rotation angle relative to the previous point, it can be used to effectively describe the outer contour of the geometric figure. Figure 3 Take the square figure provided in as an example, set the starting point at the lower left corner of the square, and start from the starting point O in a counterclockwise direction. From point O to point A, any point on the OA edge changes its direction relative to the previous point, so the cumulative rotation angle values ​​of all points on the OA edge are 0; from point A to point B, point A shifts 90° relative to point O along the AB direction, so the cumulative rotation angle value suddenly changes at A to 90°, and the directions of the remaining points on AB relative to the previous point all change, so their cumulative rotation angle values ​​are all 90°; and so on, from the OABCO path, the cumulative rotation angle function of the entire contour can be obtained.

[0110] It should be noted that if Figure 4 As shown, when calculating the cumulative angle value, it is necessary to distinguish between the outer angle and the inner angle of the figure. In this embodiment, the angle of the outer angle of the figure is set to a positive value, and the angle of the inner angle of the figure is set to a negative value.

[0111] In this way, by comparing the difference in the cumulative turning angle function of two figures, we can determine the difference in the contours of the two figures, that is, whether the two figures are similar. The maximum value of the x-axis of the cumulative turning angle function of a figure, that is, the cumulative side length, is equal to the perimeter of the figure. In order to compare the cumulative turning angle functions of two different figures, the perimeter needs to be normalized, that is, its maximum value is 1.

[0112] The following two figures are recorded as a and b, and the corresponding cumulative rotation angle functions are recorded as fa and fb. The difference between the two can be expressed as formula 1:

[0113]

[0114] Wherein, d is a p-order norm, p=1 or p=2.

[0115] In order to make the use of cumulative rotation function to describe the contour of the figure have better robustness, such as Figure 5 As shown in the figure, when some defects are added to the cube OABC, the cumulative rotation function changes little, which means that the cumulative rotation functions of similar figures are similar, and their numerical difference d is also small. Therefore, the cumulative rotation function can be used to perform fuzzy matching and classification on the figures.

[0116] In the case of fuzzy matching, the cumulative turning angle function of the given reference figure and the figure to be matched is calculated respectively, and the difference value is calculated. When the difference value of the cumulative turning angle function between the two is less than a certain threshold (the threshold is generally set according to the actual situation), it means that the two figures are similar. The smaller the difference value, the more similar the two figures are. When the difference value is 0, the contours of the two figures are exactly the same.

[0117] Furthermore, this embodiment takes into account that it is not easy to search for a feature of a graphic when a function (ie, an array) is used to describe the feature of the graphic in the program. Therefore, the feature described by the cumulative turning angle function is converted into a numerical value that is more convenient to search.

[0118] Specifically, when calculating the difference between two images, considering p = 1, the difference calculation formula can be simplified to Formula 2:

[0119] d = ∫0 1 (|f a (s)-f b (s)|)ds Formula 2

[0120] If the cumulative turning angle function of each figure is discretized and sampled at equal intervals, the above formula 2 can be converted into a discretized form, which is subsequently referred to as the discrete cumulative turning angle function:

[0121]

[0122] Where N represents the number of discretizations, and Δs = 1 / N represents the length of the interval after discretization. Approximating the above formula 3 yields formula 4:

[0123]

[0124] From Formula 4, we can see that by approximating the calculation formula of the difference value, it is divided into two parts, which are the integrals of the discrete cumulative turning angle functions of graphics A and B. Therefore, it can be concluded that the difference in the integral values ​​of the two graphics can also reflect the difference in the contours of the two graphics to a certain extent. For this reason, the integral of the discrete cumulative turning angle function of a single graphic can be used as a simple eigenvalue of the graphic.

[0125] 2) Target space operation:

[0126] See also Figure 6 , Figure 6 It is a schematic diagram of space operation provided by an embodiment of the present application. Figure 6 shows a case of the aforementioned Q kinds of spatial operations, Figure 6 The Q spatial operations include: rotate the image by 0 degrees, rotate the image by 90 degrees, rotate the image by 180 degrees, rotate the image by 270 degrees, rotate the image by 0 degrees after mirroring, rotate the image by 90 degrees after mirroring, rotate the image by 180 degrees after mirroring, and rotate the image by 270 degrees after mirroring. It should be added that Figure 6 This is only an example for reference; other graphic operations and spatial operations at other rotation angles are within the protection scope of this application.

[0127] The above target spatial operation is the spatial operation that minimizes or maximizes the value of the simple eigenvalue among the Q spatial operations. Specifically, for the same graphic, after mirroring, rotating, etc., the calculated simple eigenvalues ​​are different. Therefore, in order to fully ensure the comparability of the eigenvalues ​​between graphics, for example, Figure 6 As shown, for each graph, its minimum simple eigenvalue under eight spatial operations can be calculated as the final simple eigenvalue F of the current graph. At the same time, the spatial operation OP (operation) that transforms the current graph to the graph corresponding to the minimum simple eigenvalue is recorded as the target spatial operation.

[0128] Therefore, the simple eigenvalue of a graph can finally be defined as follows:

[0129]

[0130] The constant C is a non-negative value introduced to prevent negative values ​​from appearing after integration, and can be set according to actual conditions.

[0131] It should be understood that in some other embodiments, the maximum simple eigenvalue under eight spatial operations may also be calculated as the final simple eigenvalue F of the current graph, which is not strictly limited here.

[0132] 3) Minimum bounding box:

[0133] If the difference between two graphics is less than a certain threshold, it means that the contours of the two graphics have similar distributions, but it is still not a necessary and sufficient condition for the two graphics to be similar. Because the actual spatial size of the contour cannot be reflected in the cumulative angle function, it is necessary to add a judgment on the size difference of the graphics. Therefore, this application continues to introduce the concept of the minimum bounding box, see Figure 7 , Figure 7 is a schematic diagram of the minimum bounding box provided by an embodiment of the present application. Figure 7 As shown, when the difference value of two graphics and the size difference of the minimum bounding box size are both smaller than the set threshold, it means that the two graphics are similar.

[0134] According to some embodiments of the present application, optionally, in order to effectively improve the matching efficiency between graphic groups, before respectively calculating the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalues ​​associated with the accumulated corners, and the target space operation corresponding to the simple eigenvalues, the graphic matching method further includes:

[0135] Obtaining a difference in the number of graphics between the number of graphics M in the first graphics group and the number of graphics N in the second graphics group;

[0136] The minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalue associated with the accumulated corners, and the target space operation corresponding to the simple eigenvalue are calculated respectively, including:

[0137] When the difference in the number of graphics is less than a second set threshold, the minimum bounding box, simple eigenvalue and target space operation corresponding to each of the M first graphics and the N second graphics are calculated respectively.

[0138] In this embodiment, by first determining the number of graphics in the two groups of graphics, if the difference in the number of graphics is less than the second set threshold, the subsequent feature calculation and matching work is carried out. On the contrary, if the difference in the number of graphics in the two groups is greater than the above second set threshold, it means that the difference between the two groups of graphics is too large, and the feature calculation and matching work will not be continued.

[0139] In S230 , the number of matching graphics of the first graphic group and the second graphic group is determined based on the minimum bounding box, simple feature value and target space operation corresponding to each of the M first graphics and the N second graphics.

[0140] In a specific implementation, determining the number of matching graphics of the first graphic group and the second graphic group based on the minimum bounding box corresponding to each of the M first graphics and the N second graphics, a simple eigenvalue, and a target space operation may include:

[0141] Selecting a current traversal graph from the first graph group;

[0142] Based on the minimum bounding box, simple feature value and target space operation corresponding to the current traversed graph and each of the N second graphs, the feature comparison is performed between the current traversed graph and at least part of the graphs in the second graph group. If it is determined that there is a second graph in the second graph group that matches the current traversed graph, the value of the number of matching graphs is increased by 1 until the traversal of the graphs in the first graph group is completed;

[0143] The number of matching graphics between the first graphic group and the second graphic group is obtained.

[0144] In this embodiment, the first graphics in the first graphic group and all the second graphics in the second graphic group are selected one by one for feature traversal and comparison. If it is determined that there is a second graphic in the second graphic group that matches the currently traversed graphic, the value of the number of matching graphics is increased by 1 until the graphics traversal in the first graphic group is completed, so that the number of matching graphics between the first graphic group and the second graphic group can be accurately obtained.

[0145] In a more specific embodiment, in order to more reasonably realize the traversal comparison of features between graphics, the above-mentioned feature comparison is performed between the currently traversed graphic and at least part of the graphics in the second graphic group. If it is determined that there is a second graphic matching the currently traversed graphic in the second graphic group, the value of the number of matching graphics is increased by 1 until the graphics in the first graphic group are traversed, including:

[0146] The currently traversed graph is the i-th first graph in the first graph group, the initial value of i is 1, i≤M, and i is a positive integer; the following steps are executed in a loop until the graph traversal in the first graph group is completed:

[0147] Based on the first characteristic item corresponding to the i-th first graphic and each of the N second graphics, X second graphics are obtained by screening from the second graphic group; the difference between the first characteristic item of any graphic among the X second graphics and the first characteristic item of the i-th first graphic is less than a first difference threshold, X≤N, and X is a non-negative integer;

[0148] When X=0, update i to i+1;

[0149] In the case of X≠0, the second feature item of the i-th first graphic is compared with the second feature items of at least part of the X second graphics in sequence, until a target graphic is matched among the X second graphics; and the difference between the second feature item of the target graphic and the second feature item of the i-th first graphic is less than a second difference threshold;

[0150] When the target space operation of the target graphic is consistent with the target space operation of the i-th first graphic, determine that the i-th first graphic matches the target graphic, increase the value of the number of matching graphics by 1, and update i to i+1;

[0151] When the target space operation of the target graph is inconsistent with the target space operation of the i-th first graph, return to the step of sequentially comparing the second feature item of the i-th first graph with the second feature items of at least some of the X second graphs until the traversal of the i-th first graph to the X second graphs is completed, and update i to i+1;

[0152] If the target graph does not exist in the X second graphs, update i to i+1;

[0153] The first feature item is one of the minimum bounding box and the simple eigenvalue, and the second feature item is the other of the minimum bounding box and the simple eigenvalue.

[0154] According to some embodiments of the present application, optionally, the graphic matching method further includes:

[0155] When the number of matching graphics is zero and the target graphics is obtained by the first matching, if it is determined that the target space operation of the target graphics is inconsistent with the target space operation of the i-th first graphics, then the graphics in the second graphics group are uniformly transformed in space according to the target space operation of the i-th first graphics;

[0156] and, updating the target space operation of the N second graphics in the second graphics group;

[0157] The target space operation of the target graphic after the unified space transformation is consistent with the target space operation of the i-th first graphic.

[0158] The following is a specific description with examples: the minimum bounding box S, simple eigenvalue F, and corresponding target space operation OP of the N first graphics in the first graphics group L1 and the M second graphics in the second graphics group L2 are calculated respectively, and are respectively recorded as {S1, S2, ..., S M}, {F1,F2,…,F M}, {OP1,OP2,…,OP M},{S1,S2,…,S N}, {F1,F2,…,F N}, {OP1,OP2,…,OP N}. Where M and N represent the number of graphics in the two graphic groups L1 and L2 respectively.

[0159] Before the traversal matching begins, the initial value of the number of matching graphics in the two groups of graphics is set to zero. Taking the first characteristic item as a simple characteristic value and the second characteristic value as the minimum bounding box as an example, the current traversal graphic is selected from the first graphic group. The current traversal graphic is the i-th first graphic in the first graphic group. The specific traversal matching process is as follows:

[0160] 1) In order to improve the traversal efficiency, firstly, the simple eigenvalue Fi of the current traversed graph is compared with the simple eigenvalues ​​F of the N second graphs in the second graph group L2, and X second graphs in the second graph group whose difference with Fi is less than the first difference threshold are obtained;

[0161] 2.1) When X=0, update i to i+1. This indicates that there is no second graphic similar to the currently traversed graphic in the second graphic group, and the next first graphic in the first graphic group can be switched to perform a new round of traversal comparison;

[0162] 2.2) When X≠0, the minimum bounding box S of the currently traversed graph is i The minimum bounding box S of at least part of the X second graphics is compared in sequence until the target graphic is matched in the X second graphics; wherein the minimum bounding box S of the target graphic is equal to the minimum bounding box S of the currently traversed graphic. i The difference between is less than a second difference threshold;

[0163] For example, the minimum bounding box S of the currently traversed graph is i Compare it with the minimum bounding box S of the first second figure among the X second figures. If the difference is greater than the second difference threshold, continue to traverse the minimum bounding box S of the currently traversed figure. i Compare with the minimum bounding box S of the second second figure among the X second figures. If the minimum bounding box S of the second second figure is equal to the minimum bounding box S of the currently traversed figure i If the difference between the two is less than the second difference threshold, the second second graphic is used as the target graphic to perform the following operations. That is, the minimum bounding box comparison can be performed one by one until the target graphic is matched, and the minimum bounding box comparison can be stopped to fully improve the graphic matching efficiency;

[0164] 2.2.1) If the target graph does not exist in the X second graphs, update i to i+1. This indicates that there is no minimum bounding box class S of the currently traversed graph in the X second graphs.i A similar second graphic may be switched to the next first graphic in the first graphic group to perform a new round of traversal comparison;

[0165] 2.2.1) If the target graph is matched in the X second graphs by comparing them in sequence, then continue to judge whether the target spatial operation OP of the target graph is the target spatial operation OP corresponding to the currently traversed graph. i Is it consistent?

[0166] 2.2.1.1) The target space operation OP of the target graph and the target space operation OP corresponding to the currently traversed graph i If they are consistent, determine that the current traversal graph matches the target graph in the second graph group, increase the value of the number of matching graphs by 1, and update i to i+1 to perform a new round of graph matching operation;

[0167] 2.2.1.2) The target space operation OP of the target graph and the target space operation OP corresponding to the currently traversed graph i If there is no inconsistency, return to the step of comparing the minimum bounding box of the i-th first figure with the minimum bounding boxes of at least part of the X second figures in sequence, that is, return to 2.2), until the traversal of the i-th first figure to the X second figures is completed, and update i to i+1;

[0168] 2.2.1.3) When the value of the number of matching graphs is still zero and the target graph is the first matched graph in this round, if the target spatial operation OP of the target graph is determined to be the same as the target spatial operation OP of the currently traversed graph, i If they are inconsistent, the OP is operated according to the target space corresponding to the currently traversed graph. i , perform a unified spatial transformation on the N second graphics in the second graphics group, so that the target spatial operation OP of the target graphics after the unified spatial transformation is consistent with the target spatial operation OP corresponding to the currently traversed graphics i And, after the unified spatial transformation, the initial target space operations {OP1, OP2, ..., OP N} is updated (no subsequent changes will be made), the value of the number of matching graphics is increased by 1, and i is updated to i+1.

[0169] In S240, during specific implementation, based on the number of matching graphics, a graphic group matching result between the first graphic group and the second graphic group is determined; wherein the graphic group matching result is used to indicate whether the first graphic group and the second graphic group are in a fuzzy matching relationship.

[0170] For example, when the number of matching graphics is less than a preset threshold, the graphic group matching result is used to indicate whether the first graphic group and the second graphic group are in a fuzzy matching relationship. When the number of matching graphics is greater than a preset threshold, the graphic group matching result is used to indicate whether the first graphic group and the second graphic group are in a fuzzy matching relationship.

[0171] Furthermore, considering the layout matching scenario, there is often a fixed relative position relationship (spatial relationship) between each pair of graphics in the layout. Therefore, even if the number of matching graphics between the first graphic group and the second graphic group meets the conditions, there may be a situation where the two graphic groups are not similar.

[0172] Based on this, in order to more fully ensure the accuracy of layout matching, the above-mentioned determination of the graphic group matching result between the first graphic group and the second graphic group based on the number of matching graphics includes:

[0173] When the number of matching graphics is less than a first set threshold, a graphic group matching result is obtained for indicating that the first graphic group and the second graphic group are not in a fuzzy matching relationship;

[0174] When the number of matching patterns is greater than or equal to the first set threshold, the number of matching patterns is processed according to the relative position relationship between the patterns in the first matching pattern group and the relative position relationship between the patterns in the second matching pattern group to obtain a final number of matching patterns; k first patterns in the first matching pattern group are matched one-to-one with k second patterns in the second matching pattern group, and the value of k is the number of matching patterns;

[0175] When the final number of graphic matches is less than the first set threshold, a graphic group matching result is obtained for indicating that the first graphic group and the second graphic group are not in a fuzzy matching relationship;

[0176] When the final number of graphic matches is greater than or equal to the first set threshold, a graphic group matching result is obtained, which is used to characterize that the first graphic group and the second graphic group are in a fuzzy matching relationship.

[0177] According to some embodiments of the present application, optionally, reducing the number of matching graphics according to the relative position relationship between graphics in the first matching graphic group and the relative position relationship between graphics in the second matching graphic group to obtain the final number of graphic matches includes:

[0178] Acquire a first relative position relationship between any two first graphics in the first matching graphic group and a second relative position relationship between corresponding two second graphics in the second matching graphic group;

[0179] Taking the first matching pattern group as a reference, f first patterns that make the first relative position relationship and the second relative position relationship consistent are selected from the k first patterns,

[0180] Alternatively, based on the second matching pattern group, f second patterns that match the first relative position relationship and the second relative position relationship are selected from the k second patterns, and the value of f is equal to the final pattern matching number.

[0181] In this embodiment, when the number of matching graphics of the first graphic group and the second graphic group is less than the first set threshold, the process is exited, indicating that the graphics of the first graphic group and the second graphic group do not meet the fuzzy matching condition. When the number of matching graphics of the first graphic group and the second graphic group is greater than or equal to the first set threshold, further judgment is performed based on the relative position relationship between the graphics.

[0182] Specifically, based on the matched graphics in the first graphic group L1 and the second matching group L2, the first matching graphic group {m 11 ,m 12 ,…,m 1k} and the second matching pattern group {m 21 ,m 22 ,…,m 2k}. The first value of the subscript indicates the group, the second value indicates the number of the graphic with the corresponding matching relationship, and k is the number of the aforementioned matching graphics.

[0183] By traversing the first matching graph group {m 11 ,m 12 ,…,m 1k}, determine the first relative position relationship of the k first graphics when the graphics are combined in pairs, and traverse the second matching graphic group {m 21 ,m 22 ,…,m 2k}, and determine the second relative position relationship of the k second graphics when the graphics are combined in pairs.

[0184] Since there is a one-to-one correspondence between the k first graphics and the k second graphics, there is also a correspondence between the first relative position relationship and the second relative position relationship. Based on the correspondence between the first relative position relationship and the second relative position relationship, the difference between the relative position relationship of the graphics in the first matching graphic group and the second matching graphic group is compared, and then the number of the matching graphics is reduced to obtain the final number of graphic matches.

[0185] For example, the first matching pattern group {m 11 ,m 12 ,…,m 1k} as the benchmark, remove the second matching graphic group {m 21 ,m 22 ,…,m 2k} and the first matching graphic group {m 11,m 12 ,…,m 1k}, and subtract the number of eliminated graphics from the number of matching graphics, retaining the graphics with consistent phase position relationship, thereby obtaining the number of remaining graphics in the second matching graphic group, which is the final number of graphic matching.

[0186] It should be added that, in some embodiments, the second matching pattern group {m 21 ,m 22 ,…,m 2k} as a benchmark, eliminating the first matching graphic group {m 11 ,m 12 ,…,m 1k} and the second matching graphic group {m 21 ,m 22 ,…,m 2k}, thereby obtaining the final number of matching graphics. This application does not impose strict restrictions on this.

[0187] After obtaining the final number of graphic matches, the final number of graphic matches is compared with the first set threshold. If the final number of graphic matches is less than the first set threshold, it is determined that the first graphic group and the second graphic group are not in a fuzzy matching relationship. On the contrary, if the final number of graphic matches is greater than or equal to the first set threshold, it is determined that the first graphic group and the second graphic group are in a fuzzy matching relationship.

[0188] In order to facilitate understanding of the pattern matching method provided in the above embodiment, Figure 8 and Fig. 9 An illustration of the process of matching a simple graph group. Figure 8 This is a schematic diagram of an actual case provided by an embodiment of the present application. Fig. 9 It is a schematic diagram of the structure of the second graphic group after the spatial operation provided by an embodiment of the present application.

[0189] Combination Figure 8 As shown, there is a graphic group 1 to be matched and a graphic group 2 as a reference, wherein the graphics No. 1 and No. b, No. 2 and No. d, No. 3 and No. a are similar, and their calculated simple eigenvalues ​​are close (not real values).

[0190] 1) Traverse the graphics in Graphics Group 1: First, compare the graphics No. 1 and No. b, and find that their minimum bounding boxes and simple eigenvalues ​​are similar. Then, calculate their difference values ​​according to the formula and they are also close. Therefore, it is determined that the graphics No. 1 and No. b are similar. Since the corresponding spatial operations are different, the graphics in Graphics Group 2 are uniformly transformed so that the spatial operations of No. 1 and No. b in Graphics Group 2 after the same spatial transformation are the same. This uniform transformation operation is only performed when a similar graphic is matched for the first time, and will not be changed later;

[0191] 2) Then, the graphics with numbers 2 and d, and 3 and a are matched in sequence, and all meet the judgment of fuzzy matching. Therefore, the number of matching graphics between graphic group 1 and graphic group 2 is 3 at present;

[0192] 3) Compare the spatial relationship between the matched graphics: the currently matched graphics groups are graphics with numbers 1 and b, 2 and d, and 3 and a. Fig. 9 The red lines in the figure represent the spatial relationship (relative position relationship) between any two graphics in each group. By comparison, it can be found that the relationship between No. 1 and No. 2 is the same as the spatial relationship between No. b and No. d, so it is in line with the comparison; while the relationship between No. 1 and No. 3, No. 2 and No. 3 does not match that in Group 2, so the matching results of No. 3 and No. a need to be eliminated. Therefore, the final number of graphic matches is 2;

[0193] 4) If the threshold value of the number of matching graphics is set to 2, it is determined that group 1 and group 2 are in a fuzzy matching relationship.

[0194] According to some embodiments of the present application, optionally, in order to effectively realize the accurate construction of the graphics library and avoid storing repeated graphics groups in the graphics library to occupy storage resources and reduce the efficiency of graphics matching, before obtaining the first graphics group to be matched and the second graphics group in the reference graphics library, the graphics matching method further includes:

[0195] Acquire candidate graphics included in each candidate graphic group of a plurality of candidate graphic groups; the candidate graphic group includes at least one candidate graphic;

[0196] Based on the simple feature values ​​associated with the accumulated turning angles corresponding to the multiple candidate graphics, fuzzy clustering is performed on the multiple candidate graphics to obtain at least one clustered graphics group;

[0197] Determining fuzzy classification results of the plurality of candidate graphic groups based on the candidate graphic groups corresponding to the candidate pictures in at least one clustered graphic group;

[0198] Based on the fuzzy classification result, at least one reference graphic group is selected from the plurality of candidate graphic groups, and the reference graphic group is stored in a reference graphic library; wherein each reference graphic group in the at least one reference graphic group belongs to a different graphic group classification.

[0199] More specifically, in order to more accurately determine the fuzzy classification results of the plurality of candidate graphic groups, the candidate graphic groups corresponding to the candidate pictures in at least one clustered graphic group are determined to determine the fuzzy classification results of the plurality of candidate graphic groups, including:

[0200] If the target clustered graphic group contains a first candidate graphic and a second candidate graphic belonging to different candidate graphic groups, pairwise matching is performed on the candidate graphics in the first candidate graphic group in the plurality of candidate graphic groups and the candidate graphics in the second candidate graphic group in the plurality of candidate graphic groups to obtain a fuzzy classification result;

[0201] The target clustering graph group is any clustering graph group in at least one clustering graph group, the first candidate graph group is the candidate graph group to which the first candidate graph belongs, and the second candidate graph group is the candidate graph group to which the second candidate graph belongs.

[0202] In this embodiment, simple feature values ​​of all candidate graphics are first obtained, and fuzzy clustering is performed on the candidate graphics according to the simple feature values, and then different graphic groups containing candidate graphics belonging to the same clustering result are determined according to the clustering result.

[0203] In this way, by performing pairwise matching on the images between the above-determined graphic groups, it is determined whether the graphic groups are similar and whether duplicates can be removed, which can greatly reduce the complexity of the operation. Compared with the method of classifying multiple groups of graphics by performing pairwise fuzzy matching in the related art, the fuzzy classification scheme provided in this embodiment, which first performs clustering based on simple feature values ​​and then performs pairwise matching between graphic groups, has a lower time complexity in the algorithm.

[0204] For details, please refer to Fig.10 , Fig.10 is a schematic diagram of fuzzy classification provided by an embodiment of the present application. Fig.10 As shown in the figure (the boxes with numbers represent the graphics corresponding to the simple eigenvalues), before the reference graphics library is established, there are a total of four groups of candidate graphics. If fuzzy matching is performed two by two, six operations are required. Fig.10 It can be seen that there are 13 graphics in the four groups. Fuzzy clustering can be performed based on the simple eigenvalues ​​of each graphic, so that all graphics can be divided into 8 categories. The clustering results are as follows: Fig.10 Shown in the middle right half.

[0205] From the clustering results, we can see that there are only groups 1 and 3, and groups 2 and 4 that are fuzzy matched, so we only need to perform fuzzy matching on these two groups of graphic groups, and the remaining four cases do not need to be calculated, which greatly reduces the amount of calculation. After fuzzy matching between graphic groups, similar graphic groups in the four candidate graphic groups are deduplicated, and then the remaining graphic groups are stored in the reference graphic group to achieve efficient and accurate construction of the reference graphic group.

[0206] According to some embodiments of the present application, optionally, in combination with actual layout defect correction scenarios, in order to effectively improve the layout matching efficiency and the defect detection and correction efficiency of the overall chip design layout, the reference graphic library further stores defect correction solutions corresponding to each reference graphic group in at least one reference graphic group. After determining the graphic group matching result between the first graphic group and the second graphic group based on the number of matching graphics, the graphic matching method further includes:

[0207] When the pattern group matching result indicates that the first pattern group and the second pattern group are in a fuzzy matching relationship, a defect correction solution corresponding to the second pattern group is obtained from a reference pattern library to correct the defects of the first pattern group;

[0208] When the graphic group matching result indicates that the first graphic group and the second graphic group are not in a fuzzy matching relationship, receiving a defect correction solution corresponding to the first graphic group input from an external source;

[0209] The first pattern group and its corresponding defect correction solution are stored in a reference pattern library.

[0210] In this embodiment, the reference graphic library can store reference graphic groups corresponding to existing defects and corresponding defect correction solutions. When storing, the reference graphic groups and corresponding defect correction solutions can be added to the reference graphic library in a key-value pairing manner of reference graphic group-correction graphic solution.

[0211] In this way, in the subsequent chip defect detection, when the first graphic group of the chip design layout to be defect-detected and corrected and the second graphic group in the reference graphic library are in a fuzzy matching relationship, the defect correction plan corresponding to the second graphic group is obtained and used as the defect correction plan required for the current chip design layout to be corrected to perform layout defect correction without the need to iterate and verify the algorithm.

[0212] When the graphic group matching result indicates that the first graphic group and the second graphic group are not in a fuzzy matching relationship, the graphic group matching result can be output in the form of voice, text, etc. to prompt that a defect correction solution corresponding to the first graphic group needs to be manually determined.

[0213] After the defect correction solution corresponding to the first graphic group is determined through manual means or other means, the first graphic group and its corresponding defect correction solution can be promptly stored in the reference graphic library, thereby enabling effective expansion of the reference graphic library, which is beneficial to improving the defect detection and correction efficiency of the layout in subsequent chip defect detection designs.

[0214] It should be added that, when the graphic group matching result indicates that the first graphic group and the second graphic group are not in a fuzzy matching relationship, if there are other unmatched reference graphic groups in the reference graphic library, the first graphic group can continue to be fuzzily matched with the remaining reference graphic groups in the reference graphic library, and this embodiment does not impose strict restrictions on this.

[0215] Based on the pattern matching method provided in the above embodiment, for the same inventive concept, the present application also provides a pattern matching device corresponding to the above pattern matching method. Fig.11 The pattern matching device is introduced in detail.

[0216] Fig.11 A schematic diagram of the structure of a pattern matching device provided in an embodiment of the present application is shown. Fig.11 The illustrated graphic matching device 1100 includes:

[0217] A first acquisition module 1110 is used to acquire a first graphic group to be matched and a second graphic group in a reference graphic library, wherein the reference graphic library stores at least one reference graphic group, and the second graphic group is any graphic group in the at least one reference graphic group; the first graphic group includes M first graphics, and the second graphic group includes N second graphics, where M and N are positive integers;

[0218] A first calculation module 1120 is used to respectively calculate the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalue associated with the accumulated corners, and the target space operation corresponding to the simple eigenvalue;

[0219] A first determination module 1130 is used to determine the number of matching graphics of the first graphic group and the second graphic group based on the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalue and the target space operation;

[0220] The second determination module 1140 is used to determine the graphic group matching result between the first graphic group and the second graphic group based on the number of matching graphics; wherein the graphic group matching result is used to indicate whether the first graphic group and the second graphic group are in a fuzzy matching relationship.

[0221] A graphic matching device provided in an embodiment of the present application obtains a first graphic group to be matched and a second graphic group in a reference graphic library by setting corresponding functional modules, and then respectively calculates the minimum bounding box corresponding to each of the M first graphics in the first graphic group and the N second graphics in the second graphic group, the simple eigenvalue associated with the cumulative corner, and the target space operation corresponding to the simple eigenvalue. In this way, a graphic comparison is performed based on the minimum bounding box, simple eigenvalue, and target space operation corresponding to each of the M first graphics and the N second graphics, so as to determine the number of matching graphics between the first graphic group and the second graphic group. Finally, based on the number of matching graphics, it is determined whether there is a fuzzy matching relationship between the first graphic group and the second graphic group.

[0222] From the above description, it can be seen that in order to improve the fuzzy matching between two graphic groups, a graphic matching device according to an embodiment of the present application proposes to use simple eigenvalues ​​associated with the cumulative angle function of the graphic to achieve contour matching between the graphics, match the size of the graphics through the minimum bounding box, and compare the target space operations corresponding to the simple eigenvalues ​​of the graphics to achieve comparison of graphic space operations, so as to finally compare and obtain the number of matching graphics between the first image group and the second image group, and finally determine whether the graphic groups are in a fuzzy matching relationship based on the number of matching graphics. By using the graphic matching device according to the embodiment of the present application, fuzzy matching between single or multiple graphics in a graphic group can be achieved quickly and accurately, thereby effectively improving the layout matching efficiency and the defect detection and correction efficiency of the overall chip design layout.

[0223] According to some embodiments of the present application, optionally, the simple eigenvalue is a discrete cumulative rotation function integral of the graph after the perimeter normalization process under the target space operation;

[0224] The target spatial operation is a spatial operation that minimizes or maximizes the value of a simple eigenvalue among Q spatial operations, where Q is a positive integer; the Q spatial operations include: rotating the graphic at different set angles, and / or mirror-flipping the graphic and rotating it at different set angles.

[0225] According to some embodiments of the present application, optionally, the first determining module 1130 determines the number of matching graphics of the first graphic group and the second graphic group based on the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalue, and the target space operation, including:

[0226] A first selection submodule may be used to select a current traversal graph from the first graph group;

[0227] The first traversal submodule can be used to compare the features of the current traversal graphic with at least part of the graphics in the second graphic group based on the minimum bounding box corresponding to the current traversal graphic and each of the N second graphics, simple feature values, and target space operations. If it is determined that there is a second graphic matching the current traversal graphic in the second graphic group, the value of the number of matching graphics is increased by 1 until the graphics in the first graphic group are traversed;

[0228] The first obtaining submodule can be used to obtain the number of matching graphics of the first graphic group and the second graphic group.

[0229] According to some embodiments of the present application, optionally, the first selection submodule performs feature comparison between the currently traversed graph and at least part of the graphs in the second graph group, and if it is determined that there is a second graph in the second graph group that matches the currently traversed graph, the value of the number of matching graphs is increased by 1 until the graph traversal in the first graph group is completed, including:

[0230] The currently traversed graph is the i-th first graph in the first graph group, the initial value of i is 1, i≤M, and i is a positive integer; the following steps are executed in a loop until the graph traversal in the first graph group is completed:

[0231] Based on the first characteristic item corresponding to the i-th first graphic and each of the N second graphics, X second graphics are obtained by screening from the second graphic group; the difference between the first characteristic item of any graphic among the X second graphics and the first characteristic item of the i-th first graphic is less than a first difference threshold, X≤N, and X is a non-negative integer;

[0232] When X=0, update i to i+1;

[0233] In the case of X≠0, the second feature item of the i-th first graphic is compared with the second feature items of at least part of the X second graphics in sequence, until a target graphic is matched among the X second graphics; and the difference between the second feature item of the target graphic and the second feature item of the i-th first graphic is less than a second difference threshold;

[0234] When the target space operation of the target graphic is consistent with the target space operation of the i-th first graphic, determine that the i-th first graphic matches the target graphic, increase the value of the number of matching graphics by 1, and update i to i+1;

[0235] When the target space operation of the target graph is inconsistent with the target space operation of the i-th first graph, return to the step of sequentially comparing the second feature item of the i-th first graph with the second feature items of at least some of the X second graphs until the traversal of the i-th first graph to the X second graphs is completed, and update i to i+1;

[0236] If the target graph does not exist in the X second graphs, update i to i+1;

[0237] The first feature item is one of the minimum bounding box and the simple eigenvalue, and the second feature item is the other of the minimum bounding box and the simple eigenvalue.

[0238] According to some embodiments of the present application, optionally, the graphic matching device further includes:

[0239] The first transformation module may be used for, when the number of matching graphics is zero and the target graphics is obtained by the first matching, if it is determined that the target space operation of the target graphics is inconsistent with the target space operation of the i-th first graphics, then performing a unified space transformation on the graphics in the second graphics group according to the target space operation of the i-th first graphics;

[0240] And, a first updating module may be used to update the target space operation of the N second graphics in the second graphic group, increase the value of the number of matching graphics by 1, and update i to i+1;

[0241] The target space operation of the target graphic after the unified space transformation is consistent with the target space operation of the i-th first graphic.

[0242] According to some embodiments of the present application, optionally, the second determining module 1140 determines the graphic group matching result between the first graphic group and the second graphic group based on the number of matching graphics, including:

[0243] The second obtaining submodule can be used to obtain a graphic group matching result for indicating that the first graphic group and the second graphic group are not in a fuzzy matching relationship when the number of matching graphics is less than a first set threshold;

[0244] The third obtaining submodule can be used to process the number of matching graphics according to the relative position relationship between the graphics in the first matching graphic group and the relative position relationship between the graphics in the second matching graphic group to obtain the final number of matching graphics when the number of matching graphics is greater than or equal to the first set threshold; k first graphics in the first matching graphic group are matched one-to-one with k second graphics in the second matching graphic group, and the value of k is the number of matching graphics;

[0245] The fourth obtaining submodule can be used to obtain a graphic group matching result for indicating that the first graphic group and the second graphic group are not in a fuzzy matching relationship when the final graphic matching number is less than the first set threshold value;

[0246] The fifth obtaining submodule may be used to obtain a graphic group matching result for characterizing that the first graphic group and the second graphic group are in a fuzzy matching relationship when the final graphic matching number is greater than or equal to a first set threshold.

[0247] According to some embodiments of the present application, optionally, the third obtaining submodule reduces the number of matching graphics according to the relative position relationship between graphics in the first matching graphic group and the relative position relationship between graphics in the second matching graphic group to obtain the final number of graphic matches, including:

[0248] The first acquisition unit may be used to acquire a first relative position relationship between any two first graphics in the first matching graphic group and a second relative position relationship between any two second graphics in the second matching graphic group;

[0249] The first screening unit may be used to screen out f first graphics that match the first relative position relationship with the second relative position relationship from the k first graphics based on the first matching graphic group,

[0250] Alternatively, based on the second matching pattern group, f second patterns that match the first relative position relationship and the second relative position relationship are selected from the k second patterns, and the value of f is equal to the final pattern matching number.

[0251] According to some embodiments of the present application, optionally, before respectively calculating the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalues ​​associated with the accumulated corners, and the target space operation corresponding to the simple eigenvalues, the graphic matching device further includes:

[0252] A second acquisition module may be used to acquire a difference in the number of graphics between the number M of graphics in the first graphics group and the number N of graphics in the second graphics group;

[0253] The first calculation module 1120 calculates the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalues ​​associated with the accumulated corners, and the target space operation corresponding to the simple eigenvalues, including:

[0254] When the difference in the number of graphics is less than a second set threshold, the minimum bounding box, simple eigenvalue and target space operation corresponding to each of the M first graphics and the N second graphics are calculated respectively.

[0255] According to some embodiments of the present application, optionally, before acquiring the first graphic group to be matched and the second graphic group in the reference graphic library, the graphic matching device further includes:

[0256] The third acquisition module may be used to acquire candidate graphics contained in each candidate graphic group of the plurality of candidate graphic groups; the candidate graphic group includes at least one candidate graphic;

[0257] A first clustering module may be used to perform fuzzy clustering on a plurality of candidate graphics based on simple feature values ​​associated with the cumulative turning angles corresponding to the plurality of candidate graphics to obtain at least one clustered graphics group;

[0258] A third determination module may be used to determine fuzzy classification results of multiple candidate graphic groups based on the candidate graphic group corresponding to the candidate picture in at least one clustered graphic group;

[0259] The first screening module can be used to screen out at least one reference graphic group from multiple candidate graphic groups based on the fuzzy classification result, and store the reference graphic group in a reference graphic library; wherein each reference graphic group in the at least one reference graphic group belongs to a different graphic group classification.

[0260] According to some embodiments of the present application, optionally, the third determination module determines the fuzzy classification results of the plurality of candidate graphic groups based on the candidate graphic group corresponding to the candidate picture in at least one clustered graphic group, including:

[0261] If the target clustered graphic group contains a first candidate graphic and a second candidate graphic belonging to different candidate graphic groups, pairwise matching is performed on the candidate graphics in the first candidate graphic group in the plurality of candidate graphic groups and the candidate graphics in the second candidate graphic group in the plurality of candidate graphic groups to obtain a fuzzy classification result;

[0262] The target clustering graph group is any clustering graph group in at least one clustering graph group, the first candidate graph group is the candidate graph group to which the first candidate graph belongs, and the second candidate graph group is the candidate graph group to which the second candidate graph belongs.

[0263] According to some embodiments of the present application, optionally, the reference graphic library further stores a defect correction solution corresponding to each reference graphic group in at least one reference graphic group, and after determining the graphic group matching result between the first graphic group and the second graphic group based on the number of matching graphics, the graphic matching device further includes:

[0264] The fourth acquisition module may be used to acquire a defect correction solution corresponding to the second graphic group from a reference graphic library to correct the defects of the first graphic group when the graphic group matching result indicates that the first graphic group and the second graphic group are in a fuzzy matching relationship;

[0265] The first receiving module may be used to receive a defect correction solution corresponding to the first graphic group input from an external source when the graphic group matching result indicates that the first graphic group and the second graphic group are not in a fuzzy matching relationship;

[0266] The first storage module can be used to store the first graphic group and its corresponding defect correction solution in the reference graphic library.

[0267] Based on the pattern matching method provided in the above embodiment, for the same inventive concept, the present application also provides a layout matching device corresponding to the above pattern matching method. Fig.12 A detailed introduction to the pattern matching device is given.

[0268] See below Fig.12 , Fig.12 It is a structural schematic diagram of a pattern matching device provided in one embodiment of the present application.

[0269] The pattern matching device may include a processor 1201 and a memory 1202 storing computer program instructions.

[0270] Specifically, the processor 1201 may include a central processing unit (CPU), or an application specific integrated circuit (ASIC), or may be configured to implement one or more integrated circuits of the embodiments of the present application.

[0271] The memory 1202 may include a large capacity memory for data or instructions. By way of example and not limitation, the memory 1202 may include a hard disk drive (HDD), a floppy disk drive, a flash memory, an optical disk, a magneto-optical disk, a magnetic tape, or a universal serial bus (USB) drive or a combination of two or more of these. In appropriate cases, the memory 1202 may include a removable or non-removable (or fixed) medium. In appropriate cases, the memory 1202 may be inside or outside the integrated gateway disaster recovery device. In a specific embodiment, the memory 1202 is a non-volatile solid-state memory.

[0272] The memory may include read-only memory (ROM), random access memory (RAM), magnetic disk storage media devices, optical storage media devices, flash memory devices, electrical, optical or other physical / tangible memory storage devices. Thus, typically, the memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the method according to an aspect of the present disclosure.

[0273] The processor 1201 implements any one of the graphic matching methods in the above embodiments by reading and executing computer program instructions stored in the memory 1202 .

[0274] In one example, the data pattern matching device may further include a communication interface 1203 and a bus 1210. Fig.12 As shown, the processor 1201, the memory 1202, and the communication interface 1203 are connected via a bus 1210 and communicate with each other.

[0275] The communication interface 1203 is mainly used to implement communication between various modules, devices, units and / or equipment in the embodiments of the present application.

[0276] Bus 1210 includes hardware, software or both, and the parts of the graphic matching device are coupled to each other. For example, but not limitation, the bus may include accelerated graphics port (AGP) or other graphics bus, enhanced industrial standard architecture (EISA) bus, front-side bus (FSB), hypertransport (HT) interconnection, industrial standard architecture (ISA) bus, infinite bandwidth interconnection, low pin count (LPC) bus, memory bus, micro channel architecture (MCA) bus, peripheral component interconnection (PCI) bus, PCI-Express (PCI-X) bus, serial advanced technology attachment (SATA) bus, video electronics standard association local (VLB) bus or other suitable bus or two or more of these combinations. In appropriate cases, bus 1210 may include one or more buses. Although the present application embodiment describes and shows a specific bus, the application considers any suitable bus or interconnection.

[0277] The graphic matching device executes the graphic matching method in the embodiment of the present application, thereby realizing the graphic matching method described in the embodiment of the present application.

[0278] In addition, in combination with the graphic matching method in the above embodiment, the embodiment of the present application can provide a computer storage medium for implementation. The computer storage medium stores computer program instructions; when the computer program instructions are executed by a processor, any graphic matching method in the above embodiment is implemented.

[0279] Based on the graphic matching method in the above-mentioned embodiment, an embodiment of the present application provides a computer program product. When the instructions in the computer program product are executed by a processor of an electronic device, the electronic device executes the graphic matching method provided in any one of the above-mentioned embodiments of the present application.

[0280] It should be clear that the present application is not limited to the specific configuration and processing described above and shown in the figures. For the sake of simplicity, a detailed description of the known method is omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of the present application is not limited to the specific steps described and shown, and those skilled in the art can make various changes, modifications and additions, or change the order between the steps after understanding the spirit of the present application.

[0281] The functional blocks shown in the above-described block diagram can be implemented as hardware, software, firmware or a combination thereof. When implemented in hardware, it can be, for example, an electronic circuit, an application specific integrated circuit (ASIC), appropriate firmware, a plug-in, a function card, etc. When implemented in software, the elements of the present application are programs or code segments that are used to perform the required tasks. The program or code segment can be stored in a machine-readable medium, or transmitted on a transmission medium or a communication link by a data signal carried in a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, optical fiber media, radio frequency (RF) links, etc. The code segment can be downloaded via a computer network such as the Internet, an intranet, etc.

[0282] It should also be noted that the exemplary embodiments mentioned in this application describe some methods or systems based on a series of steps or devices. However, this application is not limited to the order of the above steps, that is, the steps can be performed in the order mentioned in the embodiment, or in a different order from the embodiment, or several steps can be performed simultaneously.

[0283] Aspects of the present disclosure are described above with reference to the flowchart and / or block diagram of the method, device (system) and computer program product according to the embodiment of the present disclosure. It should be understood that each box in the flowchart and / or block diagram and the combination of each box in the flowchart and / or block diagram can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device to produce a machine so that these instructions executed by the processor of the computer or other programmable data processing device enable the implementation of the function / action specified in one or more boxes of the flowchart and / or block diagram. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field programmable logic circuit. It can also be understood that each box in the block diagram and / or flowchart and the combination of boxes in the block diagram and / or flowchart can also be implemented by dedicated hardware that performs a specified function or action, or can be implemented by a combination of dedicated hardware and computer instructions.

[0284] The above is only a specific implementation of the present application. Those skilled in the art can clearly understand that for the convenience and simplicity of description, the specific working processes of the systems, modules and units described above can refer to the corresponding processes in the aforementioned method embodiments, and will not be repeated here. It should be understood that the protection scope of the present application is not limited to this. Any technician familiar with the technical field can easily think of various equivalent modifications or replacements within the technical scope disclosed in this application, and these modifications or replacements should be included in the protection scope of this application.

Claims

1. A pattern matching method, characterized in that: The method comprises: Acquire a first graphic group to be matched and a second graphic group in a reference graphic library, wherein the reference graphic library stores at least one reference graphic group, and the second graphic group is any graphic group in the at least one reference graphic group; the first graphic group includes M first graphics, and the second graphic group includes N second graphics, where M and N are positive integers; Respectively calculating the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalue associated with the accumulated corners, and the target space operation corresponding to the simple eigenvalue; Determine the number of matching graphics of the first graphic group and the second graphic group based on the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalue, and the target space operation; Based on the number of matching graphics, a graphic group matching result between the first graphic group and the second graphic group is determined; wherein the graphic group matching result is used to indicate whether the first graphic group and the second graphic group are in a fuzzy matching relationship.

2. The method according to claim 1, characterized in that The simple eigenvalue is the discrete cumulative rotation function integral of the graph after the circumference is normalized under the target space operation; The target spatial operation is a spatial operation that minimizes or maximizes the value of the simple eigenvalue among Q spatial operations, where Q is a positive integer; The Q types of spatial operations include: rotating the graphic at different set angles, and / or mirror-flipping the graphic and then rotating it at different set angles.

3. The method according to claim 1 or 2, characterized in that: The determining the number of matching graphics of the first graphic group and the second graphic group based on the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalue, and the target space operation includes: Selecting a current traversal graph from the first graph group; Based on the minimum bounding box corresponding to the current traversed graph and each of the N second graphs, the simple feature value, and the target space operation, feature comparison is performed between the current traversed graph and at least part of the graphs in the second graph group, and if it is determined that there is a second graph in the second graph group that matches the current traversed graph, the value of the number of matching graphs is increased by 1 until the traversal of the graphs in the first graph group is completed; The number of matching graphics between the first graphic group and the second graphic group is obtained.

4. The method according to claim 3, characterized in that The step of comparing the currently traversed graph with at least part of the graphs in the second graph group, and if it is determined that there is a second graph in the second graph group that matches the currently traversed graph, increasing the value of the number of matching graphs by 1 until the graph traversal in the first graph group is completed, includes: The currently traversed graph is the i-th first graph in the first graph group, where the initial value of i is 1, i≤M, and i is a positive integer; the following steps are executed in a loop until the graph traversal in the first graph group is completed: Based on the first characteristic item corresponding to the i-th first graphic and each of the N second graphics, X second graphics are obtained by screening from the second graphic group; the difference between the first characteristic item of any graphic among the X second graphics and the first characteristic item of the i-th first graphic is less than a first difference threshold, X≤N, and X is a non-negative integer; When X=0, update i to i+1; In the case of X≠0, the second feature item of the i-th first graphic is compared with the second feature items of at least part of the X second graphics in sequence, until a target graphic is matched among the X second graphics; and the difference between the second feature item of the target graphic and the second feature item of the i-th first graphic is less than a second difference threshold; When the target space operation of the target graphic is consistent with the target space operation of the i-th first graphic, determining that the i-th first graphic matches the target graphic, increasing the value of the number of matching graphics by 1, and updating i to i+1; When the target space operation of the target graph is inconsistent with the target space operation of the i-th first graph, returning to the step of sequentially comparing the second feature item of the i-th first graph with the second feature items of at least some of the X second graphs until the traversal of the X second graphs by the i-th first graph is completed, and updating i to i+1; If the target graph does not exist in the X second graphs, update i to i+1; The first feature item is one of the minimum enclosing box and the simple feature value, and the second feature item is the other of the minimum enclosing box and the simple feature value.

5. The method according to claim 4, characterized in that The method further comprises: When the value of the number of matching graphics is zero and the target graphics is obtained by the first matching, if it is determined that the target space operation of the target graphics is inconsistent with the target space operation of the i-th first graphics, then performing a unified space transformation on the graphics in the second graphics group according to the target space operation of the i-th first graphics; and, updating the target space operation of the N second graphics in the second graphics group, increasing the value of the number of matching graphics by 1, and updating i to i+1; The target space operation of the target graphic after the unified space transformation is consistent with the target space operation of the i-th first graphic.

6. The method according to claim 1, characterized in that The determining, based on the number of matching graphics, a graphic group matching result between the first graphic group and the second graphic group includes: When the number of matching graphics is less than a first set threshold, obtaining the graphic group matching result for indicating that the first graphic group and the second graphic group are not in a fuzzy matching relationship; When the number of matching patterns is greater than or equal to the first set threshold, the number of matching patterns is processed according to the relative position relationship between the patterns in the first matching pattern group and the relative position relationship between the patterns in the second matching pattern group to obtain a final number of pattern matches; k first patterns in the first matching pattern group are matched one-to-one with k second patterns in the second matching pattern group, and the value of k is the number of matching patterns; When the final number of graphic matches is less than the first set threshold, obtaining the graphic group matching result for indicating that the first graphic group and the second graphic group are not in a fuzzy matching relationship; When the final number of graphic matches is greater than or equal to the first set threshold, the graphic group matching result is obtained, which is used to characterize that the first graphic group and the second graphic group are in a fuzzy matching relationship.

7. The method according to claim 6, characterized in that The reducing the number of matching graphics according to the relative position relationship between graphics in the first matching graphic group and the relative position relationship between graphics in the second matching graphic group to obtain a final number of matching graphics includes: Acquire a first relative position relationship between any two first graphics in the first matching graphic group and a second relative position relationship between corresponding two second graphics in the second matching graphic group; Taking the first matching pattern group as a reference, f first patterns that make the first relative position relationship match the second relative position relationship are selected from the k first patterns, Alternatively, based on the second matching graphic group, f second graphics that make the first relative position relationship match the second relative position relationship are screened out from the k second graphics, and the value of f is equal to the final graphic matching number.

8. The method according to claim 1, characterized in that Before respectively calculating the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalues ​​associated with the accumulated corners, and the target space corresponding to the simple eigenvalues, the method further includes: Obtaining a difference in the number of graphics between the number M of graphics in the first graphics group and the number N of graphics in the second graphics group; The step of respectively calculating the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalues ​​associated with the accumulated corners, and the target space operation corresponding to the simple eigenvalues ​​includes: When the difference in the number of graphics is less than a second set threshold, the minimum bounding box, the simple eigenvalue and the target space operation corresponding to each of the M first graphics and the N second graphics are calculated respectively.

9. The method according to claim 1, characterized in that: Before acquiring the first graphic group to be matched and the second graphic group in the reference graphic library, the method further includes: Acquire candidate graphics included in each candidate graphic group of a plurality of candidate graphic groups; the candidate graphic group includes at least one candidate graphic; Based on the simple feature values ​​associated with the accumulated turning angles corresponding to the multiple candidate graphics, fuzzy clustering is performed on the multiple candidate graphics to obtain at least one clustered graphics group; Determining fuzzy classification results of the plurality of candidate graphic groups based on the candidate graphic groups corresponding to the candidate pictures in the at least one clustered graphic group; Based on the fuzzy classification result, at least one reference graphic group is selected from the multiple candidate graphic groups, and the reference graphic group is stored in the reference graphic library; wherein each reference graphic group in the at least one reference graphic group belongs to a different graphic group classification.

10. The method according to claim 9, characterized in that The determining of fuzzy classification results of the plurality of candidate graphic groups based on the candidate graphic groups corresponding to the candidate pictures in the at least one clustered graphic group comprises: If the target clustered graphic group includes a first candidate graphic and a second candidate graphic belonging to different candidate graphic groups, pairwise matching is performed on the candidate graphics in the first candidate graphic group in the plurality of candidate graphic groups and the candidate graphics in the second candidate graphic group in the plurality of candidate graphic groups to obtain the fuzzy classification result; The target clustering graph group is any clustering graph group among the at least one clustering graph group, the first candidate graph group is the candidate graph group to which the first candidate graph belongs, and the second candidate graph group is the candidate graph group to which the second candidate graph belongs.

11. The method according to claim 1, characterized in that: The reference graphic library further stores a defect correction solution corresponding to each reference graphic group in the at least one reference graphic group. After determining a graphic group matching result between the first graphic group and the second graphic group based on the number of matching graphics, the method further includes: When the graphic group matching result indicates that the first graphic group and the second graphic group are in a fuzzy matching relationship, obtaining a defect correction solution corresponding to the second graphic group from the reference graphic library to correct the defects of the first graphic group; When the graphic group matching result indicates that the first graphic group and the second graphic group are not in a fuzzy matching relationship, receiving a defect correction solution corresponding to the first graphic group input from an external source; The first graphic group and its corresponding defect correction solution are stored in the reference graphic library.

12. A pattern matching device, characterized in that: The device comprises: A first acquisition module is used to acquire a first graphic group to be matched and a second graphic group in a reference graphic library, wherein the reference graphic library stores at least one reference graphic group, and the second graphic group is any graphic group in the at least one reference graphic group; the first graphic group includes M first graphics, and the second graphic group includes N second graphics, where M and N are positive integers; A first calculation module is used to respectively calculate the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalue associated with the accumulated corners, and the target space operation corresponding to the simple eigenvalue; A first determination module is used to determine the number of matching graphics of the first graphic group and the second graphic group based on the minimum bounding box corresponding to each of the M first graphics and the N second graphics, the simple eigenvalue and the target space operation; The second determination module is used to determine the graphic group matching result between the first graphic group and the second graphic group based on the number of matching graphics; wherein the graphic group matching result is used to indicate whether the first graphic group and the second graphic group are in a fuzzy matching relationship.

13. A pattern matching device, characterized in that: The device comprises: a processor and a memory storing computer program instructions; When the processor executes the computer program instructions, the graphic matching method according to any one of claims 1 to 11 is implemented.

14. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer program instructions, and when the computer program instructions are executed by a processor, the graphic matching method according to any one of claims 1 to 11 is implemented.

15. A computer program product, characterized in that When the instructions in the computer program product are executed by a processor of an electronic device, the electronic device executes the graphic matching method as described in any one of claims 1-11.

Citation Information

Cited By

  • Layout matching method and device, computer equipment and readable storage medium

    CN119540244A