Hearing device with voice resynthesis and related methods
Patent Information
- Application Number
- CN202110659570.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-06-15
- Filing Date
- 2021-06-15
- Publication Date
- 2026-10-20
- Estimated Expiration
- 2041-06-15
Smart Images

Figure CN113810835B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a hearing device and related methods, including a speech resynthesis method in the hearing device. Background Technology
[0002] A key task of hearing devices is to improve users' ability to hear speech. Providing satisfactory and / or improved speech resynthesis in hearing devices remains a challenge. Summary of the Invention
[0003] Therefore, there is a need for hearing devices and methods with improved speech resynthesis.
[0004] A speech synthesis method is provided, the method comprising: obtaining a pulse input signal based on an input signal; determining one or more pulse parameters including a first pulse parameter based on the pulse input signal; for example, synthesizing a speech signal based on the first pulse parameter; processing the speech signal to provide an electrical output signal; and converting the electrical output signal into an audio output signal.
[0005] Additionally, a hearing device is disclosed, comprising: a pulse detector configured to determine one or more pulse parameters including a first pulse parameter; a speech synthesizer connected to the pulse detector for providing a speech signal, for example, based on the first pulse parameter; a processor for processing the speech signal to provide an electrical output signal; and a receiver for converting the electrical output signal into an audio output signal.
[0006] A key advantage of this invention is that it utilizes a pulse detector to control speech synthesis, which has built-in verification reflecting the detection accuracy in one or more pulse parameters, thereby providing robust and fail-safe speech synthesis.
[0007] One advantage of this disclosure is that the pulse period determination delay provides fast pulse detection within one period of the input signal. On the other hand, it reduces local maxima leading to false alarms, thereby providing fast, accurate, and reliable pulse detection, which in turn leads to improved speech resynthesis.
[0008] The advantage of this invention is that each cycle in the power estimation includes a pulse, or at least the possibility of improvement in each cycle in a power estimation that includes only a pulse. In particular, this invention achieves a pulse timing that does not occur at the beginning or end of a cycle, thereby making the pulse power estimation more robust. By aligning the smoothing cycle with the end of the holding cycle (when a pulse is detected according to the pulse detection criteria), slight errors have a very small impact on the (power) estimation. Attached Figure Description
[0009] The above and other features and advantages of the present invention will become apparent to those skilled in the art from the following detailed description of exemplary embodiments with reference to the accompanying drawings, wherein:
[0010] Figure 1 An exemplary hearing device is schematically shown.
[0011] Figure 2 This is an exemplary state diagram of the pulse detector in a hearing device.
[0012] Figure 3 This is a flowchart of an exemplary method according to the present invention.
[0013] Figure 4 This is a flowchart as part of an exemplary method according to the present invention.
[0014] Figure 5 Smooth periodic alignment is shown, and
[0015] Figure 6 This is an exemplary state diagram of the pulse detector in a hearing device.
[0016] Figure Labels
[0017] 2 Hearing equipment
[0018] 4. Pulse Detector
[0019] 4A pulse input signal
[0020] 4B pulse output signal
[0021] 6. Speech Synthesizer
[0022] 8. Voice signal
[0023] 10 processors
[0024] 12 Electrical output signal
[0025] 14 Receivers
[0026] 15 Input Power Estimator
[0027] 15A input power input
[0028] 15B Input Power Output
[0029] 16 Input Modules
[0030] 16A input signal
[0031] 18 First power estimator, periodic smoother
[0032] 18A First Power Output
[0033] 18B First Power Input
[0034] 20 Mixing Modules / Mixers
[0035] 20A Mixed Output Signal
[0036] 22 First power estimator, filter bank, second estimator
[0037] 22A Second Power Output, Filter Bank Output, Second Output
[0038] 50 First State / Reset State
[0039] 52 Second state / ascending state
[0040] 54 Third state / Countdown state
[0041] 56 Fourth State / Updated State
[0042] Methods of speech synthesis in 100 hearing devices
[0043] 102. Obtain the pulse input signal based on the input signal.
[0044] 102A obtains broadband linear power estimation
[0045] 104. Determine one or more pulse parameters based on the pulse input signal.
[0046] 104A determines the confidence level based on the first pulse parameter of the pulse input signal.
[0047] 104B Determines Second Pulse Parameters Based on Pulse Input Signal
[0048] 106. Speech signal synthesized based on the first pulse parameter
[0049] 108. Processes voice signals to provide electrical output signals.
[0050] 110 Converts the electrical output signal into an audio output signal.
[0051] 112 Detects pulses based on pulse input signals, and outputs pulse output signals indicating the detected pulses based on the detected pulse output signal.
[0052] 204 Determine whether the pulse input signal meets the first rise criterion RC_1
[0053] 206 Increase the threshold
[0054] 208. Determine if the pulse input signal meets the first countdown criterion DCC_1.
[0055] 210 Initialize the countdown counter
[0056] 212 Determine if the countdown counter meets the second countdown criterion DCC_2
[0057] 214 Decrease the countdown counter
[0058] 216 Determine if the countdown counter meets the pulse detection standard (PDC)
[0059] 218 Determine the first pulse parameters and output the first pulse parameters and a pulse output signal indicating that a pulse has been detected.
[0060] 300 First Pulse
[0061] 302 Second Pulse
[0062] 304 Third Pulse
[0063] 306 Smoothing Period
[0064] 308 Smoothing Period of the First Power Estimator
[0065] PP_1 First Pulse Parameters
[0066] PP_2 Second Pulse Parameters
[0067] C_L confidence level Detailed Implementation
[0068] In the following description, various exemplary embodiments and details are illustrated with reference to the accompanying drawings, where applicable. It should be noted that the drawings may or may not be drawn to scale, and elements with similar structures or functions are indicated by similar reference numerals throughout the drawings. It should also be noted that the drawings are intended only to facilitate the description of embodiments. They are not intended as an exhaustive description of the invention or as a limitation on the scope of the invention. Furthermore, the illustrated embodiments do not necessarily possess all the aspects or advantages shown. Aspects or advantages described in connection with a particular embodiment are not necessarily limited to that embodiment and may be implemented in any other embodiment even if not shown or explicitly described therein.
[0069] A hearing device is disclosed. The hearing device may be an audible device or a hearing aid, wherein a processor is configured to compensate for the user's hearing loss.
[0070] Hearing devices can be configured to be worn on a user's ear and can be, for example, behind-the-ear (BTE), in-the-ear (ITE), in-the-canal (ITC), in-the-canal (RIC), or in-the-ear (RITE) receiver types. Hearing aids can be binaural hearing aids. Hearing devices can include a first earphone and a second earphone, wherein the first earphone and / or the second earphone are earphones as disclosed herein.
[0071] The hearing device includes an input module comprising a microphone array. The microphone array may include one or more microphones. The microphone array includes a first microphone for providing a first microphone input signal and / or a second microphone for providing a second microphone input signal. The microphone array may include N microphones for providing N microphone signals, where N is an integer in the range of 1 to 10. In one or more exemplary hearing devices, the number of microphones N is 2, 3, 4, 5, or more. The microphone array may include a third microphone for providing a third microphone input signal. For example, the input module provides one or more input signals based on one or more microphone signals and / or one or more transceiver input signals. The input module may be configured to preprocess the microphone input signals and / or transceiver input signals, the preprocessing optionally including beamforming and / or feedback suppression. In other words, the input module may include a preprocessor, optionally including a beamforming module and / or a feedback suppressor. The input signal from the input module may be fed as a pulse input signal to, for example, a pulse detector and / or a speech synthesizer.
[0072] An improved speech resynthesis method and hearing device are provided. Additionally, more accurate impulse detection and / or power estimation are provided. Furthermore, an improved impulse detector is also provided.
[0073] A method for power estimation and / or impulse detection in a hearing device is disclosed, for example, for speech synthesis in a hearing device. The method includes: obtaining an impulse input signal; determining whether the impulse input signal satisfies a first rise criterion; updating and / or increasing a threshold based on the input signal satisfying the first rise criterion; determining whether the impulse input signal satisfies a first down count criterion; initializing a down count counter based on the impulse input signal satisfying the first down count criterion; determining whether the down count counter satisfies a second down count criterion; updating and / or decreasing the count of the down count counter based on the down count counter satisfying the second down count criterion; determining whether the down count counter satisfies an impulse detection criterion; and outputting a impulse output signal indicating that an impulse has been detected based on the down count counter satisfying the impulse detection criterion. The method may optionally include estimating (e.g., calculating and / or determining) one or more powers of the input signal based on the impulse output signal.
[0074] In one or more exemplary hearing devices, the hearing device includes a pulse detector for providing a pulse output signal indicating that a pulse has been detected. The hearing device may include a first power estimator connected to the pulse detector, the first power estimator being configured to provide a first power output, for example, based on a first power input and / or the pulse output signal. The hearing device may include a mixing module and optionally a filter bank or a second power estimator, the mixing module being connected to the first power estimator for providing a mixed output signal based on the first power output and optionally based on the filter bank output or the second power output of the filter bank. The pulse detector may be configured to: obtain a pulse input signal; determine whether the pulse input signal satisfies a first rise criterion; increment a threshold based on the input signal satisfying the first rise criterion; determine whether the pulse input signal satisfies a first countdown criterion; initialize a countdown counter based on the pulse input signal satisfying the first countdown criterion; determine whether the countdown counter satisfies a second countdown criterion; decrement the countdown counter based on the countdown counter satisfying the second countdown criterion; determine whether the countdown counter satisfies a pulse detection criterion; and output the pulse output signal indicating that a pulse has been detected, along with one or more pulse parameters, to, for example, a speech synthesizer based on the countdown counter satisfying the pulse detection criterion. A pulse detector as described herein is also disclosed.
[0075] A speech synthesis method, for example, in a hearing device, is disclosed. The method includes obtaining a pulsed input signal based on an input signal. The input signal may be based on input signals from one or more microphones. The pulsed input signal may be a power signal, such as a linear power signal from a linear power estimator (also referred to as a second power estimator).
[0076] The method includes determining one or more pulse parameters, including a first pulse parameter, based on a pulse input signal. Determining one or more pulse parameters may include determining a second pulse parameter and / or a third pulse parameter. The pulse parameters (e.g., the first parameter) may be included in a pulse output signal indicating that a pulse has been detected. The method may include, for example, as part of determining one or more pulse parameters, outputting one or more pulse parameters (e.g., one or more of the first pulse parameter and / or the second pulse parameter) to, for example, a speech synthesizer.
[0077] Additionally, a hearing device is disclosed, comprising: a pulse detector configured to determine one or more pulse parameters including a first pulse parameter; a speech synthesizer connected to the pulse detector for providing a speech signal, for example, based on the first pulse parameter; a processor for processing the speech signal to provide an electrical output signal; and a receiver for converting the electrical output signal into an audio output signal. It should be understood that the hearing device disclosed herein can be configured to perform the methods disclosed herein.
[0078] The method includes synthesizing a speech signal, for example, based on one or more pulse parameters (e.g., based on a first pulse parameter and / or a second pulse parameter). The synthesized speech signal may include mixing a first power output and a second (power) output based on the first pulse parameter. In other words, the first pulse parameter may control the mixing of the first power output and the second (power) output. The first power output may be based on a pulse output signal indicating the detection of a pulse and / or the second pulse parameter. The synthesized speech signal is processed in a speech synthesizer based on an input signal from an input module, for example, based on one or more pulse parameters and / or the pulse output signal as control input to the speech synthesizer. For example, the first pulse parameter may control the mixing of a first (power) output of a first (power) estimator and a second (power) output of a second (power) estimator, respectively. The first (power) output may be based on the second (power) output and / or the input signal. The second (power) output may be based on the input signal.
[0079] The method includes processing a speech signal to provide an electrical output signal. Processing the speech signal may include, for example, performing hearing loss compensation on the speech signal through multi-band compression and / or multi-band filtering.
[0080] The method includes, for example, using a receiver of a hearing device to convert an electrical output signal into an audio output signal.
[0081] The first pulse parameter can be the confidence level C_L. The confidence level C_L can indicate the accuracy of pulse detection and / or the probability that the pulse input signal is a periodic or semi-periodic pulse signal.
[0082] The first pulse parameter can indicate the presence of a pulse or pulse event.
[0083] In one or more example methods / hearing devices, the first pulse parameter is the pulse period. The pulse period may be based solely on the value of the pulse timer at the time of pulse detection. The pulse period may be a smoothed value of the pulse timer at the time of pulse detection (e.g., when moving to the first state). The first pulse parameter may be the pulse height.
[0084] In one or more exemplary methods, determining one or more pulse parameters includes: determining a second pulse parameter based on a pulse input signal; and wherein the synthesized speech signal is optionally based on the second pulse parameter.
[0085] The second pulse parameter can be a confidence level, such as indicating the accuracy of pulse detection and / or the likelihood that the pulse input signal is a periodic or semi-periodic pulse signal. In other words, the confidence level can indicate that the pulse input signal is of a specific type (e.g., a periodic or semi-periodic signal). The confidence level can be a value ranging from 0 to 1, where a high confidence level indicates high pulse detection accuracy and / or a high probability that the pulse input signal is a periodic or semi-periodic pulse signal. A low confidence level indicates low pulse detection accuracy and / or a low probability that the pulse input signal is a periodic or semi-periodic pulse signal.
[0086] The second pulse parameter can indicate the presence of a pulse or pulse event. The second pulse parameter can be the pulse height.
[0087] In one or more exemplary methods, determining one or more pulse parameters includes: determining a third pulse parameter based on a pulse input signal; and wherein the synthesized speech signal is based on the third pulse parameter.
[0088] The third pulse parameter can be the pulse height. Determining the pulse height, for example as the first pulse parameter, the second pulse parameter, or the third pulse parameter, can be performed during pulse detection (e.g., when moving to the first state).
[0089] In one or more exemplary methods, the method includes: detecting a pulse based on a pulse input signal, and outputting a pulse output signal indicating the detection of the pulse based on the detected pulse. In other words, the pulse output signal can indicate the detection of a pulse, the presence of a pulse, and / or a pulse event. The pulse output signal may include one or more pulse parameters.
[0090] In one or more example methods, the action of synthesizing the speech signal is based on a pulse output signal. In other words, the synthesis of the speech signal can be based on a pulse output signal (e.g., controlled by a pulse output signal).
[0091] In one or more exemplary methods, the method includes, for example, filtering an input signal using a filter bank (also referred to as a second estimator) to provide a filter bank output / second output. The second output may be a second power output. The synthesized speech signal may be based on the filter bank output / second output. In one or more exemplary methods, the synthesized speech signal may include processing the second output / filter bank output based on or controlled by a pulse output signal and / or based on one or more pulse parameters (e.g., confidence). The synthesized speech signal may include, for example, processing a first power input using a first power estimator based on or controlled by a pulse output signal and / or based on one or more pulse parameters (e.g., pulse period) to provide a first power output. A second (power) output or input signal may be fed as the first power input. The synthesized speech signal may include mixing the first power output and the second power output based on one or more pulse parameters (e.g., a first pulse parameter) to provide a mixed output signal. For example, the first pulse parameter may be used to control a first gain applied to the first power output and / or to control a second gain applied to the second power output. The method may include outputting the mixed output signal as a speech signal. In one or more exemplary methods, the method includes: converting the mixed output signal to the dB domain to provide a converted output signal, and outputting the converted output signal as a speech signal.
[0092] In one or more exemplary methods, determining one or more pulse parameters, including a first parameter signal, based on a pulse input signal includes: determining whether the pulse input signal meets a first rise criterion; increasing a threshold based on the input signal meeting the first rise criterion; determining whether the pulse input signal meets a first countdown criterion; initializing a countdown counter based on the pulse input signal meeting the first countdown criterion; determining whether the countdown counter meets a second countdown criterion; decreasing the countdown counter based on the countdown counter meeting the second countdown criterion; determining whether the countdown counter meets a pulse detection criterion; and determining a first pulse parameter based on a pulse timer based on the countdown counter meeting the pulse detection criterion.
[0093] When it is determined that the countdown counter meets the pulse detection criteria, i.e., when a pulse is detected, the pulse period can be set to the value of the pulse timer. Determining the first pulse parameter may include, for example, adjusting (e.g., smoothing) the instantaneous pulse period (the value of the pulse timer) when a pulse is detected using a smoothing function and / or based on a forgetting factor and / or based on confidence. Adjusting (e.g., smoothing) the instantaneous pulse period (the value of the pulse timer) when a pulse is detected (e.g., when moving to the first state) may be based on a previously determined first pulse parameter (e.g., the most recently determined first pulse parameter).
[0094] The method may include resetting a pulse timer when it is determined that the countdown counter meets a pulse detection criterion, i.e., when a pulse is detected. Thus, the value of the pulse timer when the countdown counter meets the pulse detection criterion indicates the pulse period. In one or more exemplary methods, the method may include resetting the pulse timer when transitioning to a first state.
[0095] In one or more exemplary hearing devices, one or more pulse parameters include a second pulse parameter; and a speech synthesizer is optionally configured to provide a speech signal based on the second pulse parameter. The first or second pulse parameter can be a confidence level indicating the probability that the pulse input signal is a periodic or semi-periodic pulse signal. In other words, the method may include, for example, determining the first or second pulse parameter as a confidence level based on a countdown counter satisfying a pulse detection criterion and / or when transitioning to a first state.
[0096] In one or more exemplary hearing devices, a pulse detector is configured to detect a pulse based on a pulse input signal and, based on the detected pulse, output a pulse output signal indicating the detected pulse.
[0097] In one or more exemplary hearing devices, determining one or more pulse parameters, including a first parameter signal, based on a pulse input signal includes: determining whether the pulse input signal meets a first rise criterion; increasing a threshold based on the input signal meeting the first rise criterion; determining whether the pulse input signal meets a first countdown criterion; initializing a countdown counter based on the pulse input signal meeting the first countdown criterion; determining whether the countdown counter meets a second countdown criterion; decreasing the countdown counter based on the countdown counter meeting the second countdown criterion; determining whether the countdown counter meets a pulse detection criterion; and determining a first pulse parameter based on a pulse timer based on the countdown counter meeting the pulse detection criterion.
[0098] When it is determined that the countdown counter meets the pulse detection criteria, i.e., upon detecting a pulse, a first pulse parameter can be set to the value of the pulse timer. Determining the first pulse parameter may include adjusting (e.g., smoothing) the instantaneous pulse period (the value of the pulse timer) at the time of pulse detection using a forgetting factor and / or based on confidence. Adjusting (e.g., smoothing) the instantaneous pulse period (the value of the pulse timer) upon pulse detection may be based on a previously determined first pulse parameter (e.g., a newly determined first pulse parameter).
[0099] The hearing device / pulse detector can be configured to reset the pulse timer when the countdown counter is determined to meet the pulse detection criteria, i.e., when a pulse is detected. Thus, the value of the pulse timer when the countdown counter is determined to meet the pulse detection criteria indicates the pulse period.
[0100] The method includes determining one or more pulse parameters, such as a first pulse parameter, based on a pulse input signal. Determining the one or more pulse parameters may include, for example, determining whether the pulse input signal meets a first rise criterion in a first state. The method may include, for example, initializing or resetting a threshold and / or resetting a pulse timer in the first state or when transitioning to the first state. In one or more exemplary methods, the threshold may be initialized to a value greater than the average value of the pulse input signal (e.g., greater than 1.2 times the average value of the pulse input signal).
[0101] The method may optionally include: increasing a threshold based on the input signal meeting a first rise criterion; and, for example, determining whether the pulse input signal meets a first countdown criterion in a second state. The method includes: initializing a countdown counter based on the pulse input signal meeting the first countdown criterion; and, for example, determining whether the countdown counter meets a second countdown criterion in a third state. The method includes: decreasing the count of the countdown counter based on the countdown counter meeting the second countdown criterion. The method includes: determining whether the countdown counter meets a pulse detection criterion in a third state; and, based on the countdown counter meeting the pulse detection criterion, for example, determining one or more pulse parameters based on a pulse timer and / or a threshold, and / or outputting a pulse output signal indicating that a pulse has been detected. The method may include: outputting one or more pulse parameters (e.g., a first pulse parameter and / or a second pulse parameter) based on the countdown counter meeting the pulse detection criterion.
[0102] Based on the pulse input signal satisfying a first rise criterion, the method may include shifting from a first state or an initial state to a second state or a rising state. In the second state, the method may, for example, increase the threshold based on the pulse input signal.
[0103] The first ascension criterion (also denoted as RC_1) may include or be given by the following formula:
[0104] x>TH_1,
[0105] Where x is the pulse input signal or a pulse-based input signal, and TH_1 is the threshold. The threshold TH_1 can be a fixed threshold or an adaptive threshold. The pulse detector can be configured to, for example, adapt, activate, or update the threshold TH_1 based on the failure to meet a first rise criterion.
[0106] The method may include, for example, determining whether a pulse input signal meets a first hold criterion in a first state. The method may optionally include, for example, updating (e.g., decreasing and / or resetting) a threshold and / or holding the signal in the first state based on whether the pulse input signal meets the first hold criterion.
[0107] The first retention criterion (also denoted as SC_1) may include or be given by the following formula:
[0108] x = <TH_1,
[0109] Where x is the pulse input signal or based on the pulse input signal, and TH_1 is the threshold. The pulse detector can be configured to adapt or update the threshold TH_1 based on whether the pulse input signal meets a first hold criterion.
[0110] The method may include, for example, shifting from a second state to a third state or a countdown state based on the pulse input signal satisfying a first countdown criterion. For example, when in the third state or shifting from the second state to the third state, the method may include initializing the countdown counter.
[0111] The method may include, for example, initializing a countdown counter based on the pulse input signal satisfying a first countdown criterion. Initializing the countdown counter may be based on an expected fundamental period (also denoted as t_fun). In one or more exemplary methods / pulse detectors, initializing the countdown counter includes setting the countdown counter c to a value based on the expected fundamental period, for example, c = t_fun / 3, where c is the countdown counter and t_fun is the expected fundamental period. In other words, the countdown counter (c) may be initialized at 1 / 3 of the expected fundamental period (t_fun). In one or more exemplary methods, the expected fundamental period t_fun may be based on (e.g., equal to) the most recently determined pulse period.
[0112] The first countdown criterion (also denoted as DCC_1) may include or be given by the following formula:
[0113] x <TH_1,
[0114] Where x is the pulse input signal or based on the pulse input signal, and TH_1 is the threshold.
[0115] The method may include, for example, determining whether the pulse input signal meets a second hold criterion in a second state. The method may optionally include, for example, updating a threshold and / or holding in the second state based on the pulse input signal meeting the second hold criterion. Updating the threshold may include setting or calculating a threshold based on the pulse input signal, for example, equalizing a threshold TH_1 to the pulse input signal x. In other words, updating the threshold may include setting the threshold to the value of the pulse input signal. In other words, the first countdown criterion may be based on one or more of a countdown counter c, the pulse input signal x, and the threshold TH_1.
[0116] The second retention criterion (also denoted as SC_2) may include or be given by the following formula:
[0117] x≥TH_1,
[0118] Where x is the pulse input signal or based on the pulse input signal, and TH_1 is the threshold. This method / pulse detector can be configured to adapt or update the threshold TH_1 based on whether the pulse input signal meets the second hold criterion.
[0119] The method includes, for example, determining, in a third state, whether the countdown counter satisfies a second countdown criterion. The second countdown criterion (also denoted as DCC_2) may include or be given by the following formula:
[0120] c>0,
[0121] Where c is a countdown counter. The method includes: optionally updating (e.g., decreasing) the countdown counter based on the countdown counter satisfying a second countdown criterion. The second countdown criterion may also be expressed as a third hold criterion.
[0122] In one or more exemplary methods, the second countdown criterion may include or be given by the following formula:
[0123] x = <TH_1,
[0124] Where x is the pulse input signal or based on the pulse input signal, and TH_1 is the threshold. In other words, the second countdown criterion can be based on one or more of the countdown counter c, the pulse input signal x, and the threshold.
[0125] The method includes, for example, determining, in a third state, whether a countdown counter meets a pulse detection criterion. The pulse detection criterion (also denoted as PDC) may be based on the countdown counter and / or a threshold. The method may also include, for example, moving from the third state to a first or fourth state based on whether the countdown counter meets the pulse detection criterion.
[0126] Pulse detection standards may include or be given by the following formula:
[0127] c = 0 or c < 0,
[0128] Where c is a countdown counter. In other words, if the pulse input signal x decreases for a period of time after reaching its peak, the pulse detection criterion is met (i.e., a pulse is detected).
[0129] In one or more exemplary methods, the method includes, for example, determining whether the pulse input signal meets a second rising criterion after determining that the pulse input signal meets a third state and / or after determining that the pulse input signal meets a first countdown criterion. The method may include, for example, increasing a threshold and / or shifting to a second state based on the pulse input signal meeting the second rising criterion. Therefore, if the maximum value of the detected pulse input signal is only a temporary maximum value, the method can shift back to the rising / second state. This reduces the number of false positives (detected pulses).
[0130] The second ascension criterion (also denoted as RC_2) may include or be given by the following formula:
[0131] x>TH_1,
[0132] Where x is the pulse input signal or based on the pulse input signal, and TH_1 is the threshold. The method / pulse detector can be configured to, for example, adapt or update the threshold TH_1 based on a second rise criterion.
[0133] In one or more exemplary methods, the method includes, for example, determining whether a pulse input signal meets a reset criterion after a first state and / or after determining that a pulse countdown counter meets a pulse detection criterion. The method may include, for example, lowering a threshold and / or maintaining the first state based on the pulse input signal meeting the reset criterion. In other words, referring to the above, the reset criterion may also be referred to as a first holding criterion.
[0134] In one or more exemplary methods, initializing a countdown counter includes: estimating (e.g., determining / calculating / obtaining) an estimated pulse period; and / or setting the countdown counter based on the estimated pulse period. The estimated pulse period may be an expected base period (also denoted as t_fun). The method may include, for example, determining / calculating / obtaining the expected base period in a first state, or when transitioning from a third state to a first state. The expected base period may be based on the time between detecting the current or latest pulse / peak and detecting a previous pulse. In other words, the expected base period may be based on the time between the latest or current action transitioning to the first state and the previous action transitioning to the first state.
[0135] In this method, the estimated pulse period may be based on the detection of several previous pulses. In one or more exemplary methods, the pulse output signal includes the estimated pulse period. In other words, the pulse output signal may indicate or include the period of the most recently detected pulse. The estimated pulse period may be based on a forgetting factor and / or confidence level.
[0136] In one or more exemplary methods / pulse detectors, initializing a countdown counter includes setting the countdown counter c to a value based on the expected fundamental period, for example, c = t_fun / 3, where c is the countdown counter and t_fun is the expected fundamental period. In other words, the countdown counter (c) can be initialized at 1 / 3 of the expected fundamental period (t_fun). The expected fundamental period t_fun can be a fixed value. The expected fundamental period t_fun can be in the range of 2.0 ms to 16 ms (e.g., in the range of 2.9 ms to 14 ms). Thus, since the fundamental frequency range of spoken speech (an example of a pulse power signal) is approximately in the range of 70 Hz to 350 Hz, this helps to accurately capture human speech. For example, the expected fundamental period can be determined in the first state or when transitioning from the third state to the first state.
[0137] In one or more exemplary methods, the pulse output signal includes the pulse height of the detected pulse (a second / third pulse parameter). In other words, the pulse output signal may indicate or include the amplitude of the detected pulse. In one or more example methods, the method includes determining the pulse height based on a threshold TH_1. For example, the pulse height P_height may be given by the following formula:
[0138] P_height=TH_1.
[0139] In other words, the pulse height P_height can be: the value of the threshold TH_1 when moving to the first state, corresponding to the maximum value of the pulse input signal in the second state (wherein the threshold TH_1 is updated). In one or more exemplary methods, the pulse height can be a smoothed pulse height, for example based on the currently detected pulse and optionally based on one or more previously detected pulses (and associated pulse heights).
[0140] In one or more exemplary methods, the method includes, for example, determining, in a first state, a second state, and / or a third state, whether a timeout criterion is met after determining that a pulse input signal meets a first countdown criterion. The method may include, for example, resetting a threshold and / or shifting to a first state based on the satisfaction of the timeout criterion (also denoted as TOC). The method may include, for example, updating, as if a pulse were detected, based on the satisfaction of the timeout criterion, such as upon timeout (e.g., reducing confidence and / or performing prediction / estimation). The timeout criterion may be based on a timer counter tc. When shifting from the first state to the second state, i.e., when a first rise criterion is met, the timer counter (also denoted as tc) may be initialized.
[0141] In one or more exemplary methods, the method includes, for example, estimating an estimated pulse period PP_est based on a detected pulse / peak and / or a previously detected pulse. The estimated or predicted pulse period PP_est may be estimated after a peak is detected in a second state (satisfying a first countdown criterion), for example, when transitioning from a second state to a third state. The estimated pulse period may be based on a forgetting factor and / or a confidence level. The estimated pulse period may be determined in the first state and / or the second state (e.g., after determining / updating the confidence level).
[0142] In one or more exemplary methods / pulse detectors, initializing a countdown counter includes setting the countdown counter c to a value based on an expected fundamental period, for example, c = PP_est / 3, where c is the countdown counter and PP_est is the estimated pulse period. In other words, the countdown counter (c) can be initialized at 1 / 3 of the estimated pulse period.
[0143] In one or more exemplary methods, the method includes, for example, estimating an estimated pulse height P_height_est based on detected pulses / peaks and / or previously detected pulses. The estimated pulse height P_height_est may be based on a forgetting factor and / or a confidence level. Determining the pulse height may be based on the estimated pulse height. Estimating the estimated pulse height may include, for example, filtering the pulse height using a weighted filter and / or a leaky average filter, such that the latest pulse height has the greatest influence. The estimated pulse height may be determined in a first state and / or a second state (e.g., after determining / updating the confidence level).
[0144] In one or more exemplary methods, the method includes, for example, smoothing or averaging a first power input based on a pulse output signal to provide a first power output, as part of a synthesized speech signal. The method may optionally include, for example, processing (e.g., using a mixer / mixing module to mix and / or filter) the first power output and / or a second power output as part of the synthesized speech signal. The mixer may be controlled by the confidence level (pulse parameter) of the pulse output signal. It should be understood that smoothing can be performed on absolute values rather than square values (“power domain”). For example, in the case of spike noise, using absolute values for smoothing can potentially save computational power and make the smoothing more robust. In other words, the method may include: smoothing a first input based on a pulse output signal to provide a first output. The method may optionally include: processing (e.g., using a mixing module to mix and / or filter) the first power output and / or the second power output.
[0145] In one or more exemplary methods, the method includes, for example, determining a confidence level (also denoted as C_L) in a fourth state, in accordance with either a pulse detection criterion or a timeout criterion, upon transitioning from a third state to a first state. The confidence level C_L may indicate the accuracy of pulse detection (height and / or period) and / or the likelihood that the pulse input signal is a periodic or semi-periodic pulse signal.
[0146] In one or more exemplary methods, synthesizing a speech signal based on a first pulse parameter (e.g., including processing (e.g., mixing and / or filtering) a first power output and / or filter bank output / second power to provide a mixed output signal) can be based on or controlled by a confidence level as the first pulse parameter. For example, mixing the first power output and the second power output / filter bank output to provide a mixed output signal can be based on a confidence level. The mixed output signal can, for example, be a weighted sum of the first power output and the filter bank output with first and second gains as weights.
[0147] In one or more exemplary methods, synthesizing a speech signal based on a first pulse parameter includes, for example, applying a first gain to a first power output in a mixing module. The first gain (also denoted as G_1) may be based on a confidence level. For example, the first gain G_1 may be given by:
[0148] G_1 = C_L,
[0149] Where C_L is the confidence level (first impulse parameter) in the range of 0 to 1.
[0150] In one or more exemplary methods, synthesizing a speech signal based on a first impulse parameter includes, for example, applying a second gain to the filter bank output in a mixing module. The second gain (also denoted as G_2) may be based on a confidence level C_L. For example, the second gain G_2 may be given by:
[0151] G_2 = 1 - C_L,
[0152] Where C_L is the confidence level (first impulse parameter) in the range of 0 to 1.
[0153] The hybrid output signal P_M can be based on the first power output P_1 and the filter bank output P_FB. For example, the hybrid output signal P_M can be given by the following equation:
[0154] P_M = G_1·P_1 + G_2·P_FB,
[0155] Where G_1 is the first gain and G_2 is the second gain.
[0156] Determining confidence may include comparing the detected pulse (e.g., time of occurrence and / or height / amplitude) with one or more previously detected pulses and / or estimates derived from them (e.g., estimated / predicted pulse height P_height_est and / or previously estimated / predicted pulse period PP_est).
[0157] Confidence can be based on a comparison between the occurrence of a pulse or peak and an estimated occurrence of a pulse or peak. In other words, the estimated pulse period PP_est (based on previous pulses and / or previous confidence) can be compared with the actual pulse period (indicated by the value of the pulse timer when pulse detection criteria are met). If the difference between the detected pulse period and the estimated pulse period is less than a threshold, the confidence can be optionally increased. If the difference between the detected pulse period and the estimated pulse period is greater than a threshold, the confidence can be optionally decreased.
[0158] The confidence level can be based on a comparison between the actual, current, or latest pulse height and the estimated / predicted pulse height P_height_est. In other words, the estimated pulse height (based on previous pulses) can be compared with the actual pulse height (indicated by the threshold TH_1). The confidence level can be optionally increased if the difference between the detected pulse height and the estimated pulse height is less than the threshold. The confidence level can be optionally decreased if the difference between the detected pulse height and the estimated pulse height is greater than the threshold.
[0159] Confidence can be based on a comparison of the actual, current, or latest pulse height with the average value of the pulse input signal. A small difference may indicate a pulse input signal that is not a pulse (e.g., confidence decreases), and / or a large difference may indicate a pulse input signal with a high pulse (e.g., confidence increases).
[0160] The confidence level can be based on the estimated pulse period PP_est and the detected / actual pulse period (the value of the pulse timer). The confidence level can be increased if the observed or actual pulse period is equal to or within the range of the estimated pulse period. The confidence level can be decreased if the observed or actual pulse period differs significantly from the estimated pulse period. The confidence level can range from 0 to 1.
[0161] Confidence can be based on the estimated pulse height P_height_est and the detected / actual pulse height P_height. Confidence can be increased if the observed or actual pulse height is equal to or within the estimated pulse height. Confidence can be decreased if the observed or actual pulse height differs significantly from the estimated pulse height (e.g., greater than a threshold).
[0162] A hearing device is disclosed. The hearing device includes: a pulse detector configured to determine one or more pulse parameters including a first pulse parameter, and optionally configured to provide a pulse output signal indicating that a pulse has been detected. The hearing device includes: a speech synthesizer connected to the pulse detector to provide a speech signal based on the first pulse parameter. The speech synthesizer may include: a first power estimator connected to the pulse detector, the first power estimator configured to provide a first power output, for example, based on a first power input and / or the pulse output signal; and optionally, a mixing module connected to the first power estimator for providing a mixed output signal, for example, based on the first power output and / or a second power output (e.g., a filter bank output). The mixed output signal can constitute a speech signal. In other words, the mixed output signal from the mixing module can be fed as a speech signal to a processor for processing speech signals.
[0163] The second power estimator or filter bank can be a multi-band filter bank configured to divide the input signal into multiple frequency bands F_1, ..., F_N, where N is an integer (e.g., greater than 10). The second power estimator / filter bank can be configured to calculate the (linear) power of each frequency band and output the linear power of each frequency band (also denoted as P_L_1, ..., P_L_N) as the second power output / filter bank output.
[0164] The first power estimator can be a multi-band power estimator. The first power estimator can be configured to, for example, calculate an average power estimate per band over one pulse period (also denoted as P_P_1, ..., P_P_N) based on the pulse output signal and the filter bank output / second power output (first power input). The first power estimator may optionally sum and / or integrate the power estimates from the second power estimator / filter bank output and divide the sum by the time elapsed since the last pulse was detected, thereby obtaining an average multi-band power estimate over one pulse period. Alternatively, the first power estimator may also sum and / or integrate the power estimates from the second power estimator / filter bank output and divide the sum by the pulse period (e.g., determined and output by the pulse detector, such as as a second pulse parameter of the pulse output signal, or determined by the first power estimator based on the pulse output signal), thereby obtaining an average multi-band power estimate over one pulse period.
[0165] The mixing module can be a multi-band mixing module. The mixing module can be connected to a pulse detector to receive pulse parameters as control signals; for example, the first pulse parameter may optionally be a confidence level. The control signal (the first pulse parameter) can control the mixing of the second power output / filter bank output with the first power output. In other words, the mixing module can be connected to a second power estimator / filter bank and a first power estimator to receive the second power output / filter bank output and the first power output, respectively. For example, the confidence level or typically the first pulse parameter can control the mixing ratio of the second power output / filter bank output with the first power output. The confidence level or typically the first pulse parameter can control the coefficients or gains applied to (e.g., multiplying or adding) the second power output / filter bank output and the first power output.
[0166] Hearing devices may include, for example, an input power estimator as part of a pulse detector or speech synthesizer, for providing an input power output. The input power output may be fed to the pulse detector as a pulse input signal. The input power estimator may be configured to compute a linear power estimate to provide a broadband linear power estimate (also denoted as P_L_B) as the input power output. In other words, the output of the input power can be a broadband linear power estimate. In one or more exemplary hearing devices, the input signal is fed to the pulse detector as a pulse input signal.
[0167] The hearing device / speech synthesizer optionally includes a converter for converting the mixed output signal into a converter output. The converter may be a logarithmic converter, i.e., the converter output is in the dB domain. The converter output can constitute a speech signal. In other words, the converter output can be fed as a speech signal to a processor for processing speech signals.
[0168] The pulse detector is configured to acquire a pulse input signal and optionally to determine, for example, in a first state or a reset state, whether the pulse input signal meets a first rise criterion. The first rise criterion may be based on the pulse input signal and / or one or more thresholds.
[0169] The pulse detector is configured to optionally raise a threshold based on whether the pulse input signal meets a first rise criterion, and to determine whether the pulse input signal meets a first countdown criterion.
[0170] The pulse detector is configured to: optionally initialize a countdown counter based on whether the pulse input signal meets a first countdown criterion; and, for example, determine whether the countdown counter meets a second countdown criterion.
[0171] The pulse detector is configured to: optionally decrease the count of the countdown counter according to the countdown counter meeting the second countdown criterion, and determine whether the countdown counter meets the pulse detection criterion.
[0172] The pulse detector is configured to optionally output a pulse output signal indicating that a pulse has been detected, based on a countdown counter that meets the pulse detection criteria.
[0173] The pulse detector can be configured to move from a third state to a fourth state based on meeting pulse detection criteria. The pulse detector can optionally be configured to, for example, in the fourth state, update, determine, and / or calculate one or more pulse parameters (optionally including one or more of confidence, estimated pulse period, and estimated pulse height). The pulse detector can optionally be configured to, for example, in the fourth state, reset, update, and / or initialize thresholds, estimated pulse period, and estimated pulse height. One or more pulse parameters can be based on detected / actual pulses (e.g., occurrence time and height / amplitude) and one or more previously detected pulses (e.g., occurrence time and height / amplitude). One or more pulse parameters can be based on a previously determined confidence level.
[0174] According to the present invention, a pulse detector, for example for a hearing device, is disclosed, wherein the pulse detector is configured to: obtain a pulse input signal; determine whether the pulse input signal satisfies a first rise criterion; increase a threshold based on the input signal satisfying the first rise criterion; determine whether the pulse input signal satisfies a first countdown criterion; initialize a countdown counter based on the pulse input signal satisfying the first countdown criterion; determine whether the countdown counter satisfies a second countdown criterion; decrease the count of the countdown counter based on the countdown counter satisfying the second countdown criterion; determine whether the countdown counter satisfies a pulse detection criterion; and determine one or more pulse parameters and output one or more pulse parameters and / or a pulse output signal indicating that a pulse has been detected based on the countdown counter satisfying the pulse detection criterion.
[0175] Figure 1 An exemplary hearing device is shown. The hearing device 2 includes: a pulse detector 4 configured to determine one or more pulse parameters including a first pulse parameter PP_1 based on a pulse input signal 4A; a speech synthesizer 6 connected to the pulse detector 4 for providing a speech signal 8 based on the first pulse parameter PP_1; a processor 10 for processing the speech signal 8 to provide an electrical output signal 12; and a receiver 14 for converting the electrical output signal into an audio output signal.
[0176] The hearing device 2 optionally includes an input power estimator 15 fed with an input power input 15A for providing an input power output 15B. The input power estimator 15 is connected to a pulse detector 4, and the input power output 15B is fed to the pulse detector 4 as a pulse input signal 4A. The input power estimator 15 can be configured to calculate a linear power estimate to provide a broadband linear power estimate (also denoted as P_L_B) as the input power output 15B. In other words, the input power output 15B can be a broadband linear power estimate.
[0177] The hearing device 2 includes an input module 16, comprising one or more microphone and / or transceiver modules, for providing an input signal 16A based on microphone input signals and / or transceiver input signals. The input module 16 is connected to a speech synthesizer 6 and an input power estimator 15, for feeding the input signal 16A to the speech synthesizer 6 and the input power estimator 15, respectively. The input module 16 can be configured to preprocess the microphone input signals and / or transceiver input signals, the preprocessing optionally including one or more filtering, beamforming, and feedback suppression. In one or more exemplary hearing devices, the input signal 16A is fed directly to a pulse detector 4 as a pulse input signal 4A.
[0178] The first pulse parameter PP_1 is the confidence level C_L indicating the probability that the pulse input signal is a periodic or semi-periodic pulse signal.
[0179] The pulse detector 4 is configured to provide: a pulse output signal 4B indicating that a pulse has been detected; and / or a second pulse parameter PP_2, as the pulse period detected by the pulse detector.
[0180] The speech synthesizer 6 includes a first power estimator 18 for providing a first power output 18A. The first power estimator 18 is connected to a pulse detector 4 and receives a pulse output signal 4B and / or a second pulse parameter PP_2 to provide the first power output 18A. The speech synthesizer 6 includes a mixing module 20 connected to the first power estimator 18 and configured to provide a mixed output signal 20A (also denoted as P_M). The speech synthesizer 6 optionally includes a second power estimator 22 (e.g., a filter bank) for providing a second power output 22A (e.g., a filter bank output). The output of the second power estimator 22 is connected to the first power estimator 18 and the mixing module 20 for feeding the second power output 22A or at least a portion of the second power output 22A to the first power estimator 18 and the mixing module 20, respectively. In one or more exemplary hearing devices, an input signal 16A from an input module 16 may be directly fed to the first power estimator 18 and the mixing module 20.
[0181] The first power estimator 18 or period smoother is configured to provide a first power output 18A based on a first power input 18B (second power output 22A) and a pulse output signal 4B / second pulse parameter PP_2. The first power estimator 18 provides a per-band power estimate averaged over one pulse period. In other words, the first power estimator 18 smooths the band power estimate over one period, and the first power output 18A is a multi-band power estimate averaged over one pulse period.
[0182] The mixing module 20 is connected to the first power estimator 18 and the second power estimator 22, and is configured to provide a mixed output signal 20A based on the first power output 18A and / or the second power output 22A. The second power output 22A may be a multi-channel output (e.g., in N frequency bands respectively). N may be greater than 10. The second power output 22A is a linear power estimate per frequency band; that is, the second power estimator 22 is a power estimator configured to estimate the linear power in one or more frequency bands (e.g., each frequency band).
[0183] The hearing device 2 / speech synthesizer 6 may optionally include a converter 24 (e.g., a logarithmic converter) for converting the mixed output signal 20A to the dB domain.
[0184] Pulse detector 4 is configured to: acquire a pulse input signal 4A and determine whether the pulse input signal 4A meets a first rise criterion. Based on the input signal meeting the first rise criterion, pulse detector 4 is configured to: increase a threshold and determine whether the pulse input signal meets a first countdown criterion based on the threshold. Based on the pulse input signal meeting the first countdown criterion, pulse detector 4 is configured to: initialize a countdown counter and determine whether the countdown counter meets a second countdown criterion. Based on the countdown counter meeting the second countdown criterion, pulse detector 4 is configured to: decrease the count of the countdown counter and determine whether the countdown counter meets a pulse detection criterion. Based on the countdown counter meeting the pulse detection criterion, pulse detector 4 is configured to: output a pulse output signal 4B indicating that a pulse has been detected, and determine a first pulse parameter PP_1 as a confidence level. The confidence level C_L is based on one or more of the following: a comparison of the detected pulse period with the estimated pulse period, a comparison of the detected pulse height with the estimated pulse height, and a comparison of the detected pulse height with the average value of the input signal (e.g., the average value of the input pulse signal).
[0185] The first power estimator 18 is controlled by a pulse output signal 4B and / or a second pulse parameter PP_2. In one or more exemplary hearing devices / speech synthesizers, the pulse output signal 4B triggers the calculation of the periodic power in the first power estimator 6 (e.g., by dividing the accumulated energy since the last pulse detection by the time between the last detected pulse and the currently detected pulse, as indicated by the pulse output signal 4B and / or the second pulse parameter PP_2). The first power estimator 18 may include a periodic timer that is reset each time a pulse is detected (and indicated by the pulse output signal 4B). In other words, the first power estimator may determine the pulse period based on the pulse output signal 4B, or receive the pulse period as the second pulse parameter PP_2 from the pulse detector.
[0186] The pulse detector 4 can be configured to, for example, obtain (e.g., determine) a first pulse parameter (e.g., confidence level C_L) when a pulse detection criterion is met according to a countdown counter / the signal moves to a first state, and control the mixing module 20 based on the first pulse parameter PP_1 / confidence level C_L. For example, a high confidence level can increase the amount of the first power output 18A in the mixed output signal 20A, and / or a low confidence level can decrease the amount of the first power output 18A in the mixed output signal 20A. Additionally or alternatively, a high confidence level can decrease the amount of the second power output 22A in the mixed output signal 20A, and / or a low confidence level can increase the amount of the second power output 22A in the mixed output signal 20A.
[0187] Figure 2is an exemplary state diagram of a pulse detector of a hearing device (e.g., hearing device 2). The pulse detector (e.g., pulse detector 4) starts in a first state 50, also referred to as a reset state. If a first hold criterion SC_1 is satisfied, i.e., if the pulse input signal x <= TH_1, where TH_1 is a threshold, the pulse detector remains in the first state 50. Remaining in the first state (i.e., in response to the first hold criterion being satisfied) comprises updating the threshold by decreasing the threshold TH_1. If an input pulse arrives, the pulse input signal x rises above the threshold TH_1, and a first rise criterion RC_1: x>TH_1 is satisfied, the pulse detector moves to a second state 52 or rise state. In the second state 52, the threshold TH_1 is set to the input pulse signal, i.e., TH_1:=x. If the pulse passes, the input pulse signal x drops below the threshold TH_1 (a first downcount criterion DCC_1: x<TH_1 is satisfied), and the pulse detector transitions or moves from the second state 52 to a third state 54 (also denoted as a downcount state). When moving to the third state 54, the downcount counter (c) is initialized by setting the downcount counter c to a value based on an estimated pulse period or an expected fundamental period, e.g., c=a1*t_fun, where a1 is a value in the range from 0 to 1, e.g., a value in the range from 0.2 to 0.5, such as 0.33 (1 / 3), and t_fun is the expected fundamental period.
[0188] The pulse detector may determine in the second state 52 whether the pulse input signal satisfies a second hold criterion SC_2, e.g., whether x>=TH_1, which indicates a rising edge of the pulse input signal. In response to the pulse input signal satisfying the second hold criterion, the pulse detector may update the threshold TH_1 by setting the threshold to the value of the pulse input signal (i.e., TH_1:=x) and remain in the second state. Updating the threshold TH_1 may comprise setting or calculating the threshold based on the pulse input signal, e.g., equalizing the threshold TH_1 to the pulse input signal x.
[0189] In the third state 54, the pulse detector optionally moves to the second state 52 in response to a second rise criterion RC_2 being satisfied. The second rise criterion may be satisfied if an increase of the pulse input signal x above the threshold TH_1 is detected before the downcount counter reaches zero. The pulse detector is optionally configured to adapt or update the threshold TH_1 in response to the second rise criterion being satisfied, e.g., by setting the threshold to the value of the pulse input signal, i.e., TH_1:=x.
[0190] In the third state 54, the pulse detector determines whether the second countdown criterion DCC_2: c>0 is met, and based on the satisfaction of the second countdown criterion, the pulse detector is configured to update the countdown counter c by decreasing the countdown counter c (e.g., by setting c:=c-1).
[0191] The pulse detector is configured to, in third state 54, determine whether a pulse detection criterion (PDC) is met, for example, whether a countdown counter c optionally reaches zero or is below zero while the pulse input signal x remains below a threshold TH_1. Based on the met pulse detection criterion, the pulse detector returns to first state 50, determines a confidence level as a first pulse parameter, and outputs a pulse output signal indicating a detected pulse and the first pulse parameter. When determining confidence, for example, based on one or more estimates of the currently detected pulse, the pulse detector is configured to determine one or more estimates (e.g., estimate the pulse height and / or estimate the pulse period). These estimates are then used to determine the confidence level of subsequently detected pulses.
[0192] In other words, based on the pulse detection criteria, the pulse detector may optionally perform the following operations, where i is the index of the i-th pulse:
[0193] 1) Based on the values of TH_1 and the pulse timer, determine the pulse height P_height(i) and pulse period PP(i) of the i-th pulse.
[0194] 2) Based on PP_est(i), PP(i), P_height_est(i), and P_height(i), determine the first pulse parameter PP_1 as C_L(i).
[0195] 3) Output C_L(i) and the pulse output signal indicating that a pulse has been detected.
[0196] 4) Determine PP_est(i+1) and P_height(i+1) based on C_L(i), PP(i), and P_height(i).
[0197] 5) Reset pulse timer and TH_1
[0198] In the second state, the threshold is increased to track the current signal value of the pulse input signal. This ensures that even if there is a slightly smaller spike in the pulse input signal before it, the maximum peak value can be detected. In the third state (countdown), the threshold remains at its current value. In the first state, for example, the threshold continuously decreases according to the first hold criterion.
[0199] The pulse detector may be configured to initialize the timer counter, for example, when moving from the second state to the third state (i.e., when a peak is detected) and / or when moving from the first state to the second state. The pulse detector may be configured to move from the second state 52 and / or the third state 54 to the first state 50 according to the timeout criterion TOC based on the satisfied timer counter. This ensures that, for example, if pulses are too close to each other, the pulse detector will not get stuck in the second state and / or the third state.
[0200] The pulse detector may perform the following steps according to the timeout criterion TOC based on the satisfied timer counter, where i is the index of the i-th pulse:
[0201] 1) Based on TH_1 and the value of the pulse timer or timer counter, set C_L(i)<C_L(i-1) and determine the pulse height P_height(i)
[0202] 2) Output C_L(i) and / or a pulse output signal indicating that a pulse is detected
[0203] 3) Based on C_L(i), PP(i) and P_height(i), determine PP_est(i+1) and P_height(i+1)
[0204] 4) Reset the pulse timer, and set TH_1=x
[0205] It should be understood that one or more up-counters and thresholds for the up-counter values may be used to implement one or more criteria (e.g., the down-count criteria DCC_1 and DCC_2).
[0206] Figure 3 A flowchart illustrating an exemplary method for speech synthesis in a hearing device, the method 100 comprising: step 102: obtaining a pulse input signal based on an input signal; step 104: determining one or more pulse parameters including a first pulse parameter based on the pulse input signal; step 106: synthesizing a speech signal based on the first pulse parameter; step 108: processing the speech signal to provide an electrical output signal; and step 110: converting the electrical output signal into an audio output signal. Step 102 of obtaining a pulse input signal may comprise: step 102A, obtaining a wideband linear power estimate and using the wideband linear power estimate as the pulse input signal.
[0207] Step 104, determining one or more pulse parameters including the first pulse parameter, optionally includes: step 104A, determining the first pulse parameter as a confidence level indicating the possibility that the pulse input signal is a periodic or semi-periodic pulse signal. Step 104, determining one or more pulse parameters including the first pulse parameter, optionally includes: step 104B, determining a second pulse parameter based on the pulse input signal.
[0208] Method 100 may optionally include: action 112, detecting a pulse based on a pulse input signal, and outputting a pulse output signal indicating the detected pulse based on the detected pulse. Action 112, detecting a pulse based on a pulse input signal, and outputting a pulse output signal indicating the detected pulse based on the detected pulse, can be integrated into step 104 to determine a plurality of pulse parameters including a first pulse parameter. Step 106, synthesizing a speech signal, may optionally be based on the pulse output signal.
[0209] Figure 4 A flowchart illustrating an exemplary determination of pulse parameters is shown. Step 104, determining one or more pulse parameters based on a pulse input signal, includes: step 204, determining whether the pulse input signal satisfies a first rise criterion RC_1; step 206, increasing / updating a threshold based on the input signal satisfying the first rise criterion; step 208, determining whether the pulse input signal satisfies a first countdown criterion DCC_1; step 210, initializing a countdown counter based on the pulse input signal satisfying the first countdown criterion; step 212, determining whether the countdown counter satisfies a second countdown criterion DCC_2; step 214, decreasing / updating the countdown counter based on the countdown counter satisfying the second countdown criterion; step 216, determining whether the countdown counter satisfies a pulse detection criterion PDC; and step 218, determining a first pulse parameter based on the countdown counter satisfying the pulse detection criterion and outputting the first pulse parameter and a pulse output signal indicating that a pulse has been detected. Therefore, action 112, which detects a pulse based on a pulse input signal and outputs a pulse output signal indicating that a pulse has been detected, is an integrated part of step 104 determining one or more pulse parameters, including the first pulse parameter.
[0210] Figure 5The invention describes pulse detection and power smoothing. A pure pulse sequence comprising a first pulse 300, a second pulse 302, and a third pulse 304 is used as the input signal. The pulse sequence has an average power P. Line 306 indicates a smoothing period aligned with the instantaneous detection of the first pulse 300. Line 308 indicates a smoothing period aligned with pulse detection according to the invention. For smoothing period 306, infinitesimal or even slight errors at the beginning and end of the smoothing period will cause the number of pulses in that period to vary between 0 and 2, resulting in an average power estimate fluctuating between 0 and 2P. For smoothing period 308, slight misalignment at the beginning and end of the smoothing period will only affect the estimate due to variations in period time. Therefore, speech synchronization according to the invention is more robust to pulse detection errors. A significant advantage of the invention is that it ensures only one pulse per smoothing period, i.e., it provides pulse detection with a low error rate, which correspondingly leads to more accurate and precise speech synthesis.
[0211] Figure 6 This is an exemplary state diagram for a pulse detector. The state diagram includes a fourth state 56 (also referred to as the update state). The pulse detector moves from a third state 54 to a fourth state 56 based on satisfying pulse detection criteria. The pulse detector is configured to, for example, in the fourth state 56, update, determine, and / or calculate one or more pulse parameters (as described above regarding...). Figure 2 Optionally, this may include one or more of confidence level, estimated pulse period, and estimated pulse height. One or more pulse parameters may be based on detected / actual pulses (e.g., occurrence time and height / amplitude) and one or more previously detected pulses (e.g., occurrence time and height / amplitude). One or more pulse parameters may be based on a previously determined confidence level.
[0212] The use of terms such as "first," "second," "third," and "fourth," "primary," "secondary," and "tertiary" does not imply any particular order; rather, these terms are included to identify individual elements. Furthermore, the use of terms such as "first," "second," "third," and "fourth," "primary," "secondary," and "tertiary" does not indicate any order or importance; rather, these terms are used to distinguish one element from another. Please note that the use of terms such as "first," "second," "third," and "fourth," "primary," "secondary," and "tertiary" here and elsewhere is for labelling purposes only and is not intended to indicate any particular spatial or temporal order.
[0213] Furthermore, marking the first element does not imply the existence of a second element, and vice versa.
[0214] Understandable, Figures 1 to 6 This includes modules or operations shown in solid lines and / or modules or operations shown in dashed lines. Modules or operations included in solid lines are those included in the broadest example implementation. Modules or operations included in dashed lines may be included in, are a part of, or are examples of other modules or operations that may be employed besides those in the solid-line example implementation. It should be understood that these operations do not need to be performed in the order presented. Furthermore, it should be understood that not all operations need to be performed. Exemplary operations can be performed in any order and in any combination.
[0215] It should be noted that the word "including" does not necessarily exclude the presence of other elements or steps not listed.
[0216] It should be noted that the word "one" before a component does not preclude the existence of multiple such components.
[0217] It should also be noted that no reference numerals in the drawings limit the scope of the claims, exemplary embodiments may be implemented at least in part by both hardware and software, and several “apparatus,” “units,” or “devices” may be referred to by the same item of hardware.
[0218] The various exemplary methods, apparatuses, and systems described herein are described within the general context of method steps, which can be implemented, on the one hand, by a calculator program product, integrated into a computer-readable medium comprising calculator executable instructions (e.g., program code) executed by a computer in a network environment. The computer-readable medium may include removable and non-removable storage devices, including but not limited to read-only memory (ROM), random access memory (RAM), optical disc (CD), digital versatile optical disc (DVD), etc. Typically, program modules may include instances, programs, objects, components, data structures, etc., that perform a specified task or implement a particular abstract data type. Computer-executable instructions, associated data structures, and program modules represent examples of program code for performing steps of the methods disclosed herein. A particular sequence of such executable instructions or associated data structures represents examples of corresponding actions for implementing the functionality described in such steps or processes.
[0219] Although specific features have been shown and described, it should be understood that they are not intended to limit the claimed invention, and it will be apparent to those skilled in the art that various changes and modifications can be made without departing from the spirit and scope of the claimed invention. Therefore, the specification and drawings are to be considered illustrative rather than restrictive. The claimed invention is intended to cover all alternatives, modifications, and equivalents.
Claims
1. A speech synthesis method in a hearing device, the method comprising: Based on the input signal, obtain the pulse input signal; Based on the pulse input signal, one or more pulse parameters, including the first pulse parameter, are determined; Based on the first pulse parameters, a speech signal is synthesized; The voice signal is processed to provide an electrical output signal; as well as Convert the electrical output signal into an audio output signal; The determination of one or more pulse parameters, including the first pulse parameter, based on the pulse input signal includes: Determine whether the pulse input signal meets the first rise criterion; The threshold is increased based on whether the pulse input signal meets the first rise criterion. Determine whether the pulse input signal meets the first countdown criterion; The countdown counter is initialized based on the pulse input signal satisfying the first countdown criterion. Determine whether the countdown counter meets the second countdown criterion; If the countdown counter meets the second countdown criterion, the countdown counter is reduced. Determine whether the countdown counter meets the pulse detection standard; and Based on the countdown counter meeting the pulse detection criteria, the first pulse parameter is determined using a pulse timer.
2. The method according to claim 1, wherein, The first pulse parameter is the pulse period or a confidence level indicating the possibility that the pulse input signal is a periodic or semi-periodic pulse signal.
3. The method according to claim 1, wherein, Determining one or more pulse parameters includes: determining a second pulse parameter based on the pulse input signal; and wherein the speech signal is synthesized based on the second pulse parameter.
4. The method according to claim 3, wherein, The second pulse parameter is a confidence level indicating the probability that the pulse input signal is a periodic or semi-periodic pulse signal.
5. The method according to claim 1, wherein the method comprises: Based on the pulse input signal, a pulse is detected, and based on the detected pulse, a pulse output signal indicating the detected pulse is output.
6. The method according to claim 5, wherein, The speech signal is synthesized based on the pulse output signal.
7. The method according to claim 1, wherein, The method includes: The input signal is filtered to provide a filter bank output; and The speech signal is synthesized based on the output of the filter bank.
8. A hearing device, comprising: A pulse detector configured to: determine one or more pulse parameters including a first pulse parameter; A speech synthesizer, connected to the pulse detector, is used to provide a speech signal based on the first pulse parameters; A processor for processing the voice signal to provide an electrical output signal; as well as A receiver for converting the electrical output signal into an audio output signal; The pulse detector is configured to determine one or more pulse parameters, including a first pulse parameter, by: Obtain the pulse input signal; Determine whether the pulse input signal meets the first rise criterion; The threshold is increased based on whether the pulse input signal meets the first rise criterion. Determine whether the pulse input signal meets the first countdown criterion; The countdown counter is initialized based on the pulse input signal satisfying the first countdown criterion. Determine whether the countdown counter meets the second countdown criterion; If the countdown counter meets the second countdown criterion, the countdown counter is reduced. Determine whether the countdown counter meets the pulse detection standard; and Based on the countdown counter meeting the pulse detection criteria, the first pulse parameter is determined using a pulse timer.
9. The hearing device according to claim 8, wherein, The first pulse parameter is the pulse period.
10. The hearing device according to claim 8, wherein, The one or more pulse parameters include a second pulse parameter; and wherein the speech synthesizer is configured to provide the speech signal based on the second pulse parameter.
11. The hearing device according to claim 10, wherein, The second pulse parameter is a confidence level indicating the probability that the pulse input signal is a periodic or semi-periodic pulse signal.
12. The hearing device according to claim 8, wherein the pulse detector is configured to: detect a pulse based on the pulse input signal, and output a pulse output signal indicating the detected pulse based on the detected pulse.
Citation Information
Patent Citations
Voice Signal Enhancement
US20130231923A1