Voice wake-up method and device
By calculating the frequency volatility of the voice wake-up device during the wake-up period and determining the device corresponding to the maximum value as the target device, the device problem that is difficult to accurately wake up users in the prior art is solved, and the user experience is improved.
Patent Information
- Application Number
- CN202411705493.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-25
- Publication Date
- 2025-03-07
AI Technical Summary
Existing voice wake-up devices are difficult to accurately wake up the devices faced by users in a multi-device environment, resulting in poor user experience.
By obtaining the single-channel audio signal during the wake-up period of each voice wake-up device, the frequency volatility of each device is calculated, and the device corresponding to the maximum frequency volatility is the target device to perform voice interaction.
It realizes the voice wake-up device that accurately wakes up users directly in a multi-device environment, and improves the effect of facing wake-up without high computing power.
Smart Images

Figure CN119580725A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of voice wake-up technology, and in particular to a voice wake-up method and device thereof, wherein the device includes a voice wake-up device, a voice wake-up device system, a computer program, and a computer-readable storage medium. Background Art
[0002] With the popularity of current voice wake-up devices, there will be multiple voice wake-up devices in the same room or area at the same time. When the user shouts out the wake-up word, multiple voice wake-up devices may respond at the same time. There are many logics for selecting voice wake-up devices in the prior art. The simpler wake-up logic is nearby wake-up, which means waking up the voice wake-up device closest to the user. However, the nearby voice wake-up device may not be the voice wake-up device that the user is facing. From the user experience point of view, the voice wake-up device that the user is facing is the device he wants to wake up, not the one close to him. Therefore, the above method cannot accurately wake up the voice wake-up device that the user is facing, affecting the user experience. Summary of the invention
[0003] In order to solve the above problems, the present application proposes a voice wake-up method and a device thereof, aiming to solve the above problems.
[0004] To solve the above technical problems, a technical solution adopted in the present application is: to provide a voice wake-up method, which includes: obtaining a single-channel audio signal of each voice wake-up device within the wake-up time period; calculating the frequency fluctuation rate of each voice wake-up device based on the audio signal of each voice wake-up device; determining the target voice wake-up device based on the frequency fluctuation rate of each voice wake-up device, and controlling the target voice wake-up device to perform voice interaction with the user.
[0005] Among them, the step of calculating the frequency fluctuation rate of each voice wake-up device based on the audio signal of each voice wake-up device includes: performing short-time Fourier transform on the audio signal to obtain an amplitude spectrum corresponding to the audio signal; averaging the amplitude spectrum in the time dimension to obtain a mean array corresponding to the amplitude spectrum; and obtaining the frequency fluctuation rate based on the mean array and the amplitude spectrum.
[0006] Among them, the step of performing short-time Fourier transform on the audio signal to obtain the amplitude spectrum corresponding to the audio signal includes: obtaining a preset window length and a preset window shift corresponding to the short-time Fourier transform; performing short-time Fourier transform on the audio signal with the preset window length and the preset window shift to obtain the amplitude spectrum.
[0007] Among them, the step of obtaining the frequency volatility based on the mean array and the amplitude spectrum includes: calculating the difference between the amplitude spectrum and the mean array in the frequency dimension of the amplitude spectrum; constructing a corresponding exponential function based on the difference; and obtaining the frequency volatility based on the variance of the exponential function.
[0008] Among them, the step of determining the target voice wake-up device based on the frequency fluctuation rate of each voice wake-up device includes: calculating the parameter value corresponding to each voice wake-up device based on the frequency fluctuation rate of each voice wake-up device; and taking the voice wake-up device corresponding to the maximum value of all parameter values as the target voice wake-up device.
[0009] Among them, the step of calculating the parameter value corresponding to each voice wake-up device based on the frequency fluctuation rate of each voice wake-up device includes: obtaining the maximum value of the frequency fluctuation rates of all voice wake-up devices at each frequency point; calculating the ratio of the frequency fluctuation rate of each voice wake-up device at each frequency point to the maximum value corresponding to the frequency point; calculating the sum of the ratios of each voice wake-up device at all frequency points to obtain the parameter value corresponding to each voice wake-up device.
[0010] Among them, the step of obtaining the single-channel audio signal within the wake-up time period of each voice wake-up device includes: determining whether the voice wake-up device receives the wake-up word; in response to receiving the wake-up word, determining the wake-up starting point and the wake-up end point of the voice wake-up device based on the time when the wake-up word is received, and determining the wake-up time period based on the wake-up starting point and the wake-up end point to obtain the single-channel audio signal within the wake-up time period.
[0011] Before the step of obtaining the single-channel audio signal of each voice wake-up device within the wake-up time period, the method further includes: performing echo cancellation on the single-channel audio signal of each voice wake-up device.
[0012] To solve the above technical problems, another technical solution adopted in the present application is: to provide a voice wake-up device, which includes a wake-up module, a frequency fluctuation rate calculation module and a frequency fluctuation rate comparison module, the wake-up module is used to obtain a single-channel audio signal within the wake-up time period of the voice wake-up device; the frequency fluctuation rate calculation module is used to calculate the frequency fluctuation rate of the voice wake-up device based on the audio signal; the frequency fluctuation rate comparison module is used to determine the target voice wake-up device based on the frequency fluctuation rates of multiple voice wake-up devices, and send a response instruction to the target voice wake-up device to control the target voice wake-up device to perform voice interaction with the user.
[0013] To solve the above technical problems, another technical solution adopted in the present application is: to provide a voice wake-up device system, which includes multiple voice wake-up devices and a frequency fluctuation comparison module. Each voice wake-up device includes a wake-up module and a frequency fluctuation calculation module. The wake-up module is used to obtain a single-channel audio signal within the wake-up time period of the voice wake-up device; the frequency fluctuation calculation module is used to calculate the frequency fluctuation of the voice wake-up device based on the audio signal; the frequency fluctuation comparison module is used to determine the target voice wake-up device based on the frequency fluctuations of multiple voice wake-up devices, and send a response instruction to the target voice wake-up device to control the target voice wake-up device to perform voice interaction with the user.
[0014] The frequency fluctuation rate comparison module is integrated into at least one of the plurality of voice wake-up devices.
[0015] Among them, the voice wake-up device system also includes a central control device, and the frequency fluctuation rate comparison module is integrated in the central control device, and the central control device is communicated with each voice wake-up device to obtain the frequency fluctuation rate of each voice wake-up device, and the frequency fluctuation rate comparison module is used to determine the target voice wake-up device based on the frequency fluctuation rate of each voice wake-up device, and a response instruction is sent to the target voice wake-up device to control the target voice wake-up device to interact with the user by voice.
[0016] In order to solve the above technical problems, another technical solution adopted by the present application is: to provide a computer program, which includes instructions, and when the instructions are executed by an information processing device, the information processing device executes any one of the above voice wake-up methods.
[0017] In order to solve the above technical problems, another technical solution adopted by the present application is: providing a computer-readable storage medium on which program instructions are stored, and the program instructions are executed by a processor to implement any of the above voice wake-up methods.
[0018] The beneficial effect of the present application is that, different from the prior art, the voice wake-up method of the present application includes: obtaining the audio signal of a single channel of each voice wake-up device during the wake-up time period; calculating the frequency fluctuation rate of each voice wake-up device based on the audio signal of each voice wake-up device; determining the target voice wake-up device based on the frequency fluctuation rate of each voice wake-up device, and controlling the target voice wake-up device to perform voice interaction with the user. Through the above method, the voice wake-up method of the present application can wake up the voice wake-up device directly facing, and the effect of direct wake-up can be improved without high computing power. BRIEF DESCRIPTION OF THE DRAWINGS
[0019] Figure 1 This is a flow chart of the first embodiment of the voice wake-up method provided by the present application;
[0020] Figure 2 yes Figure 1 A flow chart of an embodiment of step S102;
[0021] Figure 3 yes Figure 2 A schematic diagram of a flow chart of an embodiment of step S201;
[0022] Figure 4 yes Figure 2 A flow chart of an embodiment of step S203;
[0023] Figure 5 yes Figure 1 A schematic diagram of a flow chart of an embodiment of step S103;
[0024] Figure 6 yes Figure 5 A schematic diagram of a flow chart of an embodiment of step S502;
[0025] Figure 7 yes Figure 1 A schematic diagram of a flow chart of an embodiment of step S101;
[0026] Figure 8 This is a flow chart of the second embodiment of the voice wake-up method provided by the present application;
[0027] Fig. 9 It is a structural diagram of an embodiment of a voice wake-up device of the present application;
[0028] Fig.10 It is a structural diagram of the first embodiment of the voice wake-up device system of the present application;
[0029] Fig.11 It is a structural diagram of the second embodiment of the voice wake-up device system of the present application;
[0030] Fig.12 It is a structural diagram of an embodiment of a computer-readable storage medium of the present application. DETAILED DESCRIPTION
[0031] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.
[0032] With the popularity of current voice wake-up devices, there will be multiple voice wake-up devices in the same room or area at the same time. When the user shouts out the wake-up word, multiple voice wake-up devices may respond at the same time. There are many logics for selecting voice wake-up devices in the prior art. The simpler wake-up logic is nearby wake-up, which means waking up the voice wake-up device closest to the user. However, the nearby voice wake-up device may not be the voice wake-up device that the user is facing. From the user experience point of view, the voice wake-up device that the user is facing is the device he wants to wake up, not the one close to him. Therefore, the above method cannot accurately wake up the voice wake-up device that the user is facing, affecting the user experience.
[0033] In order to solve the above problems, this application first proposes a voice wake-up method, see Figure 1 , Figure 1 1 is a flow chart of the first embodiment of the voice wake-up method provided by the present application. Figure 1 As shown, the voice wake-up method of this embodiment specifically includes steps S101 to S103:
[0034] Step S101: obtaining a single-channel audio signal within a wake-up time period of each voice wake-up device.
[0035] In this embodiment, the applicant found that after the user shouts out the wake-up word, the voice wake-up device directly facing the user among multiple voice wake-up devices in the same room or area is less affected by reverberation, so under the audio signal of the same wake-up word, the frequency fluctuation rate corresponding to the voice wake-up device directly facing the user is greater.
[0036] Therefore, this embodiment can determine the target voice wake-up device that the user is facing among the voice wake-up devices based on the frequency fluctuation rate of each voice wake-up device. Before obtaining the frequency fluctuation rate of each voice wake-up device, it is first necessary to obtain the single-channel audio signal of each voice wake-up device during the wake-up time period.
[0037] In this embodiment, each voice wake-up device only needs to obtain a single-channel audio signal, that is, in this embodiment, the voice wake-up device only needs to set at least one audio collection component, wherein the audio collection component can be set as a microphone component in this embodiment. When each voice wake-up device obtains its corresponding single-channel audio signal, it needs to obtain the single-channel audio signal of the voice wake-up device in the wake-up time period, because in the wake-up time period, the interference signal has less impact on the frequency fluctuation rate, and it will be more accurate to use the single-channel audio signal of the wake-up time period to calculate the frequency fluctuation rate in the following text.
[0038] Step S102: Calculate the frequency fluctuation rate of each voice wake-up device based on the audio signal of each voice wake-up device.
[0039] After each voice wake-up device obtains the audio signal of a single channel in its corresponding wake-up time period, each voice wake-up device can calculate its corresponding frequency fluctuation rate based on its corresponding audio signal. The specific method for calculating the frequency fluctuation rate is described below and will not be described in detail here.
[0040] Step S103: determining a target voice wake-up device based on the frequency fluctuation rate of each voice wake-up device, and controlling the target voice wake-up device to perform voice interaction with the user.
[0041] After obtaining the frequency fluctuation rate of each voice wake-up device, the frequency fluctuation rate comparison module can use the frequency fluctuation rate of each voice wake-up device for comparison, thereby determining that the voice wake-up device corresponding to the maximum value of the frequency fluctuation rate of each voice wake-up device is the target voice wake-up device, and sending a response instruction to the target voice wake-up device to control the target voice wake-up device to perform voice interaction with the user after receiving the user's wake-up word. Among them, the specific comparison method of the frequency fluctuation rate comparison module is also described below and will not be described in detail here.
[0042] Different from the prior art, the voice wake-up method of the present application includes: obtaining the audio signal of a single channel of each voice wake-up device during the wake-up time period; calculating the frequency fluctuation rate of each voice wake-up device based on the audio signal of each voice wake-up device; determining the target voice wake-up device based on the frequency fluctuation rate of each voice wake-up device, and controlling the target voice wake-up device to perform voice interaction with the user. Through the above method, the voice wake-up method of the present application can wake up the voice wake-up device directly facing it, and the effect of direct wake-up can be improved without high computing power.
[0043] Optionally, the method for calculating the frequency fluctuation rate of each voice wake-up device based on the audio signal of each voice wake-up device is as follows: Figure 2 See Figure 2 , Figure 2 yes Figure 1 FIG. 1 is a flow chart of an embodiment of step S102 in FIG. Figure 2 As shown, this embodiment can be Figure 2 The steps shown implement step S102, which specifically includes steps S201 to S203:
[0044] Step S201: performing short-time Fourier transform on the audio signal to obtain an amplitude spectrum corresponding to the audio signal.
[0045] In this embodiment, the voice wake-up device is also provided with a frequency fluctuation rate calculation module. When the voice wake-up device uses the microphone component and the wake-up module to obtain the single-channel audio signal within its own wake-up time period, the frequency fluctuation rate calculation module can be used to perform a short-time Fourier transform on the audio signal to obtain the amplitude spectrum C(t,f) corresponding to the audio signal. Among them, the amplitude spectrum is the frequency intensity of the audio signal at each time point, that is, the energy distribution of the audio signal in the frequency domain. The amplitude spectrum is calculated by the modulus value of the result of the short-time Fourier transform. In this embodiment, the dimension of the amplitude spectrum C(t,f) is (t, f), t is the time dimension, and f is the frequency dimension.
[0046] Step S202: Calculate the mean value of the amplitude spectrum in the time dimension to obtain a mean value array corresponding to the amplitude spectrum.
[0047] After the frequency fluctuation rate calculation module obtains the amplitude spectrum C(t,f) corresponding to the audio signal, the amplitude spectrum C(t,f) can be averaged in the time dimension to obtain the mean array μ(f) corresponding to the amplitude spectrum. The obtained mean array is a one-dimensional array with the frequency dimension.
[0048] The calculation formula of the mean array μ(f) is shown in formula (1):
[0049]
[0050] Among them, μ(f) represents the mean array, C(t,f) represents the amplitude spectrum, and T represents the total duration of the wake-up period.
[0051] Step S203: Obtain the frequency fluctuation rate based on the mean value array and the amplitude spectrum.
[0052] After obtaining the mean array μ(f) and the amplitude spectrum C(t,f), the frequency fluctuation rate calculation module can obtain the frequency fluctuation rate corresponding to the voice wake-up device based on the two.
[0053] Optionally, a method for performing short-time Fourier transform on the audio signal to obtain an amplitude spectrum corresponding to the audio signal is as follows: Figure 3 See Figure 3 , Figure 3 yes Figure 2 FIG. 1 is a flow chart of an embodiment of step S201 in FIG. Figure 3 As shown, this embodiment can be Figure 3 The steps shown implement step S201, which specifically includes steps S301 to S302:
[0054] Step S301: Obtaining a preset window length and a preset window shift corresponding to a short-time Fourier transform.
[0055] Short-time Fourier transform is a mathematical transformation related to Fourier transform, which is used to determine the frequency and phase of the sine wave in the local area of the time-varying signal. When performing short-time Fourier transform on the audio signal, it is first necessary to determine the preset window length and preset window shift corresponding to the short-time Fourier transform. In this embodiment, the preset window length can be set to 1024, and the preset window shift can be set to 512. In other embodiments, the preset window length and preset window shift can be set based on actual conditions, and are not limited here.
[0056] Step S302: Perform short-time Fourier transform on the audio signal with a preset window length and a preset window shift to obtain an amplitude spectrum.
[0057] After the preset window length and the preset window shift are obtained, a short-time Fourier transform can be performed on the audio signal with the preset window length and the preset window shift to obtain an amplitude spectrum.
[0058] Optionally, the method for obtaining frequency fluctuation rate based on mean array and amplitude spectrum is as follows: Figure 4 See Figure 4 , Figure 4 yes Figure 2 FIG. 1 is a flow chart of an embodiment of step S203 in FIG. Figure 4 As shown, this embodiment can be Figure 4 The steps shown implement step S203, which specifically includes steps S401 to S403:
[0059] Step S401: Calculate the difference between the amplitude spectrum and the mean array in the frequency dimension of the amplitude spectrum.
[0060] As mentioned above, after obtaining the mean array μ(f) and the amplitude spectrum C(t,f), the frequency volatility calculation module can calculate the difference C(t,f)-μ(f) between the amplitude spectrum and the mean array in the frequency dimension of the amplitude spectrum.
[0061] Step S402: constructing a corresponding exponential function based on the difference.
[0062] After obtaining the difference C(t,f)-μ(f), the frequency volatility calculation module can construct a corresponding exponential function based on the difference. Specifically, in this embodiment, the corresponding exponential function is constructed with e as the base and the difference as the exponent. The constructed exponential function is D(t,f), where the calculation formula of the exponential function D(t,f) is shown in formula (2):
[0063] D(t,f)=e (C(t,f)-μ(f)) (2)
[0064] Where D(t,f) is an exponential function, e is a natural constant, μ(f) is a mean array, and C(t,f) is an amplitude spectrum.
[0065] Step S403: Obtain frequency volatility based on the variance of the exponential function.
[0066] After obtaining the exponential function D(t,f), the frequency volatility calculation module can obtain the frequency volatility V(f) based on the variance of the exponential function D(t,f). The calculation formula of the frequency volatility V(f) is shown in formula (3):
[0067] V(f)=var(D(t,f)) (3)
[0068] Among them, V(f) represents the frequency volatility, D(t,f) represents the exponential function, and var(*) represents the variance of the random variable *.
[0069] Optionally, a method for determining a target voice wake-up device based on the frequency fluctuation rate of each voice wake-up device is as follows: Figure 5 See Figure 5 , Figure 5 yes Figure 1 FIG. 1 is a flow chart of an embodiment of step S103 in FIG. Figure 5 As shown, this embodiment can be Figure 5 The steps shown implement step S103, which specifically includes steps S501 to S502:
[0070] Step S501: Calculate the parameter value corresponding to each voice wake-up device based on the frequency fluctuation rate of each voice wake-up device.
[0071] After the frequency fluctuation rate calculation module obtains the frequency fluctuation rate V(f) of each voice wake-up device, the frequency fluctuation rate calculation module of each voice wake-up device can send its corresponding frequency fluctuation rate V(f) to the frequency fluctuation rate comparison module, and the frequency fluctuation rate comparison module can calculate the parameter value corresponding to each voice wake-up device based on the frequency fluctuation rate V(f) of each voice wake-up device.
[0072] Step S502: The voice wake-up device corresponding to the maximum value among all parameter values is used as the target voice wake-up device.
[0073] At this time, after calculating the parameter values corresponding to all voice wake-up devices, the frequency fluctuation rate comparison module can compare the parameter values corresponding to all voice wake-up devices, and take the voice wake-up device corresponding to the maximum value among all parameter values as the target voice wake-up device.
[0074] Optionally, a method for calculating a parameter value corresponding to each voice wake-up device based on the frequency fluctuation rate of each voice wake-up device is as follows: Figure 6 See Figure 6 , Figure 6 yes Figure 5FIG. 1 is a flow chart of an embodiment of step S502 in FIG. Figure 6 As shown, this embodiment can be Figure 6 The steps shown implement step S502, which specifically includes steps S601 to S603:
[0075] Step S601: Obtain the maximum value of the frequency fluctuation rates of all voice wake-up devices at each frequency point.
[0076] When calculating the parameter values corresponding to each voice wake-up device, the frequency fluctuation rate comparison module first needs to obtain the maximum value of the frequency fluctuation rates of all voice wake-up devices at each frequency point.
[0077] Step S602: Calculate the ratio of the frequency fluctuation rate of each voice wake-up device at each frequency point to the maximum value corresponding to the frequency point.
[0078] After obtaining the maximum value of the frequency fluctuations of all voice wake-up devices at each frequency point, the frequency fluctuation comparison module can calculate the ratio of the frequency fluctuation of each voice wake-up device at each frequency point to the maximum value corresponding to the frequency point.
[0079] Step S603: Calculate the sum of the ratios of each voice wake-up device at all frequency points to obtain a parameter value corresponding to each voice wake-up device.
[0080] After obtaining the ratio of the frequency fluctuation rate of each voice wake-up device at each frequency point to the maximum value corresponding to the frequency point, the frequency fluctuation rate comparison module can calculate the sum of the ratios of each voice wake-up device at all frequency points, thereby obtaining the parameter value corresponding to each voice wake-up device.
[0081] based on Figure 5 and Figure 6 Embodiment, illustratively, in this embodiment, each voice wake-up device will use the frequency fluctuation rate calculation module to calculate and obtain its corresponding frequency fluctuation rate V(f). Assuming that there are m voice wake-up devices in the same room or area, the ratio of the frequency fluctuation rate V(m, f) of the current voice wake-up device at each frequency point to the maximum value of the frequency fluctuation rate V(m, f) among the m voice wake-up devices can be calculated, and then the ratios of all frequency points are summed to obtain an m*1 vector, and then the channel S where the maximum value of this vector is located is obtained, and S is the device to be directly awakened. The calculation formula is shown in formula (4):
[0082]
[0083] Among them, argmax is a function that finds the parameter (set) of a function. When there is another function y=f(x), if the result x0=argmax(f(x)), it means that when the function f(x) takes x=x0, the maximum value of the value range of f(x) is obtained; V(m, f) represents the frequency fluctuation rate of the mth voice wake-up device; max m V(m,f) is the maximum value of the frequency fluctuation rate among m voice wake-up devices.
[0084] Optionally, the method for obtaining the single-channel audio signal of each voice wake-up device within the wake-up time period is as follows: Figure 7 See Figure 7 , Figure 7 yes Figure 1 FIG. 1 is a flow chart of an embodiment of step S101. Figure 7 As shown, this embodiment can be Figure 7 The steps shown implement step S101, which specifically includes steps S701 to S702:
[0085] Step S701: Determine whether the voice wake-up device receives the wake-up word.
[0086] In this embodiment, each voice wake-up device is provided with a wake-up module. The wake-up module of the voice wake-up device needs to receive the corresponding wake-up word before controlling the voice wake-up device to respond and work. Therefore, in this embodiment, when the voice wake-up device obtains a single-channel audio signal within the wake-up time period, the wake-up module needs to determine whether the voice wake-up device has received the wake-up word.
[0087] If the voice wake-up device receives the wake-up word, the process goes to step S702. If the voice wake-up device does not receive the wake-up word, the process goes into standby mode, waiting to be woken up.
[0088] Step S702: Determine the voice wake-up device wake-up start point and wake-up end point based on the time when the wake-up word is received, and determine the wake-up time period based on the wake-up start point and the wake-up end point to obtain a single-channel audio signal within the wake-up time period.
[0089] When the voice wake-up device receives the wake-up word, the wake-up module of the voice wake-up device can determine the wake-up start point and wake-up end point of the voice wake-up device based on the time when the wake-up word is received. Specifically, in the present embodiment, the wake-up module includes a wake-up start point detection module and a wake-up end point detection module, the wake-up start point detection module is used to determine the start time of the wake-up time period, and the wake-up end point detection module is used to determine the end time of the wake-up time period, and the time period between the start time and the end time is the wake-up time period, wherein the start time of the wake-up time period can be set to the time point when the first word of the wake-up word is received, and the end time of the wake-up time period can be set to the time point when the last word of the wake-up word is received. At this point, after determining the wake-up time period, the wake-up module can intercept the single-channel audio signal within the wake-up time period for subsequent processing.
[0090] Optionally, this application further proposes a voice wake-up method, see Figure 8 , Figure 8 1 is a flow chart of the second embodiment of the voice wake-up method provided by the present application. Figure 8 As shown, the voice wake-up method of this embodiment specifically includes steps S801 to S804:
[0091] Step S801: performing echo cancellation on the single-channel audio signal of each voice wake-up device.
[0092] In this embodiment, before each voice wake-up device obtains the single-channel audio signal within its corresponding wake-up time period, it is necessary to perform echo cancellation on the single-channel audio signal of each voice wake-up device. Therefore, each voice wake-up device can set an echo cancellation module to eliminate echoes.
[0093] In addition, in this embodiment, echo cancellation is also required when the voice wake-up device makes a broadcast. If the voice wake-up device is in a double-talk state at the same time, the voice wake-up device needs to use a high suppression mode to suppress nonlinear noise to reduce the impact of echo on face-to-face wake-up.
[0094] Step S802: Acquire a single-channel audio signal within a wake-up time period of each voice wake-up device.
[0095] Step S802 is consistent with step S101 and will not be described again.
[0096] Step S803: Calculate the frequency fluctuation rate of each voice wake-up device based on the audio signal of each voice wake-up device.
[0097] Step S803 is the same as step S102 and will not be described again.
[0098] Step S804: determining a target voice wake-up device based on the frequency fluctuation rate of each voice wake-up device, and controlling the target voice wake-up device to perform voice interaction with the user.
[0099] Step S804 is consistent with step S103 and will not be described again.
[0100] Optionally, the present application further proposes a voice wake-up device. Fig. 9 , Fig. 9 Schematic diagram of the structure of an embodiment of the voice wake-up device of the present application. Fig. 9 As shown, the voice awakening device 100 of this embodiment includes a awakening module 10 , a frequency fluctuation rate calculation module 20 and a frequency fluctuation rate comparison module 30 .
[0101] Among them, the wake-up module 10 is used to obtain the single-channel audio signal within the wake-up time period of the voice wake-up device 100; the frequency fluctuation rate calculation module 20 is used to calculate the frequency fluctuation rate of each voice wake-up device 100 based on the audio signal; the frequency fluctuation rate comparison module 30 is used to determine the target voice wake-up device based on the frequency fluctuation rates of multiple voice wake-up devices 100, and send a response instruction to the target voice wake-up device to control the target voice wake-up device to perform voice interaction with the user.
[0102] As mentioned above, the wake-up module 10 includes a wake-up start point detection module and a wake-up end point detection module. The wake-up start point detection module is used to determine the start time of the wake-up time period, and the wake-up end point detection module is used to determine the end time of the wake-up time period. The time period between the start time and the end time is the wake-up time period. In addition, the voice wake-up device 100 is also provided with an echo cancellation module (not shown) for performing echo cancellation on the audio signal of a single channel of the voice wake-up device 100.
[0103] Optionally, the present application further proposes a voice wake-up device system. Fig.10 , Fig.10 Schematic diagram of the structure of the first embodiment of the voice wake-up device system of the present application. Fig.10 As shown, the voice awakening device system 200 of this embodiment includes a plurality of voice awakening devices 100 and a frequency fluctuation rate comparison module 30 .
[0104] Among them, each voice wake-up device 100 includes a wake-up module 10 and a frequency fluctuation rate calculation module 20. The wake-up module 10 is used to obtain the single-channel audio signal within the wake-up time period of the voice wake-up device 100; the frequency fluctuation rate calculation module 20 is used to calculate the frequency fluctuation rate of the voice wake-up device 100 based on the audio signal; the frequency fluctuation rate comparison module 30 is used to determine the target voice wake-up device based on the frequency fluctuation rates of multiple voice wake-up devices 100, and send a response instruction to the target voice wake-up device to control the target voice wake-up device to interact with the user through voice.
[0105] Optionally, in this embodiment, if Fig.10 As shown, the frequency fluctuation rate comparison module 30 is integrated into at least one of the plurality of voice wake-up devices 100 .
[0106] That is, in this embodiment, a frequency fluctuation rate comparison module 30 can be set in at least one voice wake-up device 100 among the multiple voice wake-up devices 100. After the other voice wake-up devices 100 calculate their own corresponding frequency fluctuation rates, they send them to the voice wake-up device 100 provided with the frequency fluctuation rate comparison module 30. The voice wake-up device 100 uses the frequency fluctuation rate comparison module 30 to determine the target voice wake-up device based on the frequency fluctuation rates of the multiple voice wake-up devices 100, and then sends a response instruction to the target voice wake-up device to control the target voice wake-up device to perform voice interaction with the user.
[0107] Alternatively, in other embodiments, see Fig.11 , Fig.11 Schematic diagram of the structure of the second embodiment of the voice wake-up device system of the present application. Fig.11 As shown, the voice wake-up device system 200 also includes a central control device 210, and the frequency fluctuation rate comparison module 30 is integrated in the central control device 210, and the central control device 210 is communicated with each voice wake-up device 100 to obtain the frequency fluctuation rate of each voice wake-up device 100, and uses the frequency fluctuation rate comparison module 30 to determine the target voice wake-up device based on the frequency fluctuation rate of each voice wake-up device 100, and sends a response instruction to the target voice wake-up device to control the target voice wake-up device to interact with the user by voice.
[0108] Optionally, the present application further proposes a computer program, which includes instructions, and when the instructions are executed by an information processing device, the information processing device executes the voice wake-up method of any of the above embodiments.
[0109] In addition, if the above functions are implemented in the form of software functions and sold or used as independent products, they can be stored in a storage medium readable by a mobile terminal, that is, the present application also provides a storage device storing program data, the program data can be executed to implement the method of the above embodiment, and the storage device can be, for example, a USB flash drive, an optical disk, a server, etc. In other words, the present application can be embodied in the form of a software product, which includes a number of instructions for enabling a smart terminal to execute all or part of the steps of the method described in each embodiment.
[0110] Optionally, the present application further proposes a computer-readable storage medium. Fig.12 , Fig.12 It is a structural diagram of an embodiment of a computer-readable storage medium of the present application.
[0111] The computer-readable storage medium 300 of the embodiment of the present application stores program instructions 310, and the program instructions 310 are executed by the processor to implement the voice wake-up method of any of the above embodiments.
[0112] Among them, the program instructions 310 can form a program file and be stored in the above-mentioned storage medium in the form of a software product, so that an electronic device (which can be a personal computer, a server, or a network device, etc.) or a processor (processor) executes all or part of the steps of each implementation method of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk and other media that can store program codes, or terminal devices such as computers, servers, mobile phones, tablets, etc.
[0113] The computer-readable storage medium 300 of this embodiment may be, but is not limited to, a USB flash drive, an SD card, a PD optical drive, a mobile hard disk, a large-capacity floppy drive, a flash memory, a multimedia memory card, a server, and the like.
[0114] In addition, if the above functions are implemented in the form of software functions and sold or used as independent products, they can be stored in a storage medium readable by a mobile terminal, that is, the present application also provides a storage device storing program data, the program data can be executed to implement the method of the above embodiment, and the storage device can be, for example, a USB flash drive, an optical disk, a server, etc. In other words, the present application can be embodied in the form of a software product, which includes a number of instructions for enabling a smart terminal to execute all or part of the steps of the method described in each embodiment.
[0115] In addition, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the features defined as "first" and "second" may explicitly or implicitly include at least one of the features. In the description of this application, the meaning of "plurality" is at least two, such as two, three, etc., unless otherwise clearly and specifically defined.
[0116] Any process or method description in a flowchart or otherwise described herein may be understood to represent a mechanism, segment or portion of a code that includes one or more executable instructions for implementing the steps of a specific logical function or process, and the scope of the preferred embodiments of the present application includes alternative implementations in which functions may not be performed in the order shown or discussed, including performing functions in a substantially simultaneous manner or in the reverse order depending on the functions involved, which should be understood by technicians in the technical field to which the embodiments of the present application belong.
[0117] The logic and / or steps represented in the flowchart or otherwise described herein, for example, can be considered as an ordered list of executable instructions for implementing the logical functions, and can be embodied in any computer-readable medium for use by an instruction execution system, device or apparatus (which can be a personal computer, server, network device or other system that can fetch instructions from the instruction execution system, device or apparatus and execute the instructions), or in combination with these instruction execution systems, devices or apparatuses. For the purpose of this specification, "computer-readable medium" can be any device that can contain, store, communicate, propagate or transmit a program for use by an instruction execution system, device or apparatus or in combination with these instruction execution systems, devices or apparatuses. More specific examples of computer-readable media (a non-exhaustive list) include the following: an electrical connection with one or more wires (electronic device), a portable computer disk box (magnetic device), a random access memory (RAM), a read-only memory (ROM), an erasable and programmable read-only memory (EPROM or flash memory), a fiber optic device, and a portable compact disk read-only memory (CDROM). In addition, the computer-readable medium may even be paper or other suitable medium on which the program is printed, since the program may be obtained electronically, for example, by optically scanning the paper or other medium and then editing, interpreting or processing in other suitable ways if necessary, and then stored in a computer memory.
[0118] The above descriptions are merely embodiments of the present application and are not intended to limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made using the contents of the present application specification and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present application.
Claims
1. A voice wake-up method, characterized in that: include: Obtain the single-channel audio signal of each voice wake-up device during the wake-up time period; Calculating the frequency fluctuation rate of each voice wake-up device based on the audio signal of each voice wake-up device; A target voice wake-up device is determined based on the frequency fluctuation rate of each of the voice wake-up devices, and the target voice wake-up device is controlled to perform voice interaction with the user.
2. The voice wake-up method according to claim 1, characterized in that: The step of calculating the frequency fluctuation rate of each voice wake-up device based on the audio signal of each voice wake-up device includes: Performing a short-time Fourier transform on the audio signal to obtain an amplitude spectrum corresponding to the audio signal; Calculate the mean value in the time dimension of the amplitude spectrum to obtain a mean value array corresponding to the amplitude spectrum; The frequency fluctuation rate is obtained based on the mean value array and the amplitude spectrum.
3. The voice wake-up method according to claim 2, characterized in that: The step of performing short-time Fourier transform on the audio signal to obtain an amplitude spectrum corresponding to the audio signal comprises: Obtaining a preset window length and a preset window movement corresponding to the short-time Fourier transform; The audio signal is subjected to the short-time Fourier transform with the preset window length and the preset window shift to obtain the amplitude spectrum.
4. The voice wake-up method according to claim 2, characterized in that: The step of obtaining the frequency fluctuation rate based on the mean value array and the amplitude spectrum includes: In the frequency dimension of the amplitude spectrum, calculating the difference between the amplitude spectrum and the mean value array; constructing a corresponding exponential function based on the difference; The frequency volatility is obtained based on the variance of the exponential function.
5. The voice wake-up method according to claim 1, characterized in that: The step of determining a target voice wake-up device based on the frequency fluctuation rate of each of the voice wake-up devices includes: Calculating a parameter value corresponding to each of the voice wake-up devices based on the frequency fluctuation rate of each of the voice wake-up devices; The voice wake-up device corresponding to the maximum value among all the parameter values is used as the target voice wake-up device.
6. The voice wake-up method according to claim 5, characterized in that: The step of calculating the parameter value corresponding to each of the voice wake-up devices based on the frequency fluctuation rate of each of the voice wake-up devices includes: Obtaining the maximum value of the frequency fluctuation rates of all the voice wake-up devices at each frequency point; Calculate the ratio of the frequency fluctuation rate of each of the voice wake-up devices at each frequency point to the maximum value corresponding to the frequency point; The sum of the ratios of each of the voice wake-up devices at all frequency points is calculated to obtain the parameter value corresponding to each of the voice wake-up devices.
7. The voice wake-up method according to claim 1, characterized in that: The step of obtaining a single-channel audio signal of each voice wake-up device within a wake-up time period includes: Determining whether the voice wake-up device receives a wake-up word; In response to receiving the wake-up word, the wake-up start point and the wake-up end point of the voice wake-up device are determined based on the time when the wake-up word is received, and the wake-up time period is determined based on the wake-up start point and the wake-up end point to obtain the audio signal of the single channel within the wake-up time period.
8. The voice wake-up method according to any one of claims 1 to 7, characterized in that: Before the step of obtaining the single-channel audio signal of each voice wake-up device within the wake-up time period, the method further includes: Echo cancellation is performed on the audio signal of the single channel of each voice wake-up device.
9. A voice wake-up device, characterized in that: include: A wake-up module, used to obtain a single-channel audio signal within a wake-up time period of the voice wake-up device; A frequency fluctuation rate calculation module, used to calculate the frequency fluctuation rate of the voice wake-up device based on the audio signal; The frequency fluctuation rate comparison module is used to determine a target voice wake-up device based on the frequency fluctuation rates of the multiple voice wake-up devices, and send a response instruction to the target voice wake-up device to control the target voice wake-up device to perform voice interaction with the user.
10. A voice wake-up device system, characterized in that: include: Multiple voice wake-up devices, each of which includes a wake-up module and a frequency fluctuation rate calculation module, wherein the wake-up module is used to obtain a single-channel audio signal within a wake-up time period of the voice wake-up device; and the frequency fluctuation rate calculation module is used to calculate the frequency fluctuation rate of the voice wake-up device based on the audio signal; The frequency fluctuation rate comparison module is used to determine a target voice wake-up device based on the frequency fluctuation rates of the multiple voice wake-up devices, and send a response instruction to the target voice wake-up device to control the target voice wake-up device to perform voice interaction with the user.
11. The voice wake-up device system according to claim 10, characterized in that: The frequency fluctuation rate comparison module is integrated in at least one of the plurality of voice wake-up devices.
12. The voice wake-up device system according to claim 10, characterized in that: It also includes a central control device, in which the frequency fluctuation rate comparison module is integrated, and the central control device is communicatively connected with each of the voice wake-up devices to obtain the frequency fluctuation rate of each of the voice wake-up devices, and uses the frequency fluctuation rate comparison module to determine the target voice wake-up device based on the frequency fluctuation rate of each of the voice wake-up devices, and sends a response instruction to the target voice wake-up device to control the target voice wake-up device to perform voice interaction with the user.
13. A computer program, characterized in that The computer program includes instructions, and when the instructions are executed by an information processing device, the information processing device executes the voice wake-up method according to any one of claims 1 to 8.
14. A computer-readable storage medium, characterized in that: Program instructions are stored thereon, and the program instructions are executed by a processor to implement the voice wake-up method according to any one of claims 1 to 8.