Image splicing method and device and terminal equipment

Through frequency domain transformation and maximum spanning tree optimization technology, the error problem of traditional stitching methods in complex environments and weak texture areas is solved, high-quality image stitching is achieved, and the accuracy of detection results is improved.

CN119919285APending Publication Date: 2025-05-02MATRIXTIME ROBOTICS (SHANGHAI) CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411988305.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-31
Publication Date
2025-05-02

AI Technical Summary

Technical Problem

Traditional image stitching methods are prone to errors when dealing with complex environments and weak texture areas, resulting in accumulated misalignment of stitching images and affecting the accuracy of detection results.

Method used

By performing frequency domain transformation of the stitched image, the similarity of the overlapping area is determined as the stitching weight and offset, and a graph node model is constructed based on the maximum spanning tree, the stitching order and offset are optimized to achieve high-quality image stitching.

Benefits of technology

It effectively solves the problem of stitching error accumulation caused by texture expression in overlapping areas and external environment jitter, and improves the accuracy and stability of image stitching.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119919285A_ABST
    Figure CN119919285A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of semiconductor detection, provides an image detection method, and particularly relates to an image splicing method and device and terminal equipment. The method comprises the following steps: performing frequency domain transformation on a to-be-spliced image, and determining the similarity of an overlapping region as a splicing weight and the offset of the overlapping region based on a transformed frequency domain; and constructing a graph node model based on the splicing weight, calculating a global optimal splicing sequence of the plurality of to-be-spliced images according to a maximum spanning tree method, and splicing the plurality of to-be-spliced images through the offset and the global optimal splicing sequence. According to the embodiment of the invention, the splicing sequence is optimized by using the maximum spanning tree, and the images are spliced in combination with the accurate offset of the effective region, so that the accumulation of splicing errors caused by texture expression of the overlapping region and external environment jitter in the prior art can be solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of semiconductor detection technology, and is an image detection method, and specifically to an image stitching method, device and terminal equipment. Background Art

[0002] Image stitching is a key technology in chip inspection. Due to the limited field of view (FOV) images, multiple images often need to be stitched together to form a complete inspection view. There are overlapping areas between the fields of view, which may include areas with high texture details and areas with low texture, increasing the complexity of stitching. However, traditional stitching methods are prone to errors due to local texture loss or inconsistent image quality, especially in weak texture areas, which may lead to inaccurate offset calculations and affect the overall quality of stitching. This error phenomenon will cause the stitched image to accumulate misalignment, thus affecting the accuracy of the final inspection results. Therefore, a more accurate stitching method is needed to ensure adaptive high-quality image stitching in complex environments. Summary of the invention

[0003] In order to solve the above problems, the present application provides an image stitching method, apparatus and terminal device, which can solve the above problems by globally optimizing the stitching order and combining precise offset fine-tuning of the effective area.

[0004] In order to achieve the above purpose, the technical solution adopted in the embodiment of the present application is as follows:

[0005] In a first aspect, an image stitching method is provided, the method comprising: determining an offset between at least two stitched images based on frequency domain features corresponding to at least two images to be stitched, and determining a stitching weight based on the mutual correlation of the frequency domain features; constructing a graph node model based on the stitching weight and image position, and determining an optimal global stitching order based on a maximum spanning tree; and performing stitching based on the optimal global stitching order and the stitching weights and offsets corresponding to the images to be stitched to obtain a target image.

[0006] In some specific implementations, Fourier transform is performed on at least two of the images to be stitched to obtain first spectral features and second spectral features of the at least two images to be stitched; and cross-correlation is calculated on the first spectral features and the second spectral features based on different phase differences to obtain the stitching weight and the offset.

[0007] In some specific implementations, each of the images to be spliced ​​in the graph node model is a node, the matching relationship between the multiple images to be spliced ​​is an edge connecting the nodes, and the splicing weight is the weight of the edge.

