Loudspeaker phase equalization signal processing system and pole parameter determination method thereof

By adopting a low-order IIR all-pass filter cascade system in the speaker phase equalization signal processing system, the problem of high computing complexity in the prior art is solved, and effective equalization of speaker phase and sound quality is achieved.

CN119767206AActive Publication Date: 2025-04-04NANJING UNIV
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411922435.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-25
Publication Date
2025-04-04
Estimated Expiration
2044-12-25

AI Technical Summary

Technical Problem

The prior art requires a high-order FIR filter when the low-frequency phase equalization of speakers, resulting in high computational complexity and difficult to implement in real-time signal processing systems.

Method used

The IIR all-pass filter cascade system with low operation complexity is adopted, including a first-order IIR all-pass filter and multiple low-order IIR all-pass filters. The speaker phase equalization is achieved through the pole parameter determination method.

Benefits of technology

This significantly reduces the amount of computation required for low-frequency phase equalization, and improves the linearity of the speaker's phase response, thereby improving sound quality and listening.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119767206A_ABST
    Figure CN119767206A_ABST
Patent Text Reader

Abstract

The invention discloses a loudspeaker phase equalization signal processing system and a pole parameter determination method thereof, a loudspeaker phase response is equalized into a linear phase within a set equalization frequency range, and the system comprises a phase regulator and a group delay equalizer which are cascaded; the phase regulator is a first-order IIR (Infinite Impulse Response) all-pass filter; the group delay equalizer comprises S cascaded low-order IIR (Infinite Impulse Response) all-pass filters, the first N1 low-order causal IIR all-pass filters are low-order causal IIR all-pass filters, and the last N2 low-order non-causal IIR all-pass filters are low-order non-causal IIR all-pass filters. The phase of the loudspeaker is balanced through the all-pass filter with low operation complexity and the parameters of the all-pass filter, the calculation amount required by low-frequency phase equalization can be remarkably reduced, the linearity degree of the phase response of the loudspeaker is improved, and therefore the tone quality is improved, and the hearing feeling is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention belongs to the technical field of audio signal processing, and relates to a loudspeaker phase equalization signal processing system and a pole parameter determination method thereof. Background Art

[0002] As an electroacoustic conversion device, the loudspeaker is not a perfect linear phase system. Components such as the transducer, electronic signal processing, and amplifier will cause the loudspeaker's phase response to be delayed and deviate from the ideal linear phase. This nonlinear phase response will introduce distortion in the time domain sound pressure output, making it difficult to accurately reproduce the original signal waveform. In the speaker response equalization, it is necessary to pre-compensate the phase.

[0003] All-pass filters can adjust the phase response of the system without affecting its amplitude response. All-pass filters are divided into finite impulse response (FIR) and infinite impulse response (IIR) all-pass filters. By filtering the input signal, the output of the entire system approximates a linear phase response. However, for low-frequency speaker phase equalization, the required IIR or FIR filter order is very high, resulting in a high filter operation cost, which is not easy to implement in a real-time signal processing system.

[0004] Prior art document 1 (201280068508.4) proposes the design of an audio pre-compensation controller using a variable set of supported speakers. The designed FIR filter achieves speaker phase equalization and requires more filter coefficients to achieve the required frequency response. The computational complexity is high, especially when equalizing the low-frequency phase of the speaker. In order to ensure sufficient frequency resolution, a very high-order FIR filter is required. Summary of the invention

[0005] In order to solve the deficiencies in the prior art, the present invention provides a loudspeaker phase equalization signal processing system and a pole parameter determination method thereof, which equalizes the phase of the loudspeaker through an all-pass filter with low computational complexity and its parameters, and can significantly reduce the amount of calculation required for low-frequency phase equalization and improve the linearity of the loudspeaker phase response, thereby improving the sound quality and the listening experience.

[0006] The present invention adopts the following technical solution.

[0007] A first aspect of the present invention provides a speaker phase equalization signal processing system, which equalizes the speaker phase response to a linear phase within a set equalization frequency range;

[0008] The system includes a cascaded phase regulator and a group delay equalizer;

[0009] The phase regulator is a first-order IIR all-pass filter, and its transfer function is The pole parameter is a adj =ρ adj , where z = e jω , ω is the frequency, e is the natural constant, ρ adj is the pole diameter;

[0010] The group delay equalizer includes S cascaded low-order IIR all-pass filters, of which the first N1 are low-order causal IIR all-pass filters and the last N2 are low-order non-causal IIR all-pass filters. The corresponding transfer function is The pole parameters are {a1,a2,…,a S},in is m s The transfer function of the first-order IIR all-pass filter, m s =1 or m s =2; s is the index of the cascaded low-order IIR all-pass filter, and when it is 1 to N1, it corresponds to N1 low-order causal IIR all-pass filters, and when it is N1+1 to S, it corresponds to N2 low-order non-causal IIR all-pass filters.

[0011] Preferably, for m s Transfer function of an IIR all-pass filter

[0012] m s =1, for:

[0013] Among them, σ s is the pole diameter of the first-order IIR all-pass filter pole;

[0014] m s =2, for:

[0015] Among them, ρ s ,θ s They are the complex conjugate poles of the second-order IIR all-pass filter. The polar diameter and polar angle.

[0016] Preferably, for the pole parameter a of the sth low-order IIR all-pass filter s :

[0017] m s =1, a s =σ s , σ s is the pole diameter of the first-order IIR all-pass filter pole;

[0018] ms =2, a s =[ρ s ,θ s ] T , ρ s and θ s is the complex conjugate pole of the second-order IIR all-pass filter The polar diameter and polar angle.

[0019] Preferably, the signal processing process of the non-causal all-pass filter is:

[0020] First, the input real-time signal is buffered and divided into continuous frames of length L. The signal of the pth frame is:

[0021] b p =[b((p-1)·L+1),b((p-1)·L+2),…,b(p·L)] T .

[0022] Where p is an integer, indicating the index of the frame; b((p-1)·L+1), b((p-1)·L+2), and b(p·L) represent the input real-time signals at discrete time (p-1)·L+1, (p-1)·L+2, and p·L;

[0023] Next, each frame is time-reversed and summed with the zero vector 0 of dimension 1×L 1×L The intermediate signal of the pth frame is merged to form an intermediate signal of dimension 2L×1.

[0024] q p =[b(p·L),b((p-1)·L+L-1),…,b((p-1)·L+1),0 1×L ] T .

[0025] Secondly, the intermediate signals [q1; q2; ...] are sequentially passed through the inverse function G2(z -1 ) is filtered and then time-reversed to obtain an output signal of dimension 2L×1;

[0026] Finally, the filtering result of the non-causal all-pass filter on the input signal is obtained according to the output signal. The filtering result y of the pth frame is p The expression is:

[0027]

[0028] Among them, u p-1 (L+1:2L) is the output signal u of the p-1th frame p-1 The last L elements of p (1:L) is the output signal u of the pth frame pu1(1:L) is the first L elements of the output signal u1 of the first frame.

[0029] A second aspect of the present invention provides a method for determining pole parameters applied to the loudspeaker phase equalization signal processing system, comprising:

[0030] Step 1: Perform acoustic measurement on the compensated speaker to obtain the speaker impulse response;

[0031] Step 2: Set the target angle φ t and the equalization frequency range [ω L ,ω H ], then the phase equalization goal is to obtain a linear phase where ω k is the kth discrete frequency, ω L ≤ω k ≤ω H , k=1,…,K, K=N / 2+1, N is the number of discrete Fourier transform points; ω L ,ω H They are the lower and upper limits of the equalization frequency range respectively; is the target group delay constant; at the same time, set the maximum order N max and frequency weighting function W = [W(ω1),…,W(ω K )], W(ω1) is the importance of discrete frequency ω1, W(ω K ) is the discrete frequency ω K The importance of

[0032] Step 3: Based on N max and W, calculate the pole parameters {a1, a2, …, a S The initial value of the speaker impulse response obtained in step 1 is approximately the phase response of the delay after filtering by the group delay equalizer using the initial value. The linear phase ω L ≤ω k ≤ω H , and then get the angle φ0;

[0033] Step 4: According to the angle φ0 and the target angle φ t Calculate the pole parameter a of the phase controller adj =ρ adj ;

[0034] Step 5: The speaker impulse response obtained in step 1 passes through the pole parameter a adj =ρ adj The phase response of the phase regulator after filtering is used to determine the pole parameters of the group delay equalizer {a1, a2, …, a S}Fine-tune the value.

[0035] Preferably, in step 3, the initial values ​​of the pole parameters of the group delay equalizer {a1, a2, ..., a S The calculation steps of} are as follows:

[0036] Step 301: Calculate the target group delay of the group delay equalizer: in, is the target group delay constant; τ0(ω k ) represents the group delay to be equalized at the kth discrete frequency, which is the value of the loudspeaker impulse response group delay after octave smoothing;

[0037] Step 302: Define the cost function J when cascading the sth low-order IIR all-pass filter s (a s ):

[0038]

[0039] where a s is the pole parameter of the sth low-order IIR all-pass filter, is the group delay of the sth low-order IIR all-pass filter at the kth discrete frequency, τ t (ω k ) is the target group delay at the kth discrete frequency, τ s-1 (ω k ) is the system group delay of the s-1 low-order IIR all-pass filters before cascading at the kth discrete frequency;

[0040] Step 303: determining the initial value of the pole parameter of the sth low-order IIR all-pass filter in the cascade by grid search and minimizing the cost function;

[0041] Step 304: using a line search iteration algorithm to calculate the pole parameters of the sth IIR all-pass filter in the cascade based on the initial value;

[0042] Step 305: Satisfy the cost function or N max When the output condition is , the pole parameters of all low-order IIR all-pass filters of the current cascade are output as the pole parameters of the group delay equalizer {a1, a2, …, a S}Initial value.

[0043] Preferably, in step 301, the target group delay constant for:

[0044]

[0045] Among them, [N e ,N e+1 ,…,N E] T is to calculate the logarithmically distributed discrete frequency index according to 1 / 24 octave resolution between the start index L and the end index H of the equalization frequency range;

[0046] τ0(ω H ) means in The group delay to be equalized at the discrete frequency point is the group delay of the loudspeaker impulse response after octave smoothing. The values ​​of discrete frequency points;

[0047] median(·) is the median function;

[0048] {·} T Transpose of a vector.

[0049] Preferably, step 303 specifically includes:

[0050] By searching the discrete grid p = {p h}, h = 1, ..., M to determine the initial value of the pole parameter of the cascaded low-order IIR all-pass filter, h is the pole index, and M is the total number of grid points;

[0051] The polar diameter range of the real poles in the discrete grid is 1.0101-1.1765, the polar diameter range of the complex poles is 0.78-0.96 and 1.0417-1.2821, and the polar diameters of the poles are linearly distributed within the polar diameter range, and the polar angles of the complex poles are logarithmically distributed within the balanced frequency range;

[0052] The real poles in the discrete grid correspond to the poles of the first-order IIR all-pass filter, the complex poles correspond to one of a pair of poles of the second-order IIR all-pass filter, the grid points within the unit circle correspond to the poles of the causal IIR all-pass filter, and the grid points outside the unit circle correspond to the poles of the non-causal IIR all-pass filter;

[0053] Grid point p h The corresponding filter group delay The group delay of all filters corresponding to the discrete grid Select the filter that minimizes the cost function. The initial value of the pole parameter of the sth low-order IIR all-pass filter is the corresponding grid point value:

[0054] The pole parameter of the sth low-order IIR all-pass filter corresponding to the real pole is initialized to a s (0) =ρ s ;

[0055] The pole parameter of the sth low-order IIR all-pass filter corresponding to the complex pole is initialized to a s (0) =[ρ s,θ s ] T .

[0056] Preferably, step 304 is specifically as follows:

[0057] With a s (0) As the initial condition, first find a search direction that reduces the cost function, then calculate the step size along this direction, iterate the pole parameters of the cascaded sth IIR all-pass filter to further reduce the cost function, and update the pole parameters of the sth IIR all-pass filter in each iteration. The update formula is:

[0058]

[0059] in, are the pole parameters of the sth IIR all-pass filter at the i+1th and ith iterations respectively; μ (i) is the step length, is the search direction;

[0060] When the iteration stop condition is met, the iteration is stopped and the pole parameter values ​​of the current sth IIR all-pass filter are saved.

[0061] Preferably, the step size is determined using Armijo's sufficient reduction condition, wherein Armijo's sufficient reduction condition is:

[0062]

[0063] in, It means that when the pole parameter of the sth IIR all-pass filter is The cost function value when It means that when the pole parameter of the sth IIR all-pass filter is The cost function value when , the coefficient γ∈(0,1), indicates that the reduction of the cost function value is sufficient and is consistent with μ (i) and is proportional to;

[0064] The cost function is The gradient value at .

[0065] If the above conditions are not met, the step size is iteratively reduced using the reduction factor κ: μ (i) ←κμ (i) , until the above conditions are met, μ (i) The final value of .

[0066] Preferably, the search direction is:

[0067]

[0068] in, is the error matrix at the i-th iteration The gradient of

[0069] H is the conjugate transpose;

[0070] is the group delay of the sth first-order IIR all-pass filter at the ith iteration relative to the pole parameter σ s The gradient of

[0071] are the group delay of the s-th second-order IIR all-pass filter relative to the pole parameter ρ at the ith iteration. s ,θ s The gradient of

[0072] for:

[0073]

[0074] in

[0075] m s =1, for

[0076] The group delay of the sth first-order IIR all-pass filter is relative to the pole parameter σ s The gradient of

[0077]

[0078] m s =2, for

[0079] The group delay of the sth second-order IIR all-pass filter with respect to the pole parameter ρ s and θ s The gradient of

[0080]

[0081] Preferably, the iteration stopping condition is: reaching the maximum number of iterations or α is the set tolerance.

[0082] Preferably, in step 305, based on the cost function or N max The output conditions are:

[0083] The cost function of cascading the sth low-order IIR all-pass filter increases to J s (a s )>J s-1 (as ), or, when the group delay equalizer order is N gd Greater than N max -1.

[0084] Preferably, in step 4, ρ adj The calculation formula is:

[0085]

[0086] Where q is based on φ t An intermediate variable for calculating the relationship between the magnitude of and φ0.

[0087] Preferably, step 5 is as follows:

[0088] With τ0'(ω k )=τ0(ω k )+τ adj (ω k ) is the group delay to be equalized, The target group delay is set by using the group delay equalizer pole parameters {a1, a2, …, a S}Specific calculation steps for the initial value calculation of the group delay equalizer pole parameters {a1, a2, …, a S} fine-tuning value, where τ0(ω k ) is the group delay of the loudspeaker impulse response, τ adj (ω k ) is the pole parameter a adj =ρ adj The group delay of the phase modulator.

[0089] A third aspect of the present invention provides a terminal, comprising a processor and a storage medium; the storage medium is used to store instructions;

[0090] The processor is configured to operate according to the instructions to execute the steps of the method.

[0091] A fourth aspect of the present invention provides a computer-readable storage medium having a computer program stored thereon, which implements the steps of the method when executed by a processor.

[0092] Compared with the prior art, the beneficial effects of the present invention include at least:

[0093] The present invention designs a phase equalization system and a parameter determination method thereof by a mixed cascade of causal and non-causal infinite impulse response (IIR) all-pass filters, wherein the use of non-causal IIR all-pass filters can generate negative group delays, which can replace the FIR filter method commonly used in the above-mentioned prior art. Compared with the prior art, the present invention uses a lower-order IIR all-pass filter to implement a phase equalization system, reducing the amount of calculation.

[0094] The present invention designs an IIR filter to achieve speaker phase equalization. Compared with an FIR filter, an IIR filter requires fewer filter coefficients to achieve a desired frequency response, so the computational complexity is lower. In particular, when equalizing the low-frequency phase of a speaker, in order to ensure sufficient frequency resolution, the present invention can design a lower-order IIR filter to equalize the low-frequency phase of the speaker, which can significantly reduce the amount of calculation required for equalizing the low-frequency phase of the speaker.

[0095] The present invention combines a non-causal filter when calculating the target group delay constant, so that the equalized target group delay constant can be smaller than the maximum value of the group delay to be equalized.

[0096] The present invention designs a cost function of a cascaded group delay equalizer according to the group delay. Instead of directly solving the high-order all-pass filter parameters, a set of low-order IIR all-pass filter parameters are solved, so that users can design a personalized phase equalizer according to the speakers used and application scenarios.

[0097] The present invention is based on t The relationship between the magnitude of and φ0 is used to calculate the phase regulator pole parameter a adj =ρ adj The designed phase controller can adjust the loudspeaker phase to the target angle φ t The linear phase When a multi-way speaker is working in combination, the phase of the multi-way speaker remains consistent in the crossover frequency band, which can be applied to the phase balance of the multi-way speaker. BRIEF DESCRIPTION OF THE DRAWINGS

[0098] Figure 1 It is a signal processing system for loudspeaker phase equalization;

[0099] Figure 1 The reference numerals in the figures are: 101 - phase regulator, 102 - causal IIR all-pass filter, 103 - non-causal all-pass filter, 104 - group delay equalizer, 105 - phase equalization signal processing system;

[0100] Figure 2 Flowchart for determining the initial value of the group delay equalizer;

[0101] Figure 3 A flow chart for determining the fine tuning values ​​of the pole parameters of the group delay equalizer;

[0102] Figure 4 for the woofer response;

[0103] Figure 5 The group delay to be balanced;

[0104] Figure 6 Delay for target group;

[0105] Figure 7 is a discrete grid;

[0106] Figure 8 is the initial value group delay equalizer group delay;

[0107] Fig. 9 is the phase equalization result;

[0108] Fig.10 The group delay to be balanced;

[0109] Fig.11 Delay for target group;

[0110] Fig.12 is the fine-tuned value group delay equalizer group delay;

[0111] Fig.13 is the phase equalization result. DETAILED DESCRIPTION

[0112] In order to make the purpose, technical scheme and advantages of the present invention clearer, the technical scheme of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. The embodiments described in this application are only part of the embodiments of the present invention, not all of them. Based on the spirit of the present invention, other embodiments obtained by ordinary technicians in this field without creative work are all within the scope of protection of the present invention.

[0113] Embodiment 1 of the present invention proposes a speaker phase equalization signal processing system, which can equalize the speaker phase response to a linear phase within a specified equalization frequency range. The linear phase means that the group delay is independent of the frequency and remains a constant. Specifically, the speaker phase equalization signal processing system is described as follows:

[0114] like Figure 1 As shown, the phase equalization signal processing system 105 is composed of a phase regulator 101 and a group delay equalizer 104 connected in cascade.

[0115] Figure 1 The phase regulator 101 is a first-order IIR all-pass filter, and the transfer function is The pole parameter of the phase regulator 101 is a adj =ρ adj , where z = e jω , ω is the frequency, e is the natural constant, ρ adj is the pole diameter.

[0116] Figure 1The group delay equalizer 104 is composed of a causal IIR all-pass filter 102 and a non-causal all-pass filter 103, that is, a cascade of N1 low-order causal IIR all-pass filters and N2 low-order non-causal IIR all-pass filters.

[0117] The causal IIR all-pass filter 102 is a cascade of N1 low-order causal IIR all-pass filters. The causal IIR all-pass filter 102 can be directly implemented.

[0118] The non-causal all-pass filter 103 is a cascade of N2 low-order non-causal IIR all-pass filters. The non-causal all-pass filter 103 is unstable and cannot be directly filtered.

[0119] The non-causal all-pass filter 103 is a cascade of N2 low-order non-causal IIR all-pass filters, and its transfer function is Since the non-causal all-pass filter 103 cannot be directly implemented, the inverse function G2(z) of its transfer function G2(z) -1 ) is a transfer function of a causal filter, which can be directly implemented. The filtering process of the non-causal all-pass filter 103 can be completed by the following steps:

[0120] The signal is first time-reversed and then passed through the non-causal all-pass filter 103 to transfer the inverse function G2(z -1 ) filter and time-reverse again.

[0121] Therefore, the signal processing method of the non-causal all-pass filter 103 is:

[0122] First, the input real-time signal is buffered and divided into continuous frames of length L. The signal of the pth frame is:

[0123] b p =[b((p-1)·L+1),b((p-1)·L+2),…,b(p·L)] T .

[0124] Where p is an integer, indicating the index of the frame;

[0125] b((p-1)·L+1), b((p-1)·L+2), and b(p·L) represent the input real-time signals at discrete times (p-1)·L+1, (p-1)·L+2, and p·L ((p-1)·L+1 is the discrete time index, (p-1)·L+2 is a sampling time after time (p-1·L+1), and so on;

[0126] b p is a set of L input real-time signals in discrete time. For example, the first frame signal is:

[0127] b1=[b(1),b(2),…,b(L)] T .

[0128] Next, each frame is time-reversed and summed with the zero vector 0 of dimension 1×L 1×L The intermediate signal of the pth frame is merged to form an intermediate signal of dimension 2L×1.

[0129] q p =[b(p·L),b((p-1)·L+L-1),…,b((p-1)·L+1),0 1×L ] T .

[0130] For example, the intermediate signal of the first frame is: q1 = [b(L), b(L-1), ..., b(1), 0 1×L ] T .

[0131] Secondly, the intermediate signals [q1; q2; ...] are sequentially passed through the inverse function G2 (z -1 ) is filtered and then time-reversed to obtain an output signal of dimension 2L×1. The output signal of the pth frame is represented by u p :u p =[u p ((p-1)·L+1),u p ((p-1)·L+2),…,u p (pL)] T For example, the output signal of the first frame is expressed as: u1 = [u1(1), u1(2), ..., u1(2L)] T , u1(1),u1(2),…,u1(2L) are the output results after filtering and time reversing the intermediate signal q1;

[0132] Finally, the filtering result of the non-causal all-pass filter 103 processing the input signal is obtained by overlapping and adding, and the filtering result y of the pth frame is p The expression is:

[0133]

[0134] Among them, u p-1 (L+1:2L)=[u p-1 (L+1),u p-1 (L+2),…,u p-1 (2L)] T for u p-1 The last L elements of p (1:L)=[u p (1),u p (2),…,up (L)] T for u p The first L elements of ;

[0135] u1(1:L)=[u1(1),u1(2),…,u1(L)] T are the first L elements of u1.

[0136] That is, the above expression is: when the frame number p = 1, the first L elements of u1 are output

[0137] u1(1:L)=[u1(1),u1(2),…,u1(L)] T ;

[0138] When the frame number p>1, output u p-1 The last L elements of

[0139] u p-1 (L+1:2L)=[u p-1 (L+1),u p-1 (L+2),…,u p-1 (2L)] T with u p The first L element u p (1:L)=[u p (1),u p (2),…,u p (L)] T The filtering result is obtained by overlapping and adding.

[0140] Group delay equalizer 104 transfer function A gd The expression is

[0141]

[0142] Where s is the index of the cascaded low-order IIR all-pass filter;

[0143] m s is the order of the cascaded low-order IIR all-pass filter (m s =1 or m s =2);

[0144] S is the total number of low-order IIR all-pass filters of the cascaded group delay equalizer 104 (S=N1+N2).

[0145] First-order IIR all-pass filter transfer function

[0146] Second-order IIR all-pass filter transfer function

[0147] a sThe pole parameters of the s-th cascaded low-order IIR all-pass filter are:

[0148] If the order of the sth cascaded IIR all-pass filter is m s =1,a s =σ s , σ s is the pole diameter of the first-order all-pass filter pole;

[0149] If the order of the sth cascaded IIR all-pass filter is m s =2, a s =[ρ s ,θ s ] T , ρ s and θ s is the complex conjugate pole of the second-order all-pass filter The polar diameter and polar angle.

[0150] The pole parameters of the group delay equalizer 104 are {a1, a2, ..., a S}.

[0151] In summary, the transfer function A of the phase equalization system 105 is eq The expression is

[0152]

[0153] The pole parameters that need to be determined in the phase equalization system 105 according to the characteristics of the compensated loudspeaker are {a adj ,a1,a2,…,a S}.

[0154] Embodiment 2 of the present invention proposes a parameter determination method applicable to the above-mentioned loudspeaker phase equalization signal processing system, specifically determining the parameters of the phase equalization system according to the characteristics of the compensated loudspeaker:

[0155] Step 1: Perform acoustic measurements on the speaker to be compensated and obtain its impulse response.

[0156] Step 2: The user sets a constant angle φ t (-π≤φ t ≤π) and the equalization frequency range [ω L ,ω H ], the balanced phase target is delay The linear phase where ω k is the kth discrete frequency, ω L ≤ω k ≤ω H , k=1,...,K, K=N / 2+1, N is the number of discrete Fourier transform points; ω L ,ωH are the lower and upper limits of the equalization frequency range respectively; the target group delay constant The median value of the logarithmic sampling after octave smoothing of the group delay of the equalized response. At the same time, the user can set the maximum order N of the phase equalization system max and a frequency weighting function W = [W(ω1),…,W(ω K )], W is a matrix of dimension 1×K, used to assign discrete frequencies ω1,...,ω K Different importance. For example, W(ω1) is the importance of discrete frequency ω1, W(ω1) is a constant, and W(ω K ) is the discrete frequency ω K The importance of W(ω K ) is a constant.

[0157] Step 3: Determine the initial values ​​of the pole parameters {a1, a2, ..., a S}, the phase response of the speaker impulse response after filtering by the initial value group delay equalizer 104 is approximately the delay The linear phase Then we get the angle φ0, which is used for calculation in step 4;

[0158] In a specific implementation, the group delay equalizer 104 is formed by cascading S low-order IIR all-pass filters, and the value of S is determined by a calculation process.

[0159] Calculate the initial values ​​of the pole parameters {a1, a2, ..., a1, a2, ..., a2, a1, a2, ... ... S}, the specific process is as follows Figure 2 shown.

[0160] Pole parameter a s Medium s When <1, the sth cascaded low-order IIR all-pass filter is a causal filter;

[0161] Pole parameter a s Medium s When >1, the s-th cascaded low-order IIR all-pass filter is a non-causal filter.

[0162] When the pole parameters of the group delay equalizer 104 {a1, a2, ..., a S}After the pole parameter a is determined, s Medium s The pole parameters of the causal all-pass filter 102 {a1, a2, ..., a N1} and non-causal all-pass filter 103 pole parameters {a N1+1 ,a N1+2 ,…,a S}.

[0163] Further preferably, the initial values ​​of the pole parameters of the group delay equalizer 104 {a1, a2, ..., a S The specific calculation steps of} are as follows:

[0164] Step 301: Calculate the target group delay τ of the group delay equalizer 104 t (ω k ): The target group delay is used to design the group delay equalizer 104. The group delay of the group delay equalizer 104 should be close to the target group delay. The cost function below uses the target group delay τ t (ω k );in, is the target group delay constant; τ0(ω k ) represents the group delay to be equalized at the kth discrete frequency, which is the value of the loudspeaker impulse response group delay after octave smoothing;

[0165] After the speaker impulse response is filtered by the group delay equalizer 104, the equalization frequency range [ω L ,ω H ] is a linear phase, and the group delay is kept constant. The group delay of the causal filter can only be positive. Since the present invention combines a non-causal filter, the target group delay τ of the group delay equalizer 104 is t (ω k ) can be negative. The target group delay constant It does not need to be greater than the group delay to be equalized τ0(ω k ). The target group delay constant of the present invention The calculation formula is:

[0166]

[0167] Among them, [N e ,N e+1 ,…,N E ] T is to calculate the logarithmically distributed discrete frequency index according to 1 / 24 octave resolution between the start index L and the end index H of the equalization frequency range;

[0168] τ0(ω H ) means in The group delay to be equalized at the discrete frequency point is the group delay of the loudspeaker impulse response after octave smoothing. The values ​​of discrete frequency points;

[0169] median(·) is the median function;

[0170] {·} TTranspose of a vector.

[0171] The group delay of the equalized signal is the speaker group delay plus the phase equalizer group delay. The goal of equalization is to make the speaker's response after filtering by the phase equalizer linear phase. The phase response and group delay expressions of the linear phase signal are:

[0172]

[0173] where ω k is the discrete frequency (ω L ≤ω k ≤ω H ), φ0 is a certain angle value (-π≤φ0≤π). That is, the response of the speaker after being filtered by the phase equalizer, its group delay is a constant Therefore, the target group delay τ of the group delay equalizer 104 is t (ω k ) is calculated as:

[0174]

[0175] Step 302: define a cost function;

[0176] The cost function derivation process is:

[0177] The group delay of the first-order IIR all-pass filter is τ1(ω k ) and the second-order IIR all-pass filter group delay τ2(ω k )for

[0178]

[0179] The cost function is the group delay τ of the group delay equalizer 104 gd (ω k ) and the target group delay τ t (ω k )

[0180]

[0181] Where K=N / 2+1, N is the number of discrete Fourier transform points.

[0182] The group delay of the group delay equalizer 104 is the sum of the group delays of the cascaded low-order filters, that is,

[0183]

[0184] The present invention is based on minimizing the cost function and sequentially calculates the initial value of the pole parameter {a1, a2, ...} of each low-order IIR all-pass filter in the cascade. The cost function when the sth filter is cascaded is:

[0185]

[0186] where a s is the pole parameter of the sth low-order IIR all-pass filter, τ s-1 (ω k ) is the system group delay of the first s-1 low-order IIR all-pass filters in the cascade, τ t (ω k ) is the target group delay at the kth discrete frequency, τ s-1 (ω k ) is the system group delay of the s-1 low-order IIR all-pass filters before cascading at the kth discrete frequency;.

[0187] Step 303: Grid search to determine the initial value of the sth low-order IIR all-pass filter in the cascade;

[0188] The initial values ​​of the pole parameters of the cascaded low-order IIR all-pass filter are obtained by searching the discrete grid p = {p h}, h=1,...,M, where M is the total number of grid points.

[0189] Assume that the range of the pole diameters of the real poles in the discrete grid is 1.0101~1.1765 (1 / 0.99~1 / 0.85), and the range of the pole diameters of the complex poles in the discrete grid is 0.78~0.96 and 1.0417~1.2821 (1 / 0.96~1 / 0.78).

[0190] The pole diameters are linearly distributed within the range of the pole diameters, with a distribution interval of 0.02.

[0191] The polar angles of the complex poles are distributed logarithmically within the normalized frequency corresponding to the equilibrium frequency range.

[0192] The real poles correspond to the poles of a first-order all-pass filter, and the complex poles correspond to one of a pair of poles of a second-order all-pass filter.

[0193] The grid points inside the unit circle correspond to the poles of the causal all-pass filter, and the grid points outside the unit circle correspond to the poles of the non-causal all-pass filter.

[0194] The group delay of all filters corresponding to the discrete grid

[0195] Let the cost function J s (a s )The smallest filter, the corresponding grid point p s =ρ s or

[0196] For real poles, the pole parameters of the sth low-order IIR all-pass filter are initialized to a s (0) =ρ s .

[0197] For complex poles, the pole parameters of the sth low-order IIR all-pass filter are initialized to a s (0) =[ρ s ,θ s ] T .

[0198] Step 304: Iterate the cascaded sth filter pole parameter using line search;

[0199] The initial condition for line search optimization is a s (0) , the line search first finds a cost function J s (a s ) descends in the search direction, and then calculates the step size moving along this direction, iterating the cascaded sth filter pole parameter to further reduce the cost function J s (a s ).

[0200] The sth filter pole parameter is updated in each iteration

[0201]

[0202] Where i is the number of iterations, μ (i) is the step length, To search for direction.

[0203] When the iteration stop condition is met, stop the iteration and save the sth filter parameter a s .

[0204] The iteration stop condition can be: maximum number of iterations, change (α is the specified tolerance).

[0205] Cost function J s (a s ) allows to calculate the gradient with respect to the filter parameters, searching in the direction It can be calculated by various methods, such as gradient descent, Newton method and quasi-Newton method. The Gauss-Newton (GN) method calculates the value of the ith iteration by The derivative of is expressed as the Jacobian matrix To calculate the search direction From this, the search direction can be deduced.

[0206] The error matrix of the i-th iteration is expressed as:

[0207]

[0208] in

[0209] The search direction for the i-th iteration is:

[0210]

[0211] in, is the error matrix at the i-th iteration The gradient of ; H is the conjugate transpose;

[0212] is the group delay of the sth first-order IIR all-pass filter at the ith iteration relative to the pole parameter σ s The gradient of

[0213] are the group delay of the s-th second-order IIR all-pass filter relative to the pole parameter ρ at the ith iteration. s ,θ s The gradient of

[0214] m s =1, for

[0215] The group delay of the sth first-order IIR all-pass filter is relative to the pole parameter σ s The gradient of

[0216]

[0217] m s =2, for

[0218] The group delay of the sth second-order IIR all-pass filter with respect to the pole parameter ρ s and θ s The gradient of

[0219]

[0220] The convergence speed of the line search also depends on the step size μ (i) The present invention uses Armijo's sufficient reduction condition to determine μ (i) Value. Armijo's sufficient reduction condition is:

[0221]

[0222] in, It means that when the pole parameter of the sth IIR all-pass filter is The cost function value when It means that when the pole parameter of the sth IIR all-pass filter is The cost function value when γ∈(0,1) indicates that the reduction in the cost function value is sufficient and is consistent with μ (i) and is proportional to;

[0223] For J s (a s )exist The gradient value at .

[0224] If the Armijo condition is not satisfied, the step size (μ) is iteratively reduced using the reduction factor (i) ←κμ (i) ).

