Signal processing device, magnetic resonance imaging device, and signal processing program

The signal processing device addresses the challenge of implementing FIR filters with many taps by calculating integral values and using representative coefficients, enhancing computational efficiency and accuracy.

JP7777437B2Active Publication Date: 2025-11-28CANON MEDICAL SYST CORP
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2021198574
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-12-25
Filing Date
2021-12-07
Publication Date
2025-11-28
Estimated Expiration
2041-12-07

AI Technical Summary

Technical Problem

Conventional systems face difficulties in practically implementing a finite impulse response (FIR) type digital filter with a large number of taps.

Method used

A signal processing device that calculates integral values for input sequences and uses a processing circuit to determine representative coefficients and integral values, reducing the computational load by applying a sliding window method to filter coefficients within defined ranges.

Benefits of technology

Enables the practical use of FIR filters with a large number of taps by reducing calculation time and preventing significant digit cancellation, thus improving calculation speed and accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007777437000008
    Figure 0007777437000008
  • Figure 0007777437000009
    Figure 0007777437000009
  • Figure 0007777437000010
    Figure 0007777437000010
Patent Text Reader

Abstract

To enable a digital filter having a very large number of taps to be practical.SOLUTION: A signal processor for calculating a first integrated value corresponding to elements in a coefficient string of a first input numerical sequence and calculating a second integrated value corresponding to the elements in a coefficient string of a second input numerical sequence next to the first input numerical sequence comprises an integrated value calculation unit. The integrated value calculation unit, for the elements, calculates the second integrated value by adding, to the first integrated value, a value that is in the second input numerical sequence and does not overlap with the first input numerical sequence, and subtracting, from the first integrated value, a value that is in the first input numerical sequence and does not overlap with the second input numerical sequence.SELECTED DRAWING: Figure 7
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The embodiments disclosed in the present specification and drawings relate to a signal processing device, a magnetic resonance imaging device, and a signal processing program. [Background technology]

[0002] Conventionally, it is difficult to practically implement a finite impulse response (FIR) type digital filter having a very large number of taps. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] GB Patent Application Publication No. 2303453 [Non-patent literature]

[0004] [Non-Patent Document 1] Jehenson P, Westphal M, Schuff N. Analytical method for the compensation of eddy-current effects induced by pulsed magnetic field gradients in NMR systems. Journal of Magnetic Resonance 1990; 90 (2): 264-278. [Non-patent document 2] Viola P, Jones M. Rapid object detection using a boosted cascade of simple features. In Proceedings of the 2001 IEEE Computer Society Conference on Computer Vision and Pattern Recognition. 2001. p. 511-518. Summary of the Invention [Problem to be solved by the invention]

[0005] One of the problems to be solved by the embodiments disclosed in this specification and the drawings is to make it possible to practically use a digital filter having a very large number of taps. However, the problems to be solved by the embodiments disclosed in this specification and the drawings are not limited to the above problem. Problems corresponding to the effects of each configuration shown in the embodiments described below can also be positioned as other problems. [Means for solving the problem]

[0006] A signal processing device according to an embodiment calculates a first integral value corresponding to an element in a coefficient sequence of a first input number sequence and calculates a second integral value corresponding to the element in a coefficient sequence of a second input number sequence subsequent to the first input number sequence, and includes an integral calculation unit. The integral calculation unit calculates the second integral value by adding, for the element, a value in the second input number sequence that does not overlap with the first input number sequence to the first integral value and subtracting, for the element, a value in the first input number sequence that does not overlap with the second input number sequence from the first integral value. [Brief explanation of the drawings]

[0007] [Figure 1] FIG. 1 is a block diagram illustrating an example of a signal processing device according to a first embodiment. [Figure 2] FIG. 2 is an explanatory diagram for explaining various terms according to the first embodiment. [Figure 3] FIG. 3 is an explanatory diagram for explaining various terms according to the first embodiment. [Figure 4] FIG. 4 is a flowchart showing an example of a procedure of a parameter determination process according to the first embodiment. [Figure 5] FIG. 5 is a diagram showing an example of representative coefficients calculated from partial filter coefficient sequences in each of a plurality of filter index sets. [Figure 6]FIG. 6 is a graph showing an output signal (dotted line) in actual measurement and an output signal (dotted line) based on a representative coefficient, and an example of a representative coefficient and a duration according to the first embodiment. [Figure 7] FIG. 7 is a flowchart showing an example of a procedure of a filter calculation process according to the first embodiment. [Figure 8] FIG. 8 is a diagram showing an example of a pre-integration interval according to the first embodiment. [Figure 9] FIG. 9 is a diagram showing an example of a pre-integration interval, a next integration interval, and an outline of calculations in the next integration interval according to the first embodiment. [Figure 10] FIG. 10 is a block diagram showing an example of a magnetic resonance imaging apparatus according to the second embodiment. [Figure 11] FIG. 11 is a flowchart showing an example of the procedure of the adjustment process according to the second embodiment. [Figure 12] FIG. 12 is a graph showing a gradient magnetic field transfer function according to an application example of the second embodiment, and an example of the sum and duration of input signals in Dm. DETAILED DESCRIPTION OF THE INVENTION

[0008] Hereinafter, embodiments of a signal processing device, a magnetic resonance imaging device, and a signal processing program will be described in detail with reference to the drawings. Fig. 1 is a block diagram showing an example of a signal processing device 1. Note that the technical idea of ​​this embodiment is not limited to the configuration shown in Fig. 1, and may be configured by hardware such as an electric circuit having various circuit elements, for example.

[0009] (First embodiment) The signal processing device 1 has a communication interface 11, a memory 13, and a processing circuit 15. The signal processing device 1 functions as a filter calculation device that executes a digital filter (hereinafter referred to as an FIR filter) that performs a finite impulse response (FIR) type calculation on an input signal, for example. As shown in Fig. 1, in the signal processing device 1, the communication interface 11, the memory 13, and the processing circuit 15 are electrically connected by a bus. Also, as shown in Fig. 1, the signal processing device 1 is connected to a network via the communication interface 11.

[0010] The network shown in Figure 1 is connected to, for example, a filter parameter determination device 3, a result output device 5 that outputs the processing result of the FIR filter by the signal processing device 1, and a signal input device 7 that receives an input signal to be input to the FIR filter in the signal processing device 1.

[0011] The filter parameter determination device 3 includes a memory 33 and a processing circuit 30. The memory 33 is realized by a storage circuit that stores various pieces of information. For example, the memory 33 is a storage device such as an HDD (Hard Disk Drive), an SSD (Solid State Drive), or an integrated circuit storage device. Note that, in addition to an HDD or SSD, the memory 33 may also be a drive device that reads and writes various pieces of information from a semiconductor memory element such as a RAM (Random Access Memory) or a flash memory, an optical disc such as a CD (Compact Disc) or a DVD (Digital Versatile Disc), a portable storage medium, or a semiconductor memory element such as a RAM.

[0012] The memory 33 in the filter parameter determination device 3 stores partial filter coefficient sequences corresponding to each of a plurality of filter index sets.

[0013] Hereinafter, the definitions of a filter index, a filter index set, a full filter coefficient sequence, a partial filter coefficient sequence, and a plurality of filter index sets will be described with reference to FIGS.

[0014] FIG. 2 is an explanatory diagram illustrating the definitions of a filter index set, a full filter coefficient sequence, a partial filter coefficient sequence, and multiple filter index sets. Filter coefficients in an FIR filter are distinguished by indexes (hereinafter referred to as filter indexes). A filter index is an integer equal to or greater than 0 that indicates the number of stages by which an input signal input to the FIR filter is shifted, and corresponds to, for example, time or an image position. The filter index may also be the number of stages by which an input signal input to the FIR filter is delayed. In the graph in FIG. 2, the horizontal axis is the time axis or a direction having properties similar to the time axis (hereinafter referred to as the time axis-similar direction), and the vertical axis is the direction representing the magnitude of the filter coefficients, i.e., the direction representing the amplification factor for the input signal (hereinafter referred to as the amplification factor axis direction). In FIG. 2, the filter coefficients are represented by bar-shaped rectangles whose lengths correspond to the amplification factors for the input signal and are positioned corresponding to the filter indexes.

