A method and system for correcting scan data
By acquiring motion vector fields and generating data deviations at multiple motion time points, the scanning data is corrected, solving the problem of scanning data deviation caused by the motion of the target object and improving the quality of medical images.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-06-30
- Publication Date
- 2026-03-06
AI Technical Summary
In existing medical imaging technologies, conventional artifact correction methods cannot effectively remove the deviations in scan data caused by the motion of the target object.
By acquiring the motion vector field and motion reconstruction image of the target object at multiple motion time points, the image motion deviation and raw data deviation are calculated, and these deviations are used to correct the scanned data to obtain the corrected data.
It effectively removes motion artifacts from scanned data, improving the quality and accuracy of medical images.
Smart Images

Figure CN115564794B_ABST
Abstract
Description
Technical Field
[0001] This specification relates to the field of medical technology, and in particular to a method and system for correcting scan data. Background Technology
[0002] With the development of medical imaging technology, reducing motion artifacts has become increasingly important in medical image processing. However, conventional artifact correction methods do not fundamentally eliminate the biases caused by the motion of the target object in the scan data. Therefore, it is desirable to provide a method and system for correcting scan data. Summary of the Invention
[0003] One aspect of this specification provides a method and system for correcting scan data. The method includes: acquiring multiple motion vector fields corresponding to multiple motion time points of a target object based on reference time points; acquiring image motion deviations corresponding to each motion time point based on the motion vector fields corresponding to each motion time point and the motion reconstructed images corresponding to each motion time point; acquiring raw data deviations corresponding to each motion time point based on each image motion deviation; and correcting the multiple scan data based on at least one raw data deviation corresponding to the motion time point to acquire multiple corrected data.
[0004] Another aspect of this specification provides a method for image reconstruction based on calibrated scan data. The method includes: acquiring multiple motion vector fields corresponding to multiple motion time points of a target object based on reference time points; acquiring image motion deviation corresponding to each motion time point based on the motion vector field corresponding to each motion time point and the motion reconstruction image corresponding to each motion time point; acquiring raw data deviation corresponding to each motion time point based on each image motion deviation; calibrating the multiple scan data based on at least one of the raw data deviations corresponding to the motion time points to acquire multiple calibrated data; and acquiring a calibrated reconstructed image based on the multiple calibrated data.
[0005] Another aspect of this specification provides a system for correcting scan data, the system comprising: a motion vector field acquisition module, configured to acquire multiple motion vector fields corresponding to multiple motion time points of a target object based on a reference time point; an image motion deviation acquisition module, configured to acquire an image motion deviation corresponding to each motion time point based on the motion vector field corresponding to each motion time point and the motion reconstructed image corresponding to each motion time point; a raw data deviation acquisition module, configured to acquire a raw data deviation corresponding to each motion time point based on each image motion deviation; and a correction data acquisition module, configured to correct the multiple scan data based on the raw data deviation corresponding to at least one of the motion time points, and acquire multiple correction data. Attached Figure Description
[0006] 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:
[0007] Figure 1 These are schematic diagrams illustrating application scenarios of a calibration scan data system according to some embodiments of this specification;
[0008] Figure 2 These are exemplary block diagrams of a processor shown according to some embodiments of this specification;
[0009] Figure 3 This is an exemplary flowchart of a method for correcting scan data according to some embodiments of this specification;
[0010] Figure 4 This is an exemplary flowchart illustrating, based on some embodiments of this specification, how to obtain multiple motion vector fields of a target object at multiple motion time points, according to a reference time point;
[0011] Figure 5 This is an exemplary flowchart illustrating a method for obtaining correction data based on raw data deviation, according to some embodiments of this specification;
[0012] Figure 6 This is a schematic diagram illustrating a method for correcting scan data according to some embodiments of this specification;
[0013] Figure 7 This is a schematic diagram illustrating the acquisition of scanning data at different time points by a scanning device according to some embodiments of this specification;
[0014] Figure 8 This is a schematic diagram illustrating different displacements of different spatial points on the target object during the scanning process, according to some embodiments of this specification. Detailed Implementation
[0015] 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.
[0016] It should be understood that the terms "system," "device," "unit," and / or "module" as used in this specification are a method of distinguishing 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.
[0017] 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.
[0018] 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.
[0019] Figure 1 This is a schematic diagram illustrating an application scenario of a calibration scan data system according to some embodiments of this specification.
[0020] Imaging system 100 can correct scan data by implementing the methods and / or processes disclosed in this specification, thereby removing motion artifacts.
[0021] like Figure 1 As shown, the imaging system 100 may include: a scanning device 110, a processing device 120, a terminal device 130, a network 140, and a storage device 150.
[0022] The components of the imaging system 100 can be connected in one or more various ways. For example only, such as... Figure 1 As shown, scanning device 110 can be connected to processing device 120 via network 140. Alternatively, scanning device 110 can be directly connected to processing device 120 (as indicated by the dashed double-headed arrow connecting scanning device 110 and processing device 120). As a further example, storage device 150 can be connected to processing device 120 directly or via network 140. As a further example, terminal device 130 can be directly (as indicated by the dashed double-headed arrow connecting terminal device 130 and processing device 120) and / or via network 140 to processing device 120.
[0023] Scanning device 110 can acquire scan data. Scanning device 110 can scan a target object or a portion thereof and generate scan data relating to the target object or a portion thereof. In some embodiments, scanning device 110 may include a single-modality imaging device. For example, scanning device 110 may include digital subtraction angiography (DSA), positron emission tomography (PET) equipment, single-photon emission computed tomography (SPECT) equipment, magnetic resonance imaging (MRI) equipment (also known as MR scanners), computed tomography (CT) equipment, ultrasound scanners, digital radiography (DR) scanners, etc., or any combination thereof. In some embodiments, scanning device 110 may include a multimodal imaging device. Exemplary multimodal imaging devices may include PET-CT equipment, PET-MR equipment, etc., or combinations thereof. For illustrative purposes, this application is described in conjunction with CT equipment.
[0024] Processing device 120 can process data and / or information obtained from scanning device 110, terminal device 130, and / or storage device 150. For example, processing device 120 can acquire scan data generated by scanning device 110. Processing device 120 can acquire reference reconstructed images and multiple motion reconstructed images based on scan data at reference time points and motion time points, and acquire multiple motion vector fields based on the reference reconstructed images and multiple motion reconstructed images. Further, processing device 120 can acquire raw data deviations at multiple motion time points based on multiple motion vector fields and multiple motion reconstructed images, and correct all scan data based on the raw data deviations at multiple motion time points. In some embodiments, processing device 120 may include a central processing unit (CPU), digital signal processor (DSP), system-on-a-chip (SoC), microcontroller unit (MCU), and / or any combination thereof. In some embodiments, processing device 120 may include a computer, user console, a single server, or a group of servers, etc. The server group may be centralized or distributed. In some embodiments, processing device 120 may be local or remote. For example, processing device 120 can access information and / or data stored in scanning device 110, terminal device 130, and / or storage device 150 via network 140. Alternatively, processing device 120 can directly connect to scanning device 110, terminal device 130, and / or storage device 150 to access stored information and / or data. In some embodiments, processing device 120 can be implemented on a cloud platform. By way of example only, cloud platforms can include private clouds, public clouds, hybrid clouds, community clouds, distributed clouds, inter-cloud, multi-cloud, etc., or any combination thereof. In some embodiments, processing device 120 or a portion thereof can be integrated into scanning device 110.
[0025] Terminal device 130 may include mobile device 131, tablet computer 132, laptop computer 133, etc., or any combination thereof. In some embodiments, mobile device 131 may include smart home devices, wearable devices, mobile devices, virtual reality devices, augmented reality devices, etc., or any combination thereof. In some embodiments, smart home devices may include smart lighting devices, smart appliance control devices, smart monitoring devices, smart TVs, smart cameras, walkie-talkies, etc., or any combination thereof. In some embodiments, wearable devices include wristbands, shoes and socks, glasses, helmets, watches, clothing, backpacks, smart accessories, etc., or any combination thereof. In some embodiments, mobile devices may include mobile phones, personal digital assistants (PDAs), gaming devices, navigation devices, point-of-sale (POS) devices, desktop computers, etc., or any combination thereof. In some embodiments, virtual reality devices and / or augmented reality devices include virtual reality helmets, virtual reality glasses, virtual reality goggles, augmented reality helmets, augmented reality glasses, augmented reality goggles, etc., or any combination thereof. For example, virtual reality devices and / or augmented reality devices may include Google Glass™, Oculus Rift™, HoloLens™, Gear VR™, etc. In some embodiments, terminal device 130 may be part of processing device 120.
[0026] Network 140 may include any suitable network that facilitates the exchange of information and / or data between imaging system 100. In some embodiments, one or more components of imaging system 100 (e.g., scanning device 110, processing device 120, storage device 150, terminal device 130) may communicate information and / or data with one or more other components of imaging system 100 via network 140. For example, processing device 120 may obtain data from scanning device 110 via network 140. As another example, terminal device 130 may receive optimized scan data from processing device 120 via network 140. In some embodiments, one or more components of imaging system 100 (e.g., scanning device 110, processing device 120, storage device 150, terminal device 130) may communicate information and / or data with one or more external resources (e.g., external databases of third parties). For example, processing device 120 may obtain structural registration models from an external database provided and / or updated by a supplier or manufacturer of structural registration models (e.g., the manufacturer of scanning device 110). Network 140 may be and / or include public networks (e.g., the Internet), private networks (e.g., local area networks (LANs), wide area networks (WANs)), wired networks (e.g., Ethernet networks), wireless networks (e.g., 802.11 networks, Wi-Fi networks), cellular networks (e.g., Long Term Evolution (LTE) networks), Frame Relay networks, Virtual Private Networks (“VPNs”), satellite networks, telephone networks, routers, hubs, switches, server computers, and / or any combination thereof. By way of example only, network 140 may include cable networks, wired networks, fiber optic networks, telecommunications networks, intranets, wireless local area networks (WLANs), metropolitan area networks (MANs), public switched telephone networks (PSTNs), Bluetooth™ networks, Purple Bee™ networks, near field communication (NFC) networks, etc., or any combination thereof. In some embodiments, network 140 may include one or more network access points. For example, network 140 may include wired and / or wireless network access points such as base stations and / or Internet switching points, through which one or more components of imaging system 110 may connect to network 140 to exchange data and / or information.
[0027] Storage device 150 can store data, instructions, and / or any other information. In some embodiments, storage device 150 can store data obtained from scanning device 110, terminal device 130, and / or processing device 120. In some embodiments, storage device 150 can store data and / or instructions, and processing device 120 can execute or use the data and instructions to perform the exemplary methods / systems described in this application. In some embodiments, storage device 150 may include mass storage, removable storage, volatile read-write memory, read-only memory (ROM), etc., or any combination thereof. Exemplary mass storage may include disks, optical disks, solid-state drives, etc. Exemplary removable storage may include flash drives, floppy disks, optical disks, memory cards, compact disks, magnetic tapes, etc. Exemplary volatile read-write memory may include random access memory (RAM). Exemplary RAM may include dynamic random access memory (DRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), static random access memory (SRAM), thyristor random access memory (T-RAM), and zero-capacitance random access memory (Z-RAM), etc. Exemplary ROMs may include mask read-only memory (MROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), optical disc read-only memory (CD-ROM), and digital multifunction disk read-only memory, etc. In some embodiments, the storage device 150 may operate on a cloud platform. By way of example only, the cloud platform may include private cloud, public cloud, hybrid cloud, community cloud, distributed cloud, internal cloud, multi-tiered cloud, etc., or any combination thereof.
[0028] In some embodiments, storage device 150 may be connected to network 140 to communicate with one or more other components of imaging system 100 (e.g., scanning device 110, processing device 120, storage device 150, terminal device 130). One or more components of imaging system 100 may access data or instructions stored in storage device 150 via network 140. In some embodiments, storage device 150 may be directly connected to or communicate with one or more other components of imaging system 100 (e.g., scanning device 110, processing device 120, storage device 150, terminal device 130). In some embodiments, storage device 150 may be part of processing device 120.
[0029] Figure 2 This is an exemplary block diagram of a processor according to some embodiments of this specification.
[0030] In some embodiments, the system 100 may include a motion vector field acquisition module 210, an image motion deviation acquisition module 220, a raw data deviation acquisition module 230, a correction data acquisition module 240, and an image reconstruction module 250.
[0031] The motion vector field acquisition module 210 can be used to acquire multiple motion vector fields corresponding to multiple motion time points of a target object based on reference time points. In some embodiments, the motion vector field acquisition module can be used to acquire a reference reconstructed image based on the scan data of the target object at the reference time point; acquire multiple motion reconstructed images based on the scan data of the target object at multiple motion time points; and perform structural registration comparison on the reference reconstructed image and the multiple motion reconstructed images respectively to acquire multiple motion vector fields. In some embodiments, the motion vector field acquisition module can be used to acquire at least one first control point of the reference reconstructed image and at least one second control point of the motion reconstructed image; establish a structural registration model based on the at least one first control point and at least one second control point; and acquire the correspondence between the pixels of the reference reconstructed image and the pixels of the motion reconstructed image based on the structural registration model. A detailed description of the motion vector field acquisition module can be found in step 310, and will not be repeated here.
[0032] The image motion deviation acquisition module 220 can be used to acquire the image motion deviation corresponding to each motion time point based on the motion vector field corresponding to each motion time point and the motion reconstructed image corresponding to each motion time point. A detailed description of the image motion deviation acquisition module can be found in step 320, and will not be repeated here.
[0033] The raw data deviation acquisition module 230 can be used to acquire the raw data deviation corresponding to each motion time point based on the motion deviation of each image. A detailed description of the motion vector field acquisition module can be found in step 330, and will not be repeated here.
[0034] The correction data acquisition module 240 can be used to correct multiple scan data based on the raw data deviation corresponding to at least one of the motion time points, and acquire multiple correction data. In some embodiments, the correction data acquisition module 240 can, for any two consecutive motion time points, correct each scan data within the time period between any two consecutive motion time points based on the two raw data deviations corresponding to the two consecutive motion time points, and acquire correction data. In some embodiments, the correction data module can also be used to, for each scan data within the time period between any two consecutive motion time points, obtain a first weight and a second weight based on the correction time point corresponding to the scan data and any two consecutive motion time points; obtain a correction value corresponding to the correction time point based on the first weight, the second weight, and the two raw data deviations corresponding to the two consecutive motion time points; and correct the scan data based on the correction value to acquire correction data. In some embodiments, the correction data module can also be used to obtain the motion duration based on any two consecutive motion time points; obtain a first duration and a second duration based on the time difference between the correction time point corresponding to the scan data and any two consecutive motion time points; obtain a first weight based on the ratio of the first duration to the motion duration; and obtain a second weight based on the ratio of the second duration to the motion duration. A detailed description of the correction data module can be found in step 340, and will not be repeated here.
[0035] The image reconstruction module 250 can acquire a corrected and reconstructed image based on multiple correction data.
[0036] Figure 3 This is an exemplary flowchart illustrating a method for correcting scan data according to some embodiments of this specification.
[0037] Medical images are images of the internal tissues of a target object obtained non-invasively for medical treatment or research. In some embodiments, the target object can be a human body, organ, organism, object, site of injury, tumor, etc. For example, the target object could be one or more diseased tissues in a user's heart.
[0038] In some embodiments, medical images may be acquired based on scan data.
[0039] Scanning data is data acquired by scanning a target object cross-sectionally using a scanning device. In some embodiments, the scanning device may be one or more combinations of a computed tomography (CT) system, computed tomography angiography (CTA) system, positron emission tomography (PET) system, single-photon emission computed tomography (SPECT) system, digital subtraction angiography (DSA) system, or thermal tomography (TTM) system.
[0040] It is understandable that during the cross-sectional scanning of a target object, the object may shift, resulting in motion artifacts in the medical images reconstructed from the scan data. Therefore, the scan data can be corrected to remove motion artifacts from the medical images.
[0041] Furthermore, in order to remove motion artifacts in medical images by correcting the scanned data, it is necessary to first obtain the scanned data deviation (i.e., raw data deviation). However, the scanned data in the data domain and the motion artifacts in the image domain cannot be directly calculated. Therefore, it is necessary to first map the scanned data in the data domain to the image domain, obtain the image motion deviation of the target object in the image domain, and then map the image motion deviation to the raw data deviation in the data domain, thereby correcting the scanned data. The relevant descriptions of image motion deviation and raw data deviation are provided below and will not be repeated here.
[0042] like Figure 3 As shown, the method 300 for correcting scan data based on medical image motion vector field may include:
[0043] Step 310: Based on the reference time points, obtain multiple motion vector fields corresponding to the target object at multiple motion time points.
[0044] Specifically, step 310 can be executed by the motion vector field acquisition module 210.
[0045] A reference time point is a point in time used to describe the relative displacement of the target object during cross-sectional scanning. In some embodiments, the reference time point can be any point in time during the acquisition of scanning data. A detailed description of the reference time point can be found in step 410 and its related description, and will not be repeated here.
[0046] Motion time points are multiple time points selected from the intervals of the scanning process. These motion time points can serve as a reference point for the correction of the scan data. In some embodiments, the multiple motion time points can be any time point during the acquisition of scan data. A detailed description of the motion time points can be found in step 420 and its related description, and will not be repeated here.
[0047] A motion vector field can reflect the motion of a target object. A motion vector field can be a set of motion vectors of at least two spatial points on the target object in the image domain. Each motion vector can represent the displacement of a pixel at two time points in the image domain for any spatial point on the target object.
[0048] In some embodiments, the motion vector field acquisition module 210 can acquire multiple motion vector fields corresponding to multiple motion time points of the target object based on the scan data of the target object at the reference time point and the scan data of the target object at multiple motion time points.
[0049] like Figure 6 As shown, the motion vector field acquisition module 210 can acquire the motion vector field in the image domain based on the scan data in the data domain. A detailed description of acquiring multiple motion vector fields can be found in step 430 and its related description, and will not be repeated here.
[0050] Step 320: Based on the motion vector field corresponding to each motion time point and the motion reconstruction image corresponding to each motion time point, obtain the image motion deviation corresponding to each motion time point.
[0051] Specifically, step 320 can be performed by the image motion deviation acquisition module 220.
[0052] Image motion bias is the displacement of some pixels in the reconstructed image (also called the motion-reconstructed image) at a motion time point due to the displacement of the target object at a motion time point relative to a reference time point. In some embodiments, image motion bias manifests as motion artifacts, including, for example, image deformation, image overlap, image missing, and image blurring. A detailed description of motion artifacts can be found in step 420, and will not be repeated here.
[0053] Specifically, the target object is displaced relative to the reference time point at the motion time point. The displacement of multiple spatial points on the target object at the motion time point can cause multiple pixels corresponding to the multiple spatial points in the motion reconstruction image at that motion time point to be displaced relative to the reference reconstruction image, thereby producing motion artifacts in the motion reconstruction image.
[0054] In some embodiments, the image motion deviation acquisition module 220 can acquire the image motion deviation corresponding to each motion time point based on the motion vector field corresponding to each motion time point and the motion reconstruction image corresponding to each motion time point.
[0055] Specifically, for each motion time point, the image motion deviation acquisition module 220 can subtract each pixel in the motion reconstructed image from the motion vector corresponding to that pixel in the motion vector field to obtain the image motion deviation.
[0056] For example, such as Figure 6As shown, the image motion deviation acquisition module 220 can acquire the motion deviation of the image at time T1 based on the motion reconstructed image at time T1 and the motion vector field at time T1, acquire the motion deviation of the image at time T2 based on the motion reconstructed image at time T2 and the motion vector field at time T2, acquire the motion deviation of the image at time T3 based on the motion reconstructed image at time T3 and the motion vector field at time T3, and so on.
[0057] Step 330: Based on the motion deviation of each image, obtain the raw data deviation corresponding to each motion time point.
[0058] Specifically, step 330 can be executed by the raw data deviation acquisition module 230.
[0059] Data deviation is caused by the displacement of the target object at a given time point, resulting in a deviation in the scan data corresponding to that time point.
[0060] In some embodiments, the raw data deviation acquisition module 230 can convert the image motion deviation corresponding to the motion time point into the raw data deviation corresponding to the motion time point through an orthographic projection algorithm.
[0061] Orthographic projection algorithms are algorithms that convert information about a target object in the image domain into information in the data domain. In some embodiments, orthographic projection algorithms may include, but are not limited to, one or more combinations of ray-driven, voxel-driven, and distance-driven methods.
[0062] like Figure 6 As shown, the raw data deviation acquisition module 230 can use the orthographic projection algorithm to convert the image motion deviation of the target object at time T1, time T2 and time T3 in the image domain into raw data deviation at time T1, time T2 and time T3 in the data domain, respectively.
[0063] Step 340: Based on the raw data deviation corresponding to at least one of the motion time points, correct multiple scan data to obtain multiple corrected data.
[0064] Specifically, step 340 can be performed by the calibration data acquisition module 240.
[0065] The calibration data is the calibrated scan data.
[0066] As mentioned earlier, the motion time point is a time point selected at intervals from multiple time points in the scanning process and used as a correction reference for the scanning data.
[0067] The calibration time point is the time point corresponding to the scan data to be calibrated. In some embodiments, when the calibration time point is a motion time point, the calibration data acquisition module can use the raw data deviation corresponding to the motion time point as a calibration value to calibrate the scan data. For a detailed description of calibrating the scan data based on the calibration value, please refer to step 530, which will not be repeated here.
[0068] In some embodiments, for any two consecutive motion time points among a plurality of motion time points, the correction data acquisition module 240 can correct each scan data within the time period between the two consecutive motion time points based on the raw data deviation corresponding to the two consecutive motion time points, thereby acquiring correction data.
[0069] For a detailed description of obtaining calibration data, please refer to [link / reference]. Figure 5 The details and related descriptions will not be repeated here.
[0070] Step 350: Obtain the corrected and reconstructed image based on multiple correction data.
[0071] Specifically, step 350 can be performed by the image reconstruction module 250.
[0072] The corrected and reconstructed image is the reconstructed image after correcting for motion artifacts.
[0073] In some embodiments, the image reconstruction module 250 can obtain a corrected and reconstructed image based on multiple correction data and a reconstruction algorithm.
[0074] As mentioned earlier, the reconstruction algorithm is an algorithm that converts the relevant information of the target object in the data domain into information in the image domain. A detailed description of the reconstruction algorithm can be found in step 410, and will not be repeated here.
[0075] Figure 4 This is an exemplary flowchart illustrating, based on some embodiments of this specification, how to obtain multiple motion vector fields of a target object at multiple motion time points corresponding to reference time points.
[0076] Specifically, Figure 4 This can be executed by the motion vector field acquisition module 210.
[0077] like Figure 4 As shown, the method 400 for obtaining multiple motion vector fields of a target object at multiple motion time points based on a reference time point may include:
[0078] Step 410: Obtain a reference reconstructed image based on the scan data of the target object at the reference time point.
[0079] For CT scans, the scan data is acquired by scanning the target object cross-sectionally using a scanning device. A cross-section refers to a section of the target object perpendicular to the scanning direction. For example, if the scanning direction is along the target object from top to bottom, the cross-section can be a transverse section. Another example is if the scanning direction is along the target object from left to right, in which case the cross-section can be a sagittal plane. Yet another example is if the scanning direction is along the target object from front to back, in which case the cross-section can be a coronal plane.
[0080] Specifically, for each cross-section of the target object, the scanning device emits signals at multiple angles through the cross-section and receives the attenuated signals after passing through the cross-section at multiple angles. In some embodiments, the scan data is the attenuation intensity of the signals at multiple angles before and after passing through the cross-section. Furthermore, the scanning device can acquire scan data of multiple cross-sections of the target object along the scanning direction.
[0081] A time point is a specific instant in time during the cross-sectional scanning of a target object. In some embodiments, a time point has an extremely short duration, such as 0.01 seconds. In some embodiments, the scanning device can acquire scan data for one or more cross-sections at each time point during cross-sectional scanning. It can be understood that the slower the target object moves relative to the scanning direction, the more cross-sectional scan data can be acquired at each time point.
[0082] In some embodiments, cross-sectional scan data acquired at different time points can be overlapped. For example, the scanning device moves relative to the target object from top to bottom, the cross-section being a transverse section of the target object, and during the cross-sectional scanning process, scan data from 50 cross-sections can be acquired at each time point. Figure 7 As shown, the scanning device moves along the target object from top to bottom, acquiring scanning data of 50 cross sections between cross sections AA and BB at time point T0; acquiring scanning data of 50 cross sections between cross sections A'A' and B'B' at time point T1; and acquiring scanning data of 25 cross sections between cross sections A'A' and BB at both time points T0 and T1.
[0083] A reference time point is a point in time used to describe the relative displacement of a target object during cross-sectional scanning. It can be understood that during cross-sectional scanning, the target object may undergo displacement; that is, the position of the target object at any given time point may change relative to its position at other time points. To better describe the different displacements of the target object at different time points, one time point can be arbitrarily selected from multiple time points during the cross-sectional scanning process as the reference time point. For example, time point T0. The displacement of the target object at other time points refers to the change in its position at those other time points relative to its position at the reference time point.
[0084] Reconstructed images are medical images of target objects obtained from scanned data using reconstruction algorithms.
[0085] A reconstruction algorithm is an algorithm that converts information about a target object in the data domain into information in the image domain. In some embodiments, the reconstruction algorithm may include, but is not limited to, one or more combinations of Back Projection (BP), Filtered Back Projection (FBP), Adaptive Statistical Iterative Reconstruction (ASiR), Model-Based Iterative Reconstruction (MBIR), and Iterative Reconstruction in Image Space (IRIS).
[0086] In some embodiments, the reconstructed image also includes background regions other than the target object, or other organs, bodies, objects, damaged areas, tumors, etc. In some embodiments, the motion vector field acquisition module 210 can extract the region of the target object in the reconstructed image, i.e., the region of interest (ROI), through a segmentation algorithm. In some embodiments, the segmentation algorithm may include traditional segmentation algorithms (e.g., thresholding, region growing, edge detection, etc.), segmentation algorithms combined with specific tools (e.g., genetic algorithms, wavelet analysis, wavelet transform, active contour models, etc.), and segmentation algorithms based on neural network models (e.g., fully convolutional network model algorithms, visual geometric group network model algorithms, masked region convolutional neural network model algorithms, etc.).
[0087] For example, with the coronary arteries of the heart as the target object, the motion vector field acquisition module 210 can acquire a reconstructed image of the heart (including the coronary arteries, cardiac machine, background region, etc.) based on scan data, then extract the vascular centerline of the heart using a vascular centerline extraction algorithm, and then acquire a reconstructed image of the coronary arteries based on the vascular centerline using a segmentation algorithm. In some embodiments, the centerline extraction algorithm may be a combination of at least one or more of the following: manual vascular centerline extraction algorithm, minimum path-based vascular centerline extraction algorithm, and active contour model-based vascular centerline extraction algorithm.
[0088] In some embodiments, the reconstructed image may be a two-dimensional (2D) image or a three-dimensional (3D) image. In some embodiments, a three-dimensional image may consist of a series of two-dimensional slices or two-dimensional layers.
[0089] In some embodiments, the motion vector field acquisition module 210 can stack the reconstructed images of multiple cross sections corresponding to any time point into a three-dimensional reconstructed image along the scanning direction.
[0090] by Figure 7 Taking time point T0 as an example, the motion vector field acquisition module 210 can stack the reconstructed images of 50 cross sections corresponding to time point T0 along the direction from top to bottom of the target object to obtain a three-dimensional reconstructed image of the target object from cross section AA to cross section BB. Furthermore, based on the three-dimensional reconstructed image, a three-dimensional region of interest model, such as a coronary artery model, can be obtained through a segmentation algorithm.
[0091] As mentioned earlier, the scanning device can acquire scanning data from one or more sections at each time point during cross-sectional scanning. Therefore, based on the scanning data from one or more sections acquired at each time point, one or more corresponding reconstructed images can be obtained.
[0092] A reference reconstructed image is a reconstructed image of one or more sections of a target object obtained through a reconstruction algorithm based on scan data of one or more sections acquired at a reference time point. For example... Figure 6 As shown, with time point T0 as the reference time point, the motion vector field acquisition module 210 can use a reconstruction algorithm to convert the target object's scan data at the reference time point T0 in the data domain into a reference reconstructed image at time point T0 in the image domain.
[0093] In some embodiments, the motion vector field acquisition module 210 can stack the reconstructed images of multiple sections corresponding to a reference time point along the scanning direction to form a three-dimensional reference reconstructed image. For example, the coronary artery model acquired based on the scanning data at the reference time point T0 is a coronary artery reference model.
[0094] Step 420: Based on the scan data of the target object at multiple motion time points, acquire multiple motion reconstruction images.
[0095] Motion artifacts are the parts of a target object where spatial points do not correspond to pixels in the image domain. As mentioned earlier, during cross-sectional scanning of a target object, the object may shift, resulting in motion artifacts in the medical images reconstructed from the scan data. In some embodiments, motion artifacts can manifest as image deformation, image overlap, image missing elements, image blurring, etc.
[0096] In some embodiments, the motion vector field acquisition module 210 can remove motion artifacts in medical images by correcting the scan data.
[0097] Motion time points are selected at intervals from multiple time points during the scanning process to pre-calibrate the scan data. It can be understood that the displacement of the target object can be continuous but not uniform. To improve calibration efficiency, the displacement of the target object at each time point can be estimated based on the displacement of the target object at similar time points before and after it. Therefore, the calibration values can be obtained by first selecting a subset of time points from multiple time points during the scanning process at intervals, and then using these calibration values from the subset of time points, the calibration values for all time points can be obtained. For example, motion time points can include T1, T2, T3, ... T... n .
[0098] In some embodiments, the intervals between multiple motion time points can be the same. For example, a motion time point can be selected every 0.2 seconds. In some embodiments, the intervals between multiple motion time points can also be different. For example, in the initial stage of the scanning process, it is easier for the patient to remain still, and the frequency of displacement of the target object is correspondingly lower, so the intervals between multiple motion time points can be larger, such as 0.5 seconds; in the later stage of the scanning process, it is more difficult for the patient to remain still, and the frequency of displacement of the target object is correspondingly higher, so the intervals between multiple motion time points can be smaller, such as 0.1 seconds.
[0099] Motion-reconstructed images are reconstructed images of one or more sections of a target object obtained through a reconstruction algorithm based on scan data of one or more sections acquired at motion time points.
[0100] like Figure 6 As shown, with time points T1, T2, T3, and so on as motion time points, the motion vector field acquisition module 210 can use a reconstruction algorithm to convert the motion time point scan data of the target object in the data domain at time points T1, T2, and T3 into motion reconstruction images at time points T1, T2, and T3 in the image domain, respectively.
[0101] Similar to the reference reconstructed image, in some embodiments, the motion vector field acquisition module 210 can stack the reconstructed images of multiple sections corresponding to the motion time points into a three-dimensional motion reconstructed image along the scanning direction.
[0102] For example, with Figure 7 Taking time point T1 as an example, the motion vector field acquisition module 210 can stack the reconstructed images of 50 cross sections corresponding to the motion time point along the direction from top to bottom of the target object to obtain the three-dimensional motion reconstruction image of the target object from cross section A'A' to cross section B'B'.
[0103] Similar to the reference reconstructed image, in some embodiments, the motion vector field acquisition module 210 can acquire the region of interest (e.g., the motion reconstructed image of the coronary artery motion) in the two-dimensional motion reconstructed image or the region of interest model (e.g., the coronary artery motion model) in the three-dimensional motion reconstructed image through a segmentation algorithm.
[0104] Step 430: Based on the reference reconstructed image, multiple motion vector fields are obtained from the multiple motion reconstructed images through a registration algorithm.
[0105] As mentioned earlier, the reference time point is a time point used to describe the relative displacement of the target object during cross-sectional scanning. In some embodiments, the relative displacement of the target object at the motion time point is the positional change of the target object between the motion time point and the reference time point.
[0106] Furthermore, the target object is composed of multiple spatial points, and the displacement of the target object at a given time point is the displacement of these multiple spatial points at that time point. In some embodiments, the displacement of these multiple spatial points at a given time point can cause displacement of the corresponding pixels in the motion-reconstructed image at that time point, thereby generating motion artifacts in the motion-reconstructed image. To describe the displacement of each spatial point in the motion-reconstructed image at that time point, it is necessary to first determine the position of the corresponding pixels of each spatial point in both the motion-reconstructed image and the reference reconstructed image.
[0107] In some embodiments, the motion vector field acquisition module 210 can determine the position of each spatial point on the motion reconstruction image at the motion time point and the reference reconstruction image at the reference time point based on the reference reconstruction image acquired at the reference time point and the motion reconstruction image acquired at the motion time point through a registration algorithm.
[0108] A registration algorithm is an algorithm that determines the correspondence between pixels of multiple spatial points of a target object in different reconstructed images. In some embodiments, the motion vector field acquisition module 210 can use a registration algorithm to find the correspondence between pixels of multiple spatial points of the target object in the motion reconstructed image and pixels in the reference reconstructed image.
[0109] It is understandable that the reconstructed images of the cross-section acquired at the reference time point and the motion time point overlap. The motion vector field acquisition module 210 can register the reference reconstructed image and the motion reconstructed image based on the target features in the overlapping part of the reference reconstructed image and the motion reconstructed image. For example Figure 7As shown, the motion vector field acquisition module 210 acquires the scan data from cross-section AA to cross-section BB based on the reference time point T0, and sequentially obtains the coronary artery reference model from cross-section AA to cross-section BB through reconstruction and segmentation algorithms; the motion vector field acquisition module 210 acquires the scan data from cross-section A'A' to cross-section B'B' based on the motion time point T1, and sequentially obtains the coronary artery motion model from cross-section A'A' to cross-section B'B' through reconstruction and segmentation algorithms; wherein, the reference time point T0 and the motion time... The scan data acquired at point T1 contains scan data of 25 cross sections from cross section A'A' to cross section BB. Therefore, both the coronary artery reference model and the coronary artery motion model contain model structures from cross section A'A' to cross section BB. Thus, the motion vector field acquisition module 210 can use a registration algorithm to find the correspondence between the coronary artery reference model and the coronary artery motion model based on the correspondence between at least some pixels in the model structures from cross section A'A' to cross section BB in the coronary artery reference model and the coronary artery motion model.
[0110] In some embodiments, the registration algorithm may include point-based registration algorithms (e.g., anatomical landmark-based registration algorithms), curve-based registration algorithms, surface-based registration algorithms (e.g., surface contour-based registration algorithms), spatial alignment registration algorithms, cross-correlation configuration registration algorithms, mutual information-based registration algorithms, sequence similarity detection algorithms (SSDA), nonlinear transformation registration algorithms, B-spline registration algorithms, etc., or any combination thereof.
[0111] Specifically, the motion vector field acquisition module 210 can acquire at least one first control point of the reference reconstructed image and at least one second control point of the motion reconstructed image. The first control point and the second control point are the pixels of the same spatial point on the target object in the reference reconstructed image and the motion reconstructed image, respectively. In some embodiments, at least one first control point and at least one second control point may correspond to the same target feature on the target object. In some embodiments, the motion vector field acquisition module 210 can find the first control point and the second control point by means of manual search, automatic search, and semi-automatic search. In some embodiments, the motion vector field acquisition module 210 can also select the found first control point and the second control point by similarity measurement. In some embodiments, similarity measurement may include one or more combinations of mutual information-based measurement, Fourier analysis-based measurement, etc.
[0112] Furthermore, the motion vector field acquisition module 210 can establish a structural registration model based on at least one first control point and at least one second control point. In some embodiments, the motion vector field acquisition module 210 can obtain the transformation parameters of the coordinate system of the reference reconstructed image and the coordinate system of the motion reconstructed image based on the position of at least one first control point in the coordinate system of the reference reconstructed image and the position of at least one corresponding second control point in the coordinate system of the motion reconstructed image, thereby establishing a structural registration model.
[0113] Furthermore, the motion vector field acquisition module 210 can obtain the correspondence between the pixels of the reference reconstructed image and the pixels of the motion reconstructed image based on the structural registration model. In some embodiments, the motion vector field acquisition module 210 can transform the pixels of the motion reconstructed image to the coordinate system of the reference reconstructed image through image transformation based on the structural registration model, thereby obtaining the correspondence between the pixels of the reference reconstructed image and the pixels of the motion reconstructed image. In some embodiments, the image transformation can include one or more of rigid transformation, affine transformation, projection transformation, nonlinear transformation, etc., or any combination thereof.
[0114] For example, 'a' is a spatial point between cross-section A'A' and cross-section BB of the coronary artery, such as... Figure 8 As shown, from the reference time point T0 to the motion time point T1, the target object raises both hands during the scanning process, and the spatial point... A displacement was generated, thus from the image domain Moved to Therefore, spatial points on the target object Pixels corresponding to the coronary artery reference model Pixels on the coronary artery motion model Then the motion vector field acquisition module 210 uses a registration algorithm to obtain the pixels on the cardiac coronary artery motion model. By transforming to the coordinate system of the coronary artery reference model, the pixel points on the coronary artery reference model can be located. Pixels on the coronary artery motion model The correspondence between them.
[0115] A motion vector is a directed line segment in the image domain. In some embodiments, a motion vector can represent the displacement of a pixel at two time points in the image domain corresponding to any spatial point on the target object. As mentioned earlier, the reference time point is the time point used to describe the relative displacement of the target object during cross-sectional scanning. In some embodiments, the motion vector of any spatial point on the target object in the image domain is the displacement of the pixel at the motion time point relative to the pixel at the reference time point.
[0116] Specifically, the position of the pixel at the reference time point can be used as the starting point of the motion vector, and the position of the pixel at the motion time point can be used as the ending point of the motion vector. The displacement direction is the direction of the motion vector, and the displacement magnitude is the length of the motion vector.
[0117] Continue with Figure 8 For example, spatial point A displacement was generated, thus from the image domain Moved to In the coordinate system of the reference reconstructed image, spatial points Pixels on the coronary artery reference model Coordinates are Pixels in the coronary artery motion model Coordinates are The resulting displacement can be represented by a motion vector. This means that at time point T1, the motion vector of spatial point a in the image domain is... .
[0118] A motion vector field is a set of motion vectors of at least two spatial points of a target object in the image domain.
[0119] As mentioned earlier, the displacements of different spatial points on the target object may be different. The displacement of each spatial point in the image domain can be represented by a motion vector.
[0120] Continue with Figure 8 For example, from the reference time point T0 to the motion time point T1, the spatial points on the target object A displacement was generated, thus from the image domain In the coordinate system of the reference reconstructed image, spatial points Pixels on the coronary artery reference model Coordinates are Pixels in a coronary artery motion model The coordinates are The resulting displacement can be represented by the motion vector. This means that at time point T1, the motion vector of spatial point b in the image domain is... .
[0121] From the reference time point T0 to the motion time point T1, several other spatial points on the target object undergo displacement, such as spatial points c, d, e, etc. Furthermore, the motion vector field F1 of the target object at the motion time point T1 can include motion vectors... , , For example, F1 = ( …).
[0122] Similarly, the motion vector field acquisition module 210 can also acquire the motion direction vector field F2 of the target object at motion time point T2, the motion direction vector field F3 at motion time point T3, ..., the motion direction vector field Fn at motion time point tn.
[0123] Figure 5 This is an exemplary flowchart illustrating a method for obtaining correction data based on raw data deviation, according to some embodiments of this specification.
[0124] Specifically, Figure 5 This can be performed by the calibration data acquisition module 240. For example... Figure 5 As shown, the method 500 may include:
[0125] Step 510: For each scan data point within the time interval between any two consecutive motion time points, obtain the first weight and the second weight based on the correction time point corresponding to the scan data and the any two consecutive motion time points.
[0126] Any two consecutive motion time points refer to any two adjacent motion time points among a plurality of selected motion time points. For example, time point T1 (e.g., the 1st second) and time point T2 (e.g., the 2nd second), time point T2 (e.g., the 2nd second) and time point T3 (e.g., the 3rd second), ...
[0127] The correction time point is a point in time within the interval between any two consecutive motion time points. For example, the correction time point between time points T1 and T2 may include T... x .
[0128] As mentioned above, the motion time point is a time point selected at intervals from multiple time points in the scanning process and used as a correction reference for the scanning data. Therefore, the correction data acquisition module 240 can correct each scan data corresponding to each correction time point in the time period between two consecutive motion time points based on the raw data deviation corresponding to two consecutive motion time points.
[0129] The first weight refers to the proportion of the corrective effect of the raw data deviation corresponding to the motion time point before the correction time point on the scan data corresponding to the correction time point. For example... Figure 5 As shown, the correction time point T x The previous motion time point was T1, and the first weight was α. 1x The deviation of the data at time point T1 is the difference between the data at time point T and the data at time point T. x The percentage of the corresponding scan data that has a corrective effect.
[0130] The second weight refers to the proportion of the corrective effect of the raw data deviation at the motion time point after the correction time point on the scan data at the corresponding correction time point. For example... Figure 5 As shown, the correction time point T x The next motion point is T2, and the second weight α 2x The deviation of the data at time point T2 is related to the correction time point T. x The percentage of the corresponding scan data that has a corrective effect.
[0131] It is understandable that the deviation of the raw data corresponding to any two consecutive motion time points has different corrective effects on the scan data corresponding to different correction time points; that is, the first weight and the second weight are different for different correction time points. The smaller the time difference between the correction time point and the previous motion time point, and the larger the time difference between the correction time point and the subsequent motion time point, the larger the first weight and the smaller the second weight, and vice versa.
[0132] In some embodiments, the correction data acquisition module 240 can acquire the first weight and the second weight corresponding to the correction time point based on two consecutive motion time points and correction time points.
[0133] Specifically, the correction data acquisition module 240 can acquire the motion time length based on any two consecutive motion time points; acquire a first time length and a second time length based on the time difference between the correction time point corresponding to the scan data and any two consecutive motion time points; acquire a first weight based on the ratio of the first time length to the motion time length; and acquire a second weight based on the ratio of the second time length to the motion time length.
[0134] like Figure 5 As shown, the correction time point between two consecutive motion time points T1 and T2 is T. x The motion time length of two consecutive motion time points T1 and T2 is T2 - T1; based on the correction time point T x The first time length T2-T is obtained from the time difference between the motion time point T2 and the motion time point T2. x Based on the correction time point T x The second time length T is obtained from the time difference between the motion time point T1 and the motion time point T1. x -T1; based on the first time length T2-T x The first weight α is obtained from the ratio of the motion time length T2-T1. 1x =(T2-T x ) / (T2-T1); based on the second time length T x The second weight α is obtained by the ratio of T1 to the motion time length T2-T1. 2x = (T x -T1) / (T2-T1). For example, T1=0.1s, T2=0.6s, T x =0.3s, then the first weight α 1x=0.6, second weight α 2x =0.4.
[0135] Step 520: Based on the first weight, the second weight, and the deviation between the two raw data points corresponding to any two consecutive motion time points, obtain the correction value corresponding to the correction time point.
[0136] The correction value is the value used to correct the scanned data. It can be understood that the correction value at a motion time point represents the deviation of the raw data at that time point.
[0137] As mentioned earlier, the displacement of the target object can be continuous but not uniform. To improve the efficiency of the correction, the displacement of the target object at the correction time point can be estimated based on the displacement of the target object at similar time points before and after. Therefore, in some embodiments, the correction data acquisition module 240 can obtain the correction value at the correction time point based on the two raw data deviations (i.e., the two correction values corresponding to the two consecutive motion time points) corresponding to the two consecutive motion time points before and after the correction time point.
[0138] Specifically, the calibration data acquisition module 240 can obtain the calibration effect of the raw data deviation corresponding to the motion time point before the calibration time point on the scan data corresponding to the calibration time point based on the first weight and the raw data deviation corresponding to the motion time point before the calibration time point; obtain the calibration effect of the raw data deviation corresponding to the motion time point after the calibration time point on the scan data corresponding to the calibration time point based on the second weight and the raw data deviation corresponding to the motion time point after the calibration time point; and then obtain the calibration value of the scan data corresponding to the calibration time point based on the sum of the calibration effects of the raw data deviation corresponding to the motion time points before and after the calibration time point on the scan data corresponding to the calibration time point.
[0139] like Figure 5 As shown, the motion time points before and after the correction time point Tx are T1 and T2, respectively. The correction value of the correction time point Tx can be obtained by weighting and summing the data deviations at the first weight α1x and the time point T1, and the data deviations at the second weight α2x and the time point T2, respectively.
[0140] Step 530: Based on the correction value, correct the scan data to obtain corrected data.
[0141] As mentioned earlier, the calibration data is the calibrated scan data. In some embodiments, the calibration data acquisition module 240 can obtain the calibration data corresponding to each time point by subtracting the scan data corresponding to each time point from the calibration value corresponding to each time point during the scanning process.
[0142] like Figure 5As shown, the calibration data acquisition module 240 can obtain the calibration data at calibration time point Tx by subtracting the scan data at calibration time point Tx and the calibration value at calibration time point Tx.
[0143] The correction data corresponding to each motion time point can be obtained by subtracting the deviation between the scan data and the raw data at that time point. For example, the correction data at time point T1 can be obtained by subtracting the deviation between the scan data and the raw data at time point T1.
[0144] The beneficial effects that the embodiments of this specification may bring include, but are not limited to: (1) obtaining reconstructed images based on corrected scan data can fundamentally avoid the introduction of motion artifacts before the reconstruction process, while ensuring the self-consistency of the corrected scan data; (2) obtaining correction values for all correction time points based on the raw data deviation at the motion time points can improve the efficiency of obtaining correction values; (3) obtaining reconstructed images without motion artifacts through reconstruction algorithms based on corrected scan data can make the reconstruction algorithm not limited to iterative reconstruction, thus expanding the applicability of the reconstruction algorithm. It should be noted that different embodiments may produce different beneficial effects. 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.
[0145] 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.
[0146] 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.
[0147] Furthermore, those skilled in the art will understand that various aspects of this specification can be described and illustrated in several patentable ways or situations, including any new and useful combination of processes, machines, products, or substances, or any new and useful improvements thereof. Accordingly, various aspects of this specification can be implemented entirely by hardware, entirely by software (including firmware, resident software, microcode, etc.), or by a combination of hardware and software. All of the above hardware or software may be referred to as a “data block,” “module,” “engine,” “unit,” “component,” or “system.” Furthermore, various aspects of this specification may be represented as a computer product located on one or more computer-readable media, including computer-readable program code.
[0148] Computer storage media may contain a propagated data signal containing computer program code, for example, on baseband or as part of a carrier wave. This propagated signal may take various forms, including electromagnetic, optical, and suitable combinations thereof. Computer storage media can be any computer-readable medium other than a computer-readable storage medium, which can be connected to an instruction execution system, apparatus, or device to enable communication, propagation, or transmission of a program for use. The program code located on the computer storage medium can be propagated through any suitable medium, including radio, cable, fiber optic cable, RF, or similar media, or any combination of the above media.
[0149] The computer program code required for the operation of each part of this manual can be written in any one or more programming languages, including object-oriented programming languages such as Java, Scala, Smalltalk, Eiffel, JADE, Emerald, C++, C#, VB.NET, Python, etc.; conventional procedural programming languages such as C, Visual Basic, Fortran2003, Perl, COBOL2002, PHP, ABAP; dynamic programming languages such as Python, Ruby, and Groovy; or other programming languages. This program code can run entirely on the user's computer, or as a standalone software package on the user's computer, or partially on the user's computer and partially on a remote computer, or entirely on a remote computer or processing device. In the latter case, the remote computer can be connected to the user's computer through any network, such as a local area network (LAN) or wide area network (WAN), or connected to an external computer (e.g., via the Internet), or in a cloud computing environment, or used as a service such as Software as a Service (SaaS).
[0150] 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 by hardware devices, they can also be implemented solely by software solutions, such as installing the described system on existing processing devices or mobile devices.
[0151] 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.
[0152] 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.
[0153] 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.
[0154] 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 correcting scan data, the method comprising: obtaining, based on a reference time point, a plurality of motion vector fields corresponding to a plurality of motion time points of a target object; obtaining, based on the motion vector field corresponding to each of the motion time points and a motion reconstruction image corresponding to each of the motion time points, an image motion deviation corresponding to each of the motion time points, the image motion deviation being a displacement of a part of pixel points in the motion reconstruction image corresponding to the motion time point due to a displacement of the target object at the motion time point compared to the reference time point; obtaining, based on each of the image motion deviations, a sinogram deviation corresponding to each of the motion time points; correcting a plurality of scan data based on the sinogram deviation corresponding to at least one of the motion time points to obtain a plurality of corrected data, comprising: for a time period between at least any two consecutive motion time points in the plurality of motion time points, correcting each scan data in the time period between the any two consecutive motion time points based on two sinogram deviations corresponding to the any two consecutive motion time points respectively to obtain the plurality of corrected data. 2.The method of claim 1, wherein the correcting each scan data between the any two consecutive motion time points based on the two sinogram deviations corresponding to the any two consecutive motion time points respectively to obtain the plurality of corrected data, comprising: for each scan data in the time period between the any two consecutive motion time points, obtaining a first weight and a second weight based on a correction time point corresponding to the scan data and the any two consecutive motion time points; obtaining a correction value corresponding to the correction time point based on the first weight, the second weight and the two sinogram deviations corresponding to the any two consecutive motion time points; correcting the scan data based on the correction value to obtain the corrected data. 3.The method of claim 2, wherein the obtaining the first weight and the second weight based on the correction time point corresponding to the scan data and the any two consecutive motion time points, comprising: obtaining a motion time length based on the any two consecutive motion time points; obtaining a first time length and a second time length based on a time difference between the correction time point corresponding to the scan data and the any two consecutive motion time points respectively, obtaining the first weight based on a ratio of the first time length and the motion time length; obtaining the second weight based on a ratio of the second time length and the motion time length. 4.The method of claim 1, wherein the obtaining, based on a reference time point, a plurality of motion vector fields corresponding to a plurality of motion time points of a target object, comprising: obtaining a reference reconstruction image based on scan data corresponding to the reference time point of the target object; obtaining a plurality of motion reconstruction images based on scan data corresponding to the plurality of motion time points of the target object; obtaining the plurality of motion vector fields by respectively comparing and registering structures of the reference reconstruction image and the plurality of motion reconstruction images.
5. The method of claim 4, wherein the comparing the reference reconstructed image and the plurality of motion reconstructed images respectively comprises: acquiring at least one first control point of the reference reconstructed image and at least one second control point of the motion reconstructed image; establishing a structure registration model based on the at least one first control point and the at least one second control point; acquiring a correspondence between a pixel point of the reference reconstructed image and a pixel point of the motion reconstructed image based on the structure registration model.
6. The method of claim 1, wherein the reference time point and the plurality of motion time points are any time points in a process of acquiring scan data.
7. The method of claim 1, further comprising: acquiring a corrected reconstructed image based on the plurality of corrected data.
8. A method of image reconstruction based on corrected scan data, the method comprising: acquiring a plurality of motion vector fields of a target object at a plurality of motion time points based on a reference time point; acquiring an image motion deviation of each motion time point based on a motion vector field corresponding to the motion time point and a motion reconstructed image corresponding to the motion time point, the image motion deviation being a displacement of some pixel points on the motion reconstructed image corresponding to the motion time point due to a displacement of the target object at the motion time point compared to the reference time point; acquiring a sinogram deviation of each motion time point based on each image motion deviation; correcting a plurality of scan data based on the sinogram deviation of at least one motion time point to acquire a plurality of corrected data, comprising: for a time period between any two consecutive motion time points in the plurality of motion time points, correcting each scan data in the time period between the any two consecutive motion time points based on two sinogram deviations corresponding to the any two consecutive motion time points respectively to acquire the plurality of corrected data; acquiring a corrected reconstructed image based on the plurality of corrected data.
9. A system of correcting scan data, the system comprising: a motion vector field acquisition module configured to acquire a plurality of motion vector fields of a target object at a plurality of motion time points based on a reference time point; an image motion deviation acquisition module configured to acquire an image motion deviation of each motion time point based on a motion vector field corresponding to the motion time point and a motion reconstructed image corresponding to the motion time point, the image motion deviation being a displacement of some pixel points on the motion reconstructed image corresponding to the motion time point due to a displacement of the target object at the motion time point compared to the reference time point; a sinogram deviation acquisition module configured to acquire a sinogram deviation of each motion time point based on each image motion deviation; a corrected data acquisition module configured to correct a plurality of scan data based on the sinogram deviation of at least one motion time point to acquire a plurality of corrected data, comprising: For a time period between any two continuous motion time points in the plurality of motion time points, each scanning data in the time period is corrected based on two corresponding data deviations of the two continuous motion time points, to obtain the plurality of corrected data.
Citation Information
Patent Citations
Motion correction in a projection domain in time of flight positron emission tomography
US20170091963A1