[0225] When the Armijo condition is met, μ is obtained (i) The final value of .

[0226] Step 305: Output all low-order filter parameters of the cascade;

[0227] When the sth filter is cascaded, the error function increases by J s (a s )>J s-1 (a s ), stop calculating the cascade filter parameters, and output the pole parameters of all low-order filters in the cascade {a1, a2, …, a S}. Or when the group delay equalizer order is N gd Greater than N max When -1, stop calculating the parameters of the cascaded filter and output the pole parameters of all the cascaded filters {a1, a2, ..., a S}.

[0228] Step 4: According to the angle φ0 and the target angle φ t Determine the pole parameter a of the phase regulator 101 adj =ρ adj ;

[0229] When the multi-way speakers are working in combination, it is necessary to ensure that the phase of the multi-way speakers is consistent within the crossover frequency band. The multi-way speakers are equalized by the group delay equalizer 104 to have a linear phase. The φ0 values ​​of different loudspeakers may be inconsistent. The present invention designs a phase regulator 101 to ensure that the φ0 of the multi-way loudspeakers remains consistent.

[0230] Further preferably, the target phase response is:

[0231]

[0232] where φt A constant target value set by the user (-π≤φ t ≤π).

[0233] When φ t When it is inconsistent with φ0, the phase regulator is filtered to solve the phase regulator 101 parameter a adj =ρ adj .