[0008] In some specific implementations, determining the optimal global stitching order based on the maximum spanning tree includes: determining a basic stitching image among the multiple images to be stitched, and determining the optimal global stitching order based on the maximum spanning tree structure with the basic stitching image as the central node.

[0009] In some specific implementations, the maximum spanning tree structure is constructed by obtaining the stitching weights of multiple images to be stitched and arranging the stitching weights in descending order to construct a variable list, traversing the variable list to determine the set distribution of vertices in each edge, and updating the initial maximum spanning tree set of edges based on the set distribution until an update condition is met.

[0010] In some specific implementations, the update condition includes that the initial maximum spanning tree set contains all vertices of the images to be spliced, or all edges are traversed.

[0011] In some specific implementations, the updating of the initial maximum spanning tree set based on the set distribution of edges includes: determining whether the vertices in each edge in the traversal result belong to different sets; when the vertices belong to different combinations, adding the corresponding edges to the initial maximum spanning tree aggregation and merging the sets where the vertices are located.

[0012] In some specific implementations, the offset is updated based on the stitching weight to obtain an actual offset, and the to-be-stitched images are stitched based on the actual offset and the optimal global stitching order.

[0013] In a second aspect, an image stitching device is provided, the device comprising: a stitching parameter determination module, used to determine the stitching parameters between images; the stitching parameters include an offset and a stitching weight; a stitching order determination module, used to construct a graph node model based on the stitching weight and image position, and determine an optimal global stitching order based on a maximum spanning tree; a stitching module, used to perform stitching based on the optimal global stitching order and the stitching weights and offsets corresponding to the images to be stitched, to obtain a target image.

[0014] In a third aspect, a terminal device is provided, comprising: a processor and a memory connected to the processor, the memory storing instructions executed by the processor, and the instructions causing the processor to perform operations to perform the image stitching method as described in any one of the above.

[0015] In a fourth aspect, a readable medium is provided, wherein the readable medium stores computer-readable instructions, wherein the computer-readable instructions include instructions for executing a sub-pixel defect detection method as described in any one of the above.

[0016] In the technical solution provided by the embodiment of the present application, the frequency domain transformation is performed on the images to be stitched, and the similarity of the overlapping areas is determined as the stitching weight and the offset of the overlapping areas based on the transformed frequency domain; a graph node model is constructed based on the stitching weight and the global optimal stitching order of multiple images to be stitched is calculated according to the maximum spanning tree method, and multiple images to be stitched are stitched by the offset and the global optimal stitching order. The embodiment of the present application uses the maximum spanning tree to optimize the stitching order, and stitches the images in combination with the precise offset of the effective area, which can solve the accumulation of stitching errors caused by the texture expression of the overlapping area and the jitter of the external environment in the prior art. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0018] The methods, systems and / or programs in the accompanying drawings will be further described according to exemplary embodiments. These exemplary embodiments will be described in detail with reference to the drawings. These exemplary embodiments are non-limiting exemplary embodiments, wherein example numbers represent similar mechanisms in the various views of the accompanying drawings.

[0019] Figure 1 It is a flowchart of the image stitching method provided in the embodiment of the present application.

[0020] Figure 2 It is a schematic diagram of the cross-correlation expression provided in the embodiment of the present application.

[0021] Figure 3 It is a schematic diagram of the structure of the image stitching device provided in an embodiment of the present application.

[0022] Figure 4 It is a schematic diagram of the server structure provided in an embodiment of the present application.

[0023] Figure 5 It is a schematic diagram of the computer-readable storage medium structure provided in an embodiment of the present application. DETAILED DESCRIPTION

[0024] In order to better understand the above technical scheme, the technical scheme of the present application is described in detail below through the accompanying drawings and specific embodiments. It should be understood that the embodiments of the present application and the specific features in the embodiments are detailed descriptions of the technical scheme of the present application, rather than limitations on the technical scheme of the present application. In the absence of conflict, the embodiments of the present application and the technical features in the embodiments can be combined with each other.