[0015] As shown in FIG. 2, a filter coefficient sequence is an arrangement of filter coefficients associated with filter indices. A full filter coefficient sequence is an arrangement of filter coefficients in the order of filter indices from 0 to (filter order minus 1). A partial filter coefficient sequence is a partial filter coefficient sequence associated with consecutive filter indices among the full filter coefficient sequence. In FIG. 2, each partial filter coefficient sequence is represented by a series of multiple filter coefficients within a dotted-line rectangle. A collection of a series of filter indices related to the partial filter coefficient sequence is a filter index set. A filter index set has, as its elements, filter indices of multiple filter coefficients in the partial filter coefficient sequence. In FIG. 2, a filter index set is represented by a double-headed arrow below the partial filter coefficient sequence represented by the dotted-line rectangle. A filter index set corresponds to a section when a partial filter coefficient sequence is extracted from the full filter coefficient sequence. Each of the multiple filter index sets is distinguished by an index (hereinafter referred to as a set index) for distinguishing the filter index set. As shown in FIG. 3, each of the multiple filter index sets is associated with a set index. As shown in Fig. 2, an index for a set of filter index sets is a set index set, which has set indexes as elements.

[0016] The memory 33 corresponds to a storage unit in the filter parameter determination device 3. The total number of filter indexes included in the multiple filter index sets corresponds to a large number of taps, such as 1 million or 3 million. Each partial filter coefficient sequence stored in the memory 33 is, for example, a part of the entire filter coefficient sequence acquired by actual measurement using a filter coefficient acquisition device. Alternatively, it is, for example, a part of a coefficient sequence generated by the filter coefficient acquisition device using filter parameters provided by a filter designer and a user. Since various known techniques can be used to measure filter coefficients using a filter coefficient acquisition device and generate a filter coefficient sequence, a description thereof will be omitted.

[0017] The processing circuit 30 in the filter parameter determination device 3 performs overall control of the filter parameter determination device 3. The processing circuit 30 includes, for example, a range determination function 31 and a representative coefficient determination function 32 for determining filter parameters used in calculations by the FIR filter executed in the signal processing device 1. The processing circuits 30 that realize the range determination function 31 and the representative coefficient determination function 32 correspond to a range determination unit and a representative coefficient determination unit, respectively. The range determination function 31 and the representative coefficient determination function 32 are stored in a memory 33 in the form of programs executable by a computer. The processing circuit 30 is a processor. For example, the processing circuit 30 reads and executes the programs from the memory 33 to realize the functions corresponding to the programs. In other words, the processing circuit 30, after reading each program, has the range determination function 31 and the representative coefficient determination function 32. The filter parameters, the range determination function 31, and the representative coefficient determination function 32 will be described later.

[0018] In the above description, an example has been described in which a "processor" reads out a program corresponding to each function from a memory and executes it, but the embodiment is not limited to this. The term "processor" refers to a circuit such as a CPU, a graphics processing unit (GPU), an application specific integrated circuit (ASIC), a programmable logic device (e.g., a simple programmable logic device (SPLD), a complex programmable logic device (CPLD), and a field programmable gate array (FPGA)).

[0019] If the processor is a CPU, for example, the processor realizes its functions by reading and executing a program stored in memory. On the other hand, if the processor is an ASIC, instead of storing a program in memory, the function is directly incorporated into the processor's circuitry as a logic circuit. Note that each processor in this embodiment is not limited to being configured as a single circuit per processor, but may be configured as a single processor by combining multiple independent circuits to realize its functions. Also, while a single storage circuit has been described as storing programs corresponding to the range determination function 31 and the representative coefficient determination function 32, this is not limiting. Multiple storage circuits may be distributed and the processing circuit may read corresponding programs from individual storage circuits.

[0020] The processing circuit 30 acquires, from a filter coefficient acquisition device, a partial filter coefficient sequence extracted from the entire filter coefficient sequence corresponding to each filter index set in the FIR filter. The processing circuit 30 stores the partial filter coefficient sequence in a memory 33. The processing circuit 30 uses a range determination function 31 to determine a range of amplification factors determined to be included in the filter index set based on the partial filter coefficient sequence corresponding to the filter index set currently being processed in the FIR filter. The range determination function 31 performs this range determination process on all filter index sets, thereby determining an amplification factor range for each filter index set having a smaller number of elements than the entire filter coefficient sequence. Furthermore, the representative coefficient determination function 32 determines a representative coefficient representing the plurality of filter coefficients in each of the plurality of amplification factor ranges based on the plurality of filter coefficients belonging to each of the plurality of amplification factor ranges.

[0021] The following describes the processing (hereinafter referred to as parameter determination processing) executed by the range determination function 31 and the representative coefficient determination function 32. The FIR filter is assumed to be expressed by the following equation (1).

[0022]

number

[0023] As an overview of the parameter determination process, the range determination function 31 performs the following process. A filter index set containing only 1.0 as an element is created. Based on the filter coefficient a(0) of filter index 0 and a threshold, the range of filter index 0 along the gain axis direction is set as the gain range. The threshold corresponds to a predetermined width along the gain axis direction. 2.Let n=1. 3. The range determination function 31 determines whether the filter coefficient a(n) of the filter index n is included in the range of the amplification factor of the immediately preceding filter index (n-1) based on the filter coefficient a(n) of the filter index n and a threshold value. 4-1. If the filter coefficient a(n) of filter index n is included in the range of the amplification factor of filter index (n-1), the range determination function 31 adds filter index n to the same filter index set as the immediately preceding filter index. 4-2. If the filter coefficient a(n) of filter index n is not included in the range of filter index (n-1), the range determination function 31 determines that the filter coefficient a(n) of filter index n needs to be treated as a filter coefficient having a value different from the filter coefficient a(n-1) of filter index (n-1). In this case, the range determination function 31 generates a new filter index set whose element is only the filter index n, and generates a new range of the first amplification factor for the filter coefficient a(n) of filter index n. Increment n by 1. If n is less than N, return to 2. If n = N, save the set of filter indices corresponding to all filter coefficients and end this process.

[0024] Hereinafter, the procedure of the parameter determination process will be described in detail using FIG. 4. FIG. 4 is a flowchart showing an example of the procedure of the parameter determination process.

[0025] (Parameter Determination Process) (Step S301) The range determination function 31 initializes the set index m to 0 (m = 0), the filter index n to 1 (n = 1), and the elements of the filter index set at m = 0 to 0 (D0 = {0}).

[0026] (Step S302) The range determination function 31 determines whether the n-th (0 ≦ n < N - 1) filter coefficient a(n) can be treated as a filter coefficient having the same value as the (n - 1)-th filter coefficient a(n - 1).

[0027] (Step S303) When the n-th filter coefficient a(n) can be treated as a filter coefficient having the same value as the (n - 1)-th filter coefficient a(n - 1), the range determination function 31 adds the filter index of the n-th filter coefficient a(n) to the same filter index set D m as that of the (n - 1)-th filter coefficient a(n - 1).

[0028] (Step S304) When the n-th filter coefficient a(n) cannot be treated as a coefficient having the same value as the (n - 1)-th filter coefficient a(n - 1), the range determination function 31 adds 1 to the set index m to generate a new filter index set D m+1 = {n}.

[0029] (Step S305) The range determination function 31 increments n. That is, the range determination function 31 generates a new n by adding 1 to n.

[0030] (Step S306) If n is equal to or less than N, the processes from step S302 onwards are executed. If the new n exceeds N, the process of step S307 is executed. As a result, a partial filter coefficient sequence is extracted from the entire filter coefficient sequence.

[0031] The range determination function 31 may execute the determination method of step S302 as follows. For example, the filter index set D m The first filter index added to (m) and for the filter index n to be determined in step S302, a(n0 (m) )-Threshold≦a(n)≦a(n0 (m) )+Threshold is satisfied, the range determination function 31 may determine that the n-th filter coefficient a(n) can be treated as a filter coefficient having the same value.

[0032] The range determination function 31 may, for example, determine in advance the m-th filter index set D m The determination in step S302 may be performed by another method in which the sum of the filter coefficients belonging to the filter index set D is calculated. m The total number of elements in (hereafter referred to as the continuation length) is |D m Then, the range determination function 31 determines the nth filter coefficient a(n) and the duration |D m |D m It may also be determined whether the absolute value of the difference between |×a(n) and the calculated sum exceeds a threshold. Depending on whether the absolute value of the difference exceeds the threshold, the range determination function 31 executes either step S303 (if the absolute value does not exceed the threshold) or step S304 (if the absolute value exceeds the threshold).

[0033] The range determination function 31 determines, for example, the filter index set D for the n-1th time point. mAlternatively, the determination in step S302 may be performed by another method in which the n-th filter coefficient a(n) is added to the sum of the filter coefficients belonging to the filter index set D m and the n-th filter coefficient a(n), the maximum and minimum values ​​of the filter coefficients are identified. The range determination function 31 calculates the difference between the maximum value and the average value (|D m Depending on whether the number multiplied by |+1) exceeds the threshold, either step S303 (if the multiplied number does not exceed the threshold) or step S304 (if the multiplied number exceeds the threshold) is executed.

