A method and system for determining image control points

By determining the target control points of the image through edge detection algorithms and region segmentation, the problem of motion artifacts caused by unreasonable selection of image control points in existing technologies is solved, achieving efficient elimination of motion artifacts and obtaining clear vascular information.

CN115082343BActive Publication Date: 2026-01-23SHANGHAI UNITED IMAGING HEALTHCARE
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210737490.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-06-27
Publication Date
2026-01-23
Estimated Expiration
2042-06-27

AI Technical Summary

Technical Problem

Existing methods for selecting image control points are limited, resulting in poor motion artifact elimination, especially in digital subtraction angiography, where image alignment is inaccurate due to patient displacement.

Method used

Initial control points are extracted using an edge detection algorithm. Based on these initial control points, the image is divided into regions. The weight of each sub-region is determined, and the target control points are determined according to the weights and the initial control points. Pixel displacement is used to eliminate motion artifacts.

Benefits of technology

It effectively reduces computational load and resource consumption, retains sufficient image structural information, clearly and accurately eliminates motion artifacts, and obtains clear vascular information images.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115082343B_ABST
    Figure CN115082343B_ABST
Patent Text Reader

Abstract

The embodiment of the specification provides a method and system for determining an image control point, the method comprising: acquiring a first image, wherein the first image comprises a mask; determining initial control points of the first image; performing region division on the first image to obtain at least two sub-regions; determining a weight of each sub-region in the at least two sub-regions based on the initial control points; and determining target control points of each sub-region according to the weight and the initial control points.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This specification relates to the field of medical technology, and in particular to a method and system for determining image control points. Background Technology

[0002] In the current field of medical imaging, Digital Subtraction Angiography (DSA) is widely used because it can remove unwanted tissue images, retaining only vascular images. Typically, the acquired live image (containing vascular information) is subtracted from a mask image (lacking vascular information) to obtain the vascular information in the subtracted image. However, due to the patient's displacement between the mask and live images, motion artifacts exist in the subtracted image. To eliminate motion artifacts, pixel displacement methods can be used, which involve moving pixels in either the mask or live image to align corresponding points in the image. However, this method usually requires selecting control points on the image and performing pixel transformations based on these control points. Current methods for selecting control points are either simple uniform selection or simply gradient selection, which are limited in scope and the selected control points may not be optimal, resulting in poor performance.

[0003] Therefore, it is desirable to provide a method and system for determining image control points. Summary of the Invention

[0004] One embodiment of this specification provides a method for determining image control points. The method includes: acquiring a first image, the first image including a mask; determining initial control points of the first image; dividing the first image into regions to obtain at least two sub-regions; determining a weight for each sub-region in the at least two sub-regions based on the initial control points; and determining a target control point for each sub-region according to the weights and the initial control points.

[0005] In some embodiments, an edge detection algorithm may be used to extract the initial control points in the first image.

[0006] In some embodiments, the order of each sub-region can be determined based on the initial control point; and the weight of each sub-region can be determined based on the order.

[0007] In some embodiments, the sorting of each sub-region can be determined based on the gradient value of the initial control point in each sub-region and / or the number of initial control points in each sub-region.

[0008] In some embodiments, each sub-region may be divided into at least two blocks; the sorting of each sub-region is determined based on the maximum gradient value of each of the at least two blocks of each sub-region and / or the number of initial control points in each block.

[0009] In some embodiments, the sum of the maximum gradient values ​​of each block, the sum of the number of initial control points in each block, the maximum value of the maximum gradient values ​​of each block, and / or the maximum value of the number of initial control points in at least two blocks can be determined in each sub-region; the sorting of each sub-region is determined based on the sum of the maximum gradient values ​​of each block, the sum of the number of initial control points in each block, the maximum value of the maximum gradient values ​​of each block, and / or the maximum value of the number of initial control points in at least two blocks.

[0010] In some embodiments, the number of target control points in each sub-region can be determined based on the weight; the grayscale value of the initial control point in each sub-region, the gradient value of the initial control point, and / or the maximum gradient value of the initial control point in each block are thresholded to determine the target control points in each sub-region.

[0011] In some embodiments, the sub-regions that appear earlier in the sorting may be given a greater weight than the sub-regions that appear later in the sorting.

[0012] One embodiment of this specification provides an image control point determination system, including an image acquisition module, an initial control point determination module, a sub-region division module, a weight determination module, and a target control point determination module. The image acquisition module acquires a first image, which includes a mask. The initial control point determination module determines initial control points in the first image. The sub-region division module divides the first image into at least two sub-regions. The weight determination module determines the weight of each sub-region based on the initial control points. The target control point determination module determines the target control point of each sub-region according to the weights and the initial control points.

[0013] One embodiment of this specification provides an image control point determination device, including a processor, the processor being used to execute the image control point determination method.

[0014] One embodiment of this specification provides a computer-readable storage medium that stores computer instructions. When a computer reads the computer instructions from the storage medium, the computer executes the method for determining image control points.

[0015] In some embodiments of this specification, image regions are sorted and assigned different weights by utilizing various information such as the number of initial control points and / or gradient values. Target control points in the regions are then determined based on these weights, thereby reducing computational load and resource consumption. At the same time, sufficient image structural information is preserved, pixel displacement is well completed, and motion artifacts are effectively eliminated, resulting in clear and accurate vascular information images. Attached Figure Description

[0016] This specification will be further described by way of exemplary embodiments, which will be described in detail with reference to the accompanying drawings. These embodiments are not limiting; in these embodiments, the same reference numerals denote the same structures, wherein:

[0017] Figure 1 This is a schematic diagram illustrating an application scenario of an image control point determination system according to some embodiments of this specification;

[0018] Figure 2 This is a schematic diagram of an image control point determination system according to some embodiments of this specification;

[0019] Figure 3 This is an exemplary flowchart of a method for determining image control points according to some embodiments of this specification;

[0020] Figure 4 This is a schematic diagram of a method for determining image control points according to some embodiments of this specification;

[0021] Figure 5 This is a schematic diagram illustrating a method for determining image control points according to some embodiments of this specification. Detailed Implementation

[0022] To more clearly illustrate the technical solutions of the embodiments in this specification, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are merely some examples or embodiments of this specification. For those skilled in the art, these drawings can be applied to other similar scenarios without creative effort. Unless obvious from the context or otherwise specified, the same reference numerals in the drawings represent the same structures or operations.

[0023] It should be understood that the terms “system,” “device,” “unit,” and / or “module” used herein are one way to distinguish different components, elements, parts, sections, or assemblies at different levels. However, if other terms can achieve the same purpose, they may be replaced by other expressions.