[0025] In the following detailed description, numerous specific details are set forth by way of example in order to provide a comprehensive understanding of the relevant guidance. However, it will be apparent to those skilled in the art that the present application may be practiced without these details. In other cases, well-known methods, procedures, systems, compositions and / or circuits have been described at a relatively high level, without detail, in order to avoid unnecessarily obscuring aspects of the present application.

[0026] Flowcharts are used in the present application to illustrate the execution process performed by the system according to the embodiment of the present application. It should be clearly understood that the execution process of the flowchart may not be performed in order. On the contrary, these execution processes may be performed in reverse order or simultaneously. In addition, at least one other execution process may be added to the flowchart. One or more execution processes may be deleted from the flowchart.

[0027] Before further describing the embodiments of the present invention in detail, the nouns and terms involved in the embodiments of the present invention are described. The nouns and terms involved in the embodiments of the present invention are subject to the following interpretations.

[0028] (1) In response, it is used to indicate the conditions or states on which the executed operations depend. When the dependent conditions or states are met, one or more operations executed may be in real time or with a set delay. Unless otherwise specified, there is no restriction on the order in which the multiple operations executed are executed.

[0029] (2) Based on is used to indicate the conditions or states on which the executed operations depend. When the dependent conditions or states are met, one or more operations executed may be in real time or have a set delay. Unless otherwise specified, there is no restriction on the order in which the multiple operations executed are executed.

[0030] The embodiment of the present application provides an image stitching method for stitching multiple sub-images to obtain a complete target image. The image stitching method is the main application technology in semiconductor detection scenarios, because in actual semiconductor detection scenarios, microscopic imaging is usually used to obtain images of the objects to be detected, which are mainly semiconductor products to be detected. Since the field of view is small, it is necessary to stitch multiple images collected in each field of view to form a complete detection view. Because there are overlapping areas between each field of view, these overlapping areas may include high-texture detail areas or low-texture areas, especially for low-texture areas because the intensity of texture feature expression is low, the stitching effect of the image in this area is not ideal in the prior art, which will lead to the accumulation of stitching errors and cause large errors in the results of subsequent image detection.

[0031] In order to solve the above technical problems, an embodiment of the present application provides an image stitching method, which determines the optimal stitching parameters through the distribution characteristics of the frequency domain of the image, and determines the optimal stitching order of the image, thereby improving the stitching accuracy of the overall image.

[0032] It is worth noting that the semiconductor product in the embodiments of the present application includes any one of a wafer, an unpackaged chip and a packaged chip, wherein the wafer includes a patternless wafer or a patterned wafer.

[0033] For the image stitching method in this embodiment, please refer to Figure 1 , specifically including the following steps:

[0034] Step S11: determining an offset between at least two images to be stitched based on frequency domain features corresponding to at least two images to be stitched, and determining a stitching weight based on a mutual correlation of the frequency domain features.

[0035] In the embodiment of the present application, the offset of the overlapping area between the multiple images collected and the corresponding confidence are first determined. The confidence is used to indicate the similarity between the overlapping areas at different position differences. Because during actual image acquisition, the machine for carrying the product to be inspected and the image acquisition device for acquiring the image itself have motion jitter, there is an error between the overlapping areas of the collected images corresponding to the acquisition field of view.

[0036] In the prior art, when stitching images, images are directly stitched based on the overlapping area, without considering the inaccuracy of the stitching result caused by jitter. Therefore, in order to reduce the impact of this error on the result, the stitching weight between the overlapping areas of the two images is obtained in this embodiment. Among them, the stitching weight is calculated by calculating the similarity of the overlapping areas between the two images at different phases, and the result with the greatest similarity is determined as its stitching weight. If the similarity is 1, it means that there is no impact between the two images to be stitched due to machine jitter.

[0037] Specifically, in the embodiment of the present application, images at adjacent acquisition times are used as adjacent image groups according to the acquisition data of the images, and each adjacent image group includes two images. For this adjacent image group including horizontally adjacent images and vertically adjacent images, the process of the embodiment of the present application first determines the offset and confidence of the overlapping area between the two images in each adjacent image group.

