A filtering method and system for ultrasound imaging
By converting the high-pass filter into a constant matrix and combining it with an IIR filter initialization scheme, segmented filtering and interpolation of IQ data solve the problem of discontinuous IQ data in ultrasound multi-synchronization mode, improving the quality of spectral images and the accuracy of blood flow velocity measurement, while reducing computational complexity and equipment cost.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- WUHAN UNITED IMAGING HEALTHCARE CO LTD
- Filing Date
- 2022-01-18
- Publication Date
- 2026-05-26
AI Technical Summary
In ultrasound multi-synchronization mode, especially under high pulse repetition frequency conditions, the IQ data in PW mode is discontinuous, resulting in missing or abnormal spectra, which is difficult to handle effectively with existing technology, affecting blood flow velocity measurement and image quality.
By employing a matrix multiplication filtering method, commonly used high-pass filters are transformed into constant square matrices. Combined with different IIR filter initialization schemes, IQ data is filtered and interpolated in segments to generate high-quality IQ data.
It effectively addresses the discontinuity issue in IQ data, improves the quality of spectral images and the accuracy of blood flow velocity measurements, and reduces computational complexity and equipment costs.
Smart Images

Figure CN116983004B_ABST
Abstract
Description
[0001] Case Analysis
[0002] This application is a divisional application of Chinese application filed on January 8, 2022, with application number 202210052438.9 entitled "A filtering method and system for ultrasound imaging". Technical Field
[0003] This manual relates to the field of diagnostic imaging, and in particular to a filtering method and system for ultrasound imaging. Background Technology
[0004] Medical imaging refers to the non-invasive process of interacting with the human body or experimental subjects through a medium to obtain images of internal tissues and organs, assisting physicians in disease diagnosis and treatment. One such method is ultrasound imaging. Ultrasound imaging uses ultrasound beams to scan the human body, receiving and processing the reflected signals to obtain images of internal organs. Ultrasound imaging has various modes, among which multi-synchronous ultrasound mode can simultaneously display B-mode, C-mode, and PW-mode images, which is of great significance in real-time clinical diagnosis.
[0005] Therefore, it is necessary to provide a filtering method and system for ultrasound imaging to improve the quality of raw data used for ultrasound imaging. Summary of the Invention
[0006] One aspect of this specification provides a filtering method for ultrasound imaging. The method includes: acquiring multiple pulse Doppler echo signals, wherein adjacent pulse Doppler echo signals are distributed at time intervals in the time domain; demodulating the multiple pulse Doppler echo signals to generate discontinuous multi-segment IQ data; and for each segment of IQ data: filtering at least a portion of the data points; and recursively filtering the filtered data points and unfiltered data points to obtain segmented filtered IQ data.
[0007] Another aspect of the embodiments of this specification provides a filtering system for ultrasound imaging. The system includes: an echo signal acquisition module, configured to acquire multiple segments of pulse Doppler echo signals, wherein adjacent pulse Doppler echo signals are distributed at time intervals in the time domain; a demodulation module, configured to demodulate the multiple segments of pulse Doppler echo signals to generate discontinuous multi-segment IQ data; a filtering module, configured to, for each segment of IQ data,: filter at least a portion of the data points; and recursively filter the filtered data points and unfiltered data points to obtain segmented IQ filtered data; and a data interpolation module, configured to perform interpolation based on the filtered multi-segment IQ data.
[0008] Another aspect of the embodiments of this specification provides an image processing apparatus including at least one storage medium and at least one processor, the at least one storage medium being used to store computer instructions; the at least one processor being used to execute the computer instructions to implement a filtering method for ultrasound imaging.
[0009] Another aspect of the embodiments of this specification provides a computer-readable storage medium that stores computer instructions, which, when read by a computer, execute an ultrasound imaging filtering method. Attached Figure Description
[0010] 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:
[0011] Figure 1 This is a schematic diagram illustrating an exemplary application scenario of a filtering system for ultrasound imaging according to some embodiments of this specification;
[0012] Figure 2 This is an exemplary flowchart of a filtering method for ultrasound imaging according to some embodiments of this specification;
[0013] Figure 3 Exemplary flowcharts of filtering processes shown in some embodiments of this specification;
[0014] Figure 4 This is an exemplary schematic diagram of the complete process of filtering each segment of IQ data according to some embodiments of this specification;
[0015] Figure 5 This is an exemplary block diagram of an ultrasound imaging filtering system according to some embodiments of this specification;
[0016] Figure 6 To select the IIR matrix filtering results under different initializations according to some embodiments shown in this specification;
[0017] Figure 7 This is an exemplary schematic diagram showing a comparison of filtering results according to some embodiments of this specification. Detailed Implementation
[0018] 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.
[0019] 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.
[0020] 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.
[0021] 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.
[0022] Multi-synchronous ultrasound modes can simultaneously display B-mode, C-mode, and PW-mode images, which is of great significance in real-time clinical diagnosis. PW mode is a commonly used mode in ultrasound for detecting blood flow conditions such as blood flow velocity and direction. Its basic processing flow is as follows: after a single ultrasound transducer emits a series of pulses, the blood flow echo signal at a specific depth is received after a certain time delay. The echo signal is first integrated and summed to increase the signal-to-noise ratio, and then demodulated to obtain two orthogonal I and Q signals. Since the motion frequency of tissues such as the blood vessel wall is much lower than that of blood flow, a wall filter, i.e., a high-pass filter, is needed to filter out low-frequency components. Spectral analysis usually involves using short-time Fourier transform to perform time-frequency analysis on the blood flow signal. Finally, a spectral image can be displayed on the screen. The audio signal can be directly derived from the filtered I and Q signals, or obtained from the inverse transformation of the time-frequency analysis results, and finally amplified and played back through a speaker. According to the Doppler principle, blood flow velocity is linearly related to Doppler frequency shift, and the calculation of Doppler frequency shift is limited by PRF (maximum pulse repetition frequency). Theoretically, the higher the PRF, the higher the measurable Doppler frequency shift, meaning a higher upper limit for measurable blood flow velocity. While a high PRF allows for the measurement of higher-speed blood flow, it also introduces more data loss in PW spectral images in multi-synchronous mode.
[0023] Multi-synchronization mode including PW refers to transmitting B-mode or C-mode pulses within the intervals between PW mode pulses, thereby achieving synchronous display of PW and B or C modes. To achieve multi-synchronization mode, the ultrasound system typically switches voltages to change the transmission sequence and periodically scans B, C, and PW modes, thus obtaining periodic echo signals from different modes. After obtaining the echo signals from different modes, they are beam-synthesized and sent to the imaging units of different modes, finally displayed on the screen, along with the playback of sound in PW mode. There are two main ways to implement multi-synchronization mode. One is to insert only a small number of B or C mode transmission sequences into the PW transmission sequence. In this method, the PW transmission sequence is intact, and the Doppler spectrum image quality is good. However, the number of display frames in B or C modes limits the maximum pulse repetition frequency (PRF) of the PW mode, thus significantly reducing the detectable blood flow velocity. Another approach is to insert enough B or C sequences into the emitted PW sequence to achieve good image quality in B or C mode without limiting the maximum PRF. However, this approach results in too many discontinuities in the PW emission sequence, thus requiring appropriate gap filling to achieve imaging.
[0024] When the PRF is low, the PW pulse interval (PRI) is long enough, allowing B or C mode pulses to be inserted more easily without considering the switching of transmit voltage. In this case, PW data processing is no different from single PW mode. However, when the PRF is high, the PRI is too short, resulting in insufficient space between two PW transmit pulses for inserting B or C mode pulses, or too few inserted B or C mode pulse sequences. This makes it impossible to display B or C mode images at the specified frame rate, thus requiring a gap in the PW transmit pulses for other mode imaging. Due to the missing transmit pulses, the demodulated IQ data in PW mode becomes discontinuous. Segmented filtering of discontinuous IQ data can cause spectral gaps or anomalies. In related technologies, to address this issue, some methods set an upper limit for the PRF in multi-synchronization mode to avoid the problem of continuous gaps in PW transmit pulses, thus ensuring continuous IQ data. While this method allows for multi-synchronization display, the limited PRF weakens its ability to measure blood flow velocity. Others focus on designing higher-performance filters, such as adaptive filters, and researching spectral gap interpolation algorithms to reduce spectral image anomalies. This approach increases computational complexity and equipment costs.
[0025] Therefore, in situations involving multiple simultaneous ultrasound sessions and high pulse-frequency response (PRF), it is necessary to process the defective pulse-wave (PW) echo signal accordingly. The PW mode imaging unit mainly includes orthogonal demodulation, wall filtering, gap filling, and spectral analysis. Orthogonal demodulation has already been described in detail and will not be elaborated here. Wall filtering, also known as high-pass filtering, can filter out low-frequency signals, which are generally motion information of the vessel wall and tissue. Commonly used wall filters include finite-length unit impulse response (FIR) and infinite-length unit impulse response (IIR) filters. To achieve better filtering effects and suppress low-frequency components, the order of the FIR filter usually needs to be very high, and the response time of the FIR filter is equal to its own order, hence its high response time. IIR filters can achieve filtering effects similar to high-order FIR filters with a smaller order, but because IIR filters are recursively implemented and have strong transient effects, they usually need to be initialized. Transient effects mean that the filtered output is not only related to the current input data but also to all previous input data.
[0026] To balance the effectiveness of piecewise filtering with computational cost, some embodiments in this specification propose a matrix multiplication filtering method that transforms commonly used high-pass filters, including but not limited to IIR filters and FIR filters, into constant matrices, thereby accelerating computation. Furthermore, for IIR filters, different initialization schemes can also mitigate the transient effects of IIR filters to some extent. The filtered IQ data is also not significantly different from the original undamaged IQ filtered data, providing high-quality raw data for IQ data interpolation or spectral gap filling. The technical solutions disclosed in this specification are described in detail below through the accompanying drawings.
[0027] Figure 1 This is a schematic diagram illustrating an exemplary application scenario of an ultrasonic imaging filtering system according to some embodiments of this specification.
[0028] like Figure 1 As shown, the ultrasound imaging filtering system 100 may include an ultrasound imaging device 110, a processing device 120, a network 130, a storage device 140, and a terminal 150. In some embodiments, the ultrasound imaging device 110, the processing device 120, the network 130, the storage device 140, and the terminal 150 may be connected to and / or communicate with each other via wired and / or wireless means.
[0029] Ultrasonic imaging device 110 can be used to acquire ultrasonic imaging data of a target area on an object. In some embodiments, the ultrasonic imaging device can acquire ultrasonic imaging data of a target area on an object by utilizing the physical properties of ultrasonic waves and the differences in acoustic properties of the target area on the object. The ultrasonic imaging data can be displayed and / or recorded in the form of waveforms, curves, or images, and features related to the target area on the object. By way of example only, the ultrasonic imaging device may include one or more ultrasonic probes for emitting ultrasonic waves toward the target area (e.g., an object located on treatment bed 111 or its organs or tissues). Ultrasonic waves produce different reflections and attenuations after passing through organs and tissues with different acoustic impedances and different attenuation characteristics, thereby forming echoes that can be received by the one or more ultrasonic probes. The ultrasonic imaging device can process (e.g., amplify, convert) and / or display the received echoes to generate ultrasonic imaging data. In some embodiments, the ultrasonic imaging device may include a B-mode ultrasound device, a color Doppler ultrasound device, a cardiac ultrasound device, a three-dimensional ultrasound device, or any combination thereof. In some embodiments, the ultrasonic imaging data may be a pulsed Doppler echo signal.
[0030] In some embodiments, the ultrasound imaging device 110 can transmit ultrasound imaging data to the processing device 120, storage device 140, and / or terminal device 150 via network 130 for further processing. For example, the ultrasound imaging data acquired by the ultrasound imaging device may be non-image data, which can be sent to the processing device 120 to generate an ultrasound spectral image. As another example, the ultrasound imaging data acquired by the ultrasound imaging device may be image data, which can be sent to the terminal device 150 for display. Yet another example is that the ultrasound imaging data can be stored in the storage device 140.
[0031] In some embodiments, the ultrasound imaging device 110 may also include other imaging devices 112. In some embodiments, other imaging devices 112 may include X-ray imaging equipment, magnetic resonance imaging equipment, nuclear medicine equipment, thermal imaging equipment, medical optical equipment, etc., or any combination thereof.
[0032] Processing device 120 can process data and / or information obtained from ultrasound imaging device 110, storage device 140, and / or terminal 150. For example, processing device 120 can process ultrasound imaging data obtained from the imaging device in ultrasound imaging device 110 and generate an ultrasound image of a target area. In some embodiments, the ultrasound image can be sent to terminal 150 and displayed on one or more display devices in terminal 150. In some embodiments, processing device 120 can be a single server or a group of servers. The server group can be centralized or distributed. In some embodiments, processing device 120 can be local or remote. For example, processing device 120 can access information and / or data stored in ultrasound imaging device 110, storage device 140, and / or terminal 150 via network 130. As another example, processing device 120 can be directly connected to ultrasound imaging device 110, storage device 140, and / or terminal 150 to access information and / or data stored thereon. As yet another example, processing device 120 can be integrated into ultrasound imaging device 110. In some embodiments, processing device 120 can be implemented 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-cloud, etc., or any combination thereof.
[0033] In some embodiments, the processing device 120 may be a single processing device that communicates with and processes data received from the ultrasound imaging device.
[0034] Network 130 may include any suitable network that can facilitate information and / or data exchange between the ultrasound imaging filtering system 100. In some embodiments, one or more components of the ultrasound imaging filtering system 100 (e.g., ultrasound imaging device 110, processing device 120, storage device 140, or terminal 150) may connect to and / or communicate with other components of the ultrasound imaging filtering system 100 via network 130. For example, processing device 120 may acquire ultrasound imaging data from ultrasound imaging device 110 via network 130. As another example, processing device 120 may acquire user instructions from terminal 150 via network 130, which may be used to instruct ultrasound imaging device 110 to perform imaging and / or radiotherapy. In some embodiments, network 130 may include one or more network access points. For example, network 130 may include wired and / or wireless network access points, such as base stations and / or internet access points, through which one or more components of the ultrasound imaging filtering system 100 may connect to network 130 to exchange data and / or information.
[0035] Storage device 140 can store data and / or instructions. In some embodiments, storage device 140 can store data obtained from terminal 150 and / or processing device 120. In some embodiments, storage device 140 can store data and / or instructions that processing device 120 can execute or use to execute the exemplary methods described in this application. In some embodiments, storage device 140 can be implemented 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-cloud, etc., or any combination thereof.
[0036] In some embodiments, storage device 140 may be connected to network 130 to communicate with one or more components of ultrasound imaging filtering system 100 (e.g., processing device 120, terminal 150, etc.). One or more components of ultrasound imaging filtering system 100 may access data or instructions stored in storage device 140 via network 130. In some embodiments, storage device 140 may be directly connected to or communicate with one or more components of ultrasound imaging filtering system 100 (e.g., processing device 120, terminal 150, etc.). In some embodiments, storage device 140 may be part of processing device 120.
[0037] Terminal 150 may include mobile device 150-1, tablet computer 150-2, laptop computer 150-3, etc., or any combination thereof. In some embodiments, terminal 150 can remotely operate ultrasound imaging device 110. In some embodiments, terminal 150 can operate ultrasound imaging device 110 via a wireless connection. In some embodiments, terminal 150 can receive information and / or instructions input by a user, and transmit the received information and / or instructions to ultrasound imaging device 110 or processing device 120 via network 130. In some embodiments, terminal 150 can receive data and / or information from processing device 120. In some embodiments, terminal 150 may be part of processing device 120. In some embodiments, terminal 150 may be omitted.
[0038] Figure 2 This is an exemplary flowchart of a filtering method for ultrasound imaging according to some embodiments of this specification. In some embodiments, process 200 may be executed by a processing device (e.g., processing device 120). For example, process 200 may be stored in a storage device (such as the built-in storage unit of the processing device or an external storage device) in the form of a program or instructions, which, when executed, can implement process 200. Process 200 may include the following operations.
[0039] Step 202: Acquire multiple pulse Doppler echo signals, with adjacent pulse Doppler echo signals spaced apart in the time domain. In some embodiments, step 202 can be performed by the echo signal acquisition module 510.
[0040] A pulsed Doppler echo signal can refer to the signal received after a certain time delay following the transmission of a sequence of pulses from an ultrasonic transducer to a target object. Multi-segment pulsed Doppler echo signals can be echo signals received at different time intervals. The time-domain interval distribution of two adjacent pulsed Doppler echo signals can refer to the presence of sequences of other modes, such as B-series or C-series, between adjacent pulsed Doppler echo signals.
[0041] Target subjects can include patients or other medical experimental subjects (e.g., laboratory mice or other animals). Target subjects can also be part of a patient or other medical experimental subject, including organs and / or tissues, such as the heart, lungs, ribs, abdominal cavity, etc.
[0042] In some embodiments, the processing device can obtain the multi-segment pulsed Doppler echo signal by controlling the ultrasound imaging device to emit pulse signals to the target object and receiving the returned echo signals. For example, two adjacent pulsed Doppler echo signals are generated by two PW transmission sequences, and a B sequence or a C sequence is inserted between the two PW transmission sequences.
[0043] In some embodiments, the processing device may also obtain multi-segment pulse Doppler echo signals by reading from storage devices, databases, or calling relevant data interfaces.
[0044] In some embodiments, in order to ensure sufficient resolution on the spectrum obtained by subsequent processing, the length of the received PW echo signal can be greater than a preset value. This preset value can be set as needed, for example, it can be set to 64 or more to adapt to the window size of the short-time Fourier transform.
[0045] Step 204: Demodulate the multi-segment pulse Doppler echo signal to generate discontinuous multi-segment IQ data. In some embodiments, step 204 can be performed by demodulation module 520.
[0046] In some embodiments, the processing device can demodulate multi-segment pulse Doppler echo signals using various common demodulation methods. For example, demodulation can be performed using methods such as quadrature demodulation; this specification does not limit the demodulation method.
[0047] In IQ data, I stands for In-Phase (in-phase) and Q stands for Quadrature (orthogonal).
[0048] Demodulation can be used to extract the Doppler frequency shift signal generated by the flow of tissue or blood in the body from the echo signal.
[0049] Discontinuous multi-segment IQ data can refer to IQ data corresponding to multiple pulse Doppler echo signals. Since the multiple pulse Doppler echo signals are spaced apart, the demodulated multi-segment IQ data is also discontinuous.
[0050] In some embodiments, after demodulation, the pulse Doppler echo signal composed of discontinuous signals with equal intervals can be composed of two orthogonal signals to form a complex signal. In this case, any segment of the pulse Doppler echo signal can be represented by the following formula (1).
[0051] X k =[x(t0),x(t0+PRF),…,x(t0+n*PRF)], k: number of segments (1)
[0052] Among them, X k To represent the k-th pulse Doppler echo signal, t0 represents the time point at which the data point of the pulse Doppler echo signal is received, and x represents the data point in the signal.
[0053] Step 206: Filter each segment of IQ data. In some embodiments, step 206 may be performed by the filtering module 530.
[0054] Filtering can be understood as the process of extracting useful signals from IQ data. For example, filtering can remove useless low-frequency signals from IQ data and extract useful frequency signals. In ultrasound signals, low-frequency signals are generally motion information of blood vessel walls, tissues, etc. In some embodiments, filtering can also be called digital filtering, which is a digital signal processing process that filters the input signal through numerical operations. It can serve as a fundamental processing technique in applications such as speech, image processing, pattern recognition, and spectrum analysis.
[0055] In some embodiments, the processing device may perform filtering using a wall filter. For example, filtering may be performed using a finite-length impulse response (FIR) filter, an infinite-length impulse response (IIR) filter, or the like.
[0056] In some embodiments, wall filtering can be understood as performing a convolution operation on the pulse Doppler echo signal. For example, continuing with the above example, let XX1, X2, X3, ..., X k If ] represents a multi-segment pulse Doppler echo signal, then the wall filtering can be implemented recursively using an m-order IIR filter, as expressed by the following formula (2).
[0057]
[0058] Among them, Y k (n) represents the data after wall filtering, a m b m Here are the filter coefficients, where n represents the length of a segment of IQ data, m represents the filter order, and X... k (nm) represents the first nm data points in the k-th segment of the signal, Y k (nm) represents the filtered data of the first nm data in the k-th segment of the signal.
[0059] When the pulse Doppler echo signal is long, an FIR filter can be used for filtering. When the pulse Doppler echo signal is short, an IIR filter is usually used. However, the transient effects of IIR filters can severely affect the spectral quality, necessitating the discarding of anomalous spectral lines and spectral interpolation. Therefore, in some embodiments, the state-space method can be combined to modify the initialization scheme of the IIR filter to reduce its transient effects, as illustrated in steps 2062-2064 below.
[0060] Because there are intervals between the multiple pulse Doppler echo signals, the demodulated IQ data segments are also discontinuous. To avoid introducing redundant information, each segment of IQ data can be filtered in segments during filtering. Therefore, for each segment of IQ data, the processing device can perform filtering by repeatedly executing steps 2062 to 2064.
[0061] Step 2062: Filter at least a portion of the data points.
[0062] In some embodiments, at least some of the data points may be a portion of the IQ data. For example, assuming there are 96 IQ data points, the IQ data can be divided into two parts: a first part containing 64 data points and a second part containing 32 data points. Processing at least some of the data points may involve filtering the 64 data points in the first part.
[0063] In some embodiments, the processing device may obtain the data length T input by the user. This data length T is the number of data points in the IQ data that need to be filtered. For example, if the length of a segment of IQ data is n, the first T data points are filtered, and the remaining nT data points are replaced with 0.
[0064] In some embodiments, the data length T is an engineering parameter that can be input by the engineer during the design process as a preset parameter. In some embodiments, the processing device can obtain the data length T by reading the parameters preset by the engineer.
[0065] In some embodiments, the data length T is less than or equal to the length of each segment of IQ data. For example, T can be less than n or equal to n.
[0066] The processing device can filter the first T data points of the IQ data based on the IIR filter.
[0067] In some embodiments, the processing device can determine the filter matrix based on the data length T and the initialization scheme of the IIR filter, and then multiply the filter matrix with the first T data input matrices using a multiplication unit to obtain the filtered data. For a detailed explanation of filtering the first T data points to obtain the filtered data, please refer to [link to relevant documentation]. Figure 3 The details and related descriptions will not be repeated here.
[0068] Step 2064: Filter the filtered data points and the unfiltered data points using a recursive method to obtain IQ segmented filtered data.
[0069] In some embodiments, the processing device can input filtered data points and unfiltered data points into a recursive calculation unit to obtain IQ segmented filtered data. The input method can be sequential, that is, the filtered data points and unfiltered data points are input sequentially into an IIR filter to perform infinite impulse response filtering on the unfiltered data points.
[0070] In some embodiments, the processing device can concatenate filtered data points and unfiltered data points, with the filtered data points first and the unfiltered data points second, and input them into an IIR filter for filtering.
[0071] For example, Y T Let Y represent the filtered data points, and nT represent the unfiltered data points. T The last nT data points of the IQ data are successively input into the recursive calculation unit for steady-state filtering, ensuring that the recursive calculation speed is faster than the display speed of each spectrum line. The recursive calculation unit obtains the result of all points of the IQ segmented filtering through continuous convolution operations. In some embodiments, the process of filtering using a recursive method can be represented by the following formula (3).
[0072]
[0073] Among them, Y k Y represents the output after recursive filtering. T Represents the filtered data points, a m b m X represents the coefficients of the filter. t Y represents the t-th echo signal. t This represents the filtering result of the t-th segment of the echo signal.
[0074] For example, suppose a segment of IQ data has a length of 128, and the data length T = 20. The first T data points, i.e., the 1st to 20th data points, are filtered using matrix multiplication in parallel to obtain the outputs y1, y2, y3...y20. The 21st to 128th data points are then filtered recursively. According to the principle of IIR filters, y21 to y128 are also derived from the preceding y1 to y20. Therefore, during recursive filtering, the filtered data points Y... T The first T unfiltered data points are then input into the IIR filter for wireless impulse response filtering. However, it should be noted that the filtering results of the first T data points do not need to be filtered again.
[0075] Step 208: Interpolation is performed based on the filtered multi-segment IQ data. In some embodiments, step 208 can be performed by the data interpolation module 540.
[0076] Interpolation can refer to the process of interpolating and supplementing missing IQ data points after filtering.
[0077] In some embodiments, the processing device may perform interpolation based on various common interpolation methods. For example, methods such as filling gaps by splicing windowed segments before and after the gap, filling gaps by adding conjugate segments in reverse order before and after the gap, and spectral spline interpolation are not limited to these methods.
[0078] Step 210: Generate a spectral image based on the interpolated data. In some embodiments, step 210 may be performed by the spectral image generation module 550.
[0079] In some embodiments, the processing device can generate a spectral image based on the interpolated data using various common ultrasound spectral image generation methods. For example, the processing device can multiply the interpolated data by a window function, then perform a Fourier transform on the multiplied data to obtain a frequency domain signal, and then obtain a spectral image based on the frequency domain signal. For specific methods of generating spectral images, please refer to relevant technologies, which will not be elaborated here.
[0080] In some embodiments of this specification, the computation speed can be accelerated by matching the data length of the filter and the dimension of the initialization matrix. Simultaneously, different filter initialization schemes can also mitigate spectral anomalies caused by response time, optimizing the processing flow. In multi-synchronization mode, the loss of PW echo signals due to high PRF can also be filtered using the technical solutions disclosed in the embodiments of this specification. The resulting IQ filtered data is very similar to the filtered data under the original undamaged condition, providing high-quality original data for subsequent spectral gap filling, thereby obtaining a high-quality spectral image.
[0081] Figure 3 Exemplary flowcharts of filtering processing are shown according to some embodiments of this specification. In some embodiments, process 300 may be executed by a processing device (e.g., processing device 120). For example, process 300 may be stored in a storage device (such as the processing device's built-in storage or an external storage device) in the form of a program or instructions, which, when executed, can implement process 300. Figure 3 As shown, process 300 may include the following operations.
[0082] Step 302: Obtain the initial filtering scheme for the IIR filter.
[0083] The initialization filtering schemes for IIR filters can include, but are not limited to, zero initialization, step initialization, and projection initialization.
[0084] In some embodiments, the processing device can obtain an initialization filtering scheme based on the data length T. For example, when the data length T is large, such as greater than a certain threshold (e.g., 200), zero initialization can be selected; when the data length T is a certain length (e.g., less than the threshold 200), step initialization or projection initialization can be selected. The choice can be made based on the requirements for computation speed and the effect of the spectral image. Step initialization has a higher computation speed than projection initialization, and projection initialization produces a better spectral image than step initialization. When computation speed is a high priority, step initialization can be selected; when image quality is a high priority, projection initialization can be selected. In some embodiments, either step initialization or projection initialization can be chosen.
[0085] Step 304: Generate a filter matrix based on the initial filtering scheme of the IIR filter and the data length T.
[0086] In some embodiments, given the initial filtering scheme and data length T of the IIR filter, the filtering matrix can be calculated based on the initial filtering scheme and data length T.
[0087] In some embodiments, the processing device can calculate the filter matrix based on the initial filtering scheme and the data length T within the state-space method. Within the state-space method, the relationship between the input and output of the IIR filter can be expressed by the following formula (4).
[0088] Y k (n)=g d v(n)+b0*X k (4)
[0089] Where v(n) represents the filtering matrix of the IIR filter in this state space, which can be represented as a vector sum of multiple basis functions. d is the order of matrix g, which is related to the data length T. For example, d can be equal to the data length T. Matrix g is related to the coefficients of the m-order IIR filter, which can be represented by the following formula (5).
[0090] g(m)=b m -b0*a m (5)
[0091] Where g(m) is matrix g in formula (4), a m b m Here are the filter coefficients, and b0 is the value of b. m (In the case of m=0), these are also filter coefficients.
[0092] For example, the processing device can generate a filter matrix based on the IIR filter coefficients a and b through the following process.
[0093] First, parameter matrices F, q, g, l can be generated, and then matrices B and C can be calculated.
[0094] q = 0 0 … 1] T ;
[0095] g can be the formula (5) above, B = [g T g T F … g T F N-1 ] T ;
[0096]
[0097] With zero initialization, the filter matrix is C; with step initialization, the filter matrix is (B(IF)). -1 ql+C), under projection initialization, the filter matrix is (IB(B T B) -1 B T C.
[0098] The principle of initializing the filtering scheme is to decompose v(n) in different state spaces and make n = 0. Given the filter initialization scheme and data length T, the IIR filter can directly generate the filtering matrix. The specific process has been described in related technologies and will not be repeated here.
[0099] Step 306: Multiply the filter matrix by the first T data points of the IQ data.
[0100] In some embodiments, the processing device can input the filter matrix and the first T data points of the IQ data into a matrix parallel multiplication unit for calculation. The matrix parallel multiplication unit enables parallel multiplication of the filter matrix and the first T data points of the IQ data, accelerating computation and improving efficiency.
[0101] In some embodiments, multiplying the filter matrix by the first T data of the IQ data can be represented by the following formula (6).
[0102] Y T =traMat*X T (6)
[0103] Among them, Y T The filtered data has a length of T, traMat is the filtering matrix, and X... T The input data is of length T.
[0104] In some embodiments, when the selected data length T is equal to the length of the entire PW echo signal in the slow-time direction, the input signal and the filtered output signal can be simply represented by matrix multiplication. See also Figure 6 , Figure 6 This specification describes the selection of IIR matrix filtering results under different initializations based on some embodiments. All three initialization methods offer improved computational speed compared to general IIR or IIR filtering with initialization. Within the same dynamic range, projection initialization produces the least spectral anomaly, thus balancing filtering quality and computational efficiency. For example, when the data T is long, zero initialization achieves good results (a long T can be considered as the case where the PW has no missing data); as the data length gradually decreases, step initialization or projection initialization can be used to reduce transient effects. Generally, a larger data length T results in smaller spectral anomalies, but the matrix filtering coefficients also increase quadratically. Therefore, to balance computational speed and filtering effect, the data length T can be set to a fixed ratio of the data length, for example, 2:1.
[0105] For example, when using the segmented filtering method disclosed in this specification for IQ data with missing data points, the original data can first be grouped in a 2:1 ratio (e.g., 64:32), with the last 32 data points in each group replaced by 0 points. Then, filtering is performed only on the first 64 points of each group. Because the effective data length is short, T=64 can be set, and any initialization scheme can be selected for segmented filtering. Using the unmissing IQ data as the original data, overall filtering is performed. The comparison results of the two filtering methods are as follows: Figure 7 As shown, Figure 7 This is an exemplary schematic diagram comparing filtering results according to some embodiments of this specification. The dashed lines represent the segmented filtering results after filtering using the technical solutions disclosed in this specification. Single I data points are compared; the horizontal axis represents the number of IQ data points, the vertical axis represents the data amplitude, and the arrows indicate missing data points. Solid lines represent the filtering results without missing data, and dashed lines represent the filtering results with a 2:1 missing data ratio. If the waveforms are similar, it indicates that the filtering result is still good even with missing data. At the same position, the difference between the solid line amplitude and the dashed line amplitude is approximately 10%-1% (one order of magnitude to two orders of magnitude). Figure 7 It can be seen that the waveform of the I data after segmented filtering using the technical solution disclosed in this specification is basically the same as that of the filtered data without missing data, and the error is 1-2 orders of magnitude smaller than the amplitude, which is crucial for the subsequent interpolation of IQ data.
[0106] Figure 4This is an exemplary schematic diagram of a complete process for filtering each segment of IQ data according to some embodiments of this specification. In some embodiments, process 400 may be executed by a processing device (e.g., processing device 120). For example, process 400 may be stored in a storage device (such as the processing device's built-in storage unit or an external storage device) in the form of a program or instructions, which, when executed, can implement process 400. Figure 4 As shown, process 400 may include the following operations.
[0107] Step 402: Generate a filter matrix based on the initial filtering scheme of the IIR filter and the data length T;
[0108] Step 404: Multiply the filter matrix with the first T data input matrices of the IQ data in parallel to obtain a filter output of length T.
[0109] T-length filter output refers to filtered data of length T.
[0110] Step 406: Input the T-length filtered output and the unfiltered nT-length data into the recursive calculation unit for recursive filtering to obtain IQ segmented filtered data.
[0111] For detailed explanations of each step in the above process, please refer to [link / reference]. Figure 2 and Figure 3 The relevant explanations will not be repeated here.
[0112] It should be noted that the above descriptions 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 the processes under the guidance of this specification. However, these modifications and changes remain within the scope of this specification. For example, changes to the process steps in this specification, such as adding preprocessing and storage steps.
[0113] Figure 5 This is an exemplary block diagram of an ultrasound imaging filtering system according to some embodiments of this specification. Figure 5 As shown, system 500 may include echo signal acquisition module 510, demodulation module 520, filtering module 530, data interpolation module 540 and spectrum image generation module 550.
[0114] The echo signal acquisition module 510 can be used to acquire multiple pulse Doppler echo signals, with adjacent pulse Doppler echo signals distributed at intervals in the time domain.
[0115] The demodulation module 520 can be used to demodulate the multi-segment pulse Doppler echo signal to generate discontinuous multi-segment IQ data.
[0116] The filtering module 530 can be used to filter each segment of IQ data. Specifically, for each segment of IQ data, the filtering module 530 can filter at least a portion of the data points; and it uses a recursive filtering method to filter the filtered data points and the unfiltered data points to obtain segmented filtered IQ data.
[0117] The data interpolation module 540 can be used to interpolate based on the filtered multi-segment IQ data.
[0118] The spectrum image generation module 550 can be used to generate a spectrum image based on the interpolated data.
[0119] For detailed descriptions of each module of the above system, please refer to the corresponding flowchart section of this manual, for example, Figures 2 to 4 This will not be elaborated upon here.
[0120] It should be understood that Figure 5 The systems and modules shown can be implemented in various ways. For example, in some embodiments, the systems and modules can be implemented by hardware, software, or a combination of both. The hardware portion can be implemented using dedicated logic; the software portion can be stored in memory and executed by an appropriate instruction execution system, such as a microprocessor or dedicated-design hardware. Those skilled in the art will understand that the methods and systems described above can be implemented using computer-executable instructions and / or included in processor control code, for example, on a carrier medium such as a disk, CD, or DVD-ROM, a programmable memory such as read-only memory (firmware), or a data carrier such as an optical or electronic signal carrier. The systems and modules of this specification can be implemented not only by hardware circuits such as very large-scale integrated circuits or gate arrays, semiconductors such as logic chips, transistors, or programmable hardware devices such as field-programmable gate arrays, programmable logic devices, etc., but also by software, for example, executed by various types of processors, or by a combination of the aforementioned hardware circuits and software (e.g., firmware).
[0121] It should be noted that the above description of the ultrasonic imaging filtering system and its modules is for convenience only and should not be construed as limiting this specification to the embodiments described. It is understood that those skilled in the art, after understanding the principle of the system, may arbitrarily combine the various modules or construct subsystems connected to other modules without departing from this principle. For example, in some embodiments, the echo signal acquisition module 510, demodulation module 520, filtering module 530, data interpolation module 540, and spectrum image generation module 550 may be different modules within the same system, or a single module may implement the functions of two or more of the aforementioned modules. For example, the modules may share a storage module, or each module may have its own separate storage module. Such variations are all within the scope of this specification.
[0122] The beneficial effects that this application may bring include, but are not limited to: (1) While taking into account the imaging quality of B or C modes, it does not reduce the PRF, but optimizes the PW image by using a segmented filtering method; (2) Users can choose an initialization matrix of arbitrary length for filtering, and use a filter with better performance to reduce the spectral anomalies caused by segmented filtering. While taking into account the computational cost, a matrix multiplication filtering method is designed using IIR filters with different initialization methods. This matrix is only related to the characteristics of the filter, so that the filtering output result is only related to the current input data, which can achieve the purpose of balancing computational complexity and filtering quality; (3) The matrix filtering part of the segmented filtering method that combines matrix multiplication and recursion can be calculated in parallel to accelerate the computation and improve the computational speed; (4) The segmented filtering result obtained by using the technical solution disclosed in this specification is basically consistent with the waveform of the filtering result of the whole undamaged data, with a small error. Therefore, the original data can be interpolated under the premise of filtering by this method, so as to recover the complete spectrum image.
[0123] It should be noted that different embodiments may produce different beneficial effects. In different embodiments, the beneficial effects may 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, 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.
[0127] 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.
[0128] 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, Fortran 2003, Perl, COBOL 2002, 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 server. 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).
[0129] 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.
[0130] 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.
[0131] 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.
[0132] 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.
[0133] 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 filtering method for ultrasound imaging, comprising: Multiple pulse Doppler echo signals are acquired, with adjacent pulse Doppler echo signals distributed at intervals in the time domain; The time-domain interval distribution of two adjacent pulse Doppler echo signals refers to a sequence of other modes interspersed between two adjacent pulse Doppler echo signals; Demodulate the multi-segment pulse Doppler echo signal to generate discontinuous multi-segment IQ data; For each segment of IQ data: Filter at least a portion of the data points; The filtered data points and the unfiltered data points are filtered recursively to obtain IQ segmented filtered data.
2. The method according to claim 1, wherein for each segment of IQ data, filtering is performed on at least a portion of the data points, including: Obtain the data length T input by the user, or read the pre-set data length T; The first T data points of the IQ data are filtered.
3. The method according to claim 1, further comprising: The filtered IQ data segments are interpolated. A spectral image is generated based on the interpolated data.
4. The method according to claim 2, wherein filtering is performed on the first T data points of the IQ data, comprising: Obtain the initial filtering scheme for the IIR filter; Generate a filter matrix based on the initial filtering scheme of the IIR filter and the data length T; Multiply the filter matrix by the first T data points of the IQ data.
5. The method according to claim 4, wherein the multiplication of the filter matrix with the first T data of the IQ data is achieved by parallel accelerated computation.
6. The method according to claim 4, wherein the initialization filtering scheme of the IIR filter includes one of zero initialization, step initialization, and projection initialization.
7. The method according to claim 4, wherein the recursive filtering of the filtered data points and the unfiltered data points comprises: The filtered data points and the unfiltered data points are input into the IIR filter one after the other to perform infinite impulse response filtering on the unfiltered data points.
8. The method according to claim 2, wherein the data length T is less than or equal to the length of each segment of IQ data.
9. The method according to claim 1, wherein two adjacent pulse Doppler echo signals are generated by two PW transmission sequences respectively, and a B sequence or a C sequence is inserted between the two PW transmission sequences.
10. A filtering system for ultrasound imaging, comprising: The echo signal acquisition module is used to acquire multiple pulse Doppler echo signals, with adjacent pulse Doppler echo signals distributed at intervals in the time domain; The time-domain interval distribution of two adjacent pulse Doppler echo signals refers to a sequence of other modes interspersed between two adjacent pulse Doppler echo signals; The demodulation module is used to demodulate the multi-segment pulse Doppler echo signal and generate discontinuous multi-segment IQ data; The filtering module is used for each segment of IQ data: Filter at least a portion of the data points; The filtered data points and the unfiltered data points are filtered recursively to obtain IQ segmented filtered data.
11. A filtering device for ultrasound imaging, comprising at least one storage medium and at least one processor, the at least one storage medium being configured to store computer instructions; the at least one processor being configured to execute the computer instructions to implement the method as claimed in any one of claims 1-9.