[0024] As indicated in this specification and claims, unless the context clearly indicates otherwise, the words "a," "an," "an," and / or "the" do not specifically refer to the singular and may also include the plural. Generally speaking, the terms "comprising" and "including" only indicate the inclusion of expressly identified steps and elements, which do not constitute an exclusive list, and the method or apparatus may also include other steps or elements.

[0025] Flowcharts are used in this specification to illustrate the operations performed by the system according to embodiments of this specification. It should be understood that the preceding or following operations are not necessarily performed in exact order. Instead, the steps can be processed in reverse order or simultaneously. Furthermore, other operations can be added to these processes, or one or more steps can be removed from them.

[0026] In some application scenarios, the image control point determination system may include processing equipment and medical imaging equipment. The image control point determination system can use processing equipment and other means to implement the methods and / or processes disclosed in this specification to select control points in medical images, thereby removing motion artifacts in the images and obtaining clear and accurate patient vascular information.

[0027] Figure 1 This is a schematic diagram illustrating an application scenario of an image control point determination system according to some embodiments of this specification.

[0028] like Figure 1 As shown, in some embodiments, system 100 may include medical imaging equipment 110, processing equipment 120, storage device 130, terminal 140, and network 150.

[0029] Medical imaging device 110 refers to a medical device that uses different media to reproduce the internal structures of the human body as images. In some embodiments, medical imaging device 110 can be any medical device using X-ray imaging technology, such as digital subtraction angiography (DSA) equipment, computed radiography (CR) system, digital radiography (DR) system, etc. The medical imaging device 110 described above is for illustrative purposes only and is not intended to limit its scope. In some embodiments, medical imaging device 110 can acquire images (e.g., live films, masked films, etc.) of an object (e.g., a patient) and send them to processing device 120. In some embodiments, the images acquired by medical imaging device 110 can be stored in storage device 130. Medical imaging device 110 can receive instructions sent by a doctor through terminal 140 and perform related operations according to the instructions, such as irradiation imaging. In some embodiments, medical imaging device 110 can exchange data and / or information with other components in system 100 (e.g., processing device 120, storage device 130, terminal 140) through network 150. In some embodiments, the medical imaging device 110 may be directly connected to other components in the system 100. In some embodiments, one or more components in the system 100 (e.g., processing device 120, storage device 130) may be included within the medical imaging device 110.

[0030] Processing device 120 can process data and / or information obtained from other devices or system components, and execute the image control point determination method shown in some embodiments of this specification based on this data, information, and / or processing results to perform one or more functions described in some embodiments of this specification. For example, processing device 120 can obtain image control points based on an image of an object (e.g., a mask) acquired by medical imaging device 110. As another example, processing device 120 can obtain a vascular information image of the object by subtracting a live image from a mask based on the image control points. In some embodiments, processing device 120 can send data obtained during processing, such as control point gradient information, image block and / or partition information, region sorting results, etc., to storage device 130 for storage. In some embodiments, processing device 120 can retrieve pre-stored data and / or information from storage device 130, such as images of the object, processing algorithms, etc., to execute the image control point determination method shown in some embodiments of this specification, such as determining control points.

[0031] In some embodiments, the processing device 120 may include one or more sub-processing devices (e.g., a single-core processing device or a multi-core multi-chip processing device). By way of example only, the processing device 120 may include a central processing unit (CPU), an application-specific integrated circuit (ASIC), an application-specific instruction processor (ASIP), a graphics processing unit (GPU), a physical processor (PPU), a digital signal processor (DSP), a field-programmable gate array (FPGA), a programmable logic device (PLD), a controller, a microcontroller unit, a reduced instruction set computer (RISC), a microprocessor, or any combination thereof.

[0032] Storage device 130 can store data or information generated by other devices. In some embodiments, storage device 130 can store data and / or information acquired by medical imaging device 110, such as masking films, live films, etc. In some embodiments, storage device 130 can store data and / or information processed by processing device 120, such as control point information, vascular information images, etc. Storage device 130 may include one or more storage components, each of which may be a separate device or part of other devices. Storage devices may be local or implemented via the cloud.

[0033] Terminal 140 can control the operation of medical imaging equipment 110. Doctors can issue operating instructions to medical imaging equipment 110 through terminal 140 to enable it to perform specified operations, such as imaging a specified body part of the patient. In some embodiments, terminal 140 can instruct processing device 120 to execute image control point determination methods as shown in some embodiments of this specification. In some embodiments, terminal 140 can receive vascular information images of the patient from processing device 120, allowing doctors to obtain accurate vascular information for effective and targeted examination and / or treatment. In some embodiments, terminal 140 can be one or any combination of mobile device 140-1, tablet computer 140-2, laptop computer 140-3, desktop computer, or other devices with input and / or output functions.

[0034] Network 150 can connect the various components of the system and / or connect the system to external resources. Network 150 enables communication between the components and with other parts outside the system, facilitating the exchange of data and / or information. In some embodiments, one or more components in system 100 (e.g., medical imaging device 110, processing device 120, storage device 130, terminal 140) can send data and / or information to other components via network 150. In some embodiments, network 150 can be any one or more of a wired network or a wireless network.

[0035] It should be noted that the above description is provided for illustrative purposes only and is not intended to limit the scope of this specification. Various changes and modifications can be made by those skilled in the art based on the content of this specification. Features, structures, methods, and other features of the exemplary embodiments described herein can be combined in various ways to obtain other and / or alternative exemplary embodiments. For example, the processing device 120 may be based on a cloud computing platform, such as a public cloud, private cloud, community cloud, and hybrid cloud. However, these changes and modifications will not depart from the scope of this specification.

[0036] Figure 2 This is a schematic diagram of an image control point determination system according to some embodiments of this specification.

[0037] like Figure 2 As shown, in some embodiments, the image control point determination system 200 may include an image acquisition module 210, an initial control point determination module 220, a sub-region division module 230, a weight determination module 240, and a target control point determination module 250.

[0038] In some embodiments, the image acquisition module 210 can be used to acquire a first image, wherein the first image may include a mask, which refers to an image that does not contain vascular information, for example, an image containing only body tissue without contrast agent.

[0039] In some embodiments, the image acquisition module 210 can also be used to acquire a second image, wherein the second image may include a live film, which refers to an image containing vascular information, such as an image with contrast agent.

[0040] In some embodiments, the initial control point determination module 220 can be used to determine the initial control points of the first image.

[0041] In some embodiments, the initial control point determination module 220 may use an edge detection algorithm to extract initial control points in the first image.