[0038] Among them, the offset in this embodiment is the offset under ideal conditions, that is, the image acquisition environment is an absolute standard environment. The absolute standard environment is an environment without external physical jitter. In addition, in the prior art, the offset is usually directly calculated by matching the features of the overlapping areas, but the difference between the high texture area and the weak texture area is not fully considered. For the high texture area, accurate stitching is usually achieved, while the weak texture area is more difficult to match, which may lead to the accumulation of stitching errors.

[0039] Specifically, the first spectral features and the second spectral features corresponding to the two images are obtained, and the corresponding ideal offset calculation and similarity calculation are performed on the first spectral features and the second spectral features based on different phase differences, the similarities corresponding to multiple phase differences are obtained, and the ideal offsets corresponding to the maximum similarity and the secondary similarity values ​​are screened, and the splicing weight value is obtained through inverse Fourier transform.

[0040] The similarity is calculated by cross-correlation. For the calculation of cross-correlation, please refer to Figure 2 As shown. The cross-correlation reflects the similarity between the vector x and the shifted (lag) vector y. That is, the role of the cross-correlation is to find the moment when the similarity between two different frequency domain features is the highest.

[0041] For the images I1(x, y) and I2(x, y) in the adjacent image group, they have the following relationship in the spatial domain: I2(x, y) = I1(x, y) x ,yd y ), where d x and d y Respectively represent the offset of the two images in the horizontal and vertical directions. For the two images, since their field of view is the same, the size is also M×N. By performing Fourier transform on the two images, the expressions of the two images in the frequency domain are obtained as follows:

[0042]

[0043] Through the frequency domain expression of the above two images, it can be concluded that the relationship between the two images in the frequency domain is: in Represents the phase difference. Through inverse Fourier transform, the impulse function is obtained as: The corresponding offsets dx and dy are obtained through the peak positions, and the overlapping area of ​​the two images is determined.

[0044] Step S12: constructing a graph node model based on the splicing weights and image positions, and determining an optimal global splicing order based on a maximum spanning tree.

[0045] For each image including at least two stitching edges, and for some images having four stitching edges, a corresponding stitching weight value is obtained for each stitching edge according to step S11.

[0046] In this embodiment, the stitching order of each image is determined according to the stitching weight value. For example, for a 3*3 image, a basic stitching image is first determined. Generally, the image captured in the upper left corner is selected for this basic stitching image, and then each image to be stitched is regarded as a node in the graph. The matching relationship between the images is the edge connecting the nodes, and the weight of the edge is the weight of the stitching edge of the two matching images, indicating the similarity of the overlapping area of ​​the two images.

[0047] Among them, the maximum spanning tree is generated based on the Kruskal algorithm. Among them, the Kruskal algorithm is based on edge sorting and is suitable for sparse graphs with a large number of edges. For the Kruskal algorithm, the edge weights corresponding to multiple images are sorted from large to small, and an empty maximum spanning tree set and a data structure for recording the set to which each vertex belongs are created; the sorted variable list is traversed, and for each edge, a union-find set is used to check whether the two vertices of this edge belong to different sets. If they belong to different sets, this edge is added to the empty maximum spanning tree set, and the sets where the two vertices are located are merged. If they belong to the same set, this edge is ignored.

[0048] The above process is repeated until the empty maximum spanning tree set contains all the vertices in the graph, or all the edges are traversed to complete the construction of the maximum spanning tree. The maximum spanning tree finally generated is actually the tree structure with the highest overall weight.

[0049] In this maximum spanning tree structure, the basic splicing image is used as the central node, and the splicing order is determined according to the structure of the maximum spanning tree starting from the central node.

[0050] Step S13: performing stitching based on the optimal global stitching order and the stitching weights and offsets corresponding to the images to be stitched, to obtain a target image.

[0051] The actual offset can be obtained for the ideal offset and stitching weight obtained in step S11 and step S12, and multiple images to be stitched are stitched based on the actual offset and the optimal global stitching order to obtain a final target image to be detected.