[0234] The phase regulator 101 is a first-order all-pass filter, and its phase variation range is 0 to -π. By multiplying the signal by -1 and then filtering it through the phase regulator 101, a phase variation of -π to -2π can be achieved.

[0235] When φ t When φ0, the phase is directly controlled by filtering through the phase controller 101.

[0236] When φ t When φ>0, the signal is multiplied by -1 and then filtered by the phase regulator 101 for phase control.

[0237] According to φ t The pole parameter a of the phase regulator 101 is calculated by using φ0 adj =ρ adj , ρ adj The calculation formula is:

[0238]

[0239] Among them, ω L is the lower limit of the equalization frequency band, q is the calculation of ρ adj The value of q is based on φ t The relationship between φ0 and φ0 can be divided into two cases:

[0240] The phase modulator has an impact on the phase of the entire frequency. The above formula is a simple calculation method. If there is a slight deviation, ρ can be slightly adjusted. adj .

[0241] Step 5: Determine the fine-tuning value {a1, a2, ..., a1} of the pole parameter of the group delay equalizer 104 according to the phase response of the loudspeaker impulse response after being filtered by the phase regulator 101. S}.

[0242] Further preferably, the impulse response of the loudspeaker is first filtered by the phase regulator 101 and then filtered by the group delay equalizer 104. The pole parameter fine-tuning values ​​{a1, a2, ..., a S} is calculated based on the signal of the speaker impulse response after being filtered by the phase controller 101.

