FILTER GENERATION DEVICE, FILTER GENERATION METHOD, AND PROGRAM
The filter generation device improves dereverberation accuracy by using multiple reverberation prediction filters and adjusting forgetting weights, effectively addressing model errors in noisy and underdetermined conditions.
Patent Information
- Application Number
- JP2023529363
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-06-24
- Publication Date
- 2025-01-15
- Estimated Expiration
- 2041-06-24
AI Technical Summary
Existing online dereverberation techniques, such as online WPE, suffer from deteriorating performance due to model errors in noisy environments and underdetermined conditions where the number of sound sources exceeds the number of microphones.
A filter generation device that uses a model with multiple reverberation prediction filters, adjusting forgetting weights and selecting optimal filters based on a cost function to minimize errors, thereby improving dereverberation accuracy.
The proposed method enables highly accurate dereverberation even under noisy environments and underdetermined conditions, reducing model errors and enhancing speech recognition performance.
Smart Images

Figure 0007613585000066 
Figure 0007613585000067 
Figure 0007613585000068
Abstract
Description
[Technical field]
[0001] The present invention relates to techniques for generating a dereverberated signal from a mixed acoustic signal observed using one or more microphones. [Background technology]
[0002] Online dereverberation technology, which generates a signal (hereinafter referred to as a dereverberated signal) by sequentially removing reverberation from a mixed acoustic signal (hereinafter referred to as an observed signal) observed using one or more microphones, is widely used for preprocessing of speech recognition, etc. As an online dereverberation technology, for example, online WPE (Online Weighted Prediction Error) described in Non-Patent Document 1 is known. [Prior art documents] [Non-patent literature]
[0003] [Non-Patent Document 1] T. Yoshioka and T. Nakatani, “Dereverberation for reverberation-robust microphone arrays,” in Proc. EUSIPCO, pp.1-5, 2013. Summary of the Invention [Problem to be solved by the invention]
[0004] However, since online WPE uses a simple linear prediction filter as a reverberation prediction filter, in noisy environments or underdetermined conditions where the number of sound sources is greater than the number of microphones, there is a problem that the dereverberation performance deteriorates due to model errors, that is, errors caused by the inability to fully express an ideal reverberation prediction filter in the form of a linear prediction filter.
[0005] Therefore, an object of the present invention is to provide a dereverberation technique that is highly accurate even in a noisy environment or underdetermined conditions.
Means for Solving the Problem
[0006] One aspect of the present invention is a filter generation device that generates a reverberation prediction filter G[t] to be used at time t from an observation signal x[t] at time t and observation signals x[1],..., x[t - 1] at times 1,..., t - 1 before time t. Let C be the number of reverberation prediction filters, G[i, c] (c = 1,..., C) be the reverberation prediction filter at time i, and α[i, c] (c = 1,..., C) (where α[i, c] ∈ {0, 1}, Σ c=1 C α[i, c] = 1) be a parameter indicating the reverberation prediction filter to be used at time i. Using the observation signals x[1],..., x[t] and the forgetting weights γ t [i, 1], …, γ t [i, C] (i = 1,..., t), the reverberation prediction filters G[t, c] (c = 1,..., C) and parameters α[t, c] (c = 1,..., C) that minimize a predetermined equation calculated are used, and G[t] = Σ c=1 C α[t, c]G[t, c] to generate a reverberation prediction filter G[t], including a filter generation unit. The forgetting weights γ t [i, 1], …, γ t [i, C] are such that the fewer the reverberation prediction filters G[i, c], …, G[t, c] (c = 1,..., C) corresponding to the forgetting weight γ t [i, c] that are selected as the reverberation prediction filters to be applied to the observation signal during the time from time i to time t, which is t - i time units before time t, the larger the value they take.
[0007] One aspect of the present invention is a filter generation device that generates a reverberation prediction filter G[t] to be used at time t from an observation signal x[t] at time t. Let C be the number of reverberation prediction filters, G[c] (c = 1,..., C) be the reverberation prediction filters, p be a constant satisfying 0 < p ≤ 2, β be a constant satisfying 0 < β ≤ 1, θ be a constant satisfying 0 ≤ θ ≤ 1, and the switch c be given by the following equation *A switch determination unit that determines
[0008]
number
[0009] (where L is the filter length and Δ is the prediction delay, ^x[t]=[x[t-Δ] T , …, x[t-Δ-L+1] T ] T )
[0010]
number
[0011] The reverberation prediction filter G[c * ] as a reverberation prediction filter G[t];
[0012]
number
[0013]
number
[0014]
number
[0015] A matrix update unit that updates the matrix B[c] according to the following equation:
[0016]
number
[0017] Includes. Effect of the Invention
[0018] According to the present invention, highly accurate dereverberation is possible even in a noisy environment or under determined conditions. [Brief description of the drawings]
[0019] [Figure 1] 1 is a block diagram showing a configuration of a filter generating device 100. FIG. [Diagram 2] 4 is a flowchart showing the operation of the filter generating device 100. [Diagram 3] FIG. 2 is a block diagram showing a configuration of a dereverberated signal generating device 200. [Figure 4] 5 is a flowchart showing the operation of the dereverberated signal generating apparatus 200. [Diagram 5] FIG. 2 is a block diagram showing a configuration of a filter generating device 300. [Figure 6] 4 is a flowchart showing the operation of the filter generating device 300. [Figure 7] FIG. 4 is a block diagram showing a configuration of a dereverberated signal generating device 400. [Figure 8] 13 is a flowchart showing the operation of the dereverberated signal generating apparatus 400. [Figure 9] FIG. 2 is a diagram illustrating an example of a functional configuration of a computer that realizes each device according to an embodiment of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0020] Hereinafter, an embodiment of the present invention will be described in detail. Note that components having the same functions are given the same reference numbers and duplicated explanations will be omitted.
[0021] Before describing each embodiment, the notation used in this specification will be described.
[0022] ^ (caret) represents a superscript. For example, x y^z Yes z is a superscript to x, and x y^z Yes zis a subscript to x. Also, _ (underscore) represents a subscript. For example, x y_z Yes z is a superscript to x, and x y_z Yes z is a subscript on x.
[0023] The superscripts "^" and "~" such as ^x and ~x for a certain letter x should actually be written directly above the "x", but due to the constraints of the description in the specification, they are written as ^x and ~x. <Technical background> First, an online switching WPE, which is a dereverberation technique used in an embodiment of the present invention, will be described.
[0024] The online dereverberation problem addressed in this invention is the problem of estimating a dereverberated signal z[f, t] at time t from an observed signal x[f, t] at time t and observed signals x[f, t-1], ..., x[f, 1] at previous times t-1, ..., 1, where M is the number of microphones and K is the number of sound sources.
[0025]
number
[0026] (where f is a parameter representing a frequency bin, t is a parameter representing time, and s[f, t]∈C K is the acoustic signal from K sound sources, n[f, t]∈C M is the background noise signal, (A[f, τ]) τ=0 N is the acoustic transfer function from the sound source to the microphone (where A[f, τ]∈C M×K , N is the order of the acoustic transfer function A)
[0027]
number
[0028] (However, n’[f, t] ∈ C M is the background noise signal after reverberation removal) Hereinafter, since the online reverberation removal problem can be independently handled for each frequency bin f, the symbol f representing the frequency bin will be omitted for simplicity.
[0029] The model of the online switching WPE, which is the solution to the online reverberation removal problem, is defined as the solution to the optimization problem in Equation (1), with p(0 < p ≤ 2), β(0 < β ≤ 1), and θ(0 ≤ θ ≤ 1) as the hyperparameters of the model.
[0030]
Number
[0031] (where C is the number of reverberation prediction filters and c represents the parameter representing the reverberation prediction filter)
[0032]
Number
[0033]
Number
[0034] (where L is the filter length and Δ represents the prediction delay)
[0035]
Number
[0036]
Number
[0037]
Number
[0038] In formula (1), β N_t[i,c] α[i,c] is the cost term ||z t [i,c]||2 p represents the adaptive weight of
[0039] Here, G[t] = (G[t, c]) c=1 C , α[t]=(α[t, c]) c=1 C are the model variables at time t, i.e., the parameters to be estimated in the online switching WPE model, and G[t] = (G[t, c]) c=1 C is the reverberation prediction filter at time t, α[t]=(α[t, c]) c=1 C represents a parameter indicating the reverberation prediction filter to be used at time t.
[0040] The hyperparameters p, β, and θ used in the online switching WPE model are predefined. The hyperparameter p is the shape parameter of the generalized normal distribution that the dereverberated signal follows, the hyperparameter β is the forgetting coefficient, and the hyperparameter θ is the forgetting weight β N_t[i,c] This is a parameter that adjusts the forgetting speed.
[0041] Here, the forgetting weight β at time t N_t[i, 1] , …, β N_t[i, C] is the forgetting weight β N_t[i, c] The smaller the number of reverberation prediction filters G[i,c], …, G[t,c] (c=1, …, C) corresponding to the i, c filter selected as the reverberation prediction filter to be applied to the observed signal, the larger the value of the i, c filter.
[0042] It should be noted that the online switching WPE coincides with the online WPE in Non-Patent Document 1 when C=1.
[0043] Online switching WPE has the following two features: (Feature 1) Online switching WPE generates a dereverberated signal z[f, t] by selecting and using the optimal reverberation prediction filter from C reverberation prediction filters at each time t and each frequency bin f. This reduces model errors in noisy environments and underdetermined conditions, which were problems with online WPE, and improves dereverberation performance. (Feature 2) Online switching WPE uses forgetting weight β N_t[i,c] The forgetting speed of is adjusted by equation (2) and equation (3). The details are explained below. From equation (2)' and equation (3), which are equivalent to equation (2), the forgetting weight β N_t[i,c] (i=1, …, t-1) is the β δ[t,c] It can be seen that the signal decays by a factor of t and the decay rate δ[t, c] is adjusted by equation (3).
[0044]
number
[0045] For example, when θ=1, δ[t, c]=1, and the forgetting weights β N_t[i,c] is multiplied by β, so the decay rate is fast. For example, when θ=0, δ[t, c]=α[t, c], and at time t, α[t, c * ]=1. * Forgetting weight β N_t[i,c^*] The forgetting weights for the other reverberation prediction filters c are N_t[i,c] does not decay, so the decay rate is slow.
[0046] We will now explain the algorithm for solving the optimization problem in equation (1) (hereafter referred to as the optimization algorithm). First, we will explain the theoretical background of the optimization algorithm. In this optimization algorithm, the parameter α[t] and the reverberation prediction filter G[t] are updated alternately. (1) Calculation of parameter α[t] Calculate α[t, c] (c=1, …, C) using the following formula:
[0047]
number
[0048] c=argmin c ||z t [t]||2 2 Meet c and switch c * For α[t, c * ]=1 holds. (2) Calculate the reverberation prediction filter G[t] First, w t Calculate [t, c], c = 1, …, C.
[0049]
number
[0050] Next, calculate G[t, c] (c=1, …, C), where G[t, c] satisfies equation (5).
[0051]
number
[0052] G[t, c] (c=1, …, C) that satisfies equation (5) can be obtained as follows:
[0053]
number
[0054]
number
[0055]
number
[0056] However, it takes time to calculate G[t, c] using equations (6), (7), and (8). t [i,c]=w i Assuming that [i,c] (i=1, …, t-1, c=1, …, C), equations (7)' and (8)' can be obtained from equations (7) and (8).
[0057]
number
[0058]
number
[0059] Instead of using equations (6), (7), and (8), we use equations (6), (7)', and (8)' to calculate G[t, c].
[0060] Furthermore, the matrix B[t, c] (c=1, …, C) (where B[t, c]=(β δ[t,c] R[t, c]) -1 If we set α[t, c]=0, we can obtain equations (9) and (10) from equations (7)' and (8)'.
[0061]
number
[0062]
number
[0063] Furthermore, if α[t, c]=1, then equation (11) can be obtained from equation (7)'.
[0064]
number
[0065] From these equations, the following equations that form the theoretical background of the optimization algorithm are derived.
[0066]
Number
[0067]
Number
[0068]
Number
[0069] The optimization algorithm based on Equation (12), Equation (13), and Equation (14) is shown below. This algorithm is called the RLS (Recursive Least Square) algorithm. [Optimization Algorithm] Input: Observation signals x[1],..., x[T] ∈ C M Output: Reverberation cancellation signals z[1],..., z[T] ∈ C M (1) Initialization Set hyperparameters p, β, θ. However, the hyperparameters p, β, θ should satisfy 0 < p ≤ 2, 0 < β ≤ 1, and 0 ≤ θ ≤ 1, respectively.
[0070] Set the initial value of parameter t. That is, set t ← 1.
[0071] Set the initial values of the reverberation prediction filters G[c] (c = 1,..., C). For example, set the initial values of G[c] (c = 1,..., C) to zero matrices. That is, set G[c] ← O.
[0072] Set the initial values of the matrices B[c] (c = 1,..., C). For example, set the initial values of B[c] (c = 1,..., C) to identity matrices. That is, set B[c] ← I. (2) Switch C * Decision First, calculate z[t, c] (c=1, …, C) using the following formula:
[0073]
number
[0074] (where L is the filter length and Δ is the prediction delay, ^x[t]=[x[t-Δ] T , …, x[t-Δ-L+1] T ] T ) Next, switch c * Determine.
[0075]
number
[0076] (3) Reverberation prediction filter G[c * Calculation of First, by the following formula, w[c * ] is calculated.
[0077]
number
[0078] Next, the reverberation prediction filter G[c * ] is calculated.
[0079]
number
[0080]
number
[0081] (4) Generation of the dereverberated signal z[t] The dereverberated signal z[t] is calculated by the following equation:
[0082]
number
[0083] (5) Update matrix B[c] The matrix B[c * ] to update.
[0084]
number
[0085] In addition, the matrix B[c](c≠c * ) to update the
[0086]
number
[0087] (6) Update the parameter t Let t←t+1. (7) Determining the termination condition If the termination condition is met, that is, if t>T, the process is terminated, whereas otherwise the process returns to step (2). First Embodiment The filter generating device 100 generates a reverberation prediction filter G[t] to be used at time t, for t=1, ..., T, from an observed signal x[t] at time t and observed signals x[1], ..., x[t-1] at times 1, ..., t-1 prior to time t. Here, the observed signal refers to a mixed acoustic signal from K sound sources observed using M microphones (where K and M are integers equal to or greater than 1). Note that the observed signal x[t] at time t refers to an observed signal of a certain frequency bin at time t. Also, C is the number of reverberation prediction filters, G[i, c] (c=1, ..., C) is a reverberation prediction filter at time i, α[i, c] (c=1, ..., C) (where α[i, c]∈{0, 1}, Σ c=1 CLet the parameter indicate the reverberation prediction filter used at time i that satisfies α[i, c]=1.
[0088] Hereinafter, the filter generation device 100 will be described with reference to FIGS. 1 to 2. FIG. 1 is a block diagram showing the configuration of the filter generation device 100. FIG. 2 is a flowchart showing the operation of the filter generation device 100. As shown in FIG. 1, the filter generation device 100 includes an initialization unit 110, a filter generation unit 120, a counter update unit 130, an end condition determination unit 140, and a recording unit 190. The recording unit 190 is a component that appropriately records information necessary for the processing of the filter generation device 100.
[0089] The operation of the filter generation device 100 will be described according to FIG. 2.
[0090] In S110, the initialization unit 110 sets the initial values of the parameters. Specifically, the initialization unit 110 sets the initial value of the parameter t. That is, the initialization unit 310 sets t←1.
[0091] In S120, the filter generation unit 120 takes the observation signals x[1],..., x[t] as inputs, and uses the observation signals x[1],..., x[t] and the forgetting weights γ t [i, 1], …, γ t [i, C] (i = 1, …, t) to minimize a predetermined formula, and uses the reverberation prediction filter G[t, c] (c = 1, …, C) and the parameter α[t, c] (c = 1, …, C) to generate and output the reverberation prediction filter G[t] by G[t]=Σ c=1 C α[t, c]G[t, c]. The predetermined formula has p as a constant satisfying 0 < p ≦ 2, β as a constant satisfying 0 < β ≦ 1, and θ as a constant satisfying 0 ≦ θ ≦ 1,
[0092]
Equation
[0093] (Here,
[0094]
number
[0095] (where L is the filter length and Δ is the prediction delay, ^x[t]=[x[t-Δ] T , …, x[t-Δ-L+1] T ] T )). In addition, the forgetting weight γ t [i, c] is
[0096]
number
[0097]
number
[0098]
number
[0099] It is.
[0100] Therefore, the forgetting weight γ t [i, 1], …, γ t [i, C] is the forgetting weight γ t The smaller the number of reverberation prediction filters G[i, c], …, G[t, c] (c=1, …, C) corresponding to [i, c] that are selected as the reverberation prediction filters to be applied to the observed signal, the larger the value takes.
[0101] In S130, the counter update unit 130 increments the counter t by 1. In other words, the counter update unit 130 sets t←t+1.
[0102] In S140, if the counter t reaches a predetermined constant (i.e., if the counter t satisfies t>T), the termination condition determination unit 140 outputs the reverberation prediction filter G[t] (t=1, ..., T) and terminates the process, whereas in other cases, the process returns to S120 and repeats the processes of S120 to S140. Note that the reverberation prediction filter G[t] (t=1, ..., T) may be output from the filter generating device 100 every time a reverberation prediction filter G[t] is generated in S120.
[0103] According to an embodiment of the present invention, it is possible to generate a reverberation prediction filter that enables highly accurate dereverberation even in a noisy environment or underdetermined conditions. <Second embodiment> The dereverberated signal generating apparatus 200 generates a dereverberated signal from an observed signal by using the reverberation prediction filter generated by the filter generating apparatus 100. That is, for t=1, ..., T, the dereverberated signal generating apparatus 200 generates a dereverberated signal z[t] at time t from an observed signal x[t] at time t and observed signals x[1], ..., x[t-1] at times 1, ..., t-1 prior to time t.
[0104] The dereverberated signal generating device 200 will be described below with reference to Figs. 3 and 4. Fig. 3 is a block diagram showing the configuration of the dereverberated signal generating device 200. Fig. 4 is a flowchart showing the operation of the dereverberated signal generating device 200. As shown in Fig. 3, the dereverberated signal generating device 200 includes an initialization unit 110, a filter generating unit 120, a dereverberated signal generating unit 210, a counter updating unit 130, a termination condition determining unit 140, and a recording unit 190. The recording unit 190 is a component that appropriately records information required for the processing of the dereverberated signal generating device 200. In other words, the dereverberated signal generating device 200 differs from the filter generating device 100 only in that the dereverberated signal generating device 200 further includes the dereverberated signal generating unit 210.
[0105] The operation of the dereverberated signal generating apparatus 200 will be described with reference to Fig. 4. Here, only the operation of the dereverberated signal generating unit 210 will be described.
[0106] In S210, the dereverberated signal generation unit 210 receives the observed signal x[t] and the reverberation prediction filter G[t] generated in S120 as input, generates and outputs a dereverberated signal z[t] at time t using z[t] = G[t]x[t].
[0107] Note that the termination condition determination unit 140 outputs the dereverberated signal z[t] (t=1, ..., T) instead of outputting the reverberation prediction filter G[t] (t=1, ..., T). The dereverberated signal z[t] (t=1, ..., T) may be output from the dereverberated signal generating device 200 every time a dereverberated signal z[t] is generated in S210.
[0108] According to an embodiment of the present invention, a dereverberated signal with high accuracy can be generated even in a noisy environment or underdetermined condition. <Third embodiment> The filter generating device 300 generates a reverberation prediction filter G[t] to be used at time t from an observed signal x[t] at time t for t=1, ..., T. Here, the observed signal refers to a mixed acoustic signal from K sound sources observed using M microphones (where K and M are integers equal to or greater than 1). Note that the observed signal x[t] at time t refers to an observed signal of a certain frequency bin at time t. Also, C is the number of reverberation prediction filters, and G[c] (c=1, ..., C) is a reverberation prediction filter.
[0109] Hereinafter, the filter generation device 300 will be described with reference to Figs. 5 and 6. Fig. 5 is a block diagram showing the configuration of the filter generation device 300. Fig. 6 is a flowchart showing the operation of the filter generation device 300. As shown in Fig. 5, the filter generation device 300 includes an initialization unit 310, a switch determination unit 320, a filter generation unit 330, a matrix update unit 340, a counter update unit 350, a termination condition determination unit 360, and a recording unit 390. The recording unit 390 is a component that appropriately records information necessary for the processing of the filter generation device 300.
[0110] The operation of the filter generating device 300 will be described with reference to FIG.
[0111] In S310, the initialization unit 310 sets hyperparameters and initial values of parameters. Specifically, the initialization unit 310 sets hyperparameters p, β, θ (where the hyperparameters p, β, θ satisfy 0 < p ≤ 2, 0 < β ≤ 1, and 0 ≤ θ ≤ 1, respectively). Also, the initialization unit 310 sets the initial value of parameter t. That is, the initialization unit 310 sets t ← 1. Further, the initialization unit 310 sets the initial values of the reverberation prediction filters G[c] (c = 1, …, C). That is, the initialization unit 310 sets G[c] ← O. Additionally, the initialization unit 310 sets the initial values of the matrices B[c] (c = 1, …, C). That is, the initialization unit 310 sets B[c] ← I.
[0112] In S320, the switch determination unit 320 determines and outputs switch c * by the following formula.
[0113]
Equation
[0114] (where L is the filter length and Δ is the prediction delay, and ^x[t] = [x[t - Δ] T , …, x[t - Δ - L + 1] T ) T
[0115]
Equation
[0116] In S330, the filter generation unit 330 calculates the reverberation prediction filter G[c * by the following formula, sets it as the reverberation prediction filter G[t], and outputs it.
[0117]
Equation
[0118]
number
[0119]
number
[0120] In S340, the matrix update section 340 updates and outputs the matrix B[c] according to the following equation.
[0121]
number
[0122] In S350, the counter update unit 350 increments the counter t by 1. In other words, the counter update unit 350 sets t←t+1.
[0123] In S360, if the counter t reaches a predetermined constant (i.e., if the counter t satisfies t>T), the termination condition determination unit 360 outputs the reverberation prediction filter G[t] (t=1, ..., T) and terminates the process, whereas in other cases, the process returns to S320 and repeats the processes of S320 to S360. Note that the reverberation prediction filter G[t] (t=1, ..., T) may be output from the filter generating device 300 every time a reverberation prediction filter G[t] is generated in S330.
[0124] According to an embodiment of the present invention, it is possible to generate a reverberation prediction filter that enables highly accurate dereverberation even in a noisy environment or underdetermined conditions. <Fourth embodiment> The dereverberated signal generating apparatus 400 generates a dereverberated signal from an observed signal by using the reverberation prediction filter generated by the filter generating apparatus 300. That is, for t=1, ..., T, the dereverberated signal generating apparatus 400 generates a dereverberated signal z[t] at time t from an observed signal x[t] at time t.
[0125] The dereverberated signal generating device 400 will be described below with reference to Figs. 7 and 8. Fig. 7 is a block diagram showing the configuration of the dereverberated signal generating device 400. Fig. 8 is a flowchart showing the operation of the dereverberated signal generating device 400. As shown in Fig. 7, the dereverberated signal generating device 400 includes an initialization unit 310, a switch determination unit 320, a filter generating unit 330, a dereverberated signal generating unit 410, a matrix updating unit 340, a counter updating unit 350, a termination condition determining unit 360, and a recording unit 390. The recording unit 390 is a component that appropriately records information required for the processing of the dereverberated signal generating device 400. In other words, the dereverberated signal generating device 400 differs from the filter generating device 300 only in that the dereverberated signal generating device 400 further includes the dereverberated signal generating unit 410.
[0126] The operation of the dereverberated signal generating apparatus 400 will be described with reference to Fig. 8. Here, only the operation of the dereverberated signal generating unit 410 will be described.
[0127] In S410, the dereverberated signal generation unit 410 uses the observed signal x[t] and the reverberation prediction filter G[t] generated in S330 to generate and output a dereverberated signal z[t] at time t according to z[t]=G[t]x[t].
[0128] The termination condition determination unit 360 outputs a dereverberated signal z[t] (t=1, ..., T) instead of outputting the reverberation prediction filter G[t] (t=1, ..., T). The dereverberated signal z[t] (t=1, ..., T) may be output from the dereverberated signal generation device 400 every time a dereverberated signal z[t] is generated in S410.
[0129] According to an embodiment of the present invention, a dereverberated signal with high accuracy can be generated even in a noisy environment or underdetermined condition. <Additional Notes> 9 is a diagram showing an example of a functional configuration of a computer 2000 that realizes each of the above-mentioned devices. The processing in each of the above-mentioned devices can be implemented by having a recording unit 2020 load a program for causing the computer 2000 to function as each of the above-mentioned devices, and having the control unit 2010, the input unit 2030, the output unit 2040, and the like operate.
[0130] The device of the present invention has, as a single hardware entity, an input section to which a keyboard or the like can be connected, an output section to which a liquid crystal display or the like can be connected, a communication section to which a communication device (e.g., a communication cable) capable of communicating with the outside of the hardware entity can be connected, a CPU (which may also have a central processing unit, cache memory, registers, etc.), memories such as RAM and ROM, an external storage device such as a hard disk, and buses connecting the input section, output section, communication section, CPU, RAM, ROM, and external storage device so that data can be exchanged between them. If necessary, the hardware entity may also be provided with a device (drive) capable of reading and writing a recording medium such as a CD-ROM. A physical entity equipped with such hardware resources is, for example, a general-purpose computer.
[0131] The external storage device of the hardware entity stores the programs required to realize the above-mentioned functions and the data required in the processing of these programs (not limited to the external storage device, but for example the programs may be stored in a ROM, which is a read-only storage device). Data obtained by the processing of these programs is stored appropriately in the RAM, the external storage device, etc.
[0132] In the hardware entity, each program stored in an external storage device (or ROM, etc.) and the data required for processing each program are loaded into memory as necessary, and interpreted, executed, and processed by the CPU as appropriate, so that the CPU realizes a predetermined function (each component represented as the above, "unit," "means," etc.).
[0133] The present invention is not limited to the above-described embodiment, and can be modified as appropriate without departing from the spirit of the present invention. In addition, the processes described in the above-described embodiment are not limited to being executed in chronological order according to the order described, but may be executed in parallel or individually depending on the processing capacity of the device that executes the processes or as necessary.
[0134] As described above, when the processing functions of the hardware entities (the devices of the present invention) described in the above embodiments are realized by a computer, the processing contents of the functions that the hardware entities should have are described by a program. Then, by executing this program on a computer, the processing functions of the hardware entities are realized on the computer.
[0135] The program describing the processing contents can be recorded on a computer-readable recording medium. The computer-readable recording medium may be, for example, a magnetic recording device, an optical disk, a magneto-optical recording medium, a semiconductor memory, or any other suitable recording medium. Specifically, for example, a hard disk drive, a flexible disk, a magnetic tape, or the like can be used as the magnetic recording device, a DVD (Digital Versatile Disc), a DVD-RAM (Random Access Memory), a CD-ROM (Compact Disc Read Only Memory), a CD-R (Recordable) / RW (ReWritable), or the like can be used as the optical disk, an MO (Magneto-Optical disc), or the like can be used as the magneto-optical recording medium, and an EEP-ROM (Electronically Erasable and Programmable-Read Only Memory) or the like can be used as the semiconductor memory.
[0136] The program may be distributed, for example, by selling, transferring, lending, etc. portable recording media such as DVDs and CD-ROMs on which the program is recorded. Furthermore, the program may be distributed by storing the program in a storage device of a server computer and transferring the program from the server computer to other computers via a network.
[0137] A computer that executes such a program, for example, first stores the program recorded on a portable recording medium or the program transferred from a server computer in its own storage device. Then, when executing a process, the computer reads the program stored in its own storage device and executes a process according to the read program. As another execution form of the program, the computer may directly read the program from the portable recording medium and execute a process according to the program, or may execute a process according to the received program each time a program is transferred from the server computer to the computer. The server computer may not transfer the program to the computer, but may execute the above-mentioned process by a so-called ASP (Application Service Provider) type service that realizes the processing function only by issuing an execution instruction and obtaining the result. Note that the program in this embodiment includes information used for processing by an electronic computer that is equivalent to a program (data that is not a direct instruction to the computer but has a nature that specifies the processing of the computer, etc.).
[0138] In addition, in this embodiment, a hardware entity is configured by executing a specific program on a computer, but at least a part of the processing contents may be realized by hardware.
[0139] The foregoing description of the embodiments of the invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Modifications and variations are possible in light of the above teachings. The embodiments have been chosen and depicted to provide a best illustration of the principles of the invention and to enable those skilled in the art to utilize the invention in various embodiments and with various modifications as may be suitable for the practical use contemplated. All such modifications and variations are within the scope of the invention as defined by the appended claims interpreted in accordance with the breadth to which they are fairly, legally, and equitably entitled.
Claims
1. A filter generation device that generates a reverberation prediction filter G[t] to be used at time t from the observation signal x[t] at time t and the observation signals x[1],..., x[t-1] at times 1,..., t-1 before time t, C is the number of reverberation prediction filters, G[i, c] (c=1, …, C) is the reverberation prediction filter at time i, α[i, c] (c=1, …, C) (where α[i, c]∈{0, 1}, Σ c=1 C Let α[i, c] = 1 be a parameter indicating the reverberation prediction filter to be used at time i, Observed signals x[1], ..., x[t] and forgetting weights γ at time t t [i, 1], …, γ t [i, C] (i=1, …, t) to minimize the given formula, and the parameters α[t, c] (c=1, …, C) are used to calculate G[t]=Σ c=1 C a filter generator that generates a reverberation prediction filter G[t] using α[t,c]G[t,c]; Forgetting weight γ t [i, 1], …, γ t [i, C] is Between time i and time t, which is a time ti before time t, the forgetting weight γ t The smaller the number of reverberation prediction filters G[i, c], …, G[t, c] (c=1, …, C) corresponding to [i, c] that are selected as the reverberation prediction filters to be applied to the observed signal, the larger the value. Filter generation device.
2. The filter generation device according to Claim 1, where p is a constant satisfying 0 < p ≤ 2, β is a constant satisfying 0 < β ≤ 1, and θ is a constant satisfying 0 ≤ θ ≤ 1, The predetermined formula is, [0049] (where, [Number 50] (where L is the filter length and Δ is the prediction delay, ^x[t]=[x[t-Δ] T , …, x[t-Δ-L+1] T ] T ) is) Forgetting weight γ t [i, c] is [0051] [0052] [0,53] is A filter generation device characterized by that.
3. A filter generation device that generates a reverberation prediction filter G[t] to be used at time t from the observation signal x[t] at time t, C is the number of reverberation prediction filters, G[c] (c = 1,..., C) is a reverberation prediction filter, p is a constant satisfying 0 < p ≤ 2, β is a constant satisfying 0 < β ≤ 1, and θ is a constant satisfying 0 ≤ θ ≤ 1, The switch c * A switch determination unit that determines [0,54] (where L is the filter length and Δ is the prediction delay, ^x[t]=[x[t-Δ] T , …, x[t-Δ-L+1] T ] T ) [0.55] The reverberation prediction filter G[c * ] as a reverberation prediction filter G[t]; [0,56] [0.57] [0,58] A matrix update unit that updates the matrix B[c] according to the following formula, [0,59] A filter generation device including.
4. A filter generation method in which a filter generation device generates a reverberation prediction filter G[t] to be used at time t from the observation signal x[t] at time t and the observation signals x[1],..., x[t-1] at times 1,..., t-1 before time t, C is the number of reverberation prediction filters, G[i, c] (c=1, …, C) is the reverberation prediction filter at time i, α[i, c] (c=1, …, C) (where α[i, c]∈{0, 1}, Σ c=1 C Let α[i, c] = 1 be a parameter indicating the reverberation prediction filter to be used at time i, Observed signals x[1], ..., x[t] and forgetting weights γ at time t t [i, 1], …, γ t [i, C] (i=1, …, t) to minimize the given formula, and the parameters α[t, c] (c=1, …, C) are used to calculate G[t]=Σ c=1 C and generating a reverberation prediction filter G[t] using α[t,c]G[t,c]; Forgetting weight γ t [i, 1], …, γ t [i, C] is Between time i and time t, which is a time ti before time t, the forgetting weight γ t The smaller the number of reverberation prediction filters G[i, c], …, G[t, c] (c=1, …, C) corresponding to [i, c] that are selected as the reverberation prediction filters to be applied to the observed signal, the larger the value. Filter generation method.
5. A filter generation method in which a filter generation device generates a reverberation prediction filter G[t] to be used at time t from the observation signal x[t] at time t, C is the number of reverberation prediction filters, G[c] (c = 1,..., C) is a reverberation prediction filter, p is a constant satisfying 0 < p ≤ 2, β is a constant satisfying 0 < β ≤ 1, and θ is a constant satisfying 0 ≤ θ ≤ 1, The switch c * a switch determination step for determining [0.60] (where L is the filter length and Δ is the prediction delay, ^x[t]=[x[t-Δ] T , …, x[t-Δ-L+1] T ] T ) [0061] The reverberation prediction filter G[c * ] as a reverberation prediction filter G[t]; [0062] [0063] [0,64] A matrix update step of updating the matrix B[c] according to the following formula, [0.65] A filter generation method including.
6. A program for causing a computer to function as the filter generation device according to any one of Claims 1 to 3.
Citation Information
Patent Citations
A method and apparatus for speech de-reverberation
CN109979476B
Noise and reverberation suppressing device and method therefor
JP2011203414A