[0052] In the embodiment of the present application, the method provided for step S11 and step S12 can achieve accurate stitching between multiple images.

[0053] In the embodiment of the present application, the frequency domain transformation is performed on the image to be stitched, and the similarity of the overlapping area is determined as the stitching weight and the offset of the overlapping area based on the transformed frequency domain; a graph node model is constructed based on the stitching weight and the global optimal stitching order of multiple images to be stitched is calculated according to the maximum spanning tree method, and multiple images to be stitched are stitched by the offset and the global optimal stitching order. The embodiment of the present application uses the maximum spanning tree to optimize the stitching order, and stitches the images in combination with the precise offset of the effective area, which can solve the accumulation of stitching errors caused by the texture expression of the overlapping area and the jitter of the external environment in the prior art.

[0054] In order to better implement the above method, the embodiment of the present application also provides an image stitching device, which can be integrated in an electronic device, and the electronic device can be a terminal, a server, etc. Among them, the terminal can be a mobile phone, a tablet computer, a smart Bluetooth device, a laptop, a personal computer, etc.; the server can be a single server or a server cluster composed of multiple servers.

[0055] For example, in this embodiment, the method of the embodiment of the present application will be described in detail by taking the image stitching device being specifically integrated into an electronic device as an example.

[0056] For example, Figure 3 As shown, the image stitching device 30 may include a stitching parameter determination module 31, a stitching order determination module 32 and a stitching module 33, wherein:

[0057] The splicing parameter determination module 31 is used to determine the splicing parameters between images.

[0058] In some specific embodiments, the stitching parameters include an offset and a stitching weight. The stitching weight and the offset are calculated by performing Fourier transform on the images to be stitched to obtain a first spectrum feature and a second spectrum feature of at least two of the images to be stitched; and performing cross-correlation calculation on the first spectrum feature and the second spectrum feature based on different phase differences to obtain the stitching weight and the offset.

[0059] The splicing order determination module 32 is used to construct a graph node model based on the splicing weights and image positions, and determine an optimal global splicing order based on a maximum spanning tree.

[0060] In some specific implementations, each of the images to be spliced ​​in the graph node model is a node, the matching relationship between the multiple images to be spliced ​​is an edge connecting the nodes, and the splicing weight is the weight of the edge.

[0061] In some specific implementations, a basic stitching image among the plurality of images to be stitched is determined, and the optimal global stitching order is determined based on a maximum spanning tree structure with the basic stitching image as a central node.

[0062] In some specific embodiments, the maximum spanning tree structure is constructed by obtaining the stitching weights of multiple images to be stitched and arranging the stitching weights in descending order to construct a variable list, traversing the variable list to determine the set distribution of vertices in each edge, and updating the initial maximum spanning tree set of edges based on the set distribution until the update condition is met.

[0063] In some specific implementations, the update condition includes that the initial maximum spanning tree set contains all vertices of the images to be spliced, or all edges are traversed.

[0064] In some specific implementations, by determining whether the vertices in each edge in the traversal result belong to different sets, when the vertices belong to different combinations, the corresponding edges are added to the initial maximum spanning tree aggregation and the sets where the vertices are located are merged.

[0065] The stitching module 33 is used to perform stitching based on the optimal global stitching order and the stitching weights and offsets corresponding to the images to be stitched, so as to obtain a target image.

[0066] In some specific implementations, the offset is updated by a stitching weight to obtain an actual offset, and the to-be-stitched images are stitched based on the actual offset and the optimal global stitching order.

[0067] The embodiment of the present application also provides an electronic device, which can be a terminal, a server, etc. The terminal can be a mobile phone, a tablet computer, a smart Bluetooth device, a laptop, a personal computer, etc. The server can be a single server or a server cluster composed of multiple servers, etc.

[0068] In some embodiments, the image stitching device may also be integrated into multiple electronic devices. For example, the image stitching device may be integrated into multiple servers, and the chip detection method of the present application may be implemented by multiple servers.