[0034] (Step S307) The representative coefficient determination function 32 determines the m For the filter index set D m The corresponding representative coefficient c m Specifically, the representative coefficient determination function 32 calculates the filter index set D m Based on the multiple filter coefficients for m The representative coefficient is an approximation of the filter coefficients included in the range of the amplification factors. For example, the representative coefficient determination function 32 calculates the average value of the filter coefficients included in the range of the amplification factors as the representative coefficient. For example, the representative coefficient determination function 32 calculates the representative coefficient c according to the following equation (2): m Calculate.

number

[0035] 5 is a diagram showing an example of a representative coefficient calculated from a partial filter coefficient sequence in each of a plurality of filter index sets. As shown in FIG. 5 and equation (2), the representative coefficient is calculated as the average of the filter coefficients in the partial filter coefficient sequence.

[0036] (Step S308) The processing circuit 30 outputs a representative coefficient and a set of filter indexes for a range of amplification factors to the signal processing device 1. At this time, the memory 13 in the signal processing device 1 stores the representative coefficients and the set of filter indexes in association with the range of amplification factors. The filter parameters determined by the range determination function 31 and the representative coefficient determination function 32 correspond to the representative coefficients and the set of filter indexes for the range of amplification factors. Note that if the filter coefficients are complex numbers, the representative coefficients are also complex numbers. In this case, the FIR filter can be executed even when complex numbers are being processed.

[0037] Figure 6 shows a graph showing the actual output signal (dotted line) and the output signal (dotted line) based on the representative coefficient, and the representative coefficient c m and duration |D m As shown in FIG. 6, the output signal of the dotted line is a piecewise constant representative coefficient c m In this case, the output signal g(t) is expressed by the following equation (3).

number

[0038] The process of step S308 completes the determination of the filter parameters. The setting of the range of the amplification factor and the calculation of the representative coefficients by the parameter determination process correspond to, for example, approximate run-length encoding of the filter index set, which allows for errors using a threshold value.

[0039] The following describes the components of the signal processing device 1 and the processing content performed by the signal processing device 1. The signal processing device 1 has a communication interface 11, a memory 13, and a processing circuit 15.

[0040] The communication interface 11 acquires the filter parameters determined by the filter parameter determination device 3 from the filter parameter determination device 3 via the network. The communication interface 11 acquires the input signal f(t) from the signal input device 7 via the network. The acquired filter parameters and input signal f(t) are stored in the memory 13. The communication interface 11 outputs the output result of the FIR filter calculated by the processing circuit 15 using the input signal f(t) as input to the result output device 5 via the network.

[0041] The memory 13 is realized by a storage circuit that stores various information. The means for realizing the memory 13 is similar to the memory described in the filter parameter determination device 3, and therefore a description thereof will be omitted. The memory 13 stores various data received via the communication interface 11. The received various data include, for example, filter parameters and an input signal f(t). The memory 13 may also store an output result g(t) output by the processing circuit 15. The output result is the output signal g(t) output from the FIR filter by applying the FIR filter to the input signal f(t).

[0042] The processing circuit 15 is realized by a processor and includes an integral value calculation function 151, a signal value calculation function 153, and the like. The processing circuit 15 that realizes the integral value calculation function 151 and the signal value calculation function 153, respectively, corresponds to an integral value calculation unit and a signal value calculation unit. Each function, such as the integral value calculation function 151 and the signal value calculation function 153, is stored in the memory 13 in the form of a program executable by a computer. For example, the processing circuit 15 realizes the function corresponding to each program by reading and executing the program from the memory 13. In other words, the processing circuit 15 in a state in which each program has been read has each function, such as the integral value calculation function 151 and the signal value calculation function 153. The means for realizing the processor is similar to the processor described in the filter parameter determination device 3, and therefore a description thereof will be omitted.

[0043] The processing circuit 15 calculates the second integral value by adding a value in the second input sequence that does not overlap with the first input sequence to the first integral value and subtracting a value in the first input sequence that does not overlap with the second input sequence from the first integral value, for each of a plurality of elements in the coefficient sequence, using the integral value calculation function 151. The integral value calculation function 151 calculates the first integral value by summing the first input signal across filter indexes in the filter index set for each range of amplification factors for a first input signal to a finite impulse response digital filter. The processing circuit 15 calculates the first output signal value from the FIR filter by summing, across set indexes, the products of the representative coefficients and the first integral values ​​for each of a plurality of amplification factor ranges.

[0044] After receiving a second input signal following a first input signal, the integral calculation function 151 adds the second input signal shifted by the maximum filter index to the first integral value and subtracts the first input signal shifted by the minimum filter index from the first integral value for each of a plurality of gain ranges to calculate a second integral value. The signal value calculation function 153 adds the product of the representative coefficient and the second integral value across the set indexes to calculate a second output signal value from the FIR filter.

[0045] After receiving a third input signal following the second input signal, the integral calculation function 151 adds the third input signal shifted by the maximum filter index to the second integral value and subtracts the second input signal shifted by the minimum filter index from the second integral value for each of a plurality of gain ranges to calculate a third integral value. The signal value calculation function 153 adds the product of the representative coefficient and the third integral value across the set indexes to calculate a third output signal value from the FIR filter.

[0046] Specific processing details regarding the integral value calculation function 151 and the signal value calculation function 153 will be explained later in the process of executing an FIR filter on an input signal using filter parameters (hereinafter referred to as filter calculation processing).

[0047] In this embodiment, the number of bits in the plurality of filter coefficients, the representative coefficient, the first integral value, and the second integral value is greater than the number of bits in the input signal f(t). For example, the number of bits in the plurality of filter coefficients, the representative coefficient, the first integral value, and the second integral value exceeds 32 bits.

[0048] The filter calculation process executed by the signal processing device 1 of this embodiment configured as above will be described with reference to Fig. 7 to Fig. 9. Fig. 7 is a flowchart showing an example of the procedure of the filter calculation process.

[0049] (filter calculation processing) (Step S601) In response to receiving the first input signal f(t), the integral calculation function 151 calculates a first integral value for each of a plurality of amplification factor ranges, i.e., for each set index m, using the first input signal f(t). Specifically, in accordance with the following equation (4), a filter index set D m The first integral value I is calculated using the filter index n, which is an element of m As shown in equations (1) to (4), the filter index n distinguishes between multiple filter coefficients that belong to multiple gain ranges. For example, the filter index n distinguishes between filter coefficients based on the delay with respect to the first input signal f(t).

[0050]

number

[0051] (Step S602) The signal value calculation function 153 calculates a plurality of representative coefficients c m and multiple first integral values ​​I mSpecifically, the signal value calculation function 153 calculates the first integral value I over the set index m as shown in the following equation (5): m (t) to calculate the first output signal value g(t).

number

[0052] (Step S603) In response to the input of the next input signal (hereinafter referred to as the second input signal), the integral calculation function 151 calculates the filter index set D for each set index m. m and the first integral value I m (t), the first input signal, and the second input signal, a second integral value I m The input of the second input signal corresponds to incrementing the argument t of the input signal f(t) (t→t+1).

[0053] 8 is a diagram showing an example of a PID in a section (hereinafter referred to as a pre-integration section) in which the first integral value is calculated. The horizontal axis in FIG. 8 is, for example, a direction similar to the time axis. In this step, the first integral value in the pre-integration section PID is used to calculate an integral value in an integration section (hereinafter referred to as a next integration section) based on the second input signal.

[0054] 9 is a diagram showing an example of a pre-integration interval PID, a next integration interval NID, and an outline of calculations in the next integration interval NID. The integral value calculation function 151 calculates the second integral value I in the next integration interval NID for each set index m using the first integral value corresponding to the pre-integration interval PID. m Calculate (t+1).

[0055] Specifically, the integral value calculation function 151 calculates the maximum filter index (max D m) shifted second input signal f(t+1-max D m ) to the first integral value I m (t) and the minimum filter index (min D m ) shifted first input signal f(t-min D m ) to the first integral value I m (t) to obtain the second integral value I m That is, the integral calculation function 151 calculates the second integral value I (t+1) by the following equation (6): m Calculate (t+1).

[0056]

number

[0057] The second integral value I in this step m The calculation of (t+1) is performed using, for example, a one-dimensional version of the sliding window method similar to the algorithm in the Viola-Jones method. In this case, as shown in equation (6), the first integral value I m Since the calculation for (t) has already been performed, the second integral value I mThe number of calculation processes for (t+1) is significantly reduced. The order of the calculation amount is, for example, from N corresponding to equation (1) to the duration |D corresponding to equation (3). m | will be reduced to