[0042] In some embodiments, the sub-region division module 230 can be used to divide the first image into regions to obtain at least two sub-regions.

[0043] In some embodiments, the weight determination module 240 can be used to determine the weight of each sub-region in at least two sub-regions based on the initial control point.

[0044] In some embodiments, the weight determination module 240 may determine the order of each sub-region based on the initial control points.

[0045] In some embodiments, the weight determination module 240 may determine the sorting of each sub-region based on the gradient value of the initial control point in each sub-region and / or the number of initial control points in each sub-region, wherein the sorting refers to the sorting result obtained by sorting all sub-regions.

[0046] In some embodiments, the weight determination module 240 may divide each sub-region into at least two blocks; and determine the order of each sub-region based on the maximum gradient value of each block in the at least two blocks of each sub-region and / or the number of initial control points in each block.

[0047] In some embodiments, the weight determination module 240 may determine the sum of the maximum gradient values ​​of each block, the sum of the number of initial control points in each block, the maximum value of the maximum gradient values ​​of each block, and / or the maximum value of the number of initial control points in at least two blocks in each sub-region; and determine the sorting of each sub-region based on the sum of the maximum gradient values ​​of each block, the sum of the number of initial control points in each block, the maximum value of the maximum gradient values ​​of each block, and / or the maximum value of the number of initial control points in at least two blocks.

[0048] In some embodiments, the weight determination module 240 may determine the weight of each sub-region based on the sorting of each sub-region described above. The weight refers to the weight obtained on a sub-region basis.

[0049] In some embodiments, the weight determination module 240 may assign a greater weight to sub-regions that are earlier in the sorting of each sub-region than to sub-regions that are later in the sorting.

[0050] In some embodiments, the target control point determination module 250 can be used to determine the target control point for each sub-region based on the weights and the initial control point.

[0051] In some embodiments, the target control point determination module 250 may determine the number of target control points in each sub-region based on weights; and perform threshold filtering on the grayscale value of the initial control point in each sub-region, the gradient value of the initial control point, and / or the maximum gradient value of the initial control point in each block to determine the target control points in each sub-region.

[0052] In some embodiments, the system 200 may further include an image overlay module. Figure 2 (Not shown). The image overlay module can be used to obtain the corresponding control points in the second image based on the target control points of the first image; register the target control points of the first image and the corresponding control points of the second image; based on the registration, overlay the first image and the second image to obtain the target image, i.e., the vascular information image. The target image eliminates motion artifacts and can reflect clear and distinct vascular information of the object.

[0053] Figure 3 This is an exemplary flowchart of a method for determining image control points according to some embodiments of this specification.

[0054] like Figure 3 As shown, in some embodiments, process 300 may include the following steps. In some embodiments, process 300 may be executed by processing device 120.

[0055] Step 310: Acquire the first image. In some embodiments, step 310 may be performed by the image acquisition module 210.

[0056] The first image refers to an image that does not contain vascular information, such as an organ / tissue image without contrast agent. The second image refers to an image that contains vascular information, such as an organ / tissue image containing contrast agent, or an image containing vascular information acquired through other means.

[0057] In some embodiments, a first image and / or a second image of an object (e.g., a patient) can be acquired by scanning with medical imaging equipment (e.g., DSA, etc.). The first image can be a scanned image of a body region containing blood vessels, such as organs / tissues, obtained without contrast agents. The second image can be a scanned image of the same body region as the first image, obtained with contrast agents; that is, the object is scanned at the same location when the first and second images are acquired. In some embodiments, the first and / or second images can also be acquired from a storage device, etc. Between the acquisition of the first and second images, the object may be displaced due to spontaneous internal movement and possible external movement, resulting in motion artifacts (also known as motion structure artifacts). In some embodiments, motion artifacts can be eliminated and a vascular information image can be acquired by pixel-shifting the first and / or second images and then superimposing (i.e., subtracting) the shifted images.

[0058] Step 320: Determine the initial control points of the first image. In some embodiments, step 320 may be performed by the initial control point determination module 220.

[0059] Control points are points on a medical image that relate to the structural distribution of an object, such as organ / tissue boundary points, other points that can represent structural distribution, etc. In some embodiments, initial control points may include control points selected based on the structural distribution of a first image. In some embodiments, control points corresponding to the initial control points of the first image may be determined in a second image. In some embodiments, control points selected from the initial control points may be used to overlay the first and second images. In some embodiments, the initial control points of the first image may be determined using various methods, such as edge detection algorithms, random selection, etc.

[0060] In some embodiments, edge detection algorithms (e.g., gradient, Cannny operator, first-order differential edge operator, Roberts operator, etc.) can be used to extract structural information from the first image, wherein the structural information includes the contour information of organs / tissues, etc.; and initial control points of the first image are selected based on the structural information, for example, a large number of control points are randomly or equidistantly selected as initial control points at the contour boundaries / edges of organs / tissues, etc. In some embodiments, the number of initial control points can be greater than or equal to a threshold, for example, greater than or equal to 100, 200, 1000, etc.

[0061] Step 330: Divide the first image into regions to obtain at least two sub-regions. In some embodiments, step 330 may be performed by the sub-region division module 230.

[0062] In some embodiments, the first image can be divided into regions to obtain at least two sub-regions.

[0063] In some embodiments, the first image can be divided into regions according to a preset number of regions. For example, the number of regions is fixed at M*M, where M can be a natural number greater than 1, such as 4, 6, or 8.

[0064] In some embodiments, a sub-region may include two or more image blocks (referred to as blocks). In some embodiments, the shape of the blocks may be variable (e.g., square, rectangle, triangle, circle, irregular shape, etc.). In some embodiments, the blocks may be the same size.

[0065] In some embodiments, the first image can be divided into regions according to other rules, such as each region containing a preset number of pixels, each region containing a preset number of control points, etc.

[0066] In some embodiments, all sub-regions of the first image may be the same size or different; their shapes may be the same or different. In some embodiments, the shapes of the sub-regions of the first image may be various shapes, such as squares, rectangles, polygons, etc.

[0067] Step 340: Based on the initial control points, determine the weight of each sub-region in at least two sub-regions. In some embodiments, step 340 may be performed by the weight determination module 240.

[0068] In some embodiments, all sub-regions of the first image can be sorted according to the initial control points of the first image to determine the order of each sub-region, i.e., the sub-regions are sorted. For example, the first image includes four sub-regions: sub-region 1, sub-region 2, sub-region 3, and sub-region 4. After sorting the sub-regions, the sub-regions arranged in the order of priority can be: sub-region 2, sub-region 3, sub-region 1, and sub-region 4.