[0069] In this embodiment, the electronic device of this embodiment is a server as an example for detailed description, for example, Figure 4 As shown, it shows a schematic diagram of the structure of the server involved in the embodiment of the present application, specifically:

[0070] The server may include one or more processing core processors 401, one or more computer-readable storage media memories 402, a power supply 403, an input module 404, and a communication module 405. Those skilled in the art will appreciate that Figure 4 The server structure shown in the figure does not constitute a limitation on the server, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently. Among them:

[0071] The processor 401 is the control center of the server, and uses various interfaces and lines to connect various parts of the entire server. It executes various functions of the server and processes data by running or executing software programs and / or modules stored in the memory 402, and calling data stored in the memory 402. In some embodiments, the processor 401 may include one or more processing cores; in some embodiments, the processor 401 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the above-mentioned modem processor may not be integrated into the processor 401.

[0072] The memory 402 can be used to store software programs and modules. The processor 401 executes various functional applications and data processing by running the software programs and modules stored in the memory 402. The memory 402 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; the data storage area may store data created according to the use of the server, etc. In addition, the memory 402 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage devices. Accordingly, the memory 402 may also include a memory controller to provide the processor 401 with access to the memory 402.

[0073] The server also includes a power supply 403 for supplying power to various components. In some embodiments, the power supply 403 may be logically connected to the processor 401 through a power management system, so that the power management system can manage charging, discharging, power consumption, and other functions. The power supply 403 may also include any components such as one or more DC or AC power supplies, recharging systems, power failure detection circuits, power converters or inverters, and power status indicators.

[0074] The server may further include an input module 404, which may be used to receive input digital or character information and generate keyboard, mouse, joystick, optical or trackball signal input related to user settings and function control.

[0075] The server may further include a communication module 405. In some embodiments, the communication module 405 may include a wireless module. The server may perform short-range wireless transmission through the wireless module of the communication module 405, thereby providing wireless broadband Internet access for the user. For example, the communication module 405 may be used to help the user send and receive emails, browse web pages, and access streaming media.

[0076] Although not shown, the server may also include a display unit, etc., which will not be described in detail herein. Specifically in this embodiment, the processor 401 in the server will load the executable files corresponding to the processes of one or more application programs into the memory 402 according to the following instructions, and the processor 401 will run the application programs stored in the memory 402, thereby implementing the steps in the methods of the embodiments of the present application.

[0077] The specific implementation of the above operations can be found in the previous embodiments, which will not be described in detail here.

[0078] From the above, it can be seen that the method provided in this embodiment is passed.

[0079] A person of ordinary skill in the art will appreciate that all or part of the steps in the various methods of the above embodiments may be completed by instructions, or by controlling related hardware through instructions. The instructions may be stored in a computer-readable storage medium and loaded and executed by a processor.

[0080] For this purpose, see Figure 5 The embodiment of the present application provides a computer-readable storage medium 50, which stores computer-readable instructions 501. The computer-readable instructions 501 can be loaded by a processor to execute the steps in any image stitching method provided in the embodiment of the present application. For example, the instructions can execute the following steps:

[0081] Determining an offset between at least two images to be stitched based on frequency domain features corresponding to at least two images to be stitched, and determining a stitching weight based on a mutual correlation of the frequency domain features;

[0082] Building a graph node model based on the splicing weights and image positions, and determining an optimal global splicing order based on a maximum spanning tree;

[0083] Based on the optimal global stitching order and the stitching weights and offsets corresponding to the images to be stitched, stitching is performed to obtain a target image.

[0084] The storage medium may include: a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.

[0085] According to one aspect of the present application, a computer program product or computer program is provided, the computer program product or computer program including a computer program / instruction, the computer program / instruction being stored in a computer-readable storage medium. A processor of an electronic device reads the computer program / instruction from the computer-readable storage medium, and the processor executes the computer program / instruction, so that the electronic device executes the method provided in various optional implementations of the image stitching provided in the above embodiments.