[0058] (Step S604) The signal value calculation function 153 calculates a plurality of representative coefficients c m and multiple second integral values ​​I m (t+1) to calculate the second output signal value. Specifically, the signal value calculation function 153 calculates the second integral value I m (t+1) and the representative coefficient c m The second output signal value g(t+1) is calculated by summing the product of m and m over the set index m.

number

[0059] (Step S605) If the next input signal is accepted, the process proceeds to step S606. Accepting the next input signal corresponds to incrementing the argument of the output signal. If the next input signal is not accepted, the process proceeds to step S607.

[0060] (Step S606) The integral calculation function 151 calculates the integral of the filter index set D for each set index m in the filter index set. m and the second integral value I m A third integral value is calculated based on (t+1) and the third input signal that follows the second input signal. At this time, the integral value calculation function 151 updates the second integral value with the third integral value calculated in this step and stores it in the memory 13. The calculation of the third integral value in this step is the same as that in step S603, so its explanation will be omitted. After this step, the processing of step S604 is executed.

[0061] (Step S607) The signal processing device 1 transmits the second output signal value from the FIR filter to the result output device 5 via the communication interface 11. This completes the filter calculation process.

[0062] The signal processing device 1 according to the embodiment described above calculates a first integral value by adding a first input signal across filter indexes for each of a plurality of ranges of amplification factors, calculates a first output signal value by adding a product of a representative coefficient and the first integral value across set indexes for each of a plurality of ranges of amplification factors, calculates a first output signal value by adding a second input signal subsequent to the first input signal across a plurality of ranges of amplification factors to the first integral value and subtracting the first input signal shifted by the smallest filter index from the first integral value for each of a plurality of ranges of amplification factors, and calculates a second output signal value from the digital filter by adding a product of a representative coefficient and the second integral value across set indexes.