[0069] In some embodiments, the ranking of each sub-region can be determined based on relevant feature information of the sub-regions, such as the gradient values ​​of the initial control points of the sub-regions or the number of initial control points of the sub-regions. For more information on how to determine the ranking of each sub-region based on relevant feature information, please refer to [link to relevant documentation]. Figure 5 The relevant descriptions will not be repeated here.

[0070] In some embodiments, the weight of each sub-region can be determined based on the order of the sub-regions described above. For example, weights can be assigned from high to low according to the order of arrangement. Another example is that every two sub-regions can be grouped together according to the order of arrangement, with sub-regions in the same group having the same weight.

[0071] In some embodiments, the weight assigned to a sub-region can be the number of target control points contained in the sub-region. For example, if the weight assigned to sub-region 1 is 36, it means that sub-region 1 must include 36 target control points. In some embodiments, the sum of the weights of all sub-regions can be the number of target control points in the first image. For example, if the first image is assumed to contain 200 control points, then the sum of the weights assigned to all sub-regions in the first image is also 200.

[0072] In some embodiments, subregions that appear earlier in the order of sorting can be assigned greater weight than those that appear later. For example, if the subregions are arranged in the following order: subregion 2, subregion 3, subregion 1, and subregion 4, and the weights assigned to subregion 1, subregion 2, subregion 3, and subregion 4 are W1, W2, W3, and W4 respectively, then W2 > W3 > W1 > W4. In some embodiments, the weights of two adjacent subregions in the sorting can be equal, but the weights of all subregions cannot be equal. For example, W2 = W3, but W1, W2, W3, and W4 cannot all be equal.

[0073] In some embodiments, sorting and / or determining the weights of sub-regions of the first image can be performed by a machine learning model (e.g., Convolutional Neural Networks (CNN), Recurrent Neural Networks (RNN), etc.), wherein the input to the model can be the partitioned first image, and the output can be the sorting and / or weights of the individual sub-regions.

[0074] In some embodiments of this specification, sorting sub-regions in an image according to gradient values, the number of control points, etc., yields a more reasonable sorting result that can better reflect the characteristics of each region. By assigning weights to sub-regions based on their sorting results, the weights of sub-regions can better reflect their importance in patient image processing, and different sub-regions can be distinguished according to their importance.

[0075] Step 350: Determine the target control point for each sub-region based on the weights and the initial control point. In some embodiments, step 350 may be performed by the target control point determination module 250.

[0076] Target control points are control points on the first image used for image overlay of the first and second images. In some embodiments, target control points for each sub-region can be selected and determined from the initial control points of the first image based on the weight of each sub-region and the initial control points.

[0077] In some embodiments, the number of target control points for each sub-region can be determined based on the weight of each sub-region. Specifically, the number of target control points is assigned to each sub-region, and the number of target control points for the sub-region with a larger weight is greater than or equal to the number of target control points for the sub-region with a smaller weight. For example, if the weights of sub-region 1, sub-region 2, sub-region 3, and sub-region 4 are W1, W2, W3, and W4, respectively, and W2>W3>W1>W4, and the number of target control points for sub-region 1, sub-region 2, sub-region 3, and sub-region 4 are denoted as C1, C2, C3, and C4, then C2>=C3>=C1>=C4.

[0078] In some embodiments, the weight value of a sub-region can be greater than or equal to the number of target control points assigned to that sub-region. For example, if the weight of sub-region 1 is 36, then the number of target control points in sub-region 1 is less than or equal to 36.

[0079] In some embodiments, the total number of target control points in the first image can be determined based on the initial number of control points in the first image, and then the number of target control points in each sub-region can be allocated according to the proportion of the weight of each sub-region to the total weight of all sub-regions. In some embodiments, the proportion of target control points allocated to each sub-region to the total number of target control points in the first image can be equal to the proportion of the weight of that sub-region to the total weight of all sub-regions. For example, the initial total number of control points C in the first image is 1000, and the total weight W of all sub-regions is... all The sum of the weights of all sub-regions is 20. Sub-region 1 has a weight W1 of 4 (1 / 5 of the total weight), sub-region 2 has a weight W2 of 7 (7 / 20 of the total weight), sub-region 3 has a weight W3 of 6 (3 / 10 of the total weight), and sub-region 4 has a weight W4 of 3 (3 / 20 of the total weight). If the total number of target control points C in the first image is determined... all It is 1 / 10 of the initial total number of control points C, that is, C all If the target control points are 100, then the number of target control points C1 in sub-region 1 is 100*1 / 5=20, the number of target control points C2 in sub-region 2 is 100*7 / 20=35, the number of target control points C3 in sub-region 3 is 100*3 / 10=30, and the number of target control points C1 in sub-region 4 is 100*3 / 20=15.

[0080] In some embodiments, the number of target control points in each sub-region can be adjusted according to preset rules. The preset rules may include one or any combination of the following: each sub-region has at least one target control point (ensuring that each sub-region has a target control point), the number of target control points allocated in each sub-region is less than a threshold (preventing that a certain sub-region is allocated too many target control points), and the sum of the target control points in all sub-regions is less than or equal to a threshold (preventing that the total number of target control points in the image is too many).

[0081] In some embodiments, the feature values ​​in each sub-region can be filtered according to a threshold to determine the target control point of each sub-region. The feature values ​​of the sub-region may include one or any combination of the following: the gray value of the initial control point in the sub-region, the gradient value of the initial control point in the sub-region, the maximum gradient value of the initial control point in each block of the sub-region.

[0082] In some embodiments, blocks and / or initial control points in a sub-region can be sorted according to feature values ​​in the sub-region, and then target control points in each sub-region can be determined based on the sorting results and the number of target control points assigned to each sub-region.

[0083] In some embodiments, the feature values ​​in a sub-region can be the gradient values ​​of the initial control points in the sub-region. For each sub-region, all initial control points in the sub-region can be sorted based on their gradient values. Then, a gradient threshold is determined according to the proportion of the number of target control points allocated to the sub-region to the total number of initial control points in the sub-region. Initial control points whose gradient values ​​are within the gradient threshold range are determined as target control points of the sub-region, wherein the number of determined target control points is the same as the number of target control points allocated to the sub-region. For example, if the number of target control points C1 in sub-region 1 of the first image is 20, the gradient value of the 20th initial control point in sub-region 1, ranked from largest to smallest, can be determined as the gradient threshold. Then, initial control points in sub-region 1 whose gradient values ​​are greater than or equal to the gradient threshold are determined as target control points of sub-region 1, wherein the number of determined target control points is equal to 20.