[0243] When calculating the initial value of the pole parameter of the group delay equalizer 104, the group delay to be equalized is the group delay τ0(ω k ). Calculate the target group delay of the pole parameter initial value of the group delay equalizer 104

[0244] Calculate the fine-tuning values ​​of the pole parameters of the group delay equalizer 104 {a1, a2, ..., a S}, the specific process is as follows Figure 3 shown.

[0245] When determining the fine-tuning value of the pole parameter of the group delay equalizer 104, the group delay to be equalized is no longer the group delay of the loudspeaker impulse response, but the group delay τ0(ω k ) and the pole parameter is a adj =ρ adj The group delay τ of the phase controller 101 adj (ω k ) and τ0'(ω k )=τ0(ω k )+τ adj (ω k ), calculate the target group delay τ of the pole parameter fine-tuning value of the group delay equalizer 104 t (ω k )for In addition to the different group delays to be equalized, the pole parameter fine-tuning values ​​{a1, a2, ..., a S} and the specific calculation steps of the group delay equalizer 104 pole parameter initial values ​​{a1, a2, ..., a S} The specific calculation steps are the same. That is, when calculating the pole parameter fine-tuning value of the group delay equalizer 104, {a1, a2, ..., a S In the specific calculation steps of the initial value, τ0'(ω k ) instead of replacing τ0(ω in step 301 k ), Replace with

[0246] The implementation and verification of the above scheme are as follows:

[0247] Figure 4 The three sub-graphs are the impulse response, frequency domain amplitude response, and frequency domain phase response of a woofer from top to bottom. Now we perform phase equalization on it. The system sampling rate is f s Set to 48kHz, the equalization frequency range is 0.0131~0.2618rad(100Hz~2kHz). Discrete Fourier transform points N=8192, K=4097, weighting function W=[0 18×1;30·1 80×1 ;15·1 200×1 ; 0 3798×1 ], frame length L=1024.

[0248] Determine the initial value of the pole parameter of the group delay equalizer 104: The group delay to be equalized and the target group delay obtained after 1 / 3 octave smoothing of the group delay of the woofer impulse response are as follows: Figure 5 , Figure 6 The generated discrete grid is shown as Figure 7 As shown, a grid search determines the initial values ​​of the filters in the cascade.

[0249] The maximum number of parameter iterations is 10, and the tolerance α=10 -6 , starting step length μ (1) = 0.9, the constant γ of the Armijo condition = 0.9, and the reduction factor κ = 0.8. Finally, when the stop condition is met, the pole parameters of the cascaded filter are saved. The initial values ​​of the pole parameters of the group delay equalizer are shown in Table 1. The group delay of the initial value group delay equalizer is shown in Figure 8 After the speaker response is filtered by the initial value group delay equalizer, the phase equalization result is as follows Fig. 9 shown.

[0250] Table 1 Cascaded filter types and pole parameters

[0251] Filter Type Second-Order Causation First-order non-causal Filter pole radius 0.9399 1.0101 Filter pole angle 0.2618 0

[0252] Balance target φ t =0, the pole parameter of the phase regulator is ρ adj = 0.993, multiply the signal by -1. When determining the fine-tuning value of the group delay equalizer pole parameter, the group delay to be equalized and the target group delay are respectively as follows: Fig.10 , Fig.11 shown.

[0253] The fine-tuning values ​​of the pole parameters of the group delay equalizer are shown in Table 2. The group delay of the fine-tuning group delay equalizer is as follows: Fig.12 shown.

[0254] Table 2 Cascade filter types and pole parameters

[0255] Filter Type Second-Order Causation First-order non-causal First-order non-causal Filter pole radius 0.9000 1.1111 1.1111 Filter pole angle 0.2299 0 0

[0256] In summary, the phase equalization system in this example consists of a phase controller (a first-order causal IIR all-pass filter ρ adj =0.993) and a group delay equalizer (a second-order causal IIR all-pass filter and two first-order non-causal IIR all-pass filters in cascade). The phase equalization system in this example is a fifth-order IIR all-pass filter. The phase equalization result of the speaker response after filtering by the phase equalization system is shown in Fig.13 shown.

[0257] The length of the FIR filter is N, and its frequency resolution Δf = f s / N. In this example, the lower limit of the equalization frequency is 100Hz, the frequency resolution is 5Hz, and the FIR filter length N=9600. In this example, the phase equalization system designed by the present invention is a fifth-order IIR all-pass filter. It can be seen that the use of the present invention to design a phase equalizer can significantly improve the linearity of the speaker phase response, while reducing the amount of calculation required for low-frequency phase equalization compared to the prior art.

[0258] Compared with the prior art, the beneficial effects of the present invention include at least:

[0259] The present invention designs a phase equalization system and a parameter determination method thereof by a mixed cascade of causal and non-causal infinite impulse response (IIR) all-pass filters, wherein the use of non-causal IIR all-pass filters can generate negative group delays, which can replace the FIR filter method commonly used in the above-mentioned prior art. Compared with the prior art, the present invention uses a lower-order IIR all-pass filter to implement a phase equalization system, reducing the amount of calculation.

[0260] The present invention designs an IIR filter to achieve speaker phase equalization. Compared with an FIR filter, an IIR filter requires fewer filter coefficients to achieve a desired frequency response, so the computational complexity is lower. In particular, when equalizing the low-frequency phase of a speaker, in order to ensure sufficient frequency resolution, the present invention can design a lower-order IIR filter to equalize the low-frequency phase of the speaker, which can significantly reduce the amount of calculation required for equalizing the low-frequency phase of the speaker.