[0063] Furthermore, the signal processing device 1 according to the embodiment calculates a coefficient sequence (for example, a representative coefficient c m c corresponding to the sequence of m A set of multiple elements (e.g., multiple representative coefficients c m ) corresponding to a plurality of first integral values ​​(e.g., I m (t)) and calculates a plurality of second integral values ​​(e.g., I m The signal processing device calculates an integral value of a second input sequence that does not overlap with a first input sequence (for example, f(t+1-max D m )) to the first integral value, and find the values ​​in the first input sequence that do not overlap with the second input sequence (e.g., f(t-min D m)) from the first integral value to calculate a second integral value. The signal value calculation unit calculates an output signal value (e.g., g(t+1)) corresponding to the second input sequence based on the second integral value and the coefficient sequence. The coefficient sequence corresponds to a sequence of a series of amplification factors for the input sequence. For example, each of the multiple elements is a representative coefficient representing multiple filter coefficients included in a range set by the values ​​of the multiple filter coefficients, and the coefficient sequence is a series of representative coefficients.

[0064] Furthermore, after inputting a third input signal subsequent to the second input signal, the signal processing device 1 according to the embodiment adds the third input signal shifted by the maximum filter index to the second integral value for each of a range of a plurality of gains, and subtracts the second input signal shifted by the minimum filter index from the second integral value to calculate a third integral value, and then adds the product of the representative coefficient and the third integral value across the set indexes to calculate a third output signal value from the digital filter. In the above, shifting the input signal corresponds to, for example, a delay for the input signal.

[0065] Furthermore, the signal processing device 1 according to the embodiment calculates a plurality of third integral values ​​(for example, I m In the signal processing device, the integral calculation unit calculates a value (for example, f(t+2-max D m )) to the second integral value, and find the values ​​in the second input sequence that do not overlap with the third input sequence (e.g., f(t+1-min D m The signal value calculation unit calculates an output signal value (e.g., g(t+2)) corresponding to the third input sequence based on the third integral value and the coefficient sequence. The non-overlapping corresponds to, for example, a delay with respect to the input sequence.

[0066] Furthermore, according to the signal processing device 1 of the embodiment, the representative coefficient corresponds to the average of a plurality of filter coefficients included in a range of a plurality of amplification factors, and each of the ranges of a plurality of amplification factors is set by comparing the calculation result using the plurality of filter coefficients with a threshold value or by comparing the plurality of filter coefficients with a threshold value.

[0067] As a result, according to the present signal processing device 1, based on the property of filter coefficients of an FIR filter that filter coefficients with close filter indexes often have similar values, calculation of the FIR filter is performed using a representative coefficient of the filter coefficients calculated within each range of amplification factor defined by a threshold value and a second integral value calculated by applying a one-dimensional sliding window method within each range of amplification factor. Through this calculation, the present signal processing device 1 can reduce the amount of calculation in the FIR filter for calculating the second and subsequent integral values, i.e., achieve a practical amount of calculation. As a result of the above, the present signal processing device 1 can output the calculation result of the FIR filter within a practical calculation time.

[0068] Furthermore, according to the signal processing device 1 of the embodiment, the number of bits in the plurality of filter coefficients, the representative coefficients, the first integral value, and the second integral value is greater than the number of bits in the input signal. Specifically, the number of bits in the plurality of filter coefficients, the representative coefficients, the first integral value, and the second integral value is greater than 32. As a result, according to the signal processing device 1, in the process of calculating the first integral value and the second integral value in the filter calculation process, cancellation of significant digits in the first integral value and the second integral value can be avoided regardless of the data amount of the input signal. Therefore, according to the signal processing device 1, it is possible to prevent fatal damage to the calculation results of the FIR filter.

[0069] Furthermore, according to the filter parameter determination device 3 of the embodiment, a partial filter coefficient sequence is stored for each set index, and a range of amplification factors of a plurality of filter coefficients determined to be included in the set of filter indexes is determined based on the partial filter coefficient sequence corresponding to the set of filter indexes being processed, and a representative coefficient representing the plurality of filter coefficients is determined for each range of amplification factors. This allows the signal processing device 1 to perform FIR filter calculations using the representative coefficients, making it possible to output the calculation results of the FIR filter within a practical calculation time.

[0070] From these facts, according to the present signal processing device 1, the calculation speed of the FIR filter can be improved, and even an FIR filter having a large number of taps can be put into practical use.

[0071] (Second embodiment) This embodiment is an application example of filter operation processing related to a magnetic resonance imaging apparatus including a signal processing device 1. The signal processing device 1 installed in the magnetic resonance imaging apparatus uses, as the input signal, a signal value (hereinafter referred to as a control signal value) for controlling a current supplied to a gradient magnetic field coil in a pulse sequence, and outputs a position in k-space (hereinafter referred to as a k-space position) as a second output signal value. Based on the k-space position, the magnetic resonance imaging apparatus corrects the k-space position related to magnetic resonance data (hereinafter referred to as MR (Magnetic Resonance) data) generated by execution of the pulse sequence, or modifies the pulse sequence. The output of the second output signal value in this embodiment is particularly effective for a smooth waveform in the impulse response related to the gradient magnetic field coil.

[0072] The k-space position output as the second output signal value from the signal processing device 1 may indicate a position that is shifted from the position in k-space assumed based on the pulse sequence (hereinafter referred to as the ideal position) due to the influence of eddy currents and the like, whereby the current waveform related to the generation of the gradient magnetic field is deformed from the waveform assumed based on the pulse sequence.

[0073] Fig. 10 is a block diagram showing an example of a magnetic resonance imaging apparatus 100 according to this embodiment. As shown in Fig. 10, the magnetic resonance imaging apparatus 100 has a signal processing device 1. As a modification of this embodiment, the integral value calculation function 151 and the signal value calculation function 153 may be installed in the processing circuitry 125.

[0074] As shown in FIG. 10, the magnetic resonance imaging apparatus 100 includes a static magnetic field magnet 101, a gradient magnetic field coil 103, a gradient magnetic field power supply 105, a bed 107, a bed control circuit 109, a transmission circuit 113, a transmission coil 115, a receiving coil 117, a receiving circuit 119, an imaging control circuit 121, a memory device 123, a processing circuit 125, an input / output interface 127, and a signal processing device 1.

[0075] The static magnetic field magnet 101 is a magnet formed in a hollow, approximately cylindrical shape. The static magnetic field magnet 101 generates a substantially uniform static magnetic field in the internal space. For example, a superconducting magnet or the like is used as the static magnetic field magnet 101.

[0076] The gradient magnetic field coil 103 is a hollow, approximately cylindrical coil and is disposed on the inner surface of the cylindrical cooling vessel. The gradient magnetic field coil 103 receives current individually from a gradient magnetic field power supply 105 to generate gradient magnetic fields whose magnetic field strength varies along the mutually orthogonal X, Y, and Z axes. The gradient magnetic fields of the X, Y, and Z axes generated by the gradient magnetic field coil 103 form, for example, a slice selection gradient magnetic field, a phase encoding gradient magnetic field, and a frequency encoding gradient magnetic field (also referred to as a readout gradient magnetic field). The slice selection gradient magnetic field is used to arbitrarily determine an imaging cross section. The phase encoding gradient magnetic field is used to change the phase of a magnetic resonance signal depending on a spatial position. The frequency encoding gradient magnetic field is used to change the frequency of a magnetic resonance signal depending on a spatial position.

[0077] The gradient magnetic field power supply 105 is a power supply device that supplies current to the gradient magnetic field coil 103 under the control of the imaging control circuit 121 .

[0078] The bed 107 is a device equipped with a top plate 1071 on which the subject P is placed. The bed 107 inserts the top plate 1071 on which the subject P is placed into the bore 111 under the control of a bed control circuit 109.

[0079] The bed control circuit 109 is a circuit that controls the bed 107. The bed control circuit 109 drives the bed 107 in response to instructions from the operator via the input / output interface 17, thereby moving the tabletop 1071 in the longitudinal direction, the up-down direction, and in some cases the left-right direction.

[0080] The transmission circuit 113 supplies radio frequency pulses modulated at the Larmor frequency to the transmission coil 115 under the control of the imaging control circuit 121. For example, the transmission circuit 113 includes an oscillator, a phase selection unit, a frequency conversion unit, an amplitude modulation unit, an RF amplifier, and the like. The oscillator generates an RF pulse at a resonance frequency specific to the target atomic nucleus in a static magnetic field. The phase selection unit selects the phase of the RF pulse generated by the oscillator. The frequency conversion unit converts the frequency of the RF pulse output from the phase selection unit. The amplitude modulation unit modulates the amplitude of the RF pulse output from the frequency conversion unit according to, for example, a sinc function. The RF amplifier amplifies the RF pulse output from the amplitude modulation unit and supplies it to the transmission coil 115.

[0081] The transmission coil 115 is an RF (Radio Frequency) coil arranged inside the gradient magnetic field coil 103. In response to the output from the transmission circuit 113, the transmission coil 115 generates an RF pulse corresponding to a high frequency magnetic field.

[0082] The receiving coil 117 is an RF coil arranged inside the gradient magnetic field coil 103. The receiving coil 117 receives magnetic resonance signals emitted from the subject P by a radio frequency magnetic field. The receiving coil 117 outputs the received magnetic resonance signals to a receiving circuit 119. The transmitting coil 115 and the receiving coil 117 may be implemented as an integrated transmitting / receiving coil.

[0083] The receiving circuit 119 generates MR data corresponding to digital MR signals based on the magnetic resonance signals output from the receiving coil 117 under the control of the imaging control circuit 121. Specifically, the receiving circuit 119 performs various signal processing on the MR signals output from the receiving coil 117, and then performs analog-to-digital (A / D) conversion on the data that has been subjected to various signal processing to generate MR data. The receiving circuit 119 outputs the generated MR data to the imaging control circuit 121.

[0084] The imaging control circuit 121 controls the gradient magnetic field power supply 105, the transmission circuitry 113, the reception circuitry 119, etc. in accordance with the imaging protocol output from the processing circuitry 125 to perform imaging of the subject P. The imaging protocol has a pulse sequence according to the type of examination. The imaging protocol defines imaging parameters such as the magnitude of the current supplied to the gradient magnetic field coil 103 by the gradient magnetic field power supply 105, the timing at which the current is supplied to the gradient magnetic field coil 103 by the gradient magnetic field power supply 105, the magnitude and duration of the radio frequency pulse supplied to the transmission coil 115 by the transmission circuitry 113, the timing at which the radio frequency pulse is supplied to the transmission coil 115 by the transmission circuitry 113, and the timing at which the MR signal is received by the reception coil 117. The imaging control circuit 121 drives the gradient magnetic field power supply 105, the transmission circuitry 113, the reception circuitry 119, etc. to image the subject P, and then receives MR data from the reception circuitry 119 and transfers the received MR data to the processing circuitry 125, etc. The imaging control circuit 121 is realized, for example, by a processor.

[0085] The storage device 123 stores various programs executed in the processing circuitry 125, various imaging protocols, imaging conditions including a plurality of imaging parameters that define the imaging protocols, etc. The means for realizing the storage device 123 is similar to that of the memory 13, and therefore a description thereof will be omitted. Note that the data stored in the storage device 123 may be stored in the memory 13. In this case, the memory 13 functions as a substitute for the storage device 123.

[0086] The processing circuitry 125 has a system control function 131, a reconstruction function 133, and an adjustment function 135. The various functions performed by the system control function 131, the reconstruction function 133, and the adjustment function 135 are stored in the storage device 123 in the form of computer-executable programs. The processing circuitry 125 is a processor that reads programs corresponding to these various functions from the storage device 123 and executes the read programs to realize the functions corresponding to each program. In other words, the processing circuitry 125 in a state in which each program has been read has multiple functions, etc., shown in the processing circuitry 125 of FIG. 10. The processing circuitry 125 that realizes the system control function 131, the reconstruction function 133, and the adjustment function 135 corresponds to a system control unit, a reconstruction unit, and an adjustment unit. The hardware resources that realize the processing circuitry 125 are similar to those of the processing circuitry 125 installed in the signal processing device 1, and therefore description thereof will be omitted.

[0087] The system control function 131 reads out a system control program stored in the storage device 123, expands it on the memory, and controls each circuit of the magnetic resonance imaging apparatus 100 in accordance with the expanded system control program. For example, the system control function 131 reads out an imaging protocol from the storage device 123 based on imaging conditions input by the operator via the input / output interface 127. The system control function 131 may also generate an imaging protocol based on the imaging conditions. The system control function 131 transmits the imaging protocol to the imaging control circuit 121 and controls imaging of the subject P.

[0088] The reconstruction function 133 fills the MR data along the readout direction of the k-space according to the strength of the readout gradient magnetic field. The reconstruction function 133 generates an MR image by performing an inverse Fourier transform on the MR data filled in the k-space. The reconstruction function 133 outputs the MR image to the storage device 123 or the input / output interface 127.

[0089] The adjustment function 135 corrects the position in k-space of the MR data generated by executing the pulse sequence based on the k-space position output from the signal processing device 1. The k-space position output from the signal processing device 1 corresponds to the strength of the readout gradient magnetic field. Specifically, the adjustment function 135 corrects the position of the MR data filled along the readout direction of the k-space according to the k-space position. The reconstruction function 133 generates an MR image by performing an inverse Fourier transform on the MR data filled in the k-space using the corrected position in k-space.

[0090] Here, correcting the position in k-space means, for example, correcting the position in k-space related to MR data generated by execution of a pulse sequence to an ideal position based on the k-space position output from the signal processing device 1. Specifically, correcting the position in k-space means obtaining a deviation between the k-space position output from the signal processing device 1 and the ideal position as a shift amount, and shifting the position in k-space related to MR data generated by execution of a pulse sequence to the ideal position.

[0091] The adjustment function 135 corrects the pulse sequence for the main scan based on the k-space position output from the signal processing device 1. Specifically, the adjustment function 135 corrects, in the pulse sequence according to the k-space position, the current waveform related to generation of a gradient magnetic field, such as the magnitude of the current supplied to the gradient magnetic field coil 103 and the timing at which the gradient magnetic field power supply 105 supplies current to the gradient magnetic field coil 103, and the timing at which the MR signal is received by the receiving coil 117. The timing is, for example, the timing at which an A / D converter in the receiving circuit 119 is turned ON. The imaging control circuit 121 executes a scan on the subject P using the corrected pulse sequence.

[0092] Correcting the pulse sequence for the actual scan means, for example, calculating the deviation between the k-space position output from the signal processing device 1 and the ideal position as a shift amount, and correcting the strength of the gradient magnetic field, the time for applying the gradient magnetic field, or both, so that the k-space position for the MR data generated by executing the pulse sequence shifts to the ideal position. Specifically, correcting the pulse sequence means correcting the signal value supplied to the gradient magnetic field coil 103, the time for providing the signal value, or both. Here, the signal value corresponds to the voltage supplied to the gradient magnetization coil 103.

[0093] The output of the k-space position by the signal processing device 1 and the processing by the adjustment function 135 will be described in detail later. This processing corresponds to a process (hereinafter referred to as adjustment processing) in which an FIR filter is executed using the filter parameters and the control signal values, and the k-space position that is the output result from the FIR filter is used to execute the correction or modification.

[0094] The input / output interface 127 has an input interface and an output interface. The input interface has, for example, circuits related to input devices such as a pointing device like a mouse or a keyboard, an input terminal from a network, etc. The circuits included in the input interface are not limited to circuits related to physical operation components such as a mouse or a keyboard. For example, the input interface may have an electrical signal processing circuit that receives an electrical signal corresponding to an input operation from an external input device provided separately from the magnetic resonance imaging apparatus 100 and outputs the received electrical signal to various circuits.

[0095] The output interface is, for example, a display, an output terminal to a network, etc. The display displays various MR images reconstructed by the reconstruction function 133, various information related to imaging and image processing, etc. under the control of the system control function 131. The display is, for example, a CRT display, a liquid crystal display, an organic EL display, an LED display, a plasma display, or any other display or monitor known in the art.

[0096] The adjustment processing executed by the magnetic resonance imaging apparatus 100 of this embodiment configured as described above will be described with reference to Fig. 11. Fig. 11 is a flowchart showing an example of the procedure of the adjustment processing. The processing contents in steps S101 to S106 in the flowchart of Fig. 11 correspond to the processing contents in steps S601 to S606 in the flowchart of Fig. 7, which have been modified appropriately to suit the magnetic resonance imaging apparatus 100. Therefore, the processing contents in the flowchart of Fig. 11 that differ from the processing contents in the flowchart of Fig. 7 will be described below.

[0097] (Adjustment processing) (Step S101) In response to receiving the first control signal value as the first input signal f(t), the integral calculation function 151 calculates a first integral value for each of a plurality of gain ranges, i.e., for each set index m, using the first control signal value. Specifically, in accordance with the above-mentioned equation (4), the filter index set D m and the first control signal value f(t) to calculate the first integral value I m The integral value calculation function 151 calculates the calculated first integral value I m (t) is stored in the memory 13 in association with the set index m.

[0098] (Step S102) The signal value calculation function 153 calculates a plurality of representative coefficients c m and multiple first integral values ​​Im (t) to calculate a first output signal value at a first k-space position. Specifically, the signal value calculation function 153 calculates a first integral value I over the set index m using the above equation (5). m The signal value calculation function 153 calculates the first k-space position g(t) by adding (t). The signal value calculation function 153 stores the calculated first k-space position in the memory 13.

[0099] (Step S103) In response to the input of the next input signal (hereinafter referred to as the second control signal value), the integral value calculation function 151 calculates the filter index set D for each set index m. m and the first integral value I m Based on (t), the first control signal value, and the second control signal value, a second integral value I m Specifically, the integral calculation function 151 calculates the first integral value I (t+1) as shown in the above-mentioned formula (6). m (t) the second control signal value f(t+1-max D m ) to obtain the first integral value I m (t) to the first input signal f(t-min D m ) to obtain the second integral value I m Calculate (t+1).

[0100] (Step S104) The signal value calculation function 153 calculates a plurality of representative coefficients c m and multiple second integral values ​​I m (t+1) to calculate the second output signal value as the second k-space position. Specifically, the signal value calculation function 153 calculates the second integral value I over the set index m as shown in the above equation (7). m The signal value calculation function 153 calculates the second k-space position g(t+1) by adding (t+1). The signal value calculation function 153 stores the calculated second k-space position in the memory 13.

[0101] (Step S105) If the next control signal value is accepted, the process of step S106 is executed. If the next control signal value is not accepted, the process of step S107 is executed. At this time, the second k-space position is output to the processing circuitry 125 in the magnetic resonance imaging apparatus 100.

[0102] (Step S106) The integral calculation function 151 calculates the filter index set D for each set index m. m and the second integral value I m An integral value is calculated based on (t+1) and the control signal value next to the second control signal value. At this time, the integral value calculation function 151 updates the second integral value with the integral value calculated in this step and stores it in the memory 13. The calculation of the integral value in this step is the same as that in step S103, so the explanation will be omitted. After this step, the processing of step S104 is executed.

[0103] (Step S107) The adjustment function 135 corrects the k-space position of the MR data or modifies the pulse sequence based on the second k-space position. For example, after performing a main scan on the subject P, the adjustment function 135 corrects the k-space position of the MR data based on the second k-space position. At this time, the reconstruction function 133 fills the k-space with the MR data using the corrected k-space position. Next, the reconstruction function 133 generates an MR image by performing an inverse Fourier transform on the MR data filled in the k-space.

[0104] Instead of correcting the k-space position, the adjustment function 135 may modify the pulse sequence based on the second k-space position. For example, before executing a main scan on the subject P, the adjustment function 135 modifies imaging parameters in the pulse sequence related to the main scan based on the second k-space position. Then, the imaging control circuitry 121 executes the main scan on the subject P using the modified pulse sequence.

[0105] According to the magnetic resonance imaging apparatus 100 of the embodiment described above, the signal processing device 1 uses as an input signal a signal value for controlling the current supplied to the gradient magnetic field coil 103 in the pulse sequence to output a position in k-space as a second output signal value, and corrects the position in k-space related to the magnetic resonance data generated by execution of the pulse sequence based on the position in k-space, or modifies the pulse sequence. This makes it possible to output an accurate gradient magnetic field strength as the second output signal value, even when an exponential delay in the gradient magnetic field strength due to eddy currents occurs due to execution of a pulse sequence that frequently adjusts the current flowing through the gradient magnetic field coil 103 (for example, adjusting the current so that the gradient magnetic field strength becomes trapezoidal).

[0106] That is, according to the present magnetic resonance imaging apparatus 100, the signal processing device 1 uses, as an input sequence, signal values ​​for controlling the current supplied to the gradient magnetic field coil 103 in the pulse sequence, and outputs a position in k-space as an output signal value, and based on the position in k-space, corrects the position in k-space related to the magnetic resonance data generated by executing the pulse sequence, or modifies the pulse sequence.

[0107] For example, with the magnetic resonance imaging apparatus 100, even if a convolution operation of 100,000 taps is required for a resolution of 10 μsec and an impulse response of 1 second, or a convolution operation of 3,000,000 taps is required for a resolution of 1 μsec and an impulse response of 3 seconds, it is possible to execute the convolution operation required for calculating the gradient magnetic field strength in a practically short time for an extremely long impulse response accompanied by eddy currents whose control signal values ​​are impulses.Also, for example, it is possible to execute the convolution operation in a practically short time for an extremely long impulse response used in an enhancement filter for canceling such eddy currents.

[0108] Furthermore, the signal processing device 1 in the magnetic resonance imaging apparatus 100 can calculate the second output signal value with high accuracy, high resolution, and in a short time without using a Bloch simulator that deviates from reality or an infinite impulse response (hereinafter referred to as IIR) based on a model assumed to be an exponential impulse response. For example, the signal processing device 1 uses an FIR filter, which can prevent the output accuracy from reaching a plateau due to the occurrence of model errors (bias) in IIR.

[0109] From these facts, the magnetic resonance imaging apparatus 100 can accurately and quickly calculate the impulse response (disruption of the waveform of the gradient magnetic field intensity) related to the eddy current caused by the current flowing through the gradient magnetic field coil 103, and can easily realize an FIR filter that matches the physical state or logical design. As a result, the magnetic resonance imaging apparatus 100 can reduce the deviation between the design value and the actual k-space position regarding the trajectory in k-space by correcting the pulse sequence based on the design value to match the actual physical state of the gradient magnetic field coil 103, or by correcting the k-space position of the MR data to match the actual k-space position, thereby reducing image quality degradation in the generated MR image. Other effects of this embodiment are similar to those of the first embodiment, and therefore will not be described here.

[0110] In the second embodiment, a magnetic resonance imaging apparatus 100 has been described as an application example of the signal processing device 1 in the first embodiment, but application examples of the signal processing device 1 are not limited to the second embodiment. For example, the signal processing device 1 can also calculate a sound impulse response by simulating various acoustic (sound reflection) models (for example, a mirror image sound source model or ray tracing).

[0111] (Application example) In this application example, a piecewise constant sequence may be input as an input sequence, or a piecewise constant sequence may be output. For concrete explanation, the following description will be given using a control signal value for controlling a current supplied to a gradient coil as the input sequence. The control signal value is also called a gradient system transfer function (GSTF).

[0112] Figure 12 shows the graph of the gradient magnetic field transfer function (GSTF) and the D m 12 is a diagram showing an example of the sum and duration of input signals in the GSTF. When the GSTF is a trapezoid as shown in FIG. 12, a constant sequence is arranged at the upper base of the trapezoid and at the vertex (1000) at the bottom right end of the trapezoid. When a piecewise constant sequence is input as an input sequence at the upper base of the trapezoid and at the vertex (1000) at the bottom right end of the trapezoid in the GSTF shown in FIG. 12, the non-overlapping values ​​to be added to or subtracted from the first integral value are the same, so the addition and subtraction in steps S604 and S606 are skipped. In this case, the second integral value is output as a piecewise constant sequence. The decision to skip addition and subtraction is made, for example, by the integral value calculation function 151 by monitoring the input sequence in real time. For example, the integral value calculation function 151 calculates the duration |D m Specifically, the integral value calculation function 151 determines whether or not to skip addition and subtraction based on the continuation length |D m If | is equal to or longer than the predetermined length, it is determined that the addition and subtraction can be skipped, and the addition and subtraction in steps S604 and S606 are skipped.

[0113] According to this application example, when a piecewise constant sequence is input as the input sequence, addition and subtraction can be skipped in the filter calculation process. For example, in the input sequence from 1000 to 1 million shown in FIG. 12, since the input sequence contains successive 0s, addition and subtraction can be skipped in the filter calculation process. Therefore, according to this application example, it is possible to further speed up the filter calculation process. Other effects of this application example are the same as those of the first embodiment, and therefore a description thereof will be omitted.

[0114] When the technical idea of ​​the embodiment is realized by a signal processing method, the signal processing method includes, for each of a plurality of gain ranges for a first input signal to an FIR filter, summing the first input signal across filter indexes that distinguish a plurality of filter coefficients belonging to each of the plurality of gain ranges to calculate a first integral value, summing the product of the first integral value and a representative coefficient that represents the plurality of filter coefficients for each of the plurality of gain ranges across set indexes that distinguish a set of filter indexes to calculate a first output signal value from the digital filter, adding, after inputting a second input signal subsequent to the first input signal, the second input signal shifted by the largest filter index to the first integral value and subtracting the first input signal shifted by the smallest filter index from the first integral value for each of the plurality of gain ranges to calculate a second integral value, and summing the product of the representative coefficient and the second integral value across set indexes to calculate a second output signal value from the digital filter. The procedure and effect of the filter operation processing performed by the signal processing method are similar to those of the first embodiment, and therefore description thereof will be omitted.

[0115] For example, when the technical idea of ​​the embodiment is realized by a signal processing method, the signal processing method calculates, based on a first input sequence, a plurality of first integral values ​​corresponding to a plurality of elements in a coefficient sequence, adds, for each of the plurality of elements, a value in a second input sequence that does not overlap with the first input sequence to the first integral value, subtracts, for each of the elements, a value in the first input sequence that does not overlap with the second input sequence from the first integral value, to calculate a second integral value, and calculates an output signal value corresponding to the second input sequence based on the second integral value and the coefficient sequence.

[0116] When the technical ideas of the embodiments are realized by a signal processing program, the signal processing program causes a computer to: for each of a plurality of ranges of amplification factors for a first input signal to an FIR filter, add the first input signal across filter indices that distinguish a plurality of filter coefficients belonging to each of the plurality of ranges of amplification factors to calculate a first integral value; for each of a plurality of ranges of amplification factors, add the product of the first integral value and a representative coefficient that represents the plurality of filter coefficients across set indices that distinguish a set of filter indices to calculate a first output signal value from the digital filter; after input of a second input signal subsequent to the first input signal, add the second input signal shifted by the maximum filter index to the first integral value and subtract the first input signal shifted by the minimum filter index from the first integral value for each of a plurality of ranges of amplification factors to calculate a second integral value; and add the product of the representative coefficient and the second integral value across the set indices to calculate a second output signal value from the digital filter.

[0117] For example, when the technical ideas in the embodiments are realized by a signal processing program, the signal processing program causes a computer to calculate, based on a first input sequence, a plurality of first integral values ​​corresponding to a plurality of elements in a coefficient sequence, add, for each of the plurality of elements, a value in the second input sequence that is not overlapped with the first input sequence to the first integral value, subtract, for each of the elements, a value in the first input sequence that is not overlapped with the second input sequence from the first integral value to calculate a second integral value, and calculate an output signal value corresponding to the second input sequence based on the second integral value and the coefficient sequence.

[0118] For example, the filter operation processing can be realized by installing a signal processing program in a computer in the magnetic resonance imaging apparatus 100 or various signal processing servers and expanding the program in memory. In this case, the program that can cause the computer to execute the method can also be stored in a storage medium such as a magnetic disk (hard disk, etc.), an optical disk (CD-ROM, DVD, etc.), or a semiconductor memory and distributed. The processing procedure and effects of the signal processing program are the same as those in the first embodiment, so a description thereof will be omitted.

[0119] According to at least one of the embodiments described above, a finite impulse response type digital filter having an extremely large number of taps can be made practical.

[0120] Although several embodiments have been described, these embodiments are presented as examples and are not intended to limit the scope of the invention. These embodiments can be implemented in various other forms, and various omissions, substitutions, modifications, and combinations of embodiments can be made without departing from the spirit of the invention. These embodiments and their modifications are included within the scope and spirit of the invention, as well as within the scope of the invention and its equivalents as defined in the claims.

[0121] With respect to the above-described embodiments, the following supplementary notes are disclosed as one aspect and optional features of the invention. (Appendix 1) 1. A signal processing device that calculates a first integral value corresponding to an element in a coefficient sequence of a first input sequence, and calculates a plurality of second integral values ​​corresponding to the elements in a coefficient sequence of a second input sequence subsequent to the first input sequence, The signal processing device includes an integral value calculation unit in the element that adds a value in the second input sequence that does not overlap with the first input sequence to the first integral value and subtracts a value in the first input sequence that does not overlap with the second input sequence from the first integral value to calculate the second integral value. (Appendix 2) The signal processing device may further include a signal value calculation unit that calculates an output signal value corresponding to the second input sequence based on the second integral value and a coefficient sequence of the second input sequence. (Appendix 3) the signal processing device is a signal processing device that calculates a third integral value corresponding to the element in a coefficient sequence of a third input sequence subsequent to the second input sequence, the integral calculation unit may calculate the third integral value by adding, for the element, a value in the third input sequence that does not overlap with the second input sequence to the second integral value and subtracting, for the element, a value in the second input sequence that does not overlap with the third input sequence from the second integral value; The signal value calculation section may calculate an output signal value corresponding to the third input sequence based on the third integral value and a coefficient sequence of the third input sequence. (Appendix 4) The coefficient sequence may correspond to a sequence of amplification factors for an input sequence. (Appendix 5) The integral value calculation section and the signal value calculation section may form a finite impulse response type digital filter. (Appendix 6) The element may be a representative coefficient that represents a plurality of filter coefficients included in a range set by the values ​​of the plurality of filter coefficients, The coefficient sequence may be a series of the representative coefficients. (Appendix 7) The number of bits in the plurality of filter coefficients, the representative coefficient, the first integral value, and the second integral value may be greater than the number of bits in the first input sequence and the number of bits in the second input sequence. (Appendix 8) The number of bits in the plurality of filter coefficients, the representative coefficient, the first integral value, and the second integral value may be greater than 32 bits. (Appendix 9) The range may be set by comparing a result of an operation using the plurality of filter coefficients with a threshold value, or by comparing the plurality of filter coefficients with a threshold value. (Appendix 10) The signal processing device includes: signal values ​​for controlling currents supplied to gradient coils in a pulse sequence may be used as the input sequence; A position in k-space may be output as the output signal value, A magnetic resonance imaging apparatus further comprising an adjustment unit that corrects a position in k-space related to magnetic resonance data generated by execution of the pulse sequence based on the position in k-space, or modifies the pulse sequence. (Appendix 11) The non-overlapping may correspond to a delay relative to the input sequence. (Appendix 12) The signal processing device includes a storage unit that stores, for each set index that distinguishes a set of filter indexes, a partial filter coefficient sequence in which a plurality of filter coefficients are arranged along a filter index that distinguishes a plurality of filter coefficients that belong to each of a plurality of ranges of amplification factors for an input signal to a finite impulse response digital filter; a range determination unit that determines a range of amplification factors of the plurality of filter coefficients determined to be included in the set of filter indexes based on the partial filter coefficient sequence corresponding to the set of filter indexes; a representative coefficient determination unit that determines a representative coefficient representing the plurality of filter coefficients for each of the plurality of ranges of amplification factors; may also be provided. (Appendix 13) The representative coefficient determination unit may determine the representative coefficient by calculating an average of the plurality of filter coefficients for each of the plurality of ranges of the amplification factors. (Appendix 14) The number of bits in the filter coefficients and the representative coefficients may be greater than 32 bits. (Appendix 15) The signal processing device may calculate the second integral value by using the first integral value without recalculating the first integral value. (Appendix 16) A signal processing method comprising: calculating a first integral value corresponding to an element in a coefficient sequence of a first input sequence; adding, for said element, a value in a second input sequence following the first input sequence that does not overlap with the first input sequence to the first integral value; and subtracting, for said first input sequence, a value in the second input sequence that does not overlap with the second input sequence from the first integral value, to calculate a second integral value corresponding to said element in the coefficient sequence of the second input sequence. (Appendix 17) 1. A signal processing device that calculates a first integral value corresponding to an element in a coefficient sequence of a first input sequence, and calculates a second integral value corresponding to an element in a coefficient sequence of a second input sequence that follows the first input sequence, wherein the elements are representative coefficients that represent a plurality of filter coefficients included in a range set by values ​​of a plurality of filter coefficients, and the coefficient sequence is a series of the representative coefficients, and the signal processing device comprises an integral value calculation unit that calculates the second integral value for the elements based on the first integral value and the second input sequence. (Appendix 18) A signal processing device that receives an input, which is a signal value for controlling a current supplied to a gradient magnetic field coil, as an input series in the form of a pulse sequence, and outputs a position in k-space as an output signal value, the signal processing device comprising: calculating a first integral value from the received input corresponding to an element in a coefficient sequence of a first input sequence, calculating a second integral value corresponding to the element in a coefficient sequence of a second input sequence following the first input sequence, deriving a position in the k-space from the first integral value, and deriving a position in the k-space from the second integral value; an integral value calculation unit that adds, for the element, a value in the second input sequence that does not overlap with the first input sequence to the first integral value, and subtracts a value in the first input sequence that does not overlap with the second input sequence from the first integral value, to calculate the second integral value, Signal processing equipment for magnetic resonance imaging equipment. [Explanation of symbols]

[0122] 1. Signal Processing Device 3. Filter parameter determination device 5. Result output device 7. Signal input device 11 Communication Interface 13. Memory 15 Processing circuit 30 Processing circuit 31 Range determination function 32 Representative coefficient determination function 33 Memory 100 Magnetic resonance imaging device 101 Static Magnetic Field Magnet 103 Gradient magnetic field coil 105 Gradient magnetic field power supply 107 Sleeper 109 Bed control circuit 111 Bore 113 Transmitting Circuit 115 Transmitting Coil 117 Receiving Coil 119 Receiving circuit 121 Imaging control circuit 123 Storage device 125 Processing Circuit 127 Input / Output Interface 131 System Control Functions 133 Reconfiguration function 135 Adjustment function 151 Integral value calculation function 153 Signal value calculation function

Claims

1. 1. A signal processing device that calculates a first integral value corresponding to an element in a coefficient sequence of a first input sequence, and calculates a second integral value corresponding to the element in a coefficient sequence of a second input sequence subsequent to the first input sequence, an integral calculation unit that calculates the second integral value by adding, for the element, a value in the second input sequence that does not overlap with the first input sequence to the first integral value and subtracting, for the element, a value in the first input sequence that does not overlap with the second input sequence from the first integral value; a signal value calculation unit that calculates an output signal value corresponding to the second input sequence based on the second integral value and a coefficient sequence of the second input sequence; A signal processing device comprising:

2. the signal processing device calculates a third integral value corresponding to the element in a coefficient sequence of a third input sequence subsequent to the second input sequence, the integral calculation unit calculates, for the element, the third integral by adding a value in the third input number sequence that does not overlap with the second input number sequence to the second integral and subtracting a value in the second input number sequence that does not overlap with the third input number sequence from the second integral; the signal value calculation unit calculates an output signal value corresponding to the third input sequence based on the third integral value and a coefficient sequence of the third input sequence. The signal processing device according to claim 1 .

3. A signal processing device that calculates a first integral value corresponding to an element in a coefficient sequence of a first input sequence, and calculates a second integral value corresponding to the element in a coefficient sequence of a second input sequence subsequent to the first input sequence, an integral calculation unit that calculates the second integral value by adding, for the element, a value in the second input sequence that does not overlap with the first input sequence to the first integral value and subtracting, for the element, a value in the first input sequence that does not overlap with the second input sequence from the first integral value; Equipped with The coefficient sequence corresponds to a sequence of amplification factors for the input sequence. Signal processing device.

4. the integral value calculation unit and the signal value calculation unit form a finite impulse response type digital filter; 3. The signal processing device according to claim 1.

5. A signal processing device that calculates a first integral value corresponding to an element in a coefficient sequence of a first input sequence, and calculates a second integral value corresponding to said element in a coefficient sequence of a second input sequence subsequent to the first input sequence, comprising: an integral calculation unit that calculates the second integral value by adding, for the element, a value in the second input sequence that does not overlap with the first input sequence to the first integral value and subtracting, for the element, a value in the first input sequence that does not overlap with the second input sequence from the first integral value; Equipped with the element is a representative coefficient representing a plurality of filter coefficients included in a range set by the values ​​of the plurality of filter coefficients, The coefficient sequence is a series of the representative coefficients. Signal processing device.

6. the number of bits in the plurality of filter coefficients, the representative coefficient, the first integral value, and the second integral value is greater than the number of bits in the first input sequence and the number of bits in the second input sequence; The signal processing device according to claim 5 .

7. the number of bits in the plurality of filter coefficients, the representative coefficient, the first integral value, and the second integral value exceeds 32 bits; 7. The signal processing device according to claim 5 or 6.

8. the range is set by comparing a calculation result using the plurality of filter coefficients with a threshold value or by comparing the plurality of filter coefficients with a threshold value. The signal processing device according to any one of claims 5 to 7.

9. A signal processing device comprising: The signal processing device includes: using, as an input sequence, signal values ​​for controlling currents supplied to gradient coils in a pulse sequence; outputting a position in k-space as the output signal value; A magnetic resonance imaging apparatus further comprising an adjustment unit that corrects a position in k-space related to magnetic resonance data generated by execution of the pulse sequence based on the position in k-space, or modifies the pulse sequence.

10. The non-overlapping corresponds to a delay relative to the input sequence. A signal processing device according to any one of claims 1 to 9.

11. a storage unit that stores partial filter coefficient sequences in which a plurality of filter coefficients are arranged along filter indices that distinguish a plurality of filter coefficients belonging to each of a plurality of ranges of amplification factors for an input signal to a finite impulse response digital filter, for each set index that distinguishes a set of the filter indices; a range determination unit that determines a range of amplification factors of the plurality of filter coefficients determined to be included in the set of filter indexes based on the partial filter coefficient sequence corresponding to the set of filter indexes; a representative coefficient determination unit that determines a representative coefficient representing the plurality of filter coefficients for each of the plurality of ranges of amplification factors; The signal processing device according to any one of claims 1 to 10, further comprising:

12. the representative coefficient determination unit calculates an average of the plurality of filter coefficients for each of the plurality of amplification factor ranges to determine the representative coefficient. The signal processing device according to claim 11 .

13. the number of bits in the filter coefficients and the representative coefficients exceeds 32 bits; 13. The signal processing device according to claim 11 or 12.

14. On the computer, calculating a first integral value corresponding to an element in the coefficient sequence of the first input sequence; for the element, adding a value in a second input sequence following the first input sequence that does not overlap with the first input sequence to the first integral value, and subtracting a value in the first input sequence that does not overlap with the second input sequence from the first integral value, to calculate a second integral value corresponding to the element in the coefficient sequence of the second input sequence; calculating an output signal value corresponding to the second input sequence based on the second integral value and a coefficient sequence of the second input sequence; A signal processing program that realizes this.

15. A computer comprising: calculating a first integral value corresponding to an element in the coefficient sequence of the first input sequence; for the element, adding a value in a second input number sequence subsequent to the first input number sequence that does not overlap with the first input number sequence to the first integral value, and subtracting a value in the first input number sequence that does not overlap with the second input number sequence from the first integral value, to calculate a second integral value corresponding to the element in the coefficient sequence of the second input number sequence; To achieve this, The coefficient sequence corresponds to a sequence of amplification factors for the input sequence. Signal processing program.

16. A computer comprising: calculating a first integral value corresponding to an element in the coefficient sequence of the first input sequence; for the element, adding a value in a second input number sequence subsequent to the first input number sequence that does not overlap with the first input number sequence to the first integral value, and subtracting a value in the first input number sequence that does not overlap with the second input number sequence from the first integral value, to calculate a second integral value corresponding to the element in the coefficient sequence of the second input number sequence; To achieve this, the element is a representative coefficient representing a plurality of filter coefficients included in a range set by the values ​​of the plurality of filter coefficients, The coefficient sequence is a series of the representative coefficients. Signal processing program.

Citation Information

Patent Citations

  • Digital MRI receiver with reduced data truncation effects

    GB2303453A

  • Digital high pass filter

    JP1990305211A

  • Signal detector

    JP1991187512A

  • Radiation image converting device

    JP1995051257A

  • Method and apparatus for implementing a finite impulse response filter without using a multiplier

    JP2010512124A