[0084] In some embodiments, for each sub-region, at least one initial control point with a larger gradient value in the sub-region can be directly determined as a target control point, wherein the number of target control points is equal to the number of target control points allocated to the sub-region. For example, if the number of target control points C1 of sub-region 1 of the first image is 20, the initial control points in sub-region 1 can be sorted from largest to smallest according to their gradient values, and the top 20 initial control points can be determined as the target control points of sub-region 1.

[0085] In some embodiments, the feature value in a sub-region can be the maximum gradient value of the initial control points in each block of the sub-region. For each sub-region, each block can be sorted according to the maximum gradient value of the initial control points in the block. Then, a gradient threshold is determined based on the proportion of the number of target control points allocated to the sub-region to the total number of initial control points in the sub-region. Blocks with maximum gradient values ​​within the gradient threshold range are identified as the blocks containing target control points, and the initial control point with the largest gradient value in that block is identified as the target control point. For example, if the number of target control points C1 in sub-region 1 of the first image is 20, the maximum gradient value of the 20th block in sub-region 1, ranked from largest to smallest, can be determined as the gradient threshold. Then, blocks in sub-region 1 with maximum gradient values ​​greater than or equal to the gradient threshold are identified as the blocks containing target control points in sub-region 1, and the initial control point with the largest gradient value in these blocks is identified as the target control point.

[0086] In some embodiments, for each sub-region, at least one block with the largest maximum gradient value can be directly identified, and then the initial control point with the largest gradient value in each of these blocks can be taken as the target control point, wherein the number of target control points is equal to the number of target control points allocated to the sub-region. For example, if the number of target control points C1 of sub-region 1 of the first image is 20, the blocks in sub-region 1 can be sorted from largest to smallest according to their maximum gradient values, and the initial control point with the largest gradient value in each of the top 20 blocks can be taken as the target control point.

[0087] In some embodiments, after determining the target control points in the first image, control points in the second image corresponding to the target control points in the first image can be determined; the target control points in the first image and the corresponding control points in the second image are registered to obtain a registration result (e.g., the image position deviation between the target control points in the first image and the corresponding control points in the second image); the first image is pixel-shifted based on the registration result (i.e., the structure of the first image is aligned with the structure of the second image) to obtain the shifted first image; the shifted first image is superimposed on the second image (e.g., image subtraction) to obtain the target image (i.e., the blood vessel information image).

[0088] In some embodiments of this specification, target control points in sub-regions of an image are determined based on the weights of sub-regions, so that the number of target control points in each sub-region directly corresponds to the importance of that region. That is, the more important the region, the more target control points it has. This clearly highlights regions with obvious structural changes, and the selection of target control points is more reasonable and representative, which can better reflect the position and contour boundaries of the object's organs / tissues. This enables better and more effective pixel transformation and achieves the effect of eliminating motion artifacts.

[0089] Figure 4 This is a schematic diagram illustrating a method for determining image control points according to some embodiments of this specification.

[0090] In eliminating motion artifacts in DSA images, pixel displacement can be used; however, this method requires selecting control points on the image. In some embodiments of this specification, it can be achieved through... Figure 4 The method shown in process 400 determines control points on the mask image. In some embodiments, process 400 may be executed by processing device 120.

[0091] In some embodiments, a first image, namely a mask 410, can be acquired, and initial control points 420 in the mask 410 can be extracted using an edge detection algorithm (e.g., gradient, Cannny operator, first-order differential edge operator, Roberts operator, etc.).

[0092] In some embodiments, the number of initial control points 430 and the gradient value of initial control points 440 can be obtained based on the initial control point 420. The number of initial control points 430 may include the total number of initial control points in the mask 410, and the gradient value of initial control points 440 may include the gradient value of each initial control point in the mask 410.

[0093] In some embodiments, the mask 410 can be divided into blocks to obtain image blocks 450, wherein the image blocks 450 include multiple blocks. In some embodiments, the number of blocks can be determined according to a preset number of target control points. For example, if the preset number of target control points for the mask 410 is 40, then the mask 410 can be divided into 40 blocks. In some embodiments, the number of blocks can be an integer multiple of N*N (N is a natural number greater than 1). For example, the mask 410 can be divided into 12*12 or 16*16 blocks.

[0094] In some embodiments, the mask 410 can be divided into regions to obtain sub-regions 460, wherein each sub-region 460 may include multiple sub-regions, and each sub-region may be divided into multiple blocks. In some embodiments, the number of sub-regions of the mask 410 can be M*M (M is a natural number greater than 1, and N>M), and each sub-region contains (N / M)*(N / M) blocks. For example, if the mask 410 contains 12*12 blocks and 4*4 sub-regions, then each sub-region contains 3*3 blocks.

[0095] In some embodiments, such as Figure 4 As shown, the mask 410 can be divided into blocks to obtain image blocks 450, and then sub-regions can be divided according to the image blocks 450 to obtain sub-regions 460.

[0096] In some embodiments, the mask 410 can be divided into sub-regions 460, and then the sub-regions 460 can be divided into blocks, wherein the number of blocks in the sub-regions 460 can be determined according to the size of the sub-regions 460. In some embodiments, the size of the blocks can be predetermined, and then the number of blocks in the sub-regions can be determined according to the size of the sub-regions.

[0097] In some embodiments, the weights 470 of the sub-regions of the sub-region 460 can be obtained based on the initial control point 420.

[0098] In some embodiments, the sub-regions 460 can be sorted according to the number of initial control points 430 and / or the gradient value of the initial control points 440, and the weights 470 of the sub-regions can be determined according to the sorting results, wherein the weight of the sub-regions that are earlier in the sorting can be greater than or equal to the weight of the sub-regions that are later in the sorting.

[0099] In some embodiments, all subregions can be sorted based on relevant feature information of each subregion (e.g., the sum of the maximum gradient values ​​of each block, the sum of the number of initial control points in each block of each subregion, the maximum value of the maximum gradient values ​​of each block of each subregion, the maximum value of the number of initial control points in the blocks contained in each subregion, etc., or any combination thereof), and then the weight of each subregion can be determined according to the sorting order of the subregions.