[0261] The present invention combines a non-causal filter when calculating the target group delay constant, so that the equalized target group delay constant can be smaller than the maximum value of the group delay to be equalized.

[0262] The present invention designs a cost function of a cascaded group delay equalizer according to the group delay. Instead of directly solving the high-order all-pass filter parameters, a set of low-order IIR all-pass filter parameters are solved, so that users can design a personalized phase equalizer according to the speakers used and application scenarios.

[0263] The present invention is based on t The relationship between the magnitude of and φ0 is used to calculate the phase regulator pole parameter a adj =ρ adj The designed phase controller can adjust the loudspeaker phase to the target angle φ t The linear phase When a multi-way speaker is working in combination, the phase of the multi-way speaker remains consistent in the crossover frequency band, which can be applied to the phase balance of the multi-way speaker.

[0264] The present disclosure may be a system, a method and / or a computer program product. The computer program product may include a computer-readable storage medium carrying computer-readable program instructions for causing a processor to implement various aspects of the present disclosure.

[0265] A computer-readable storage medium may be a tangible device that can hold and store instructions used by an instruction execution device. A computer-readable storage medium may be, for example, but not limited to, an electrical storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples of computer-readable storage media (a non-exhaustive list) include: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disk read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanical encoding device, such as a punch card or a raised structure in a groove on which instructions are stored, and any suitable combination of the foregoing. As used herein, a computer-readable storage medium is not to be interpreted as a transient signal per se, such as a radio wave or other freely propagating electromagnetic wave, an electromagnetic wave propagating through a waveguide or other transmission medium (e.g., a light pulse through a fiber optic cable), or an electrical signal transmitted through a wire.

[0266] The computer-readable program instructions described herein can be downloaded from a computer-readable storage medium to each computing / processing device, or downloaded to an external computer or external storage device via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. The network can include copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. The network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in the computer-readable storage medium in each computing / processing device.

[0267] The computer program instructions for performing the operation of the present disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages, such as Smalltalk, C++, etc., and conventional procedural programming languages, such as "C" language or similar programming languages. Computer-readable program instructions may be executed completely on a user's computer, partially on a user's computer, as an independent software package, partially on a user's computer, partially on a remote computer, or completely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., using an Internet service provider to connect via the Internet). In some embodiments, an electronic circuit, such as a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA), may be customized by utilizing the state information of the computer-readable program instructions, and the electronic circuit may execute the computer-readable program instructions, thereby realizing various aspects of the present disclosure.

[0268] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention rather than to limit it. Although the present invention has been described in detail with reference to the above embodiments, ordinary technicians in the relevant field should understand that the specific implementation methods of the present invention can still be modified or replaced by equivalents, and any modifications or equivalent replacements that do not depart from the spirit and scope of the present invention should be covered within the scope of protection of the claims of the present invention.

Claims

1. A speaker phase equalization signal processing system, which equalizes the speaker phase response to a linear phase within a set equalization frequency range, characterized in that: The system includes a cascaded phase regulator and a group delay equalizer; The phase regulator is a first-order IIR all-pass filter, and its transfer function is The pole parameter is a adj =ρ adj , where z = e jω , ω is the frequency, e is the natural constant, ρ adj is the pole diameter; The group delay equalizer includes S cascaded low-order IIR all-pass filters, of which the first N1 are low-order causal IIR all-pass filters and the last N2 are low-order non-causal IIR all-pass filters. The corresponding transfer function is The pole parameters are {a1,a2,…,a S },in is m s Transfer function of an IIR all-pass filter of order m s =1 or m s =2; s is the index of the cascaded low-order IIR all-pass filter, and when it is 1 to N1, it corresponds to N1 low-order causal IIR all-pass filters, and when it is N1+1 to S, it corresponds to N2 low-order non-causal IIR all-pass filters.

2. A loudspeaker phase equalization signal processing system according to claim 1, characterized in that: For m s Transfer function of an IIR all-pass filter m s =1, for: Among them, σ s is the pole diameter of the first-order IIR all-pass filter pole; m s =2, for: Among them, ρ s ,θ s They are the complex conjugate poles of the second-order IIR all-pass filter. The polar diameter and polar angle.

3. A loudspeaker phase equalization signal processing system according to claim 1, characterized in that: For the pole parameter a of the sth low-order IIR all-pass filter s : m s =1, a s =σ s , σ s is the pole diameter of the first-order IIR all-pass filter pole; m s =2, a s =[ρ s ,θ s ] T , ρ s and θ s is the complex conjugate pole of the second-order IIR all-pass filter The polar diameter and polar angle.

4. The loudspeaker phase equalization signal processing system according to claim 1, characterized in that: The signal processing process of the non-causal all-pass filter is: First, the input real-time signal is buffered and divided into continuous frames of length L. The signal of the pth frame is: b p =[b((p-1)·L+1),b((p-1)·L+2),…,b(p·L)] T . Where p is an integer, indicating the index of the frame; b((p-1)·L+1), b((p-1)·L+2), and b(p·L) represent the input real-time signals at discrete time (p-1)·L+1, (p-1)·L+2, and p·L; Next, each frame is time-reversed and summed with the zero vector 0 of dimension 1×L 1×L Merge to form dimension The intermediate signal of 2L×1, the intermediate signal of the pth frame is expressed as: q p =[b(p·L),b((p-1)·L+L-1),…,b((p-1)·L+1),0 1×L ] T . Secondly, the intermediate signals [q1; q2; ...] are sequentially passed through the inverse function G2(z -1 ) is filtered and then time-reversed to obtain an output signal of dimension 2L×1; Finally, the filtering result of the non-causal all-pass filter on the input signal is obtained according to the output signal. The filtering result y of the pth frame is p The expression is: Among them, u p-1 (L+1:2L) is the output signal u of the p-1th frame p-1 The last L elements of p (1:L) is the output signal u of the pth frame p u1(1:L) is the first L elements of the output signal u1 of the first frame.