[0086] Since the instructions stored in the storage medium can execute the steps in any image stitching method provided in the embodiments of the present application, the beneficial effects that can be achieved by any image stitching method provided in the embodiments of the present application can be achieved. Please refer to the previous embodiments for details and will not be repeated here.

[0087] In this application, "at least one" means one or more, and "more than one" means two or more. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b, or c can be represented by: a, b, c, ab, ac, bc, or abc, where a, b, c can be single or multiple.

[0088] It should be understood that in the various embodiments of the present application, the size of the serial numbers of the above-mentioned processes does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0089] The above is a detailed introduction to the sub-pixel defect detection method, device, terminal, storage medium and program product based on imaging features provided in the embodiments of the present application. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method of the present application and its core idea; at the same time, for technical personnel in this field, according to the ideas of the present application, there will be changes in the specific implementation methods and application scopes. In summary, the content of this specification should not be understood as a limitation on the present application.

Claims

1. An image stitching method, characterized in that: The method comprises: Determining an offset between at least two images to be stitched based on frequency domain features corresponding to at least two images to be stitched, and determining a stitching weight based on a mutual correlation of the frequency domain features; Building a graph node model based on the splicing weights and image positions, and determining an optimal global splicing order based on a maximum spanning tree; Based on the optimal global stitching order and the stitching weights and offsets corresponding to the images to be stitched, stitching is performed to obtain a target image.

2. The image stitching method according to claim 1, characterized in that: Fourier transform is performed on at least two of the images to be stitched to obtain first spectrum characteristics and second spectrum characteristics of the at least two images to be stitched; and cross-correlation calculation is performed on the first spectrum characteristics and the second spectrum characteristics based on different phase differences to obtain the stitching weight and the offset.

3. The image stitching method according to claim 1, characterized in that: In the graph node model, each of the images to be spliced ​​is a node, the matching relationship between the multiple images to be spliced ​​is an edge connecting the nodes, and the splicing weight is the weight of the edge.

4. The image stitching method according to claim 3, characterized in that: The determining of the optimal global splicing order based on the maximum spanning tree includes: determining a basic splicing image among the plurality of images to be spliced, and determining the optimal global splicing order based on the maximum spanning tree structure with the basic splicing image as a central node.

5. The image stitching method according to claim 4, characterized in that: The maximum spanning tree structure is constructed by obtaining the splicing weights of multiple images to be spliced ​​and arranging the splicing weights in descending order to construct a variable list, traversing the variable list to determine the set distribution of vertices in each edge, and updating the initial maximum spanning tree set of edges based on the set distribution until an update condition is met.

6. The image stitching method according to claim 5, characterized in that: The update condition includes that the initial maximum spanning tree set contains all vertices of the images to be spliced, or all edges are traversed.

7. The image stitching method according to claim 5, characterized in that: The updating of the initial maximum spanning tree set based on the set distribution of the edges includes: determining whether the vertices in each edge in the traversal result belong to different sets, and when the vertices belong to different combinations, adding the corresponding edges to the initial maximum spanning tree aggregation and merging the sets where the vertices are located.

8. The image stitching method according to claim 4, characterized in that: The offset is updated based on the stitching weight to obtain an actual offset, and the to-be-stitched images are stitched based on the actual offset and the optimal global stitching order.

9. An image stitching device, characterized in that: The device comprises: A splicing parameter determination module, used to determine splicing parameters between images; the splicing parameters include offset and splicing weight; A splicing order determination module, used to construct a graph node model based on the splicing weights and image positions, and determine an optimal global splicing order based on a maximum spanning tree; The stitching module is used to perform stitching based on the optimal global stitching order and the stitching weights and offsets corresponding to the images to be stitched to obtain a target image.

10. A terminal device, characterized in that: include: A processor and a memory connected to the processor, wherein the memory stores instructions executed by the processor, and the instructions enable the processor to perform operations to perform the image stitching method according to any one of claims 1 to 8.

Citation Information

Cited By

  • Image splicing method and device, computer equipment and storage medium

    CN120997045A