[0100] As an example only, suppose mask 410 contains 12*12 blocks and 4*4 sub-regions. Each sub-region contains 3*3 blocks. These regions are denoted as sub-region 1, sub-region 2, sub-region 3, ..., sub-region 15, sub-region 16. The sum of the maximum gradient values ​​of each block in each sub-region is denoted as T1, T2, T3, ..., T... 15 T 16 The sum of the number of initial control points in each block of these sub-regions is denoted as D1, D2, D3, ..., D... 15 D 16 If sorted according to the sum of the maximum gradient values ​​of each block in each sub-region, the sorting result is [T1 T2 T3……T 15 T 16 If the weight allocation of all sub-regions is [9 9 8 8 7 7 6 6 6 6 5 5 4 4 3 3], then the weight allocation of all sub-regions can be [9 9 8 8 7 7 6 6 6 6 5 5 4 4 3 3]. If the weights are sorted according to the sum of the number of initial control points in each block of each sub-region, the sorting result is [T2 T3 T1……T]. 15 T 14 If ], then the weight allocation result for all sub-regions can be [8 9 9 8 7 7 6 6 6 6 5 5 4 3 3 4].

[0101] For more information on how to determine sub-region weights based on the number of initial control points and / or the gradient values ​​of the initial control points, please refer to [link to relevant documentation]. Figure 5 The relevant descriptions will not be repeated here.

[0102] In some embodiments, the number of target control points 480 in a sub-region can be determined based on the obtained sub-region weights 470. Then, based on the number of target control points 480 in the sub-region, a threshold filtering is performed on the grayscale value of the initial control points in each sub-region, the gradient value of the initial control points, and / or the maximum gradient value of the initial control points in each block to determine the target control points 490 for each sub-region. By filtering the initial control points based on the number of control points or the gradient magnitude, the final number of control points is significantly reduced compared to the initial number of candidate points, but it can still reflect the structure in the image well. For more information on how to determine the target control points of each sub-region based on the number of target control points in the sub-region, please refer to [link to relevant documentation]. Figure 3 The relevant description of step 350 will not be repeated here.

[0103] In some embodiments, after determining the target control point 490 of the mask 410, control points on the live film (i.e., the second image) corresponding to the target control point 490 can be determined based on the target control point 490; the mask 410 is pixel-shifted according to the target control point 490 and the corresponding control points on the live film, so that the same structures in the mask 410 and the live film can be aligned; by subtracting the mask 410 from the live film, a vascular information image is obtained, thereby eliminating motion artifacts.

[0104] As an example only, in block matching, the control points on the live piece can be determined based on the control points on the mask by the following steps: On the mask, obtain a block C centered on control point M, and then determine a block D on the live piece that corresponds to block C on the mask (e.g., a block of the same size and shape); move block D on the live piece with a preset step size and a preset search method. Each time it moves, recalculate the similarity between block C and block D. When the similarity reaches its maximum, the position of block D is the position of the block that matches block C. At this time, the position of the center N of block D is the position of the live piece control point corresponding to the control point M of the mask.

[0105] Figure 5 This is a schematic diagram illustrating a method for determining image control points according to some embodiments of this specification.

[0106] In some embodiments, the order of each sub-region in the first image can be determined based on initial control points of the first image, and then the weight of each sub-region in all sub-regions of the first image can be determined based on the order result. Figure 5 As shown in the flowchart 500, the initial control point 510 represents all the initial control points in the first image. Based on the initial control point 510 in the first image, the weight 580 of any sub-region 520 in the first image can be determined by sorting all the sub-regions in the first image.

[0107] In some embodiments, the sorting of each sub-region can be determined based on the gradient values ​​of the initial control points in each sub-region of the first image and / or the number of initial control points in each sub-region.

[0108] In some embodiments, the number of initial control points and the gradient value of the initial control points can be obtained based on the initial control point 510.

[0109] In some embodiments, each sub-region may be divided into at least two blocks. For more information on how to divide sub-regions into blocks, please refer to [link to relevant documentation]. Figure 4 The relevant content will not be repeated here.

[0110] In some embodiments, the number of initial control points in each block can be obtained based on the number of initial control points and the block division result. Specifically, all initial control points contained in a block can be obtained based on the block division result, and the total number of these initial control points is the number of initial control points in that block.

[0111] In some implementations, the order of each subregion can be determined based on the maximum gradient value of each of at least two blocks in each subregion and / or the number of initial control points in each block.

[0112] In some embodiments, at least one feature-related information can be determined for each sub-region. This feature-related information may include the sum of the maximum gradient values ​​of each block in the sub-region, the sum of the number of initial control points in each block of the sub-region, the maximum value of the maximum gradient values ​​of each block in the sub-region, and / or the maximum value of the number of initial control points in all blocks contained in the sub-region. Figure 5 As shown, the number of initial control points in the block can be determined based on the number of initial control points in the block, and the maximum number of initial control points in the block can be determined based on the number of initial control points in the block, and the maximum number of initial control points in the block can be determined based on the maximum gradient value of the block, and the maximum value of the maximum gradient value of ..., and the maximum value of the maximum gradient value of the block, and the maximum value of the maximum gradient value of the block, and the maximum value of the maximum gradient value of the block, and the maximum value of the maximum gradient value of the block, and the maximum value of the maximum gradient value of the block, and the maximum value of the

[0113] In some embodiments, feature-related information may further include the maximum value of the average gradient of the initial control points of each block in the sub-region, the average value of the maximum gradient of the initial control points of each block in the sub-region, the average gradient of the initial control points in the sub-region, and the average number of initial control points in each block in the sub-region. The maximum value of the average gradient of the initial control points of each block in the sub-region can be obtained by averaging the gradient values ​​of all initial control points in each block of the sub-region, and determining the maximum value among the averages of all blocks as the maximum value of the average gradient of the initial control points of each block in the sub-region. The average value of the maximum gradient of the initial control points of each block in the sub-region can be obtained by obtaining the maximum gradient of the initial control points of each block in the sub-region, averaging these maximum gradients, and determining this average value as the average value of the maximum gradient of the initial control points of each block in the sub-region. The average gradient of the initial control points in the sub-region can be obtained by averaging the gradient values ​​of all initial control points in the sub-region, and determining this average value as the average gradient of the initial control points in the sub-region. The average number of initial control points for each block in a sub-region can be obtained by taking the number of initial control points for each block in the sub-region, averaging all these numbers, and using this average as the mean number of initial control points for each block in the sub-region.

[0114] In some embodiments, the maximum gradient value of each block can be obtained based on the initial control point gradient values ​​and the block segmentation results. The maximum gradient value of a block refers to the maximum value of the gradient values ​​of all initial control points in the block. For example... Figure 5 As shown, the gradient values ​​of all initial control points in a block can be obtained based on the gradient values ​​of the initial control points. Then, the maximum value among these gradient values ​​is determined as the maximum gradient value of the block, which is 550. For example, for block A, which includes 20 initial control points, the maximum gradient value among these 20 initial control points is 36. Therefore, the maximum gradient value of block A is 36.