5. A method for determining pole parameters of a loudspeaker phase equalization signal processing system according to any one of claims 1 to 4, characterized in that: include: Step 1: Perform acoustic measurement on the compensated speaker to obtain the speaker impulse response; Step 2: Set the target angle φ t and the equalization frequency range [ω L ,ω H ], then the phase equalization goal is to obtain a linear phase where ω k is the kth discrete frequency, ω L ≤ω k ≤ω H , k=1,…,K, K=N / 2+1, N is the number of discrete Fourier transform points; ω L ,ω H They are the lower and upper limits of the equalization frequency range respectively; is the target group delay constant; at the same time, set the maximum order N max and frequency weighting function W = [W(ω1),…,W(ω K )], W(ω1) is the importance of discrete frequency ω1, W(ω K ) is the discrete frequency ω K The importance of Step 3: Based on N max and W, calculate the pole parameters {a1, a2, …, a S The initial value of the speaker impulse response obtained in step 1 is approximately the phase response of the delay after filtering by the group delay equalizer using the initial value. The linear phase ω L ≤ω k ≤ω H , and then get the angle φ0; Step 4: According to the angle φ0 and the target angle φ t Calculate the pole parameter a of the phase controller adj =ρ adj ; Step 5: The speaker impulse response obtained in step 1 passes through the pole parameter a adj =ρ adj The phase response of the phase regulator after filtering is used to determine the pole parameters {a1, a2, …, a S }Fine-tune the value.

6. The method for determining pole parameters according to claim 5, characterized in that: In step 3, the initial values ​​of the pole parameters of the group delay equalizer {a1, a2, …, a S The calculation steps of} are as follows: Step 301: Calculate the target group delay of the group delay equalizer: in, is the target group delay constant; τ0(ω k ) represents the group delay to be equalized at the kth discrete frequency, which is the value of the loudspeaker impulse response group delay after octave smoothing; Step 302: Define the cost function J when cascading the sth low-order IIR all-pass filter s (a s ): where a s is the pole parameter of the sth low-order IIR all-pass filter, is the group delay of the sth low-order IIR all-pass filter at the kth discrete frequency, τ t (ω k ) is the target group delay at the kth discrete frequency, τ s-1 (ω k ) is the system group delay of the s-1 low-order IIR all-pass filters before cascading at the kth discrete frequency; Step 303: determining the initial value of the pole parameter of the sth low-order IIR all-pass filter in the cascade by grid search and minimizing the cost function; Step 304: using a line search iteration algorithm to calculate the pole parameters of the sth IIR all-pass filter in the cascade based on the initial values; Step 305: Satisfy the cost function or N max When the output condition is , the pole parameters of all low-order IIR all-pass filters of the current cascade are output as the pole parameters of the group delay equalizer {a1, a2, …, a S }Initial value.

7. The method for determining pole parameters according to claim 6, characterized in that: In step 301, the target group delay constant for: Among them, [N e ,N e+1 ,…,N E ] T is to calculate the logarithmically distributed discrete frequency index according to 1 / 24 octave resolution between the start index L and the end index H of the equalization frequency range; Indicated in The group delay to be equalized at the discrete frequency point is the group delay of the loudspeaker impulse response after octave smoothing. The values ​​of discrete frequency points; median(·) is the median function; {·} T Transpose of a vector.

8. The method for determining pole parameters according to claim 6, characterized in that: Step 303 specifically includes: By searching the discrete grid p = {p h }, h = 1, ..., M to determine the initial value of the pole parameter of the cascaded low-order IIR all-pass filter, h is the pole index, and M is the total number of grid points; The polar diameter range of the real poles in the discrete grid is 1.0101-1.1765, the polar diameter range of the complex poles is 0.78-0.96 and 1.0417-1.2821, and the polar diameters of the poles are linearly distributed within the polar diameter range, and the polar angles of the complex poles are logarithmically distributed within the balanced frequency range; The real poles in the discrete grid correspond to the poles of the first-order IIR all-pass filter, the complex poles correspond to one of a pair of poles of the second-order IIR all-pass filter, the grid points within the unit circle correspond to the poles of the causal IIR all-pass filter, and the grid points outside the unit circle correspond to the poles of the non-causal IIR all-pass filter; Grid point p h The corresponding filter group delay The group delay of all filters corresponding to the discrete grid Select the filter that minimizes the cost function. The initial value of the pole parameter of the sth low-order IIR all-pass filter is the corresponding grid point value: The pole parameter of the sth low-order IIR all-pass filter corresponding to the real pole is initialized to a s (0) =ρ s ; The pole parameter of the sth low-order IIR all-pass filter corresponding to the complex pole is initialized to a s (0) =[ρ s ,θ s ] T .

9. The method for determining pole parameters according to claim 8, characterized in that: Step 304 is as follows: With a s (0) As the initial condition, first find a search direction that reduces the cost function, then calculate the step size along this direction, iterate the pole parameters of the cascaded sth IIR all-pass filter to further reduce the cost function, and update the pole parameters of the sth IIR all-pass filter in each iteration. The update formula is: in, are the pole parameters of the sth IIR all-pass filter at the i+1th and ith iterations respectively; μ (i) is the step length, is the search direction; When the iteration stop condition is met, the iteration is stopped and the pole parameter values ​​of the current sth IIR all-pass filter are saved.

10. The method for determining pole parameters according to claim 9, characterized in that: The step size is determined using Armijo's sufficient reduction condition, where Armijo's sufficient reduction condition is: in, It means that when the pole parameter of the sth IIR all-pass filter is The cost function value when It means that when the pole parameter of the sth IIR all-pass filter is The cost function value when , the coefficient γ∈(0,1), indicates that the reduction of the cost function value is sufficient and is consistent with μ (i) and is proportional to; The cost function is The gradient value at . If the above conditions are not met, the step size is iteratively reduced using the reduction factor κ: μ (i) ←κμ (i) , until the above conditions are met, μ (i) The final value of .

11. The method for determining pole parameters according to claim 9, characterized in that: The search direction is: in, is the error matrix at the i-th iteration The gradient of H is the conjugate transpose; is the group delay of the sth first-order IIR all-pass filter at the ith iteration relative to the pole parameter σ s The gradient of are the group delay of the s-th second-order IIR all-pass filter relative to the pole parameter ρ at the ith iteration. s ,θ s The gradient of for: in m s =1, for The group delay of the sth first-order IIR all-pass filter is relative to the pole parameter σ s The gradient of m s =2, for The group delay of the sth second-order IIR all-pass filter with respect to the pole parameter ρ s and θ s The gradient of 12. The method for determining pole parameters according to claim 9, characterized in that: The iteration stop condition is: reaching the maximum number of iterations or α is the set tolerance.

13. The method for determining pole parameters according to claim 6, characterized in that: In step 305, based on the cost function or N max The output conditions are: The cost function of cascading the sth low-order IIR all-pass filter increases to J s (a s )>J s-1 (a s ), or, when the group delay equalizer order is N gd Greater than N max -1.

14. The method for determining pole parameters according to claim 5, characterized in that: In step 4, ρ adj The calculation formula is: Where q is based on φ t An intermediate variable for calculating the relationship between the magnitude of and φ0.

15. The method for determining pole parameters according to claim 5, characterized in that: Step 5 is as follows: With τ0'(ω k )=τ0(ω k )+τ adj (ω k ) is the group delay to be equalized, The target group delay is set by using the group delay equalizer pole parameters {a1, a2, …, a S }Specific calculation steps for the initial value calculation of the group delay equalizer pole parameters {a1, a2, …, a S } fine-tuning value, where τ0(ω k ) is the group delay of the loudspeaker impulse response, τ adj (ω k ) is the pole parameter a adj =ρ adj The group delay of the phase modulator.

16. A terminal comprising a processor and a storage medium; characterized in that: The storage medium is used to store instructions; The processor is configured to operate according to the instructions to execute the steps of the method according to any one of claims 5-15.

17. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the steps of the method described in any one of claims 5 to 15 are implemented.

Citation Information

Patent Citations

  • All-pass filter for loudspeaker group delay compensation and design method thereof

    CN116709117A

  • Sound field calibration method based on frequency response adjustment and storage medium

    CN118843062A

  • Group delay correction in acoustic tranducer system

    GB201300215D0

  • A recursive fir digital filter

    WO2023148540A1