JP2018110301A - Telephone calling device and echo suppression program - Google Patents
Telephone calling device and echo suppression program Download PDFInfo
- Publication number
- JP2018110301A JP2018110301A JP2016256823A JP2016256823A JP2018110301A JP 2018110301 A JP2018110301 A JP 2018110301A JP 2016256823 A JP2016256823 A JP 2016256823A JP 2016256823 A JP2016256823 A JP 2016256823A JP 2018110301 A JP2018110301 A JP 2018110301A
- Authority
- JP
- Japan
- Prior art keywords
- frequency
- mask
- component
- frequency band
- determination unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Telephone Function (AREA)
- Circuit For Audible Band Transducer (AREA)
Abstract
Description
本発明は、通話装置、及びエコー抑圧プログラムに関する。 The present invention relates to a communication device and an echo suppression program.
移動端末等の通話装置には、自装置のマイクロフォンから入力されたマイク入力音に含まれるエコー成分を抑圧し、当該エコー成分を抑圧した入力音を他の通話装置に送信するものがある。ここで、エコー成分は、マイク入力音における、自装置のレシーバから出力された受話音の成分である。 Some communication devices such as mobile terminals suppress an echo component included in a microphone input sound input from a microphone of the own device, and transmit an input sound in which the echo component is suppressed to another communication device. Here, the echo component is a component of the received sound output from the receiver of the own device in the microphone input sound.
この種の通話装置では、通話中に受話音とマイク入力音とに基づいてエコー経路の伝達特性を学習し、当該伝達特性に基づいてマイク入力音に含まれるエコー成分を抑圧する。ただし、伝達特性を学習する際に、マイク入力音に受話音以外の音声成分が含まれるダブルトークの状態であると、誤った伝達係数を学習してしまい、エコー成分を正しく抑圧することが困難となる。このため、エコー成分を抑圧する通話装置では、マイク入力音がダブルトークの状態ではない場合にのみ、受話音とマイク入力音とに基づいて伝達特性を学習してエコー成分を抑圧する。 In this type of communication device, the transfer characteristic of the echo path is learned based on the received sound and the microphone input sound during a call, and the echo component contained in the microphone input sound is suppressed based on the transfer characteristic. However, when learning the transfer characteristics, if the microphone input sound is in a double-talk state that includes speech components other than the received sound, it is difficult to correctly suppress the echo component because an incorrect transfer coefficient is learned. It becomes. For this reason, in a call device that suppresses echo components, only when the microphone input sound is not in a double talk state, the transmission characteristics are learned based on the received sound and the microphone input sound to suppress the echo component.
マイク入力音がダブルトークの状態であるか否かを判定する方法の1つとして、カメラで利用者の口の動きをとらえて判定する方法がある(例えば、特許文献1を参照)。 As one of methods for determining whether or not the microphone input sound is in a double talk state, there is a method of determining by capturing the movement of the user's mouth with a camera (see, for example, Patent Document 1).
また、マイク入力音がダブルトークの状態であるか否かを判定する別の方法として、音声出力信号と音声入力信号との音量比に基づいて、判定する方法がある(例えば、特許文献2を参照)。 As another method for determining whether or not a microphone input sound is in a double talk state, there is a method for determining based on a volume ratio between an audio output signal and an audio input signal (see, for example, Patent Document 2). reference).
更に、受話信号から特定周波数の成分を除去した信号をエコー経路に出力し、送話信号から検出した特定周波数と同じ周波数の成分を利用して、エコー成分を抑圧する制御パラメータを求める方法がある(例えば、特許文献3を参照)。この方法では、送話信号から検出された特定周波数成分のパワーに基づきノイズパワーを求め、エコー成分を含む周波数成分のパワーに基づきノイズ及びエコー成分を含む合算パワーを求めた後、該ノイズパワーと合算パワーとを用いて、制御パラメータを求める。 Further, there is a method for obtaining a control parameter for suppressing the echo component by outputting a signal obtained by removing a specific frequency component from the received signal to the echo path and using a component having the same frequency as the specific frequency detected from the transmission signal. (For example, see Patent Document 3). In this method, the noise power is obtained based on the power of the specific frequency component detected from the transmission signal, the combined power including the noise and the echo component is obtained based on the power of the frequency component including the echo component, and then the noise power and The control parameter is obtained using the total power.
カメラで利用者の口の動きをとらえる場合、当該カメラの撮像範囲内に利用者の口がないと、ダブルトークの状態であるか否かを正しく判定することができない。また、音声出力信号と音声入力信号との音量比によってダブルトークの状態であるか否かを検出する場合、音声入力信号に含まれる利用者の音声や周囲の雑音のレベルが小さいと、ダブルトークの状態であるか否かを正しく判定することができない。更に、送話信号から検出された特定周波数成分のパワーに基づいて求めたノイズパワーと、エコー成分を含む周波数成分のパワーに基づいて求めた合算パワーとを用いて制御パラメータを求める場合、処理負荷が増大する。 When capturing the movement of the user's mouth with the camera, it is impossible to correctly determine whether or not the user is in a double talk state if the user's mouth is not within the imaging range of the camera. In addition, when detecting whether or not a double talk state is detected based on the volume ratio between the audio output signal and the audio input signal, if the level of the user's voice or ambient noise included in the audio input signal is small, the double talk It is not possible to correctly determine whether or not this is the state. Furthermore, when the control parameter is obtained using the noise power obtained based on the power of the specific frequency component detected from the transmission signal and the combined power obtained based on the power of the frequency component including the echo component, the processing load Will increase.
1つの側面において、本発明は、通話装置におけるマイク入力音がダブルトークの状態であるか否かを効率よく、かつ正しく判定することを目的とする。 In one aspect, an object of the present invention is to efficiently and correctly determine whether or not a microphone input sound in a call device is in a double talk state.
1つの態様の通話装置は、受話音加工部と、成分抽出部と、伝達特性学習部と、判定部と、を備える。受話音加工部は、外部装置から受信した受話音声における所定の周波数帯の成分を除去してレシーバに出力する。成分抽出部は、マイクロフォンから入力された入力音声における所定の周波数帯の成分を抽出する。伝達特性学習部は、受話音声と、入力音声とに基づいてレシーバからマイクロフォンに至るエコー経路の伝達特性を学習する。判定部は、入力音声から抽出した所定の周波数帯の成分の大きさが閾値以下である場合に、伝達特性学習部に伝達特性を学習させる。 The communication device according to one aspect includes a received sound processing unit, a component extraction unit, a transfer characteristic learning unit, and a determination unit. The received sound processing unit removes a component of a predetermined frequency band from the received voice received from the external device and outputs the result to the receiver. The component extraction unit extracts a component in a predetermined frequency band from the input sound input from the microphone. The transfer characteristic learning unit learns the transfer characteristic of the echo path from the receiver to the microphone based on the received voice and the input voice. The determination unit causes the transfer characteristic learning unit to learn transfer characteristics when the magnitude of a component in a predetermined frequency band extracted from the input speech is equal to or less than a threshold value.
上述の態様によれば、通話装置におけるマイク入力音がダブルトークの状態であるか否かを効率よく、かつ正しく判定することが可能となる。 According to the above-described aspect, it is possible to efficiently and correctly determine whether or not the microphone input sound in the call device is in a double talk state.
図1は、一実施形態に係る通話装置の機能的構成を示す図である。
図1に示すように、本実施形態に係る通話装置1は、送受信部110と、受話音分析部120と、マスク周波数決定部130と、受話音加工部140と、成分抽出部150と、ダブルトーク判定部160と、入力音加工部170と、を備える。また、通話装置1は、マスク情報記憶部191と、分析結果保持部192と、伝達特性記憶部193と、を備える。更に、通話装置1は、レシーバ2と、マイクロフォン3と、を備える。
FIG. 1 is a diagram illustrating a functional configuration of a call device according to an embodiment.
As shown in FIG. 1, the
送受信部110は、他の通話装置4からの音声信号(受話音)を受信するとともに、マイクロフォン3で収音して取得した音声信号(マイク入力音)に含まれるエコー成分を抑圧した音声信号を他の通話装置4に送信する。エコー成分は、マイク入力音に含まれる、レシーバ2から出力された音の成分である。なお、本明細書では、他の通話装置4から受信した受話音(音声信号)を音波として通話装置1の外部に出力するものとしてレシーバ2を挙げるが、通話装置1は、レシーバ2の代わりに、スピーカ等のレシーバ2と同等の機能を持つものを備えていてもよい。
The transmission /
受話音分析部120は、他の通話装置4から受信した受話音に対する周波数分析を行い、周波数のピークを算出する。
The received
マスク周波数決定部130は、受話音に対する周波数分析の結果に基づいて、受話音から除去する周波数(マスク周波数)を算出する。マスク周波数は、受話音における他の周波数成分によりマスクされるため、受話音から除去しても知覚に影響を与えない成分の周波数とする。マスク周波数決定部130は、マスク情報記憶部191に記憶させたマスク情報と、分析結果保持部192で保持している周波数分析の結果とに基づいて、マスク周波数を算出する。
The mask
受話音加工部140は、受話音に含まれるマスク周波数の成分を除去した加工受話音を生成する。受話音加工部140は、生成した加工受話音をレシーバ2に出力するとともに、マスク周波数を示す情報を成分抽出部150に出力する。
The received
成分抽出部150は、マイクロフォン3から取得したマイク入力音に含まれるマスク周波数の成分を抽出する。
The
ダブルトーク判定部160は、マイク入力音から抽出した周波数成分に基づいて、ダブルトークの状態であるか否かを判定する。ダブルトークの状態は、通話装置1のマイクロフォン3に向かって発話する利用者の音声や通話装置1の周囲で発生している雑音がマイク入力音に含まれる状態である。
The double
入力音加工部170は、ダブルトーク判定部160の判定結果と、レシーバ2からマイクロフォン3に至るエコー経路の伝達特性とに基づいて、マイク入力音に含まれるエコー成分を抑圧した加工入力音を生成する。ダブルトークの状態ではない場合、入力音加工部170は、エコー経路の伝達特性を学習した後、学習した伝達特性に基づいて、マイク入力音に含まれるエコー成分を除去する。このとき、入力音加工部170は、学習した伝達特性を伝達特性記憶部193に記憶させる。一方、ダブルトークの状態である場合、入力音加工部170は、伝達特性記憶部193に記憶させた伝達特性(すなわちダブルトークの状態ではないときに学習した伝達特性)に基づいて、マイク入力音に含まれるエコー成分を除去する。入力音加工部170は、学習判定部171と、伝達特性学習部172と、エコー成分抑圧部173と、を含む。学習判定部171は、ダブルトーク判定部160の判定結果に基づいて、伝達特性を学習するか否かを判定する。伝達特性学習部172は、受話音とマイク入力音とに基づいてエコー経路の伝達特性を学習する。エコー成分抑圧部173は、伝達特性に基づいて、マイク入力音に含まれるエコー成分を抑圧した加工入力音を生成する。エコー成分を抑圧した加工入力音は、送受信部110を介して、他の通話装置4に送信される。
The input
上記のように、本実施形態の通話装置1におけるマスク周波数決定部130は、マスク情報を参照し、受話音に含まれる音声のうちの他の周波数成分によりマスクされる周波数(マスク周波数)を算出する。ここで、マスク周波数の成分をマスクする他の周波数成分は、同一フレームにおけるピーク周波数の成分と、同一周波数の時間変化においてピークとなる過去フレームの成分との2通りが存在する。このため、本実施形態では、マスク情報として、第1のマスク情報と、第2のマスク情報とを利用する。第1のマスク情報は、処理対象のフレーム内におけるピーク周波数からの距離(周波数差)と、各周波数のマスクされる最大音量(パワー)との関係を示す情報である。ピーク周波数は、周波数スペクトルにおいて極大値をとる周波数である。第2のマスク情報は、過去の所定時間分の複数のフレームにおける同一周波数の成分の時間変化でのピーク時刻からの距離(時間差)と、マスクされる最大音量との関係を示す情報である。ピーク時刻は、所定時間分の周波数スペクトルにおける同一周波数成分の時間変化において極大値をとる時刻である。
As described above, the mask
図2は、マスク情報を説明するグラフ図である。
図2の(a)には、マスク周波数決定部130が参照するマスク情報のうちの、第1のマスク情報を説明するグラフ図を示している。図2の(a)のグラフ図は、横軸がピーク周波数との差であり、縦軸がパワーである。
FIG. 2 is a graph for explaining the mask information.
FIG. 2A shows a graph for explaining the first mask information among the mask information referred to by the mask
第1のマスク情報は、上記のように、ピーク周波数からの距離(ピーク周波数との周波数差)と、マスクされる最大音量(パワー)との関係を示す情報である。この第1のマスク情報は、例えば、図2の(a)に示した関数G(f)により与えられる。関数G(f)は、ピーク周波数との差fが0である場合にパワーPW2(すなわちG(0)=PW2)となり、ピーク周波数との差fの絶対値が大きくなるにつれて減少する関数である。関数G(f)は、既知の統計処理により設定可能である。 As described above, the first mask information is information indicating the relationship between the distance from the peak frequency (frequency difference from the peak frequency) and the maximum volume (power) to be masked. This first mask information is given by, for example, the function G (f) shown in FIG. The function G (f) is a function that becomes power PW2 (that is, G (0) = PW2) when the difference f from the peak frequency is 0, and decreases as the absolute value of the difference f from the peak frequency increases. . The function G (f) can be set by known statistical processing.
関数G(f)により算出される値は、上記のように、マスクされる最大音量(パワー)である。よって、処理対象のフレームについてのパワースペクトルにおけるある周波数のパワーが、関数G(f)により算出した最大音量よりも小さい場合、当該ある周波数の成分はピーク周波数の成分によりマスクされる。すなわち、処理対象のフレームについてのパワースペクトルにおいて関数G(f)により算出した最大音量よりもパワーが小さい周波数成分は、人が知覚することが困難であり、処理対象のフレームから除去しても知覚への影響が小さい。 The value calculated by the function G (f) is the maximum sound volume (power) to be masked as described above. Therefore, when the power of a certain frequency in the power spectrum for the processing target frame is smaller than the maximum volume calculated by the function G (f), the certain frequency component is masked by the peak frequency component. That is, it is difficult for a person to perceive a frequency component whose power is smaller than the maximum volume calculated by the function G (f) in the power spectrum for the processing target frame, and even if it is removed from the processing target frame. The impact on is small.
図2の(a)のグラフ図において、ピーク周波数との差fがF1である周波数のパワーP2は、関数G(f)により算出される最大音量G(F1)よりも大きい。このように、処理対象のフレームについてのパワースペクトルにおけるある周波数のパワーが、関数G(f)により算出される最大音量以上である場合、人は、当該周波数成分を知覚することが可能となる。 In the graph of FIG. 2A, the power P2 of the frequency whose difference f from the peak frequency is F1 is larger than the maximum volume G (F1) calculated by the function G (f). Thus, when the power of a certain frequency in the power spectrum for the processing target frame is equal to or higher than the maximum volume calculated by the function G (f), a person can perceive the frequency component.
これに対し、図2の(a)のグラフ図においてピーク周波数との差fが−F1である周波数のパワーP3は、関数G(f)により算出される最大音量G(−F1)よりも小さい。このように、処理対象のフレームについてのパワースペクトルにおけるある周波数のパワーが、関数G(f)により算出される最大音量よりも小さい場合、人は、当該周波数成分を知覚することが困難となる。特に、パワースペクトルにおけるパワーと、関数G(f)により算出される最大音量との差(マスク量)が大きくなるほど、ピーク周波数の成分によりマスクされた周波数成分を知覚することが困難となる。 On the other hand, in the graph of FIG. 2A, the power P3 of the frequency whose difference f from the peak frequency is −F1 is smaller than the maximum volume G (−F1) calculated by the function G (f). . Thus, when the power of a certain frequency in the power spectrum for the processing target frame is smaller than the maximum volume calculated by the function G (f), it becomes difficult for a person to perceive the frequency component. In particular, the greater the difference (mask amount) between the power in the power spectrum and the maximum volume calculated by the function G (f), the more difficult it is to perceive the frequency component masked by the peak frequency component.
本実施形態では、ピーク周波数の成分によりマスクされる周波数のうちの、マスク量が最大値となる周波数を、第1のマスク周波数とする。このため、受話音から第1のマスク周波数の成分を除去することによる知覚への影響を最小限に抑えることが可能となる。 In the present embodiment, of the frequencies masked by the peak frequency component, the frequency having the maximum mask amount is set as the first mask frequency. For this reason, it becomes possible to minimize the influence on perception by removing the component of the first mask frequency from the received sound.
第1のマスク情報に基づいて第1のマスク周波数を算出する際、マスク周波数決定部130は、例えば、処理対象のフレームについての周波数スペクトルにおけるピーク周波数と、当該ピーク周波数の成分P1とに基づいて、関数G(f)を並進させる。
When calculating the first mask frequency based on the first mask information, the mask
一方、図2の(b)には、マスク周波数決定部130が参照するマスク情報のうちの、第2のマスク情報を説明するグラフ図を示している。図2の(b)のグラフ図は、横軸が継時ピークのフレームからの時間差であり、縦軸がパワーである。
On the other hand, FIG. 2B shows a graph for explaining the second mask information of the mask information referred to by the mask
第2のマスク情報は、上記のように、複数フレームにおける同一周波数の成分の時間変化でのピーク(継時ピーク)からの距離(継時ピークからの時間差)と、マスクされる最大音量(パワー)との関係を示す情報である。この第2のマスク情報は、例えば、図2の(b)に示した関数H(t)により与えられる。関数H(t)は、継時ピークとの時間差tが0である場合にパワーPW2(すなわちH(0)=PW2)となり、継時ピークとの時間差tが大きくなるにつれて減少する関数である。関数H(t)は、既知の統計処理により設定可能である。 As described above, the second mask information includes the distance (time difference from the continuous peak) from the peak (continuous peak) in the time change of the components of the same frequency in a plurality of frames, and the maximum volume (power) to be masked. ). This second mask information is given by, for example, the function H (t) shown in FIG. The function H (t) is a function that becomes power PW2 (that is, H (0) = PW2) when the time difference t from the continuous peak is 0, and decreases as the time difference t from the continuous peak increases. The function H (t) can be set by known statistical processing.
関数H(t)により算出される値は、上記のように、マスクされる最大音量(パワー)である。よって、処理対象のフレームについてのパワースペクトルにおけるある周波数のパワーが、関数H(t)により算出した最大音量よりも小さい場合、当該ある周波数の成分は過去フレームの同一周波数成分によりマスクされる。すなわち、処理対象のフレームについてのパワースペクトルにおいて関数H(t)により算出した最大音量よりもパワーが小さい周波数成分は、人が知覚することが困難であり、処理対象のフレームから除去しても知覚への影響が小さい。 The value calculated by the function H (t) is the maximum sound volume (power) to be masked as described above. Therefore, when the power of a certain frequency in the power spectrum for the processing target frame is smaller than the maximum volume calculated by the function H (t), the component of the certain frequency is masked by the same frequency component of the past frame. That is, it is difficult for a person to perceive a frequency component whose power is smaller than the maximum volume calculated by the function H (t) in the power spectrum of the processing target frame, and it is perceived even if it is removed from the processing target frame. The impact on is small.
図2の(b)のグラフ図において、継時ピークを含むフレームからの時間差tがT2であるフレームにおける同一周波数成分のパワーP3は、関数H(t)により算出される最大音量H(T2)よりも大きい。このように、処理対象のフレームにおけるある周波数のパワーが、関数H(t)により算出される最大音量よりも大きい場合、人は、当該周波数成分を知覚することが可能となる。 In the graph of FIG. 2B, the power P3 of the same frequency component in the frame whose time difference t from the frame including the successive peak is T2 is the maximum volume H (T2) calculated by the function H (t). Bigger than. In this way, when the power of a certain frequency in the processing target frame is larger than the maximum volume calculated by the function H (t), a person can perceive the frequency component.
これに対し、図2の(b)のグラフ図において、継時ピークを含むフレームからの時間差tがT1であるフレームにおける同一周波数成分のパワーP2は、関数H(t)により算出される最大音量H(T1)よりも小さい。このように、処理対象のフレームについてのパワースペクトルにおけるある周波数のパワーが、関数H(t)により算出される最大音量よりも小さい場合、人は、当該周波数成分を知覚することが困難となる。特に、パワースペクトルにおけるパワーと、関数H(t)により算出される最大音量との差(マスク量)が大きくなるほど、過去フレームの同一周波数成分によりマスクされた周波数成分を知覚することが困難となる。 On the other hand, in the graph of FIG. 2B, the power P2 of the same frequency component in the frame whose time difference t from the frame including the successive peak is T1 is the maximum volume calculated by the function H (t). It is smaller than H (T1). As described above, when the power of a certain frequency in the power spectrum for the processing target frame is smaller than the maximum volume calculated by the function H (t), it becomes difficult for a person to perceive the frequency component. In particular, the greater the difference (mask amount) between the power in the power spectrum and the maximum volume calculated by the function H (t), the more difficult it is to perceive the frequency component masked by the same frequency component of the past frame. .
本実施形態では、処理対象のフレームにおいて過去フレームの同一周波数成分(継時ピーク)によりマスクされる周波数のうちの、マスク量が最大値となる周波数を、第2のマスク周波数とする。このため、受話音から第2のマスク周波数の成分を除去することによる知覚への影響を最小限に抑えることが可能となる。 In the present embodiment, the frequency at which the mask amount becomes the maximum value among the frequencies masked by the same frequency component (continuous peak) of the past frame in the processing target frame is set as the second mask frequency. For this reason, it is possible to minimize the influence on perception by removing the second mask frequency component from the received sound.
第2のマスク情報に基づいて第2のマスク周波数を算出する際、マスク周波数決定部130は、例えば、継時ピークを含むフレームから現在処理対象となっているフレームまでの時間差と、当該継時ピークのパワーP1とに基づいて、関数H(t)を並進させる。
When calculating the second mask frequency based on the second mask information, the mask
通話装置1は、他の通話装置4との間での呼接続が確立した後、他の通話装置4から受信した受話音をレシーバ2から出力する処理と、マイクロフォン3から入力されたマイク入力音に含まれるエコー成分を抑圧して他の通話装置4に送信する処理とを行う。本実施形態に係る通話装置1は、他の通話装置4との間での呼接続が確立した後、図3に示した処理を行う。
After the call connection with the
図3は、一実施形態に係る通話装置が行う処理を説明するフローチャートである。
通話装置1は、まず、受話音から処理対象のフレームを選択し(ステップS1)、該処理対象のフレームに対する周波数分析を行う(ステップS2)。ステップS1,S2の処理は、受話音分析部120が行う。受話音分析部120は、既知の分析方法に従って、処理対象のフレームにおける音声波形を周波数スペクトルに変換し、ピークとなる周波数の値と、ピークの数とを算出する。また、受話音分析部120は、処理対象のフレームに対する周波数分析の結果を分析結果保持部192に保持させる。この際、受話音分析部120は、現在処理対象であるフレームを含む、過去の所定フレーム数分の周波数分析の結果を分析結果保持部192に保持させる。以下の説明では、周波数スペクトルや周波数スペクトルに基づいて算出されるパワースペクトルにおける周波数帯のことを、単に「周波数」ともいう。
FIG. 3 is a flowchart for describing processing performed by the telephone device according to the embodiment.
The
次に、通話装置1は、受話音における処理対象のフレームに対する周波数分析の結果に基づいて、当該フレームのマスク周波数を算出する(ステップS3)。ステップS3の処理は、マスク周波数決定部130が行う。本実施形態の通話装置1におけるマスク周波数決定部130は、マスク情報記憶部191に記憶させたマスク情報と、分析結果保持部192で保持している所定フレーム数分の周波数分析の結果とに基づいて、第1のマスク周波数と、第2のマスク周波数とを算出する。第1のマスク周波数は、処理対象のフレームの周波数スペクトルにおいてピークとなる周波数成分によりマスクされる周波数のうちの、マスク量が最も大きい周波数である。第2のマスク周波数は、所定フレーム数分の周波数スペクトルにおける同一周波数成分の時間変化でピークとなるフレームの周波数成分によりマスクされる周波数のうちの、マスク量が最も大きい周波数である。ピークとなる周波数成分によりマスクされる周波数は、ピークとなる周波数又はフレームとの距離に基づいて設定された最大音量(関数G(f)又は関数H(t))よりもスペクトル値(パワー)が小さい周波数である。また、マスク量は、マスクされる最大音量からパワーを減じた値である。
Next, the
次に、通話装置1は、処理対象のフレームの周波数スペクトルからマスク周波数の成分を除去して出力する(ステップS4)。ステップS4の処理は、受話音加工部140が行う。受話音加工部140は、周波数スペクトルにおける第1のマスク周波数及び第2のマスク周波数のスペクトル値を0にした後、周波数スペクトルを音声波形に逆変換して加工受話音を生成する。受話音加工部140は、加工受話音をレシーバ2に出力するとともに、マスク周波数を示す情報を成分抽出部150に出力する。これにより、通話装置1の利用者は、第1のマスク周波数及び第2のマスク周波数が除去された受話音5を聞くこととなる。しかしながら、上記のように、マスク周波数の成分は、他の周波数成分によりマスクされる、通話装置1の利用者が知覚困難な成分である。このため、マスク周波数の成分を除去した受話音5を出力することによる通話装置1の利用者の知覚への影響は非常に小さい。
Next, the
次に、通話装置1は、マイク入力音における処理対象のフレームからマスク周波数の成分を抽出する(ステップS5)。ステップS5の処理は、成分抽出部150が行う。成分抽出部150は、マイクロフォン3から入力されたマイク入力音における処理対象のフレームを音声波形から周波数スペクトルに変換し、該周波数スペクトルにおける、受話音加工部140から受け取ったマスク周波数の成分を抽出する。受話音加工部140において受話音から第1のマスク周波数及び第2のマスク周波数の成分を除去した場合、成分抽出部150は、マイク入力音の周波数スペクトルから、第1のマスク周波数の成分と、第2のマスク周波数の成分とを抽出する。
Next, the
次に、通話装置1は、マイク入力音から抽出したマスク周波数の成分の値に基づいて、処理対象のフレームに含まれる音声がダブルトークの状態であるか否かを判定する(ステップS6)。ステップS6の処理は、ダブルトーク判定部160が行う。ダブルトーク判定部160は、マイク入力音の周波数スペクトルから抽出したマスク周波数の成分に基づいてパワーを算出し、該パワーが閾値よりも大きい場合に処理対象のフレームがダブルトークの状態であると判定する。マイク入力音から第1のマスク周波数の成分と第2のマスク周波数の成分とを抽出した場合、ダブルトーク判定部160は、例えば、第1のマスク周波数のパワー及び第2のマスク周波数のパワーが閾値よりも大きい場合に処理対象のフレームがダブルトークの状態であると判定する。
Next, based on the value of the mask frequency component extracted from the microphone input sound, the
次に、通話装置1は、ダブルトーク判定部160の判定結果に基づいて、マイク入力音からエコー成分を除去する処理(ステップS7〜S9)を行う。ステップS7〜S9の処理は、入力音加工部170が行う。入力音加工部170は、まず、ダブルトーク判定部160の判定結果から、処理対象のフレームに含まれる音声がダブルトークの状態であるか否かを判定する(ステップS7)。ステップS7の処理は、入力音加工部170の学習判定部171が行う。
Next, the
処理対象のフレームがダブルトークの状態ではない場合(ステップS7;NO)、入力音加工部170は、エコー経路の伝達特性を学習する処理(ステップS8)を行った後、伝達特性に基づいてマイク入力音のエコー成分を抑圧する処理(ステップS9)を行う。ステップS8の処理は、入力音加工部170の伝達特性学習部172が行う。伝達特性学習部172は、既知の学習方法に従って、レシーバ2からマイクロフォン3に至るエコー経路の伝達特性を学習する。例えば、伝達特性学習部172は、受話音における処理対象のフレームについての周波数スペクトルと、マイク入力音における処理対象のフレームについての周波数スペクトルとに基づいて、各周波数における伝達特性を算出する。ステップS9の処理は、入力音加工部170のエコー成分抑圧部173が行う。エコー成分抑圧部173は、マイク入力音の周波数スペクトルにおける各周波数成分に伝達特性を適用することで、マイク入力音に含まれるエコー成分を抑圧する。なお、ステップS8の処理を行った場合、エコー成分抑圧部173は、ステップS8で学習した伝達特性に基づいて、マイク入力音に含まれるエコー成分を抑圧する。
When the frame to be processed is not in a double talk state (step S7; NO), the input
すなわち、処理対象のフレームがダブルトークの状態ではない場合(ステップS7;NO)、入力音加工部170の学習判定部171は、次に、伝達特性学習部172に伝達特性を学習させる。伝達特性学習部172は、現在処理対象であるフレームの周波数スペクトルに基づいて伝達特性を学習すると、学習した伝達特性を伝達特性記憶部193に記憶させるとともに、エコー成分抑圧部173に渡す。伝達特性学習部172から伝達特性を受け取ると、エコー成分抑圧部173は、受け取った伝達特性に基づいて、マイク入力音における処理対象のフレームに含まれるエコー成分を抑圧する。エコー成分抑圧部173は、マイク入力音の周波数スペクトルにおける各周波数成分に対して伝達特性を適用し、マイク入力音に含まれるエコー成分を抑圧する。
That is, when the processing target frame is not in the double talk state (step S7; NO), the learning
一方、処理対象のフレームがダブルトークの状態である場合(ステップS7;YES)、入力音加工部170は、ステップS8の処理をスキップし、ステップS9の処理を行う。すなわち、処理対象のフレームがダブルトークの状態である場合、入力音加工部170は、伝達特性を学習しない。入力音加工部170の学習判定部171は、次に、エコー成分抑圧部173に、マイク入力音に含まれるエコー成分を抑圧させる。この際、学習判定部171は、エコー成分抑圧部173に、現在処理対象であるフレームよりも前のフレーム(過去フレーム)に基づいて学習した伝達特性を伝達特性記憶部173から取得させる。エコー成分抑圧部173は、伝達特性記憶部193から取得した伝達特性に基づいて、マイク入力音における処理対象のフレームに含まれるエコー成分を抑圧する。
On the other hand, when the processing target frame is in a double talk state (step S7; YES), the input
マイク入力音に含まれるエコー成分を抑圧した後、通話装置1は、エコー成分を抑圧したマイク入力音(加工入力音)を他の通話装置4に送信する(ステップS10)。ステップS10の処理は、送受信部110が行う。送受信部110は、入力音加工部170でエコー成分を抑圧したマイク入力音に対して所定の処理を行った後、他の通話装置4に送信する。
After suppressing the echo component included in the microphone input sound, the
マイク入力音を他の通話装置4に送信した後、通話装置1は、他の通話装置4との通話が継続しているかを判定する(ステップS11)。ステップS11の処理は、例えば、送受信部110或いは受話音分析部120が行う。通話が継続している場合(ステップS11;YES)、通話装置1は、ステップS1以降の処理を繰り返す。通話が終了した場合(ステップS11;NO)、通話装置1は、上記の処理を終了する。
After transmitting the microphone input sound to the
図3のフローチャートは、ステップS1で抽出した処理対象のフレームに対するステップS2〜S10の処理を行った後、次の処理対象のフレームに対するステップS1〜S10の処理を行う内容になっている。しかしながら、通話装置1は、ステップS1〜S10の各処理をパイプライン化して行ってもよい。
The flowchart of FIG. 3 shows the content of performing steps S1 to S10 on the next processing target frame after performing the processing of steps S2 to S10 on the processing target frame extracted in step S1. However, the
通話装置1が行うステップS1〜S11の処理のうちのステップS2の処理、すなわち受話音のフレームに対する周波数分析を行う処理は、上記のように受話音分析部120が行う。受話音分析部120は、例えば、図4に示した処理を行う。
The process of step S2 among the processes of steps S1 to S11 performed by the
図4は、受話音のフレームを周波数分析する処理の内容を説明するフローチャートである。 FIG. 4 is a flowchart for explaining the contents of processing for frequency analysis of the frame of the received sound.
図4に示すように、受話音分析部120は、まず、受話音における処理対象のフレームの音声波形を周波数スペクトルに変換する(ステップS201)。ステップS201の処理では、受話音分析部120は、既知の変換方法に従って、音声波形を周波数スペクトルに変換する。例えば、受話音分析部120は、高速フーリエ変換により音声波形を周波数スペクトルに変換する。
As shown in FIG. 4, the received
次に、受話音分析部120は、周波数スペクトルに基づいて、処理対象のフレームについてのパワースペクトルを算出する(ステップS202)。ステップS202の処理では、受話音分析部120は、既知の算出方法に従って、周波数スペクトルにおける各周波数帯のパワーを算出する。
Next, the received
次に、受話音分析部120は、パワースペクトルに基づいて、現在処理対象であるフレームにおけるピーク周波数を抽出する(ステップS203)。ステップS203の処理では、受話音分析部120は、既知の抽出方法に従って、現在処理対象であるフレームのパワースペクトルにおいてピーク(極大)となる周波数帯を抽出する。例えば、受話音分析部120は、時刻tのフレームについてのパワースペクトルにおけるi番目の周波数帯のパワーP(i,t)が下記式(1−1)及び式(1−2)を満たす場合に、当該i番目の周波数帯をピーク周波数とする。
Next, the received
P(i,t)−P(i-1,t)>TH1 ・・・(1−1)
P(i,t)−P(i+1,t)>TH1 ・・・(1−2)
P (i, t) -P (i-1, t)> TH1 (1-1)
P (i, t) -P (i + 1, t)> TH1 (1-2)
式(1−1)及び式(1−2)における判定閾値TH1は、適宜設定可能である。 The determination threshold value TH1 in the expressions (1-1) and (1-2) can be set as appropriate.
次に、受話音分析部120は、パワースペクトルの時間変化に基づいて、各周波数帯の継時ピークを抽出する(ステップS204)。ステップS204の処理では、受話音分析部120は、現在処理対象であるフレームを含む複数フレームのパワースペクトルを参照し、周波数帯毎に、パワーP(i,t)の時間変化においてピーク(極大)となるフレームの時刻を抽出する。例えば、受話音分析部120は、各フレームのパワースペクトルにおけるi番目の周波数帯のパワーのうちの、下記式(2−1)及び式(2−2)を満たすパワーP(i,t-1)を含むパワースペクトルのフレーム(時刻t-1)を、継時ピークとする。
Next, the received
P(i,t-1)−P(i,t-2)>TH1 ・・・(2−1)
P(i,t-1)−P(i,t)>TH1 ・・・(2−2)
P (i, t-1) -P (i, t-2)> TH1 (2-1)
P (i, t-1) -P (i, t)> TH1 (2-2)
次に、受話音分析部120は、現在処理対象であるフレームの周波数スペクトルと、ピーク周波数を示す情報と、継時ピークを示す情報とを分析結果保持部192に保持させる(ステップS205)。ステップS205の処理を終えると、受話音分析部120は、現在処理対象となっているフレームに対する周波数分析を終了する。
Next, the received
受話音における処理対象のフレームに対する周波数分析が終了すると、通話装置1は、次に、当該フレームから除去するマスク周波数を決定する処理(ステップS3)を行う。ステップS3の処理は、マスク周波数決定部130が行う。マスク周波数決定部130は、ステップS3の処理として、図4に示した処理を行う。
When the frequency analysis for the frame to be processed in the received sound is completed, the
図5は、受話音から除去するマスク周波数を決定する処理の内容を説明するフローチャートである。 FIG. 5 is a flowchart for explaining the contents of the process for determining the mask frequency to be removed from the received sound.
ステップS4の処理において、マスク周波数決定部130は、まず、周波数スペクトルにおける周波数帯(周波数ビン)を指定する変数iを1に設定する(ステップS301)。
In the process of step S4, the mask
次に、マスク周波数決定部130は、ピーク周波数と、第1のマスク情報とに基づいて、フレーム内のピーク周波数によりマスクされる第1のマスク周波数Max_FM_freqを算出する(ステップS302)。第1のマスク周波数は、ピーク周波数の成分によりマスクされる周波数のうちの、マスク量が最大となる周波数である。マスク量は、ピーク周波数の成分によりマスクされるパワー(音量)の最大値から周波数スペクトルにおけるパワーを減じた値である。マスク周波数決定部130は、第1のマスク情報に基づいて、処理対象のフレームにおけるピーク周波数毎にi番目の周波数帯についてのマスク量を算出する。そして、算出したマスク量が最大値となる周波数帯を第1のマスク周波数として保持する。
Next, the mask
次に、マスク周波数決定部130は、継時ピークと、第2のマスク情報とに基づいて、に基づいて、第2のマスク周波数Max_TM_freqを算出する(ステップS303)。第2のマスク周波数は、処理対象のフレームにおいて過去フレームの同一周波数成分によりマスクされる周波数のうちの、マスク量が最大となる周波数である。マスク周波数決定部130は、i番目の周波数帯の時間変化における継時ピーク毎に処理対象のフレームにおけるマスク量を算出する。そして、算出したマスク量が最大値となる周波数帯を第2のマスク周波数として保持する。
Next, the mask
ステップS302及びS303の処理を終えると、マスク周波数決定部130は、次に、変数iをi+1に更新し(ステップS304)、更新後の変数iが終値Nよりも大きいか否かを判定する(ステップS305)。終値Nは、周波数スペクトルにおける周波数帯の総数とする。すなわち、ステップS305では、マスク周波数決定部130は、周波数スペクトルにおける全ての周波数帯に対してステップS302及びS303の処理を行ったか否かを判定する。i≦Nである場合(ステップS305;NO)、マスク周波数決定部130は、現時点でi番目となる周波数帯に対するステップS302以降の処理を行う。i>Nである場合(ステップS305;YES)、マスク周波数決定部130は、第1のマスク周波数Max_FM_freq、及び第2のマスク周波数Max_TM_freqをマスク周波数に決定する(ステップS306)。ステップS306の処理を終えると、マスク周波数決定部130は、現在処理対象となっているフレームに対するマスク周波数を決定する処理を終了する。
After completing the processing of steps S302 and S303, the mask
図6Aは、第1のマスク周波数を算出する処理の内容を説明するフローチャート(その1)である。図6Bは、第1のマスク周波数を算出する処理の内容を説明するフローチャート(その2)である。 FIG. 6A is a flowchart (part 1) for explaining the content of the process of calculating the first mask frequency. FIG. 6B is a flowchart (part 2) illustrating the content of the process of calculating the first mask frequency.
第1のマスク周波数を算出する処理において、マスク周波数決定部130は、まず、図6Aに示すように、周波数帯を指定する変数iが1であるか否かを判定する(ステップS30201)。i=1である場合(ステップS30201;YES)、マスク周波数決定部130は、次に、処理対象のフレームにおけるマスク量の最大値Max_FM、及び第1のマスク周波数Max_FM_freqを、それぞれ、0に設定する(ステップS30202)。その後、マスク周波数決定部130は、変数nを1に設定するとともに、i番目の周波数帯におけるマスク量の最大値Max_FM_Tと、暫定マスク周波数Max_FM_freq_Tとを、それぞれ、0に設定する(ステップS30203)。ここで、変数nは、処理対象のフレームにおけるピーク周波数を識別する値である。一方、i>1である場合(ステップS30201;NO)、マスク周波数決定部130は、ステップS30202の処理をスキップし、次に、ステップS30203の処理を行う。
In the process of calculating the first mask frequency, the mask
ステップS30203の処理の後、マスク周波数決定部130は、n番目のピーク周波数からi番目の周波数までの距離(周波数差)を算出する(ステップS30204)。
After the process of step S30203, the mask
次に、マスク周波数決定部130は、i番目の周波数帯において、n番目のピーク周波数の成分によりマスクされる最大音量FM_TH(n,i)を算出する(ステップS30205)。ステップS30205では、マスク周波数決定部130は、周波数差とマスクされる最大音量との関係を示す第1のマスク情報に基づいて、最大音量FM_TH(n,i)を算出する。マスク周波数決定部130は、マスク情報記憶部191から第1のマスク情報を取得する。
Next, the mask
次に、マスク周波数決定部130は、処理対象のフレームにおけるi番目の周波数のパワーP(i,t)と、最大音量FM_TH(n,i)とに基づいて、マスク量FM(n,i)=FM_TH(n,i)−P(i,t)を算出する(ステップS30206)。
Next, the mask
次に、マスク周波数決定部130は、算出したマスク量FM(n,i)がi番目の周波数帯における現時点でのマスク量の最大値Max_FM_Tよりも大きいか否かを判定する(ステップS30207)。FM(n,i)>Max_FM_Tである場合(ステップS30207;YES)、マスク周波数決定部130は、マスク量の最大値Max_FM_T、及び暫定マスク周波数Max_FM_freq_Tを、それぞれ、マスク量FM(n,i)、及び変数iに更新する(ステップS30207)。その後、マスク周波数決定部130は、変数nをn+1に更新し(ステップS30209)、更新後の変数nが終値N_FPよりも大きいか否かを判定する(ステップS30210)。終値N_FPは、処理対象のフレームにおけるピーク周波数の個数である。一方、FM(n,i)≦Max_FM_Tである場合(ステップS30207;NO)、マスク周波数決定部130は、ステップS30208の処理をスキップし、ステップS30209の処理,及びステップS30210の判定を行う。
Next, the mask
n≦N_FPである場合(ステップS30210;NO)、マスク周波数決定部130は、ステップS30204以降の処理を行う。
When n ≦ N_FP is satisfied (step S30210; NO), the mask
n>N_FPである場合(ステップS30210;YES)、マスク周波数決定部130は、次に、図6Bに示すように、i番目の周波数におけるマスク量の最大値Max_FM_Tが、処理対象のフレームにおけるマスク量の最大値Max_FMよりも大きいか否かを判定する(ステップS30211)。
If n> N_FP (step S30210; YES), the mask
Max_FM_T>Max_FMである場合(ステップS30211;YES)、マスク周波数決定部130は、処理対象のフレームにおけるマスク量の最大値Max_FM、及び第1のマスク周波数Max_FM_freqを、それぞれ、Max_FM_T、及びMax_FM_freq_Tに更新する(ステップS30212)。ステップS30212の処理を行った場合、マスク周波数決定部130は、更新したマスク量の最大値Max_FM、及び第1のマスク周波数Max_FM_freqを保持した状態で、第1のマスク周波数を算出する処理を終了する。
When Max_FM_T> Max_FM (step S30211; YES), the mask
一方、Max_FM_T≦Max_FMである場合(ステップS30211;NO)、マスク周波数決定部130は、ステップS30212の処理をスキップし、第1のマスク周波数を算出する処理を終了する。この場合(Max_FM_T≦Max_FMである場合)、マスク周波数決定部130は、i−1番目の周波数までの処理におけるマスク量の最大値Max_FM、及び第1のマスク周波数Max_FM_freqを保持した状態で、第1のマスク周波数を算出する処理を終了する。
On the other hand, when Max_FM_T ≦ Max_FM (step S30211; NO), the mask
図7は、第1のマスク周波数の算出方法を説明するグラフ図である。
図7のグラフ図において、横軸は処理対象のフレームについてのパワースペクトルにおける周波数であり、縦軸はパワーである。
FIG. 7 is a graph illustrating a method for calculating the first mask frequency.
In the graph of FIG. 7, the horizontal axis represents the frequency in the power spectrum for the processing target frame, and the vertical axis represents the power.
図7の太い曲線PSは、処理対象のフレームにおけるパワースペクトルであり、第1のピークP1、第2のピークP2、及び第3のピークP3を含む。図6A及び図6Bのフローチャートに沿ってパワースペクトルPSにおけるi番目の周波数についてのマスク量を算出する場合、マスク周波数決定部130は、以下の処理を行う。
A thick curve PS in FIG. 7 is a power spectrum in a frame to be processed, and includes a first peak P1, a second peak P2, and a third peak P3. When calculating the mask amount for the i-th frequency in the power spectrum PS according to the flowcharts of FIGS. 6A and 6B, the mask
マスク周波数決定部130は、まず、第1のピークP1の周波数IP1とi番目の周波数との周波数差F1(=i−IP1)を算出する(ステップS30204)。
The mask
次に、マスク周波数決定部130は、第1のピークP1によりマスクされるi番目の周波数の最大音量を算出する(ステップS30205)。このとき、マスク周波数決定部130は、第1のピークP1の周波数IP1及びパワーPWP1と、第1のマスク情報とに基づいて、第1の関数G1(f)を設定する。第1の関数G1(f)は、同一フレームにおける、第1のピークP1の周波数IP1からの周波数差と、マスクされる最大音量との関係を示す関数である。マスク周波数決定部130は、第1の関数G1(f)に基づいて、i番目の周波数帯についての最大音量FM_TH(1,i)を算出する。
Next, the mask
次に、マスク周波数決定部130は、マスク量FM(1,i)=FM_TH(1,i)−P(i,t)P(i,t)を算出する(ステップS30206)。
Next, the mask
次に、マスク周波数決定部130は、処理対象のフレームにおけるマスク量の最大値、及び暫定マスク周波数を、それぞれ、マスク量FM(1,i),及び変数iとする(ステップS30208)。
Next, the mask
その後、マスク周波数決定部130は、ピークを識別する変数nを2に更新し(ステップS30209)、ステップS30204以降の処理を行う。すなわち、マスク周波数決定部130は、第2のピークP2とi番目の周波数帯との周波数差−F2を算出した後、第2のピークP2の周波数及びパワーと、第1のマスク情報とに基づいて、第2の関数G2(f)を設定する。第2の関数G2(f)は、第2のピークP2の周波数IP2からの周波数差と、マスクされる最大音量との関係を示す関数である。マスク周波数決定部130は、第2の関数G2(f)に基づいてi番目の周波数帯についての最大音量FM_TH(2,i)を算出し、マスク量FM(2,i)=FM_TH(2,i)−P(i,t)を算出する。図7に示した例では、第2のピークP2によるマスク量FM(2,i)が第1のピークP1によるマスク量FM(1,i)よりも大きくなる。よって、マスク周波数決定部130は、処理対象のフレームにおけるマスク量の最大値、及び暫定マスク周波数を、それぞれ、マスク量FM(2,i),及び変数iとする(ステップS30208)。
Thereafter, the mask
この後、マスク周波数決定部130は、ピークを識別する変数nを3に更新し(ステップS30209)、ステップS30204以降の処理を行う。このとき、マスク周波数決定部130は、第3のピークP3の周波数IP3及びパワーと、第1のマスク情報とに基づいて第3の関数G3(f)を設定する。第3の関数G3(f)は、第3のピークP3の周波数IP3からの周波数差と、マスクされる最大音量との関係を示す関数である。図7に示した例では、第3の関数G3(f)に基づいて算出される、i番目の周波数帯についての最大音量FM_TH(3,i)が、i番目の周波数帯のパワーP(i,t)よりも小さい。このため、マスク周波数決定部130は、i番目の周波数帯におけるマスク量の最大値Max_FM_T、及び暫定マスク周波数Max_FM_freq_Tを、それぞれ、マスク量FM(2,i),及び変数iとし、ステップS30211の判定を行う。ここで、i番目の周波数におけるマスク量の最大値Max_FM_Tが、i−1番目の周波数までの処理におけるマスク量の最大値Max_FMよりも大きいと、マスク周波数決定部130は、ステップS30212の処理を行う。すなわち、マスク周波数決定部130は、処理対象のフレームにおけるマスク量の最大値Max_FM及び第1のマスク周波数Max_FM_freqを、それぞれ、i番目の周波数帯におけるマスク量の最大値Max_FM_T、及び変数iに更新する。一方、i番目の周波数帯におけるマスク量の最大値Max_FM_Tが、i−1番目の周波数帯までの処理におけるマスク量の最大値Max_FM以下であると、マスク周波数決定部130は、ステップS30212の処理を省略する。すなわち、マスク周波数決定部130は、処理対象のフレームにおけるマスク量の最大値Max_FM及び第1のマスク周波数Max_FM_freqを、それぞれ、i−1番目の周波数帯までの処理における最大値Max_FM_T、及び1からi−1までのいずれかの値のままとする。
Thereafter, the mask
本実施形態に係るマスク周波数決定部130は、図5に示したように、処理対象のフレームについての周波数スペクトルにおける周波数帯毎に、ステップS302(ステップS30201〜S30212)の処理を行う。これにより、処理対象のフレームにおいてマスク量FM(n,i)が最大値となる周波数帯が、第1のマスク周波数となる。
As shown in FIG. 5, the mask
図8Aは、第2のマスク周波数を算出する処理の内容を説明するフローチャート(その1)である。図8Bは、第2のマスク周波数を算出する処理の内容を説明するフローチャート(その2)である。 FIG. 8A is a flowchart (part 1) for explaining the contents of the process of calculating the second mask frequency. FIG. 8B is a flowchart (part 2) illustrating the content of the process of calculating the second mask frequency.
第2のマスク周波数を算出する処理において、マスク周波数決定部130は、まず、図8Aに示すように、周波数帯を指定する変数iが1であるか否かを判定する(ステップS30301)。i=1である場合(ステップS30301;YES)、マスク周波数決定部130は、次に、処理対象のフレームにおけるマスク量の最大値Max_TM、及び第2のマスク周波数Max_TM_freqを、それぞれ、0に設定する(ステップS30302)。その後、マスク周波数決定部130は、変数nを1に設定するとともに、i番目の周波数帯におけるマスク量の最大値Max_TM_Tと、暫定マスク周波数Max_TM_freq_Tを、それぞれ、0に設定する(ステップS30303)。ここで、変数nは、複数フレームのそれぞれにおけるi番目の周波数成分の時間変化から抽出された継時ピークを識別する値である。一方、i>1である場合(ステップS30301;NO)、マスク周波数決定部130は、ステップS30302の処理をスキップし、次に、ステップS30303の処理を行う。
In the process of calculating the second mask frequency, the mask
ステップS30303の処理の後、マスク周波数決定部130は、n番目の継時ピークを含むフレームから処理対象のフレームまでの距離(時間差)を算出する(ステップS30304)。
After the process of step S30303, the mask
次に、マスク周波数決定部130は、処理対象のフレームのi番目の周波数帯において、n番目の継時ピークの成分によりマスクされる最大音量TM_TH(n,i)を算出する(ステップS30305)。ステップS30305では、マスク周波数決定部130は、時間差とマスクされる最大音量との関係を示す第2のマスク情報に基づいて、最大音量TM_TH(n,i)を算出する。マスク周波数決定部130は、マスク情報記憶部191から第2のマスク情報を取得する。
Next, the mask
次に、マスク周波数決定部130は、処理対象のフレームにおけるi番目の周波数帯のパワーP(i,t)と、最大音量TM_TH(n,i)とに基づいて、マスク量TM(n,i)=TM_TH(n,i)−P(i,t)を算出する(ステップS30306)。
Next, the mask
次に、マスク周波数決定部130は、算出したマスク量TM(n,i)がi番目の周波数帯における現時点でのマスク量の最大値Max_TM_Tよりも大きいか否かを判定する(ステップS30307)。TM(n,i)>Max_TM_Tである場合(ステップS30307;YES)、マスク周波数決定部130は、マスク量の最大値Max_TM_T、及び暫定マスク周波数Max_TM_freq_Tを、それぞれ、マスク量TM(n,i)、及び変数iに更新する(ステップS30307)。その後、マスク周波数決定部130は、変数nをn+1に更新し(ステップS30309)、更新後の変数nが終値N_TPよりも大きいか否かを判定する(ステップS30310)。終値N_TPは、i番目の周波数成分の時間変化における継時ピークの個数である。一方、TM(n,i)≦Max_TM_Tである場合(ステップS30307;NO)、マスク周波数決定部130は、ステップS30308の処理をスキップし、ステップS30309の処理,及びステップS30310の判定を行う。
Next, the mask
n≦N_TPである場合(ステップS30310;NO)、マスク周波数決定部130は、ステップS30304以降の処理を行う。
When n ≦ N_TP is satisfied (step S30310; NO), the mask
n>N_TPである場合(ステップS30310;YES)、マスク周波数決定部130は、次に、図8Bに示すように、i番目の周波数帯におけるマスク量の最大値Max_TM_Tが、処理対象のフレームにおける現時点でのマスク量の最大値Max_TMよりも大きいか否かを判定する(ステップS30311)。
When n> N_TP is satisfied (step S30310; YES), the mask
Max_TM_T>Max_TMである場合(ステップS30311;YES)、マスク周波数決定部130は、処理対象のフレームにおけるマスク量の最大値Max_TM、及び第2のマスク周波数Max_TM_freqを、それぞれ、Max_TM_T、及びMax_TM_freq_Tに更新する(ステップS30312)。ステップS30312の処理を行った場合、マスク周波数決定部130は、更新したマスク量の最大値Max_TM、及び第2のマスク周波数Max_TM_freqを保持した状態で、第2のマスク周波数を算出する処理を終了する。
When Max_TM_T> Max_TM is satisfied (step S30311; YES), the mask
一方、Max_TM_T≦Max_TMである場合(ステップS30311;NO)、マスク周波数決定部130は、ステップS30312の処理をスキップし、第2のマスク周波数を算出する処理を終了する。この場合(Max_TM_T≦Max_TMである場合)、マスク周波数決定部130は、i−1番目の周波数帯までの処理におけるマスク量の最大値Max_TM、及び第2のマスク周波数Max_TM_freqを保持した状態で、第2のマスク周波数を算出する処理を終了する。
On the other hand, when Max_TM_T ≦ Max_TM (step S30311; NO), the mask
図9は、第2のマスク周波数の算出方法を説明するグラフ図である。
図9のグラフ図において、横軸は受話音における時刻(フレーム)であり、縦軸はパワーである。
FIG. 9 is a graph illustrating a method for calculating the second mask frequency.
In the graph of FIG. 9, the horizontal axis represents time (frame) in the received sound, and the vertical axis represents power.
図9の太い曲線PSiは、複数フレームにおけるi番目の周波数帯のパワーの時間変化を表しており、第1の継時ピークP1、第2の継時ピークP2、及び第3の継時ピークP3を含む。図8A及び図8Bのフローチャートに沿ってパワースペクトルPSiにおける時刻tでのマスク量を算出する場合、マスク周波数決定部130は、以下の処理を行う。
The thick curve PSi in FIG. 9 represents the time change of the power of the i-th frequency band in a plurality of frames, and the first successive peak P1, the second successive peak P2, and the third successive peak P3. including. When calculating the mask amount at time t in the power spectrum PSi along the flowcharts of FIGS. 8A and 8B, the mask
マスク周波数決定部130は、まず、第1の継時ピークP1を含むフレームと、現在処理対象となっているフレームとの時間差T1(=t−TP1)を算出する(ステップS30304)。
First, the mask
次に、マスク周波数決定部130は、第1の継時ピークP1によりマスクされるi番目の周波数帯の最大音量を算出する(ステップS30305)。このとき、マスク周波数決定部130は、第1の継時ピークP1の時刻TP1及びパワーPWPaと、第2のマスク情報とに基づいて、第1の関数H1(T)を設定する。第1の関数H1(T)は、時間方向における、第1の継時ピークP1の時刻TP1からの時間差と、マスクされる最大音量との関係を示す関数である。その後、マスク周波数決定部130は、第1の関数H1(T)に基づいて、現在処理対象となっている時刻tのフレームにおけるi番目の周波数帯についての最大音量FM_TH(1,i)を算出する。
Next, the mask
次に、マスク周波数決定部130は、マスク量TM(1,i)=TM_TH(1,i)−P(i,t)を算出する(ステップS30306)。図9に示した例では、第1の継時ピークP1に基づく最大音量TM_TH(1,i)が、時刻tのフレームにおけるパワーP(i,t)よりも小さい。このため、マスク周波数決定部130は、ステップS30308を省略し、次に、第2の継時ピークP2についてのステップS30304以降の処理を行う。しかしながら、第2の継時ピークP2についての第2の関数H2(T)に基づいて算出される最大音量TM_TH(2,i)は、時刻tのフレームにおけるパワーP(i,t)よりも小さい。このため、マスク周波数決定部130は、ステップS30308を省略し、次に、第3の継時ピークP3についてのステップS30304以降の処理を行う。ここで、第2の関数H2(T)は、時間方向における、第2の継時ピークP2の時刻TP2からの時間差と、マスクされる最大音量との関係を示す関数である。
Next, the mask
第3の継時ピークP3についての第3の関数H3(T)に基づいて算出される最大音量FM_TH(3,i)は、時刻tのフレームにおけるパワーP(i,t)よりも大きい。このため、マスク周波数決定部130は、ステップS30308において、処理対象のフレームにおけるマスク量の最大値、及び暫定マスク周波数を、それぞれ、マスク量TM(3,i),及び変数iとする。ここで、第3の関数H3(T)は、時間方向における、第3の継時ピークP3の時刻TP3からの時間差と、マスクされる最大音量との関係を示す関数である。
The maximum volume FM_TH (3, i) calculated based on the third function H3 (T) for the third continuous peak P3 is larger than the power P (i, t) in the frame at time t. Therefore, in step S30308, the mask
その後、マスク周波数決定部130は、時刻tのフレームのi番目の周波数帯におけるマスク量の最大値Max_TM_T、及び暫定マスク周波数Max_TM_freq_Tを、それぞれ、マスク量FM(3,i),及び変数iとし、ステップS30311の判定を行う。ここで、i番目の周波数帯におけるマスク量の最大値Max_TM_Tが、i−1番目の周波数帯までの処理におけるマスク量の最大値Max_TMよりも大きいと、マスク周波数決定部130は、ステップS30312の処理を行う。すなわち、マスク周波数決定部130は、処理対象のフレームにおけるマスク量の最大値Max_TM及び第2のマスク周波数Max_TM_freqを、それぞれ、i番目の周波数帯におけるマスク量の最大値Max_TM_T、及び変数iに更新する。一方、i番目の周波数帯におけるマスク量の最大値Max_TM_Tが、i−1番目の周波数帯までの処理におけるマスク量の最大値Max_TM以下であると、マスク周波数決定部130は、ステップS30312の処理を省略する。すなわち、マスク周波数決定部130は、処理対象のフレームにおけるマスク量の最大値Max_TM及び第2のマスク周波数Max_TM_freqを、それぞれ、i−1番目の周波数帯までの処理におけるマスク量の最大値Max_TM_T、及び1からi−1までのいずれかのままとする。
Thereafter, the mask
本実施形態に係るマスク周波数決定部130は、上記のように、処理対象のフレームについての周波数スペクトルにおける周波数帯毎に、ステップS303(ステップS30301〜S30312)の処理を行う。これにより、処理対象のフレームにおいてマスク量TM(n,i)が最大値となる周波数帯が、第2のマスク周波数となる。
As described above, the mask
上記の処理により第1のマスク周波数及び第2のマスク周波数を算出した後、通話装置1は、受話音から当該マスク周波数の成分を除去して出力する(ステップS4)。マスク周波数の成分を除去する処理は、受話音加工部140が行う。受話音加工部140は、例えば、図10に示す処理を行う。
After calculating the first mask frequency and the second mask frequency by the above processing, the
図10は、マスク周波数の成分を受話音から除去して出力する処理の内容を説明するフローチャートである。 FIG. 10 is a flowchart for explaining the contents of the process of removing the mask frequency component from the received sound and outputting it.
マスク周波数の成分を受話音から除去して出力する処理において、受話音加工部140は、まず、受話音の周波数スペクトルにおける第1のマスク周波数Max_FM_freqの値を0に変更する(ステップS401)。
In the process of removing the mask frequency component from the received sound and outputting it, the received
次に、受話音加工部140は、受話音の周波数スペクトルにおける第2のマスク周波数Max_TM_freqの値を0に変更する(ステップS402)。
Next, the received
次に、受話音加工部140は、第1のマスク周波数及び第2のマスク周波数の値を0にした周波数スペクトルを音声波形に逆変換する(ステップS403)。ステップS403では、受話音加工部140は、ステップS201で音声波形を周波数スペクトルに変換する際の変換方法と対応する逆変換方法により、受話音の周波数スペクトルを音声波形に変換する。
Next, the received
その後、受話音加工部140は、音声波形をレシーバ2に出力するとともに、第1のマスク周波数及び第2のマスク周波数の情報を成分抽出部150に出力し(ステップS404)、ステップS4の処理を終了する。
After that, the received
このように、本実施形態に係る通話装置1は、第1のマスク周波数の成分及び第2のマスク周波数の成分を受話音から除去した加工受話音を生成し、当該加工受話音をレシーバ2から通話装置1の外部空間に出力する(放射する)。したがって、レシーバ2から出力された受話音をマイクロフォン3で収音した場合、マイク入力音における第1のマスク周波数及び第2のマスク周波数と対応する成分はほぼ0となる。ところが、レシーバ2から出力された受話音をマイクロフォン3で収音する際に、通話装置1の利用者が発話していたり、通話装置1の周囲に騒音が発生していたりすると、マイク入力音には受話音以外の音声が含まれる。マイク入力音に通話装置1の利用者の音声や、通話装置1の周囲に騒音が含まれるダブルトークの状態である場合、当該マイク入力音には、受話音から除去したマスク周波数の成分が含まれることが多い。このため、本実施形態の通話装置1では、マイク入力音における、受話音から除去したマスク周波数の成分に基づいて、マイク入力音がダブルトークの状態であるか否かを判定する。したがって、通話装置1では、上記のように、マイク入力音に含まれるマスク周波数の成分を抽出し(ステップS5)、ダブルトークの状態であるか否かを判定する(ステップS6)。ステップS5の処理は成分抽出部150が行い、ステップS6の処理はダブルトーク判定部160が行う。成分抽出部150は、マイク入力音における処理対象のフレームを音声波形から周波数スペクトルに変換した後、第1のマスク周波数及び第2のマスク周波数の成分を抽出する。ダブルトーク判定部160は、図11の処理を行って、処理対象のフレームがダブルトークの状態であるか否かを判定する。
As described above, the
図11は、ダブルトークであるか否かを判定する処理の内容を説明するフローチャートである。 FIG. 11 is a flowchart for explaining the contents of the process for determining whether or not it is double talk.
ダブルトーク判定部160は、まず、マイク入力音の周波数スペクトルから抽出した第1のマスク周波数Max_FM_freqの値に基づいて、第1のパワーPFを算出する(ステップS601)。次に、ダブルトーク判定部160は、マイク入力音の周波数スペクトルから抽出した第2のマスク周波数Max_TM_freqの値に基づいて、第2のパワーPTを算出する(ステップS602)。ステップS601及びS602では、ダブルトーク判定部160は、既知の算出方法に基づいて、第1のパワーPF及び第2のパワーPTを算出する。
First, the double
次に、ダブルトーク判定部160は、第1のパワーPFが第1のパワー閾値TH2よりも大きいか否かを判定する(ステップS603)。第1のパワー閾値TH2は、適宜選択可能である。PF≦TH2である場合(ステップS603;NO)、ダブルトーク判定部160は、マイク入力音における処理対象のフレームがダブルトークではないと判断し、ダブルトークであるか否かを示すフラグDT_flagを0にする(ステップS605)。
Next, the double
一方、PF>TH2である場合(ステップS603;YES)、ダブルトーク判定部160は、次に、第2のパワーPTが第2のパワー閾値TH3よりも大きいか否かを判定する(ステップS604)。第2のパワー閾値TH3は、適宜選択可能である。PT≦TH3である場合(ステップS604;NO)、ダブルトーク判定部160は、マイク入力音における処理対象のフレームがダブルトークではないと判断し、ダブルトークであるか否かを示すフラグDT_flagを0にする(ステップS605)。
On the other hand, if PF> TH2 (step S603; YES), the double-
これに対し、PT>TH3である場合(ステップS604;YES)、ダブルトーク判定部160は、マイク入力音における処理対象のフレームがダブルトークであると判断し、ダブルトークであるか否かを示すフラグDT_flagを1にする(ステップS606)。
On the other hand, when PT> TH3 (step S604; YES), the double
ステップS605又はS606において処理対象のフレームに対するフラグを設定すると、ダブルトーク判定部160は、当該フレームに対する判定処理を終了する。
When the flag for the processing target frame is set in step S605 or S606, the double
このようにマイク入力音における処理対象のフレームがダブルトークの状態であるか否かをフラグDT_flagの値で示示した場合、入力音加工部170の学習判定部171は、当該フラグDT_flagの値により伝達特性を学習するか否かを判定する。フラグDT_flagが0の場合(すなわちダブルトークの状態ではない場合)、学習判定部171は、伝達特性学習部172に伝達特性を学習させる。一方、フラグDT_flagが1の場合(すなわちダブルトークの状態である場合)、学習判定部171は、伝達特性を学習する処理を省略し、エコー成分抑圧部173に、過去フレームに対する処理で学習した伝達特性に基づくエコー成分の抑圧を行わせる。
In this way, when the value of the flag DT_flag indicates whether or not the frame to be processed in the microphone input sound is in a double talk state, the learning
以上のように、本実施形態に係る通話装置1では、受話音に含まれる音声において人の知覚に影響を与えないマスク周波数の成分を除去してからレシーバ2を介して通話装置1の外部に出力する。このため、マイクロフォン3で収音したマイク入力音における上記のマスク周波数に有意な音声成分が含まれる場合、当該成分は、通話装置1の利用者の音声及び通話装置1の周囲の雑音等のダブルトーク成分であるとみなすことができる。しかも、受話音に含まれるマスク周波数の成分を除去したことにより、ダブルトーク成分の音量が小さい場合でも、ダブルトーク成分の有無を判定することが可能となり、マイク入力音がダブルトークの状態であるか否かを精度良く判定することが可能となる。加えて、本実施形態に係る通話装置1では、他の通話装置4から受信してレシーバ2に出力する受話音に含まれるマスク周波数の成分を除去し、当該マスク周波数の成分を除去した受話音をレシーバ2から出力する。このため、本実施形態に係る通話装置1では、受話音に基づいて生成した擬似エコー信号を利用してエコー成分の抑圧を制御する場合に比べて、処理量を低減させることが可能となる。よって、本実施形態によれば、通話装置におけるマイク入力音がダブルトークの状態であるか否かを効率よく、かつ正しく判定することが可能となる。これにより、ダブルトークの状態であるか否かの誤判定による誤った伝達特性の学習や、不適切な伝達特性によるエコー成分の抑圧を防ぐことが可能となる。
As described above, in the
なお、図5のフローチャートは、受話音から除去するマスク周波数を決定する処理の一例に過ぎない。マスク周波数を決定する処理は、図5のフローチャートに沿った処理に限らず、適宜変更可能である。例えば、図5のフローチャートにおけるステップS302の処理と、ステップS303の処理とは、順不同であり、ステップS303を先に行ってもよい。また、ステップS302の処理とステップS303の処理とを並列に行ってもよい。また、マスク周波数を決定する処理は、例えば、第1のマスク周波数と第2のマスク周波数とが同一周波数となった場合に、マスク量が3番目に大きい第3のマスク周波数を抽出する処理を含むものでもよい。更に、マスク周波数を決定する処理は、第1のマスク周波数及び第2のマスク周波数のいずれか一方のみを決定する処理であってもよい。また、第1のマスク周波数を算出する際には、例えば、ピーク周波数からの周波数差が所定の範囲内である周波数帯、すなわちピーク周波数の近傍の周波数帯のみを処理対象としてもよい。 Note that the flowchart in FIG. 5 is merely an example of a process for determining a mask frequency to be removed from the received sound. The process for determining the mask frequency is not limited to the process according to the flowchart of FIG. For example, the process of step S302 and the process of step S303 in the flowchart of FIG. 5 are out of order, and step S303 may be performed first. Further, the process of step S302 and the process of step S303 may be performed in parallel. The process for determining the mask frequency includes, for example, a process for extracting a third mask frequency having the third largest mask amount when the first mask frequency and the second mask frequency are the same. It may be included. Further, the process for determining the mask frequency may be a process for determining only one of the first mask frequency and the second mask frequency. In calculating the first mask frequency, for example, only the frequency band in which the frequency difference from the peak frequency is within a predetermined range, that is, the frequency band near the peak frequency may be processed.
また、マスク周波数を算出する際に参照するマスク情報は、図2に示した関数G(f),H(t)に限らず、適宜変更可能である。 The mask information referred to when calculating the mask frequency is not limited to the functions G (f) and H (t) shown in FIG.
また、図11のフローチャートは、ダブルトークであるか否かを判定する処理の一例に過ぎない。ダブルトークであるか否かを判定する処理は、図11のフローチャートに沿った処理に限らず、適宜変更可能である。例えば、ステップS601で第1のパワーPFを算出した後、ダブルトーク判定部160は、続けて、ステップS603の判定を行ってもよい。このようにすることで、例えば、第1のパワーPFに基づいてダブルトークではないと判定した場合に、第2のパワーPTを算出する処理を省略することが可能となり、ダブルトーク判定部160における処理量を低減することが可能となる。また、ステップS603及びS604の判定の代わりに、ダブルトーク判定部160は、例えば、PF>TH2、又はPT>TH3である場合に処理対象のフレームがダブルトークの状態であると判定してもよい。更に、ダブルトーク判定部160と学習判定部171とを1つにまとめて、ステップS605,S606において伝達特性を学習するか否かを決定してもよい。
Further, the flowchart of FIG. 11 is merely an example of a process for determining whether or not double talk. The process for determining whether or not it is double talk is not limited to the process according to the flowchart of FIG. For example, after calculating the first power PF in step S601, the double
また、マイク入力音がダブルトークの状態であるか否かの判定結果は、エコー成分の抑圧に用いる伝達特性を学習するか否かの判定に限らず、他の処理を行うか否かの判定に利用することも可能である。例えば、ダブルトークの状態であるか否かの判定結果は、電話会議システム等で音声データを話者毎に分類する処理に利用可能である。 In addition, the determination result of whether or not the microphone input sound is in a double talk state is not limited to determining whether or not to learn the transfer characteristic used for suppressing the echo component, and determining whether or not to perform other processing. It is also possible to use it. For example, the determination result as to whether or not the state is a double talk state can be used for a process of classifying voice data for each speaker in a telephone conference system or the like.
上記の実施形態に係る通話装置1は、例えば、携帯電話端末やスマートフォン等の通話機能を備えた移動端末に所定のエコー抑圧プログラムを実行させることにより実現可能である。
The
図12は、移動端末のハードウェア構成を示す図である。
図12に示すように、移動端末7は、プロセッサ701と、メモリ702と、入力装置703と、表示装置704と、RF送受信機705と、アンテナ706と、レシーバ2と、マイクロフォン3とを備える。
FIG. 12 is a diagram illustrating a hardware configuration of the mobile terminal.
As illustrated in FIG. 12, the
プロセッサ701は、Central Processing Unit(CPU)やMicro Processing Unit(MPU)等である。プロセッサ701は、オペレーティングシステムを含む各種のプログラムを実行することにより、移動端末7の全体の動作を制御する。また、プロセッサ701は、例えば、図3のステップS1〜S11の処理を含むエコー抑圧プログラム等の各種のアプリケーションプログラムを実行する。プロセッサ701は、例えば、ベースバンド処理回路701aと、アプリケーション処理回路701bとを含む。
The
メモリ702は、図示しないRead Only Memory(ROM)及びRandom Access Memory(RAM)を含む。メモリ702のROMには、例えば、移動端末7の起動時にプロセッサ701が読み出す所定の基本制御プログラム等が予め記録されている。一方、メモリ702のRAMは、例えば、プロセッサ701が、各種のプログラムを実行する際に必要に応じて作業用記憶領域として使用する。また、メモリ702は、プロセッサ701によって実行される各種のプログラムや各種のデータ等の記憶に利用可能である。メモリ702は、マスク情報、伝達特性、受話音における複数フレーム分の分析結果等の記憶に利用可能である。なお、メモリ702は、移動端末7に内蔵されたフラッシュメモリ等の不揮発性メモリ(Solid State Drive(SSD)を含む)であってもよいし、例えば、Secure Digital(SD)規格のメモリカード(フラッシュメモリ)等であってもよい。
The
入力装置703は、例えば、キーボード装置やタッチパネル装置等である。移動端末7のオペレータ(利用者)が入力装置703に対して所定の操作を行うと、入力装置703は、その操作内容に対応付けられている入力情報をプロセッサ701に送信する。入力装置703は、例えば、通話を開始する命令、終了する命令等の入力に利用可能である。
The
表示装置704は、例えば、液晶表示装置等の表示装置である。表示装置704は、通話相手を識別する名称、電話番号等の表示に利用可能である。
The
RF送受信機705は、移動端末7を電話網等のネットワークに接続し、ネットワークを介した移動端末7と他の通話装置4とによる音声データの送受信を制御する装置である。RF送受信機705は、アンテナ706で受信した電波を電気信号に変換してプロセッサ701に渡すとともに、プロセッサ701から受け取った電気信号を電波としてアンテナ706から出力させる処理を行う。
The
移動端末7では、例えば、オペレータが入力装置703等を利用して通話開始の命令を入力すると、プロセッサ701が、メモリ702のRAM等の非一時的な記録媒体に記憶させたエコー抑圧プログラムを読み出して実行する。エコー抑圧プログラムが図3のステップS1〜S11の処理を含むプログラムである場合、移動端末7は、受話音からマスク周波数の成分を除去する処理と、マイク入力音からエコー成分を抑圧する処理とを繰り返す。エコー抑圧プログラムを実行している間、プロセッサ701は、図1の通話装置1における受話音分析部120、マスク周波数決定部130、受話音加工部140、成分抽出部150、ダブルトーク判定部160、及び入力音加工部170として機能する(動作する)。また、プロセッサ701がエコー抑圧プログラムを実行している間、RF送受信機705及びアンテナ706は、図1の通話装置1における送受信部110として機能する。更に、プロセッサ701がエコー抑圧プログラムを実行している間、メモリ702は、マスク情報記憶部191、分析結果保持部192、及び伝達特性記憶部193として機能する。
In the
なお、移動端末7は、例えば、Digital Signal Processor(DSP)等のプロセッサ701とは別の演算装置を備えたものであり、当該別の演算装置に図3のステップS1〜S11の処理の一部を行わせてもよい。
Note that the
また、本実施形態に係る通話装置1は、上記の移動端末7に限らず、インターネット等のネットワークを利用した音声データの送受信が可能なコンピュータに所定のエコー抑圧プログラムを実行させることによっても実現可能である。
Further, the
図13は、コンピュータのハードウェア構成を示す図である。
図13に示すように、コンピュータ8は、プロセッサ801と、主記憶装置802と、補助記憶装置803と、入力装置804と、出力装置805と、入出力インタフェース806と、通信制御装置807と、媒体駆動装置808と、を備える。コンピュータ8におけるこれらの要素801〜808は、バス810により相互に接続されており、要素間でのデータの受け渡しが可能になっている。
FIG. 13 is a diagram illustrating a hardware configuration of a computer.
As shown in FIG. 13, the computer 8 includes a
プロセッサ801は、CPUやMPU等である。プロセッサ801は、オペレーティングシステムを含む各種のプログラムを実行することにより、コンピュータ8の全体の動作を制御する。また、プロセッサ801は、例えば、図3のステップS1〜S11の処理を含む音声処理プログラム等の各種のアプリケーションプログラムを実行する。
The
主記憶装置802は、図示しないRead Only Memory(ROM)及びRandom Access Memory(RAM)を含む。主記憶装置802のROMには、例えば、コンピュータ8の起動時にプロセッサ801が読み出す所定の基本制御プログラム等が予め記録されている。一方、主記憶装置802のRAMは、プロセッサ801が、各種のプログラムを実行する際に必要に応じて作業用記憶領域として使用する。主記憶装置802のRAMは、例えば、マスク情報、伝達特性、受話音における複数フレーム分の分析結果等の記憶に利用可能である。
The
補助記憶装置803は、主記憶装置802のRAMと比べて容量の大きい記憶装置であり、例えば、Hard Disk Drive(HDD)や、フラッシュメモリのような不揮発性メモリ(Solid State Drive(SSD)を含む)等である。補助記憶装置803は、プロセッサ801によって実行される各種のプログラムや各種のデータ等の記憶に利用可能である。補助記憶装置803は、例えば、図3のステップS1〜S11の処理を含むエコー抑圧プログラムの記憶に利用可能である。また、補助記憶装置803は、例えば、マスク情報、伝達特性、受話音における複数フレーム分の分析結果等の記憶、受話音やマイク入力音の記憶等に利用可能である。
The
入力装置804は、例えば、キーボード装置やタッチパネル装置等である。コンピュータ8のオペレータ(利用者)が入力装置804に対して所定の操作を行うと、入力装置804は、その操作内容に対応付けられている入力情報をプロセッサ801に送信する。入力装置804は、例えば、入力装置804は、例えば、通話を開始する命令、終了する命令等の入力に利用可能である。
The
出力装置805は、例えば、液晶表示装置等の表示装置である。出力装置805は、通話相手を識別する名称、電話番号等の表示に利用可能である。
The
入出力インタフェース806は、コンピュータ8と、他の電子機器とを接続する。入出力インタフェース806は、例えば、フォーンジャックや、Universal Serial Bus(USB)規格のコネクタ等を備える。入出力インタフェース806は、例えば、コンピュータ8と、レシーバ2及びマイクロフォン3を含むヘッドセット10との接続に利用可能である。
The input /
通信制御装置807は、コンピュータ8をインターネット等のネットワークに接続し、ネットワークを介したコンピュータ8と他の通信機器との各種通信を制御する装置である。通信制御装置807は、例えば、コンピュータ8と、他の通話装置4等との間での音声データの送受信に利用可能である。
The
媒体駆動装置808は、可搬型記憶媒体890に記録されているプログラムやデータの読み出し、補助記憶装置803に記憶されたデータ等の可搬型記憶媒体9への書き込みを行う。媒体駆動装置808には、例えば、1種類又は複数種類の規格に対応したメモリカード用リーダ/ライタが利用可能である。媒体駆動装置808としてメモリカード用リーダ/ライタを用いる場合、可搬型記憶媒体9としては、メモリカード用リーダ/ライタが対応している規格、例えば、Secure Digital(SD)規格のメモリカード(フラッシュメモリ)等を利用可能である。また、可搬型記録媒体9としては、例えば、USB規格のコネクタを備えたフラッシュメモリが利用可能である。更に、コンピュータ8が媒体駆動装置808として利用可能な光ディスクドライブを搭載している場合、当該光ディスクドライブで認識可能な各種の光ディスクを可搬型記録媒体9として利用可能である。可搬型記録媒体9として利用可能な光ディスクには、例えば、Compact Disc(CD)、Digital Versatile Disc(DVD)、Blu-ray Disc(Blu-rayは登録商標)等がある。可搬型記録媒体9は、例えば、図3のステップS1〜S11の処理を含むエコー抑圧プログラムの記憶に利用可能である。また、可搬型記録媒体9は、例えば、マスク情報、伝達特性、受話音における複数フレーム分の分析結果等の記憶、受話音やマイク入力音の記憶等に利用可能である。
The
コンピュータ8は、例えば、オペレータが入力装置804等を利用して通話開始の命令を入力すると、プロセッサ801が、補助記憶装置803等の非一時的な記録媒体に記憶させたエコー抑圧プログラムを読み出して実行する。エコー抑圧プログラムが図3のステップS1〜S11の処理を含むプログラムである場合、コンピュータ8は、受話音からマスク周波数の成分を除去して出力する処理と、マイク入力音からエコー成分を抑圧して出力する処理とを繰り返す。音声処理プログラムを実行している間、プロセッサ801は、図1の通話装置1における受話音分析部120、マスク周波数決定部130、受話音加工部140、成分抽出部150、ダブルトーク判定部160、及び入力音加工部170として機能する(動作する)。また、プロセッサ801がエコー抑圧プログラムを実行している間、通信制御装置807は、図1の通話装置1における送受信部110として機能する。更に、プロセッサ801がエコー抑圧プログラムを実行している間、主記憶装置802のRAM、補助記憶装置803、可搬型記録媒体9等の記録媒体は、マスク情報記憶部191、分析結果保持部192、及び伝達特性記憶部193として機能する。
For example, when the operator inputs an instruction to start a call using the
なお、通話装置1として動作させるコンピュータ8は、図13に示した全ての要素801〜808を含む必要はなく、用途や条件に応じて一部の要素を省略することも可能である。例えば、コンピュータ8は、媒体駆動装置808が省略されたものであってもよい。
Note that the computer 8 that operates as the
以上記載した実施形態に関し、更に以下の付記を開示する。
(付記1)
外部装置から受信した受話音声における所定の周波数帯の成分を除去してレシーバに出力する受話音加工部と、
マイクロフォンから入力された入力音声における前記所定の周波数帯の成分を抽出する成分抽出部と、
前記受話音声と、前記入力音声とに基づいて前記レシーバから前記マイクロフォンに至るエコー経路の伝達特性を学習する伝達特性学習部と、
前記入力音声から抽出した前記所定の周波数帯の成分の大きさが閾値以下である場合に、前記伝達特性学習部に前記伝達特性を学習させる判定部と、
を備えることを特徴とする通話装置。
(付記2)
前記通話装置は、前記受話音声についての周波数スペクトルにおいてピークとなる周波数帯の成分に基づいて前記所定の周波数帯を決定する周波数決定部、を更に備える、
ことを特徴とする付記1に記載の通話装置。
(付記3)
前記周波数決定部は、1つの周波数スペクトルにおいてピークとなる周波数帯からの周波数差と、前記ピークとなる周波数帯の成分によりマスクされる最大音量との関係に基づいて、前記周波数スペクトルにおける成分の大きさが前記最大音量よりも小さい周波数帯を、前記所定の周波数帯に決定する、
ことを特徴とする付記2に記載の通話装置。
(付記4)
前記周波数決定部は、前記周波数スペクトルにおける成分の大きさが前記最大音量よりも小さい複数の周波数帯のうちの、前記最大音量との差が最大となる周波数帯を、前記所定の周波数帯に決定する、
ことを特徴とする付記3に記載の通話装置。
(付記5)
前記周波数決定部は、前記周波数スペクトルにおける成分の大きさが前記最大音量よりも小さい複数の周波数帯のうちの、前記ピークとなる周波数帯からの周波数差が所定の範囲内であり、かつ前記最大音量との差が最大となる周波数帯を、前記所定の周波数帯に決定する、
ことを特徴とする付記3に記載の通話装置。
(付記6)
前記周波数決定部は、時間方向で連続する複数の前記周波数スペクトルにおける周波数帯のなかから、成分の大きさの時間変化においてピークとなる時刻からの時間差と、前記ピークとなる時刻の成分によりマスクされる最大音量との関係に基づいて、現在の前記周波数スペクトルにおける成分の大きさが前記最大音量よりも小さい周波数帯を抽出し、抽出した前記周波数帯のなかから前記所定の周波数帯を決定する、
ことを特徴とする付記3に記載の通話装置。
(付記7)
前記周波数決定部は、現在の前記周波数スペクトルにおける成分の大きさが前記最大音量よりも小さい複数の前記周波数帯のうちの、前記最大音量との差が最大となる周波数帯を、前記所定の周波数帯に決定する、
ことを特徴とする付記6に記載の通話装置。
(付記8)
前記通話装置は、前記伝達特性に基づいて前記入力音声に含まれるエコー成分を抑圧するエコー成分抑圧部、を更に備える、
ことを特徴とする付記1に記載の通話装置。
(付記9)
外部装置から受信した受話音声における所定の周波数帯の成分を除去してレシーバに出力し、
マイクロフォンから入力された入力音声における前記所定の周波数帯の成分を抽出し、
前記入力音声から抽出した前記所定の周波数帯の成分の大きさが閾値以下である場合に、前記受話音声と、前記入力音声とに基づいて前記レシーバから前記マイクロフォンに至るエコー経路の伝達特性を学習し、
前記伝達特性に基づいて前記入力音声に含まれるエコー成分を抑圧する、
処理をコンピュータに実行させることを特徴とするエコー抑圧プログラム。
The following additional notes are disclosed with respect to the embodiment described above.
(Appendix 1)
A received sound processing unit that removes a component of a predetermined frequency band from the received sound received from the external device and outputs the component to the receiver;
A component extractor for extracting a component of the predetermined frequency band in the input sound input from the microphone;
A transfer characteristic learning unit for learning a transfer characteristic of an echo path from the receiver to the microphone based on the received voice and the input voice;
A determination unit that causes the transfer characteristic learning unit to learn the transfer characteristic when the magnitude of the component of the predetermined frequency band extracted from the input speech is equal to or less than a threshold;
A call device comprising:
(Appendix 2)
The call device further includes a frequency determination unit that determines the predetermined frequency band based on a frequency band component that peaks in the frequency spectrum of the received voice.
The telephone call device according to
(Appendix 3)
The frequency determination unit determines the magnitude of the component in the frequency spectrum based on the relationship between the frequency difference from the peak frequency band in one frequency spectrum and the maximum volume masked by the component in the peak frequency band. A frequency band having a frequency smaller than the maximum volume is determined as the predetermined frequency band;
The telephone call device according to
(Appendix 4)
The frequency determination unit determines, as the predetermined frequency band, a frequency band having a maximum difference from the maximum volume among a plurality of frequency bands having a component size in the frequency spectrum smaller than the maximum volume. To
The telephone call device according to
(Appendix 5)
The frequency determination unit has a frequency difference from the peak frequency band among a plurality of frequency bands whose component in the frequency spectrum is smaller than the maximum volume, and the maximum A frequency band having a maximum difference from the volume is determined as the predetermined frequency band;
The telephone call device according to
(Appendix 6)
The frequency determination unit is masked by a time difference from a peak time in a time change of a component size and a component of the peak time from a plurality of frequency bands in the frequency spectrum continuous in the time direction. Based on the relationship with the maximum volume to extract a frequency band whose component in the current frequency spectrum is smaller than the maximum volume, and to determine the predetermined frequency band from the extracted frequency band,
The telephone call device according to
(Appendix 7)
The frequency determination unit is configured to select a frequency band having a maximum difference from the maximum volume among the plurality of frequency bands having a component size in the current frequency spectrum smaller than the maximum volume as the predetermined frequency. Decide on the obi,
The telephone call device according to supplementary note 6, wherein:
(Appendix 8)
The call device further includes an echo component suppression unit that suppresses an echo component included in the input voice based on the transfer characteristic.
The telephone call device according to
(Appendix 9)
Remove the component of the predetermined frequency band from the received voice received from the external device and output it to the receiver.
Extracting the component of the predetermined frequency band in the input voice input from the microphone;
Learning the transmission characteristics of the echo path from the receiver to the microphone based on the received voice and the input voice when the magnitude of the component of the predetermined frequency band extracted from the input voice is less than or equal to a threshold value And
Suppressing echo components included in the input speech based on the transfer characteristics;
An echo suppression program for causing a computer to execute processing.
1,4 通話装置
2 レシーバ
3 マイクロフォン
5,501 加工受話音
6 利用者の音声
7 移動端末
8 コンピュータ
9 可搬型記録媒体
10 ヘッドセット
110 送受信部
120 受話音分析部
130 マスク周波数決定部
140 受話音加工部
150 成分抽出部
160 ダブルトーク判定部
170 入力音加工部
171 学習判定部
172 伝達特性学習部
173 エコー成分抑圧部
191 マスク情報記憶部
192 分析結果保持部
193 伝達特性記憶部
701,801 プロセッサ
701a ベースバンド処理回路
701b アプリケーション処理回路
702 メモリ
703,804 入力装置
704 表示装置
705 RF送受信機
706 アンテナ
802 主記憶装置
803 補助記憶装置
805 出力装置
806 入出力インタフェース
807 通信制御装置
808 媒体駆動装置
1, 4
Claims (6)
マイクロフォンから入力された入力音声における前記所定の周波数帯の成分を抽出する成分抽出部と、
前記受話音声と、前記入力音声とに基づいて前記レシーバから前記マイクロフォンに至るエコー経路の伝達特性を学習する伝達特性学習部と、
前記入力音声から抽出した前記所定の周波数帯の成分の大きさが閾値以下である場合に、前記伝達特性学習部に前記伝達特性を学習させる判定部と、
を備えることを特徴とする通話装置。 A received sound processing unit that removes a component of a predetermined frequency band from the received sound received from the external device and outputs the component to the receiver;
A component extractor for extracting a component of the predetermined frequency band in the input sound input from the microphone;
A transfer characteristic learning unit for learning a transfer characteristic of an echo path from the receiver to the microphone based on the received voice and the input voice;
A determination unit that causes the transfer characteristic learning unit to learn the transfer characteristic when the magnitude of the component of the predetermined frequency band extracted from the input speech is equal to or less than a threshold;
A call device comprising:
ことを特徴とする請求項1に記載の通話装置。 The call device further includes a frequency determination unit that determines the predetermined frequency band based on a frequency band component that peaks in the frequency spectrum of the received voice.
The call device according to claim 1.
ことを特徴とする請求項2に記載の通話装置。 The frequency determination unit determines the magnitude of the component in the frequency spectrum based on the relationship between the frequency difference from the peak frequency band in one frequency spectrum and the maximum volume masked by the component in the peak frequency band. A frequency band having a frequency smaller than the maximum volume is determined as the predetermined frequency band;
The communication device according to claim 2.
ことを特徴とする請求項3に記載の通話装置。 The frequency determination unit is masked by a time difference from a peak time in a time change of a component size and a component of the peak time from a plurality of frequency bands in the frequency spectrum continuous in the time direction. Based on the relationship with the maximum volume to extract a frequency band whose component in the current frequency spectrum is smaller than the maximum volume, and to determine the predetermined frequency band from the extracted frequency band,
The communication device according to claim 3.
ことを特徴とする請求項4に記載の通話装置。 The frequency determination unit is configured to select a frequency band having a maximum difference from the maximum volume among the plurality of frequency bands having a component size in the current frequency spectrum smaller than the maximum volume as the predetermined frequency. Decide on the obi,
The call device according to claim 4, wherein:
マイクロフォンから入力された入力音声における前記所定の周波数帯の成分を抽出し、
前記入力音声から抽出した前記所定の周波数帯の成分の大きさが閾値以下である場合に、前記受話音声と、前記入力音声とに基づいて前記レシーバから前記マイクロフォンに至るエコー経路の伝達特性を学習し、
前記伝達特性に基づいて前記入力音声に含まれるエコー成分を抑圧する、
処理をコンピュータに実行させることを特徴とするエコー抑圧プログラム。 Remove the component of the predetermined frequency band from the received voice received from the external device and output it to the receiver.
Extracting the component of the predetermined frequency band in the input voice input from the microphone;
Learning the transmission characteristics of the echo path from the receiver to the microphone based on the received voice and the input voice when the magnitude of the component of the predetermined frequency band extracted from the input voice is less than or equal to a threshold value And
Suppressing echo components included in the input speech based on the transfer characteristics;
An echo suppression program for causing a computer to execute processing.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016256823A JP2018110301A (en) | 2016-12-28 | 2016-12-28 | Telephone calling device and echo suppression program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016256823A JP2018110301A (en) | 2016-12-28 | 2016-12-28 | Telephone calling device and echo suppression program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018110301A true JP2018110301A (en) | 2018-07-12 |
Family
ID=62844544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016256823A Pending JP2018110301A (en) | 2016-12-28 | 2016-12-28 | Telephone calling device and echo suppression program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018110301A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230079749A1 (en) * | 2020-04-13 | 2023-03-16 | Transtron Inc. | Echo suppression device, echo suppression method, and echo suppression program |
-
2016
- 2016-12-28 JP JP2016256823A patent/JP2018110301A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230079749A1 (en) * | 2020-04-13 | 2023-03-16 | Transtron Inc. | Echo suppression device, echo suppression method, and echo suppression program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110970057B (en) | Sound processing method, device and equipment | |
US11120813B2 (en) | Image processing device, operation method of image processing device, and computer-readable recording medium | |
EP3189521B1 (en) | Method and apparatus for enhancing sound sources | |
CN109887515B (en) | Audio processing method and device, electronic equipment and storage medium | |
CN108076226B (en) | Method for adjusting call quality, mobile terminal and storage medium | |
CN107995360B (en) | Call processing method and related product | |
EP3289586A1 (en) | Impulsive noise suppression | |
US10269371B2 (en) | Techniques for decreasing echo and transmission periods for audio communication sessions | |
US20180167515A1 (en) | Audio signal processing based on remote user control | |
CN110991329A (en) | Semantic analysis method and device, electronic equipment and storage medium | |
US20240105198A1 (en) | Voice processing method, apparatus and system, smart terminal and electronic device | |
US11694700B2 (en) | Method, apparatus and device for processing sound signal | |
CN114333912B (en) | Voice activation detection method, device, electronic equipment and storage medium | |
KR20150032562A (en) | Method and deivce for eliminating noise, and mobile terminal | |
CN103873714A (en) | Communication method, call initiating end device and call receiving end device | |
CN105261363A (en) | Voice recognition method, device and terminal | |
JP2018110301A (en) | Telephone calling device and echo suppression program | |
CN111083250A (en) | Mobile terminal and noise reduction method thereof | |
CN115174724A (en) | Call noise reduction method, device and equipment and readable storage medium | |
CN105162998B (en) | The denoising method and device of touch-tone signal | |
CN113707149A (en) | Audio processing method and device | |
CN107819964B (en) | Method, device, terminal and computer readable storage medium for improving call quality | |
CN112542157A (en) | Voice processing method and device, electronic equipment and computer readable storage medium | |
US20180254056A1 (en) | Sounding device, audio transmission system, and audio analysis method thereof | |
CN114093380B (en) | Voice enhancement method, electronic equipment, chip system and readable storage medium |