[0115] In some embodiments, the sum of the number of initial control points in each block can be determined based on the region division result of the first image. The sum of the number of initial control points in the blocks contained in the sub-region refers to the total number of initial control points in all blocks in the sub-region, that is, the total number of all initial control points contained in the sub-region. Specifically, all initial control points contained in a certain sub-region can be obtained based on the region division result, and then the number of these initial control points can be counted and determined as the sum of the number of initial control points in the blocks contained in the sub-region. For example, the sum of the number of initial control points in the blocks is 530.

[0116] In some embodiments, the maximum number of initial control points in the blocks contained in each sub-region can be determined based on the region division result of the first image. The maximum number of initial control points in the blocks contained in the sub-region refers to the maximum number of initial control points among all blocks in the sub-region. Specifically, all blocks contained in a sub-region can be obtained based on the region division result and the block division result. Then, the number of initial control points in each of these blocks can be obtained based on the number of initial control points. Among all the obtained initial control point numbers of blocks, the maximum value is determined as the maximum number of initial control points in the blocks contained in the sub-region. For example, the maximum number of initial control points in a block is 540.

[0117] In some embodiments, the maximum value of the maximum gradient value of each block in each sub-region (i.e., the maximum gradient value of each sub-region) can be obtained based on the region segmentation result of the first image. The maximum value of the maximum gradient value of each block in a sub-region refers to the maximum value among the maximum gradient values ​​of all blocks in that sub-region. Specifically, the maximum gradient value of all blocks in a certain sub-region can be obtained based on the region segmentation result and the block division result (e.g., the maximum gradient value of a block is 550). Then, the maximum value among the maximum gradient values ​​of these blocks is determined as the maximum value of the maximum gradient value of each block in that sub-region. For example, the maximum value of the maximum gradient value of a block is 570. As an example only, for sub-region 1, which contains four blocks: block 1, block 2, block 3, and block 4, the maximum gradient values ​​of these blocks are 36, 38, 23, and 45 respectively, with a maximum value of 45. Therefore, the maximum value of the maximum gradient value of each block in sub-region 1 is 45.

[0118] In some embodiments, the sum of the maximum gradient values ​​of each block in each sub-region can be obtained based on the region partitioning results. The sum of the maximum gradient values ​​of each block in a sub-region refers to the sum of the maximum gradient values ​​of all blocks in that sub-region. Specifically, the maximum gradient values ​​of all blocks in a certain sub-region can be obtained based on the region partitioning results and the block division results (e.g., the maximum gradient value of a block is 550). Then, the sum of the maximum gradient values ​​of these blocks is taken as the sum of the maximum gradient values ​​of all blocks in that sub-region. For example, the sum of the maximum gradient values ​​of the blocks is 560. As an example only, for sub-region 1, which contains four blocks: block 1, block 2, block 3, and block 4, the maximum gradient values ​​of these blocks are 36, 38, 23, and 45, respectively. Then, the sum of the maximum gradient values ​​of each block in sub-region 1 is 36 + 38 + 23 + 45 = 142.

[0119] In some embodiments, the sorting of each sub-region of the first image can be determined based on at least one feature-related information of each sub-region of the first image determined in the above steps. The sorting of each sub-region of the first image refers to the sorting result obtained by sorting all sub-regions of the first image on a unit basis. In some embodiments, all sub-regions of the first image can be sorted according to the numerical values ​​of the feature-related information of each sub-region of the first image. For example, the sub-regions can be sorted from largest to smallest according to the sum of the maximum gradient values ​​of each block, the sum of the number of initial control points in each block, the maximum value of the maximum gradient values ​​of each block, and the maximum value of the number of initial control points in all blocks. That is, the sub-regions with larger values ​​are sorted first, and the sub-regions with smaller values ​​are sorted last.

[0120] In some embodiments, the ranking of each sub-region of the first image can be determined based on a combination of multiple feature-related information of each sub-region. For example, each feature-related information of each sub-region can be assigned a corresponding weight, and the sum of the weights of these feature-related information can be used as the basis for ranking the sub-region.

[0121] In some embodiments of this specification, multiple feature information values ​​of a sub-region are obtained based on the number and gradient of initial control points in the sub-region of the image. The sub-regions are then sorted based on these feature information values. This sorting result can comprehensively and accurately reflect the distribution and characteristics of the initial control points in each region of the image from multiple perspectives. Furthermore, the sorting result is more reasonable and can extract more important regions in the image.

[0122] It should be noted that the above descriptions of processes 300, 400, and 500 are for illustrative purposes only and do not limit the scope of this specification. Those skilled in the art can make various modifications and changes to processes 300, 400, and 500 under the guidance of this specification. However, these modifications and changes remain within the scope of this specification. For example, the order of the blocks and regions in process 400 can be interchanged.

[0123] The beneficial effects that the embodiments of this specification may bring include, but are not limited to: (1) extracting structural information from the image by using an edge extraction algorithm, and obtaining initial control points based on the extracted structural information, so that the number of initial control points is sufficient to comprehensively reflect the structural information in the image; (2) sorting the image regions and assigning different weights using the number of initial control points and / or gradient values, so as to reflect the importance of different regions in the image and extract the important regions in the image; (3) determining the target control points in the region based on the region weight, so that important regions can get more control points in the final determined target control points, so as to accurately control the number of target control points, so that the number of target control points is not too large, thereby reducing the amount of computation and reducing resource consumption, while retaining as much structural information of the image as possible in the limited computation space, so as to complete the pixel displacement well, and finally achieve the effect of effectively eliminating motion artifacts and obtaining a clear and accurate blood vessel information image. It should be noted that the beneficial effects that may be produced by different embodiments are different. In different embodiments, the beneficial effects that may be produced can be any one or a combination of the above, or any other possible beneficial effects.

[0124] The basic concepts have been described above. Obviously, for those skilled in the art, the detailed disclosure above is merely illustrative and does not constitute a limitation of this specification. Although not explicitly stated herein, those skilled in the art may make various modifications, improvements, and corrections to this specification. Such modifications, improvements, and corrections are suggested in this specification and therefore remain within the spirit and scope of the exemplary embodiments described herein.

[0125] Furthermore, this specification uses specific terms to describe embodiments thereof. For example, "an embodiment," "one embodiment," and / or "some embodiments" refer to a particular feature, structure, or characteristic associated with at least one embodiment of this specification. Therefore, it should be emphasized and noted that references to "an embodiment," "one embodiment," or "an alternative embodiment" in different locations throughout this specification do not necessarily refer to the same embodiment. Moreover, certain features, structures, or characteristics in one or more embodiments of this specification can be appropriately combined.

[0126] Furthermore, unless expressly stated in the claims, the order of processing elements and sequences, the use of numbers and letters, or other names described in this specification are not intended to limit the order of the processes and methods described herein. Although various examples have been discussed in the foregoing disclosure of some embodiments of the invention that are currently considered useful, it should be understood that such details are for illustrative purposes only, and the appended claims are not limited to the disclosed embodiments; rather, the claims are intended to cover all modifications and equivalent combinations that conform to the spirit and scope of the embodiments described herein. For example, while the system components described above can be implemented using hardware devices, they can also be implemented solely using software solutions, such as installing the described system on existing servers or mobile devices.

[0127] Similarly, it should be noted that, in order to simplify the description disclosed herein and thus aid in the understanding of one or more embodiments of the invention, the foregoing description of embodiments in this specification may sometimes combine multiple features into a single embodiment, drawing, or description thereof. However, this method of disclosure does not imply that the subject matter of this specification requires more features than those mentioned in the claims. In fact, the embodiments contain fewer features than all the features of a single embodiment disclosed above.

[0128] In some embodiments, numbers describing the quantity of components and attributes are used. It should be understood that such numbers used in the description of embodiments are modified in some examples with the terms "approximately," "approximately," or "generally." Unless otherwise stated, "approximately," "approximately," or "generally" indicates that the numbers are allowed to vary by ±20%. Accordingly, in some embodiments, the numerical parameters used in the specification and claims are approximate values, which may be changed depending on the characteristics required by individual embodiments. In some embodiments, numerical parameters should take into account specified significant digits and employ a general method of digit reservation. Although the numerical ranges and parameters used to confirm their breadth of range in some embodiments of this specification are approximate values, in specific embodiments, such values ​​are set as precisely as feasible.

[0129] For each patent, patent application, patent application publication, and other material, such as articles, books, specifications, publications, and documents, referenced in this specification, the entire contents of which are incorporated herein by reference. This excludes historical application documents that are inconsistent with or conflict with the content of this specification, as well as documents that limit the broadest scope of the claims in this specification (currently or subsequently appended to this specification). It should be noted that in the event of any inconsistency or conflict between the descriptions, definitions, and / or terminology used in the supplementary materials to this specification and the content of this specification, the descriptions, definitions, and / or terminology used in this specification shall prevail.

[0130] Finally, it should be understood that the embodiments described in this specification are merely illustrative of the principles of the embodiments described herein. Other variations may also fall within the scope of this specification. Therefore, alternative configurations of the embodiments described herein are intended to be illustrative rather than limiting, and should be considered consistent with the teachings of this specification. Accordingly, the embodiments described herein are not limited to those explicitly introduced and described herein.

Claims

1. A method for determining image control points, comprising: Acquire a first image, the first image including a mask; Determine the initial control points of the first image; The first image is divided into regions to obtain at least two sub-regions; Based on the initial control point, the weight of each sub-region in the at least two sub-regions is determined, including: The sorting of each sub-region is determined based on the gradient value of the initial control point in each sub-region and / or the number of initial control points in each sub-region; Based on the sorting, the weight of each sub-region is determined; Based on the weights and the initial control points, target control points for each sub-region are selected and determined from the initial control points of the first image. The number of target control points for each sub-region is determined according to the weights of the sub-regions.

2. The method of claim 1, wherein determining the initial control points of the first image comprises: The initial control points in the first image are extracted using an edge detection algorithm.

3. The method of claim 1, wherein determining the sorting of each sub-region based on the gradient value of the initial control point in each sub-region and / or the number of initial control points in each sub-region comprises: Each sub-region is divided into at least two blocks; The sorting of each sub-region is determined based on the maximum gradient value of each of the at least two blocks in each sub-region and / or the number of initial control points in each block.

4. The method of claim 3, wherein determining the sorting of each sub-region based on the maximum gradient value of each of the at least two blocks of each sub-region and / or the number of initial control points in each block comprises: In each subregion, determine the sum of the maximum gradient values ​​of each block, the sum of the number of initial control points in each block, the maximum value of the maximum gradient values ​​of each block, and / or the maximum value of the number of initial control points in at least two blocks; The sorting of each sub-region is determined based on the sum of the maximum gradient values ​​of each block, the sum of the number of initial control points in each block, the maximum value of the maximum gradient values ​​of each block, and / or the maximum value of the number of initial control points in at least two blocks.

5. The method of claim 3, wherein filtering and determining target control points for each sub-region from the initial control points of the first image based on the weights and the initial control points comprises: The target control point of each sub-region is determined by thresholding the gray value of the initial control point in each sub-region, the gradient value of the initial control point, and / or the maximum gradient value of the initial control point in each block.

6. The method of claim 1, wherein determining the weight of each sub-region based on the sorting comprises: The sub-regions that appear earlier in the sorting are assigned a greater weight than the sub-regions that appear later.

7. A system for determining image control points, comprising an image acquisition module, an initial control point determination module, a sub-region division module, a weight determination module, and a target control point determination module; The image acquisition module is used to acquire a first image, the first image including a mask; The initial control point determination module is used to determine the initial control points of the first image; The sub-region division module is used to divide the first image into regions to obtain at least two sub-regions; The weight determination module is used to determine the weight of each sub-region in the at least two sub-regions based on the initial control point, including: The sorting of each sub-region is determined based on the gradient value of the initial control point in each sub-region and / or the number of initial control points in each sub-region; Based on the sorting, the weight of each sub-region is determined; The target control point determination module is used to filter and determine the target control points of each sub-region from the initial control points of the first image according to the weights and the initial control points. The number of target control points in each sub-region is determined according to the weights of the sub-regions.

8. The system of claim 7, wherein determining the sorting of each sub-region based on the gradient value of the initial control point in each sub-region and / or the number of initial control points in each sub-region comprises: Each sub-region is divided into at least two blocks; The sorting of each sub-region is determined based on the maximum gradient value of each of the at least two blocks in each sub-region and / or the number of initial control points in each block.

9. The system of claim 7, wherein determining the weight of each sub-region based on the sorting comprises: The sub-regions that appear earlier in the sorting are assigned a greater weight than the sub-regions that appear later.

10. A computer-readable storage medium storing computer instructions, wherein when a computer reads the computer instructions in the storage medium, the computer executes the method for determining image control points as described in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Digital image registration method, digital image registration device, digital subtraction image rectification method and digital subtraction image rectification equipment

    CN103295200A

  • Image segmentation method and system

    CN107220965A