(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-25
(45)【発行日】2024-01-09
(54)【発明の名称】音声エンドポイント検出方法、装置、電子機器、及び記憶媒体
(51)【国際特許分類】
G10L 15/04 20130101AFI20231226BHJP
G06T 7/20 20170101ALI20231226BHJP
G06T 7/00 20170101ALI20231226BHJP
G10L 25/78 20130101ALI20231226BHJP
G10L 15/25 20130101ALI20231226BHJP
【FI】
G10L15/04 300Z
G06T7/20 300B
G06T7/00 P
G10L25/78
G10L15/25
(21)【出願番号】P 2022043117
(22)【出願日】2022-03-17
【審査請求日】2022-03-17
(31)【優先権主張番号】202110502922.2
(32)【優先日】2021-05-08
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】514322098
【氏名又は名称】ベイジン バイドゥ ネットコム サイエンス テクノロジー カンパニー リミテッド
【氏名又は名称原語表記】Beijing Baidu Netcom Science Technology Co., Ltd.
【住所又は居所原語表記】2/F Baidu Campus, No.10, Shangdi 10th Street, Haidian District, Beijing 100085, China
(74)【代理人】
【識別番号】110000877
【氏名又は名称】弁理士法人RYUKA国際特許事務所
(72)【発明者】
【氏名】グオ、チハン
(72)【発明者】
【氏名】シュ、レンシン
(72)【発明者】
【氏名】ダイ、ニン
【審査官】堀 洋介
(56)【参考文献】
【文献】特開2011-059186(JP,A)
【文献】特開2014-240856(JP,A)
【文献】特開2002-091466(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G10L 15/00-15/34
G06T 7/20
G06T 7/00
G10L 25/78
(57)【特許請求の範囲】
【請求項1】
コンピュータにより、時間的に整列された音声データとビデオデータを取得するステップと、
コンピュータにより、トレーニングによって取得された音声検出モデルを使用して、前記音声データに対して音声開始点と音声終了点の第1の検出を行うステップと、
コンピュータにより、前記ビデオデータに対して唇の動き開始点と唇の動き終了点の第2の検出を行うステップと、
コンピュータにより、第2の検出結果を使用して第1の検出結果を補正し、補正後の結果を音声エンドポイント検出結果とするステップと、を含み、
第2の検出結果を使用して第1の検出結果を補正するステップは、
音声検出状態が音声あり状態であり、唇の動き検出状態が唇の動きなし状態である場合、唇の動き開始点が検出されて且つ所定の時間要求に適合すると、
コンピュータにより、検出された唇の動き開始点を決定された音声終了点及び新たな音声開始点とするステップを含み、
前記音声あり状態は、音声開始点が検出されるから対応する音声終了点が検出されるまでの時間における状態であり、前記唇の動きなし状態は、唇の動きあり状態以外の時間における状態であり、前記唇の動きあり状態は、唇の動き開始点が検出されるから対応する唇の動き終了点が検出されるまでの時間における状態であり、
所定の時間要求に適合することは、
唇の動き開始点が検出される時間と直前に音声開始点が検出される時間との間の差が所定の閾値より大きいことを含む、
音声エンドポイント検出方法。
【請求項2】
前記ビデオデータに対して唇の動き開始点と唇の動き終了点の第2の検出を行うステップは、
コンピュータにより、トレーニングによって取得された唇の動き検出モデルを使用して、前記ビデオデータに対して前記第2の検出を行い、ビデオ内の人の顔の唇の動き開始点と唇の動き終了点を取得するステップを含む、
請求項1に記載の音声エンドポイント検出方法。
【請求項3】
第2の検出結果を使用して第1の検出結果を補正するステップは、
音声検出状態が音声あり状態であり、唇の動き検出状態が唇の動きあり状態である場合、
コンピュータにより、唇の動き終了点が検出されると、検出された唇の動き終了点を決定された音声終了点及び新たな音声開始点とするステップを含み、
前記音声あり状態は、音声開始点が検出されるから対応する音声終了点が検出されるまでの時間における状態であり、前記唇の動きあり状態は、唇の動き開始点が検出されるから対応する唇の動き終了点が検出されるまでの時間における状態である、
請求項1に記載の音声エンドポイント検出方法。
【請求項4】
ビデオ内の人の顔の唇部が遮蔽されていないと決定される場合、
コンピュータにより、前記ビデオデータに対して前記第2の検出を行うステップをさらに含む、
請求項1~3のいずれか一項に記載の音声エンドポイント検出方法。
【請求項5】
取得モジュール、第1の検出モジュール、第2の検出モジュール、及び補正モジュールを含み、
前記取得モジュールは、時間的に整列された音声データとビデオデータを取得し、
前記第1の検出モジュールは、トレーニングによって取得された音声検出モデルを使用して、前記音声データに対して音声開始点と音声終了点の第1の検出を行い、
前記第2の検出モジュールは、前記ビデオデータに対して唇の動き開始点と唇の動き終了点の第2の検出を行い、
前記補正モジュールは、第2の検出結果を使用して第1の検出結果を補正し、補正後の結果を音声エンドポイント検出結果とし、
前記補正モジュールは、音声検出状態が音声あり状態であり、唇の動き検出状態が唇の動きなし状態である場合、唇の動き開始点が検出されて且つ所定の時間要求に適合すると、検出された唇の動き開始点を決定された音声終了点及び新たな音声開始点とし、
前記音声あり状態は、音声開始点が検出されるから対応する音声終了点が検出されるまでの時間における状態であり、前記唇の動きなし状態は、唇の動きあり状態以外の時間における状態であり、前記唇の動きあり状態は、唇の動き開始点が検出されるから対応する唇の動き終了点が検出されるまでの時間における状態であり、
所定の時間要求に適合することは、
唇の動き開始点が検出される時間と直前に音声開始点が検出される時間との間の差が所定の閾値より大きいことを含む、
音声エンドポイント検出装置。
【請求項6】
前記第2の検出モジュールは、トレーニングによって取得された唇の動き検出モデルを使用して前記ビデオデータに対して前記第2の検出を行い、ビデオ内の人の顔の唇の動き開始点と唇の動き終了点を取得する、
請求項5に記載の音声エンドポイント検出装置。
【請求項7】
前記補正モジュールは、音声検出状態が音声あり状態であり、唇の動き検出状態が唇の動きあり状態である場合、唇の動き終了点が検出されると、検出された唇の動き終了点を決定された音声終了点及び新たな音声開始点とし、
前記音声あり状態は、音声開始点が検出されるから対応する音声終了点が検出されるまでの時間における状態であり、前記唇の動きあり状態は、唇の動き開始点が検出されるから対応する唇の動き終了点が検出されるまでの時間における状態である、
請求項5に記載の音声エンドポイント検出装置。
【請求項8】
前記第2の検出モジュールは、さらに、ビデオ内の人の顔の唇部が遮蔽されていないと決定される場合、前記ビデオデータに対して前記第2の検出を行う、
請求項5~7のいずれか一項に記載の音声エンドポイント検出装置。
【請求項9】
電子機器であって、
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサに通信接続されたメモリと、を含み、
前記メモリに前記少なくとも一つのプロセッサにより実行可能な命令が記憶されており、前記命令が前記少なくとも一つのプロセッサにより実行されると、前記少なくとも一つのプロセッサが請求項1~4のいずれかの一つに記載の音声エンドポイント検出方法を実行する、
電子機器。
【請求項10】
コンピュータに請求項1~4のいずれかの一つに記載の音声エンドポイント検出方法を実行させるコンピュータ命令が記憶されている、
非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項11】
プロセッサによって実行される時に請求項1~4のいずれかの一つに記載の音声エンドポイント検出方法を実現する、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、人工知能の技術分野に関し、特に、深層学習及びインテリジェント音声などの分野の音声エンドポイント検出方法、装置、電子機器、及び記憶媒体に関する。
【背景技術】
【0002】
近年、ヒューマンコンピュータインタラクション製品の応用がますます普及しており、銀行ホール、デパート、及び病院などで、ヒューマンコンピュータインタラクション製品がよく見られる。
【0003】
正確な音声インタラクションを行うために、通常、収集された音声データに対して音声エンドポイント検出(VAD、Voice Activity Detection)を行う必要があり、音声エンドポイント検出結果の精度は、人間とコンピュータのインタラクションの成功率などに直接影響する。
【0004】
現在、通常、トレーニングによって取得された音声検出モデルを使用して音声データに対して音声エンドポイント検出を行い、すなわち音声開始点と音声終了点の検出を行う。しかし、このような方式は、複雑なノイズ環境において、特に、ノイズが周囲の人の声(背景の人の声)である場合、検出効果は通常悪く、すなわち検出結果の精度が高くない。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本開示は、音声エンドポイント検出方法、装置、電子機器、及び記憶媒体を提供する。
【課題を解決するための手段】
【0006】
音声エンドポイント検出方法は、
時間的に整列された音声データとビデオデータを取得するステップと、
トレーニングによって取得された音声検出モデルを使用して、前記音声データに対して音声開始点と音声終了点の第1の検出を行うステップと、
前記ビデオデータに対して唇の動き開始点と唇の動き終了点の第2の検出を行うステップと、
第2の検出結果を使用して第1の検出結果を補正し、補正後の結果を音声エンドポイント検出結果とするステップと、を含む。
【0007】
音声エンドポイント検出装置は、取得モジュール、第1の検出モジュール、第2の検出モジュール、及び補正モジュールを含み、
前記取得モジュールは、時間的に整列された音声データとビデオデータを取得するために用いられ、
前記第1の検出モジュールは、トレーニングによって取得された音声検出モデルを使用して、前記音声データに対して音声開始点と音声終了点の第1の検出を行うために用いられ、
前記第2の検出モジュールは、前記ビデオデータに対して唇の動き開始点と唇の動き終了点の第2の検出を行うために用いられ、
前記補正モジュールは、第2の検出結果を使用して第1の検出結果を補正し、補正後の結果を音声エンドポイント検出結果とするために用いられる。
【0008】
電子機器は、
少なくとも一つのプロセッサと、
前記少なくとも一つのプロセッサに通信接続されたメモリと、を含み、
前記メモリに前記少なくとも一つのプロセッサにより実行可能な命令が記憶されており、前記命令が前記少なくとも一つのプロセッサにより実行されると、前記少なくとも一つのプロセッサが上記の方法を実行する。
【0009】
コンピュータ命令が記憶されている非一時的なコンピュータ読み取り可能な記憶媒体は、前記コンピュータ命令は、前記コンピュータに上記の方法を実行させる。
【0010】
コンピュータプログラム製品は、コンピュータプログラムを含み、前記コンピュータプログラムがプロセッサによって実行される時に上記の方法を実現する。
【0011】
上記の開示された実施例は、以下のような利点または有益な効果を備え、音声検出モデルと唇の動き検出技術を組み合わせて、唇の動き検出結果を使用して音声検出モデルによって検出された音声開始点と音声終了点を補正することによって、音声エンドポイント検出結果の精度などを向上させる。
【0012】
本明細書で説明された内容は、本開示の実施例のキーまたは重要な特徴を特定することを意図しておらず、本開示の範囲を制限するためにも使用されないことを理解されたい。本開示の他の特徴は、以下の明細書を通じて容易に理解できる。
【図面の簡単な説明】
【0013】
図面は、本開示をより良く理解するためのものであり、本開示を限定しない。
【
図1】本開示の前記音声エンドポイント検出方法実施例のフローチャートである。
【
図2】本開示の前記第1の検出に対応する各キーポイントの位置の概略図である。
【
図3】
図2に示す各キーポイントに対応する位置の概略図である。
【
図4】本開示の前記音声あり状態と音声なし状態の変換方式の概略図である。
【
図5】本開示の前記唇の動きあり状態と唇の動きなし状態の変換方式の概略図である。
【
図6】本開示の前記音声エンドポイント検出方法の全体的な実現プロセスの概略図である。
【
図7】本開示の前記音声エンドポイント検出装置の実施例700の構成構造の概略図である。
【
図8】本開示の実施例を実施できる例示的な電子機器800の概略ブロック図である。
【発明を実施するための形態】
【0014】
以下、図面に基づいて、本開示の例示な実施例を説明する。理解を容易にするために、本開示の実施例の様々な詳細が含まれており、それらは単なる例示と見なされるべきである。従って、当業者は、本開示の範囲及び精神から逸脱することなく、本明細書に記載の実施形態に対して様々な変更及び補正を行うことができることを認識できるはずである。同様に、簡明のために、以下の説明では、よく知られた機能と構造の説明は省略される。
【0015】
また、本明細書の用語「及び/又は」は、関連対象の関連関係のみを説明するものであり、3種類の関係が存在可能であることを表し、例えば、A及び/又はBは、Aのみが存在するか、A及びBが同時に存在するか、Bのみが存在するという3つの場合を表すことができる。符号「/」は、一般的に前後の関連対象が「又は」の関係であることを表すことを理解されたい。
【0016】
図1は本開示の前記音声エンドポイント検出方法実施例のフローチャートである。
図1に示すように、以下の具体的な実現方式を含む。
【0017】
ステップ101では、時間的に整列された音声データとビデオデータを取得する。
【0018】
ステップ102では、トレーニングによって取得された音声検出モデルを使用して、音声データに対して音声開始点(vad_begin)と音声終了点(vad_end)の第1の検出を行う。
【0019】
ステップ103では、ビデオデータに対して唇の動き開始点(lip_begin)と唇の動き終了点(lip_end)の第2の検出を行う。
【0020】
ステップ104では、第2の検出結果を使用して第1の検出結果を補正し、補正後の結果を音声エンドポイント検出結果とする。
【0021】
分かることができることは、上記の方法の実施例に記載された解決策では、音声検出モデルと唇の動き検出技術を組み合わせて、唇の動き検出結果を使用して音声検出モデルによって検出された音声開始点と音声終了点を補正することによって、音声エンドポイント検出結果の精度などを向上させる。
【0022】
実際の応用では、撮像装置(カメラなど)を備えた人間とコンピュータのインタラクション製品を使用して、同じシーンに対して音声データとビデオデータをそれぞれ収集することができ、例えば、ユーザaが人間とコンピュータのインタラクション製品と音声対話を行う場合、ユーザaの音声データ及びビデオデータをそれぞれ収集することができる。
【0023】
収集された音声データとビデオデータについて、時間上からそれを整列することができる。また、音声データとビデオデータについて、異なる処理をそれぞれ行うことができる、その中、トレーニングによって取得された音声検出モデルを使用して、音声データに対して音声開始点と音声終了点の第1の検出を行い、ビデオデータに対して唇の動き開始点と唇の動き終了点の第2の検出を行うことができる。
【0024】
どのように第1の検出を行うのは、従来の技術である。
図2は本開示の前記第1の検出に対応する各キーポイントの位置の概略図である。
【0025】
図2に示すように、その中の21は音声開始点を表し、22は真の音声開始点(speech_begin)を表し、23は真の音声終了点(speech_end)を表し、24は音声終了点を表し、25は音声開始点が検出された時間/時刻(T_vad_begin_detected)を表し、26は音声終了点が検出された時間(T_vad_end_detected)を表し、音声開始点と音声終了点は、音声検出モデルを使用して検出された音声開始点と音声終了点を表し、真の音声開始点と比較すると、検出された音声開始点は、通常、300~500ms早くなり、当該値より大きい場合、導入された無効な音声が多くなり、インタラクション遅延などが多くなり、真の音声終了点と比較すると、検出された音声終了点は、通常、600~800ms遅くなり、当該値より小さい場合、誤判定しやすく、早期遮断をもたらし、当該値より大きい場合、無効な音声が増加して、インタラクション遅延が増加するなどになる。
【0026】
図2に示すように、実際の応用では、音声開始点が検出された時間は、通常、真の音声開始点より約200ms遅れ、これは検出結果の精度を確保するために、一定の時間の音声を蓄積してそれに対して継続的に分析する必要があり、音声の開始点であるか否かを最終に決定して、短時間の突発的なノイズを音声などとして誤認することを避ける。音声開始点が検出された時間に、500~700(300+200~500+200)msをバックトラックし、検出された音声開始点として出力する。また、音声終了点が検出された時間に、検出された音声終了点を出力することができる。
【0027】
音声データのヘッダにノイズが存在すると仮定し、当該ノイズは周囲の人の声であり、
図3は
図2に示す各キーポイントに対応する位置の概略図である。
図3に示すように、その中の21~26が代表する意味は
図2と同一であり、27はノイズを表す。第1の検出によって音声開始点と音声終了点を取得した後、ヘッダに周囲の人の声ノイズを導入し、そうすると、後続に音声開始点から音声終了点までの音声データを認識エンジンに送って認識する時、認識エラーを起こすことができ、人間とコンピュータのインタラクションの成功率などに影響を与えることを分かることができる。
【0028】
このため、本開示に記載された解決策には唇の動き検出技術が導入され、音声検出モデルを使用して音声データに対して音声開始点と音声終了点の第1の検出を行う以外、ビデオデータに対して唇の動き開始点と唇の動き終了点の第2の検出を行うこともできる。
【0029】
本開示の一実施例では、トレーニングによって取得された唇の動き検出モデルを使用してビデオデータに対して第2の検出を行って、ビデオ内の人の顔の唇の動き開始点と唇の動き終了点を取得することができる。
【0030】
どのようにトレーニングして唇の動き検出モデルを取得することは限定しない。例えば、人の顔検出技術などを使用して、ビデオデータ内の各フレーム画像内の人の顔画像を切り取ることができ、一般的に、各フレーム画像には1つの人の顔画像のみが含まれ、各人の顔画像内の人の顔唇部の唇形点をそれぞれ抽出することができ、各人の顔画像をそれぞれラベリングすることができ、動いている唇部は1としてラベリングし、そうでなければ0としてラベリングし、さらに、各人の顔画像の唇形点及び対応するラベリング結果を使用して唇の動き検出モデルのトレーニングを行うことができる。
【0031】
第2の検出を行う時、同様な方式で唇形点を取得することができ、唇の動き検出モデルに入力することで、出力された1または0の検出結果を取得することができ、人の顔画像内の人の顔唇部が動いているかどうかを表すことができる。
【0032】
一般的に、唇の動き開始点を決定することは、少なくとも5フレームの画像が必要であり、第1の検出の処理方式と類似し、これは誤判定を防止するためであり、すなわち唇の動きが一定時間持続することによって真の唇の動きとして見なされ、すなわち発話によって引き起こされる唇の動きは、他の原因によって短時間の唇の動きで検出エラーになることを防止する。
【0033】
したがって、唇の動き開始点が検出された時間(T_lip_begin_detected)は、唇の動き開始点と比べて一定の遅延があり、前述の5フレームを例とし、フレーム率が20である場合、そうすると250msが遅延になり、バックトラックによって唇の動き開始点を取得することができる。
【0034】
上記の方式で、唇の動き開始点と唇の動き終了点を正確かつ効率的に検出することができ、後続の処理に良好の基礎などを築くことができる。
【0035】
取得された第1の検出結果と第2の検出結果について、第2の検出結果を使用して第1の検出結果を補正することができる。
【0036】
このため、音声検出状態と唇の動き検出状態などのいくつかの状態を予め定義することができ、その中、音声検出状態は、音声あり状態(State_vad_speech)と音声なし状態(State_vad_no_speech)をさらに含むことができ、唇の動き検出状態は、唇の動きあり状態(State_lip)と唇の動きなし状態(State_no_lip)をさらに含むことができる。
【0037】
具体的には、それぞれ以下のようである。
A、音声あり状態:音声開始点が検出された後から対応する音声終了点が検出される前までの時間内の状態であり、
B、音声なし状態:音声あり状態以外の時間内の状態、すなわち音声開始点が検出される前と音声終了点が検出された後の時間内の状態であり、
C、唇の動きあり状態:唇の動き開始点が検出された後から対応する唇の動き終了点が検出される前までの時間内の状態であり、
D、唇の動きなし状態:唇の動きあり状態以外の時間内の状態、すなわち唇の動き開始点が検出された前と唇の動き終了点が検出された後の時間内の状態である。
【0038】
図4は本開示の前記音声あり状態と音声なし状態の変換方式の概略図である。
図4に示すように、音声開始点が検出された場合、音声なし状態から音声あり状態に変換し、音声終了点が検出された場合、音声あり状態から音声なし状態に変換する。
【0039】
図5は本開示の前記唇の動きあり状態と唇の動きなし状態の変換方式の概略図である。
図5に示すように、唇の動き開始点が検出された場合、唇の動きなし状態から唇の動きあり状態に変換し、唇の動き終了点が検出された場合、唇の動きあり状態から唇の動きなし状態に変換する。
【0040】
本開示の一実施例では、第2の検出結果を使用して第1の検出結果を補正する時、以下の処理方式を使用することができ、
1)音声検出状態が音声あり状態であり、唇の動き検出状態が唇の動きなし状態である場合、唇の動き開始点が検出され、所定の時間要求に適合すると、検出された唇の動き開始点を決定された音声終了点及び新たな音声開始点とすることができ、
2)音声検出状態が音声あり状態であり、唇の動き検出状態が唇の動きあり状態である時、唇の動き終了点が検出された場合、検出された唇の動き終了点を決定された音声終了点及び新たな音声開始点とすることができる。
【0041】
方式1)では、音声検出状態が音声あり状態であり、唇の動き検出状態が唇の動きなし状態である場合、唇の動き開始点が検出された場合、そうすると所定の時間要求に適合するかどうかをさらに決定することができ、本開示の一実施例では、唇の動き開始点が検出された時間と、直前に音声開始点(すなわち現在の音声あり状態に対応する音声開始点)が検出された時間との間の差が所定の閾値より大きいかどうかを決定することができ、そうである場合、所定の時間要求に適合すると決定することができ、これに応じて、検出された唇の動き開始点を決定された音声終了点及び新たな音声開始点とすることができる。
【0042】
すなわち、強制的に切り分けることができ、検出された唇の動き開始点を直前に検出された音声開始点に対応する音声終了点及び新たな音声開始点とすることができる。
【0043】
一般的に、上記の方式で処理した後に取得された直前に検出された音声開始点から対応する音声終了点までの音声データは、人間とコンピュータのインタラクションを行う人の声の前に出現されるノイズであり、ノイズを人間とコンピュータのインタラクションを行う人の声と切り分けることに相当し、音声開始点を再決定することによって、音声開始点検出結果の精度などを向上させる。
【0044】
また、唇の動き開始点が検出されるため、唇の動き検出状態は、唇の動きなし状態から唇の動きあり状態に変換する。
【0045】
方式2)では、音声検出状態が音声あり状態であり、唇の動き検出状態が唇の動きあり状態である時、唇の動き終了点が検出された場合、そうすると検出された唇の動き終了点を決定された音声終了点及び新たな音声開始点とすることができる。
【0046】
すなわち強制的に切り分け、検出された唇の動き終了点を最新取得された音声開始点に対応する音声終了点及び新たな音声開始点とすることができる。
【0047】
一般的に、上記の方式で処理した後に取得された最新の音声開始点から対応する音声終了点までの音声データは、人間とコンピュータのインタラクションを行う人の声であり、ノイズを人間とコンピュータのインタラクションを行う人の声と切り分けることに相当し、音声終了点を再決定することによって、音声終了点検出結果の精度などを向上させる。
【0048】
方式1)と方式2)の処理で、唇の動き検出によって、検出された音声開始点と音声終了点を補正し、ヘッダノイズとテールノイズを除去することができ、音声エンドポイント検出結果の精度などを向上させることができる。
【0049】
本開示に記載された解決策では、第2の検出の存在は、第1の検出の正常な進行に影響せず、すなわち従来の方式で音声開始点と音声終了点の検出を行うことができ、検出された音声開始点と音声終了点に基づいて音声検出状態を決定することができ、外部に出力する観点からは、第2の検出結果を使用して第1の検出結果を補正することができる。
【0050】
本開示の一実施例では、ビデオ内の人の顔の唇部が遮蔽されていないと決定された場合、ビデオデータに対して唇の動き開始点と唇の動き終了点の第2の検出を行うことができる。
【0051】
つまり、ビデオ内の人の顔の唇部が遮蔽されると決定された場合、例えば、マスクを着用しているために唇部が遮蔽されると、第2の検出を行わず、すなわち第1の検出のみを行い、第1の検出結果を音声エンドポイント検出結果とすることができる。従来の実現方式との互換性が高く、様々な可能な状況を柔軟に対応することができ、人間とコンピュータのインタラクションの順序の進行などを確保することができる。
【0052】
上記の説明を要約すると、
図6は本開示の前記音声エンドポイント検出方法の全体的な実現プロセスの概略図である。
図6に示すように、その中の「融合判決」とは、すなわち第2の検出結果を使用して第1の検出結果を補正し、各ステップの具体的な実現は、上記の関連説明を参照し、ここでは説明を省略する。
【0053】
なお、前述の各方法の実施例について、簡単な説明のために、それをすべて一連の動作の組み合わせとして記載するが、本開示は、本開示に従って、いくつかのステップが他の順序を使用することができるか、または同時に行うことができるため、説明する動作順序によって制限されないことを当業者は認識すべきである。次に、本明細書に記載される実施例はいずれも好ましい実施例に属し、関連する動作およびモジュールは必ずしも本開示に必須ではない。ある実施例においては、詳細には記載されていないが、他の実施例の説明を参照することができる。
【0054】
以上は方法の実施例に関する説明であり、以下は装置の実施例で、本開示に記載された解決策をさらに説明する。
【0055】
図7は本開示の前記音声エンドポイント検出装置の実施例700の構成構造の概略図である。
図7に示すように、取得モジュール701、第1の検出モジュール702、第2の検出モジュール703、及び補正モジュール704を含む。
【0056】
取得モジュール701は、時間的に整列された音声データとビデオデータを取得するために用いられる。
【0057】
第1の検出モジュール702は、トレーニングによって取得された音声検出モデルを使用して、音声データに対して音声開始点と音声終了点の第1の検出を行うために用いられる。
【0058】
第2の検出モジュール703は、ビデオデータに対して唇の動き開始点と唇の動き終了点の第2の検出を行うために用いられる。
【0059】
補正モジュール704は、第2の検出結果を使用して第1の検出結果を補正し、補正後の結果を音声エンドポイント検出結果とするために用いられる。
【0060】
取得された音声データとビデオデータについて、異なる処理をそれぞれ行うことができる、その中、第1の検出モジュール702は、トレーニングによって取得された音声検出モデルを使用して、音声データに対して音声開始点と音声終了点の第1の検出を行うことができ、第2の検出モジュール703は、ビデオデータに対して唇の動き開始点と唇の動き終了点の第2の検出を行うことができる。すなわち唇の動き検出技術を導入し、音声検出モデルを使用して音声データに対して音声開始点と音声終了点の第1の検出を行う以外、ビデオデータに対して唇の動き開始点と唇の動き終了点の第2の検出を行うこともできる。
【0061】
本開示の一実施例では、第2の検出モジュール703は、トレーニングによって取得された唇の動き検出モデルを使用してビデオデータに対して第2の検出を行って、ビデオ内の人の顔の唇の動き開始点と唇の動き終了点を取得することができる。
【0062】
どのようにトレーニングして唇の動き検出モデルを取得することは限定しない。例えば、人の顔検出技術などを使用して、ビデオデータ内の各フレーム画像内の人の顔画像を切り取ることができ、一般的に、各フレーム画像には1つの人の顔画像のみが含まれ、各人の顔画像内の人の顔唇部の唇形点をそれぞれ抽出することができ、各人の顔画像をそれぞれラベリングすることができ、動いている唇部は1としてラベリングし、そうでなければ0としてラベリングし、さらに、各人の顔画像の唇形点及び対応するラベリング結果を使用して唇の動き検出モデルのトレーニングを行うことができる。
【0063】
第2の検出を行う時、同様な方式で唇形点を取得することができ、唇の動き検出モデルに入力することで、出力された1または0の検出結果を取得することができ、人の顔画像内の人の顔唇部が動いているかどうかを表すことができる。
【0064】
さらに、補正モジュール704は、第2の検出結果を使用して第1の検出結果を補正して、所望の音声エンドポイント検出結果を取得することができる。
【0065】
このため、音声検出状態と唇の動き検出状態などのいくつかの状態を予め定義することができ、音声検出状態は、さらに、音声あり状態と音声なし状態を含むことができ、唇の動き検出状態は、さらに、唇の動きあり状態と唇の動きなし状態を含むことができる。
【0066】
その中、音声あり状態は、音声開始点が検出された後から対応する音声終了点が検出される前までの時間内の状態であり、音声なし状態は、音声あり状態以外の時間内の状態、すなわち音声開始点が検出される前と音声終了点が検出された後の時間内の状態であり、唇の動きあり状態は、唇の動き開始点が検出された後から対応する唇の動き終了点が検出される前までの時間内の状態であり、唇の動きなし状態は、唇の動きあり状態以外の時間内の状態、すなわち唇の動き開始点が検出された前と唇の動き終了点が検出された後の時間内の状態である。
【0067】
これに応じて、本開示の一実施例では、補正モジュール704は、音声検出状態が音声あり状態であり、唇の動き検出状態が唇の動きなし状態である場合、唇の動き開始点が検出され、所定の時間要求に適合すると、検出された唇の動き開始点を決定された音声終了点及び新たな音声開始点とすることができる。
【0068】
本開示の一実施例では、所定の時間要求に適合するとは、唇の動き開始点が検出された時間と直前に音声開始点が検出された時間との間の差が所定の閾値より大きいことを指すことができる。
【0069】
つまり、音声検出状態が音声あり状態であり、唇の動き検出状態が唇の動きなし状態である場合、唇の動き開始点が検出された場合、そうすると唇の動き開始点が検出された時間と、直前に音声開始点(すなわち現在の音声あり状態に対応する音声開始点)が検出された時間との間の差が所定の閾値より大きいかどうかをさらに決定することができ、そうである場合、所定の時間要求に適合すると決定することができ、これに応じて、検出された唇の動き開始点を決定された音声終了点及び新たな音声開始点とすることができる。すなわち強制的に切り分けることができ、検出された唇の動き開始点を直前に検出された音声開始点に対応する音声終了点及び新たな音声開始点とすることができる。
【0070】
本開示の一実施例では、補正モジュール704は、さらに、音声検出状態が音声あり状態であり、唇の動き検出状態が唇の動きあり状態である時、唇の動き終了点が検出された場合、検出された唇の動き終了点を決定された音声終了点及び新たな音声開始点とすることができる。
【0071】
すなわち強制的に切り分け、検出された唇の動き終了点を最新取得された音声開始点に対応する音声終了点及び新たな音声開始点とすることができる。
【0072】
本開示の一実施例では、第2の検出モジュール703は、さらに、決定ビデオ内の人の顔の唇部が遮蔽されていない時、ビデオデータに対して第2の検出を行うことができる。つまり、ビデオ内の人の顔の唇部が遮蔽されると決定された場合、例えば、マスクを着用しているために唇部が遮蔽されると、第2の検出を行わず、すなわち第1の検出のみを行い、第1の検出結果を音声エンドポイント検出結果とすることができる。
【0073】
図7に示す装置の実施例の具体的なワークフローは前述方法の実施例の関連説明を参照し、ここでは説明を省略する。
【0074】
要するに、本開示の装置の実施例に係る解決策を使用し、音声検出モデルと唇の動き検出技術を組み合わせて、唇の動き検出結果を使用して音声検出モデルによって検出された音声開始点と音声終了点を補正することによって、音声エンドポイント検出結果の精度などを向上させる。
【0075】
本開示に記載された解決策は、人工知能の分野に適用することができ、特に、深層学習及びインテリジェント音声などの分野に関する。
【0076】
人工知能は、人間のある思考プロセスと知能行為(たとえば、学習、推理、思考、計画など)をコンピュータでシミュレートすることを研究する学科であり、ハードウェアレベルの技術もソフトウェアレベルの技術もあり、人工知能ハードウェア技術は、一般的に、たとえば、センサー、専用の人工知能チップ、クラウドコンピューティング、分散ストレージ、ビッグデータ処理などの技術を含む。
【0077】
本開示の実施例によれば、本開示は、さらに、電子機器、読み取り可能な記憶媒体、およびコンピュータプログラム製品を提供する。
【0078】
図8は本開示の実施例を実施するための電子機器800の概略ブロック図を示す。電子機器は、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、サーバ、ブレードサーバ、大型コンピュータ、及び他の適切なコンピュータなどの様々な形式のデジタルコンピュータを表すことを目的とする。電子機器は、携帯情報端末、携帯電話、スマートフォン、ウェアラブルデバイス、他の同様の計算デバイスなどの様々な形式のモバイルデバイスを表すこともできる。本明細書で示されるコンポーネント、それらの接続と関係、及びそれらの機能は単なる例であり、本明細書の説明及び/又は要求される本開示の実現を制限することを意図したものではない。
【0079】
図8に示すように、機器800は計算ユニット801を含み、計算ユニット801は、読み取り専用メモリ(ROM)802に記憶されているコンピュータプログラムまたは記憶ユニット808からランダムアクセスメモリ(RAM)803にロードされたコンピュータプログラムに基づいて、様々な適切な動作と処理を実行することができる。RAM803には、機器800が動作するに必要な様々なプログラムとデータも記憶することができる。計算ユニット801、ROM802、およびRAM803は、バス804を介してお互いに接続される。入出力(I/O)インターフェース805もバス804に接続される。
【0080】
機器800内の複数のコンポーネントは、I/Oインターフェース805に接続されており、キーボード、マウスなどの入力ユニット806と、様々なタイプのディスプレイ、スピーカなどの出力ユニット807と、ディスク、光ディスクなどの記憶ユニット808と、およびネットワークカード、モデム、無線通信トランシーバなどの通信ユニット809と、を含む。通信ユニット809は、機器800が、インターネットなどのコンピュータネットワーク、および/または様々な電気通信ネットワークを介して他の機器と情報/データを交換することを可能にする。
【0081】
計算ユニット801は、様々な処理と計算能力を備える汎用および/または専用の処理コンポーネントである。計算ユニット801のいくつかの例は、中央処理装置(CPU)、グラフィックス処理ユニット(GPU)、様々な専用の人工知能(AI)計算チップ、様々な機械学習モデルアルゴリズムを実行する計算ユニット、デジタル信号プロセッサ(DSP)、および任意の適切なプロセッサ、コントローラ、マイクロコントローラなどを含むが、これらに限定されない。計算ユニット801は、本開示に記載された方法などの上記の様々な方法と処理を実行する。例えば、いくつかの実施例では、本開示に記載された方法は、記憶ユニット808などの機械読み取り可能な媒体に有形的に含まれるコンピュータソフトウェアプログラムとして実現することができる。 いくつかの実施例では、コンピュータプログラムの一部または全部は、ROM802および/または通信ユニット809を介して機器800にロードおよび/またはインストールされる。コンピュータプログラムがRAM803にロードされて計算ユニット801によって実行される場合、上記の本開示に記載された方法の一つまたは複数のステップを実行することができる。代替的に、他の実施例では、計算ユニット801は、他の任意の適切な方式(例えば、ファームウェアによって)を介して本開示に記載された方法を実行するように構成されることができる。
【0082】
本明細書で説明されるシステムと技術の様々な実施方式は、デジタル電子回路システム、集積回路システム、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システムオンチップシステム(SOC)、ロードプログラマブルロジックデバイス(CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組み合わせで実現することができる。これらの様々な実施方式は、一つ又は複数のコンピュータプログラムで実施されることを含むことができ、当該一つ又は複数のコンピュータプログラムは、少なくとも一つのプログラマブルプロセッサを含むプログラム可能なシステムで実行及び/又は解釈されることができ、当該プログラマブルプロセッサは、特定用途向け又は汎用プログラマブルプロセッサであってもよく、ストレージシステム、少なくとも一つの入力装置、及び少なくとも一つの出力装置からデータ及び命令を受信し、データ及び命令を当該ストレージシステム、当該少なくとも一つの入力装置、及び当該少なくとも一つの出力装置に伝送することができる。
【0083】
本開示の方法を実施するためのプログラムコードは、一つまたは複数のプログラミング言語の任意の組み合わせを使用して作成することができる。これらのプログラムコードは、プログラムコードがプロセッサまたはコントローラによって実行される時にフローチャートおよび/またはブロック図に規定された機能/動作が実施されるように、汎用コンピュータ、専用コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサまたはコントローラに提供することができる。プログラムコードは、完全に機械上で実行されたり、部分的に機械上で実行されたり、独立したソフトウェアパッケージとして部分的に機械上で実行され、部分的にリモート機械上実行されたり、または完全にリモート機械またはサーバ上で実行されたりすることができる。
【0084】
本開示の文脈において、機械読み取り可能な媒体は、命令実行システム、装置、または機器の使用、または命令実行システム、装置または機器と組み合わせて使用するプログラムを含むか、または記憶することができる有形の媒体であってもよい。機械読み取り可能な媒体は、機械読み取り可能な信号媒体または機械読み取り可能な記憶媒体であってもよい。機械読み取り可能な媒体は、電子、磁気、光学、電磁気、赤外線、または半導体システム、装置または機器、または上記の内容の任意の適切な組み合わせを含むが、これらに限定されない。機械読み取り可能な記憶媒体のより具体的な例は、一つまたは複数のワイヤに基づく電気接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能プログラマブル読み取り専用メモリ(EPROM またはフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリ(CD-ROM)、光学記憶装置、磁気記憶装置、または上記の内容の任意の適切な組み合わせを含む。
【0085】
ユーザとのインタラクションを提供するために、コンピュータ上でここで説明されているシステム及び技術を実施することができ、当該コンピュータは、ユーザに情報を表示するためのディスプレイ装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)モニタ)と、キーボード及びポインティングデバイス(例えば、マウス又はトラックボール)とを有し、ユーザは、当該キーボード及び当該ポインティングデバイスによって入力をコンピュータに提供することができる。他の種類の装置は、ユーザとのインタラクションを提供するために用いられることもでき、例えば、ユーザに提供されるフィードバックは、任意の形式のセンシングフィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、任意の形式(音響入力と、音声入力と、触覚入力とを含む)でユーザからの入力を受信することができる。
【0086】
ここで説明されるシステム及び技術は、バックエンドコンポーネントを含むコンピューティングシステム(例えば、データサーバとする)、又はミドルウェアコンポーネントを含むコンピューティングシステム(例えば、アプリケーションサーバ)、又はフロントエンドコンポーネントを含むコンピューティングシステム(例えば、グラフィカルユーザインタフェース又はウェブブラウザを有するユーザコンピュータ、ユーザは、当該グラフィカルユーザインタフェース又は当該ウェブブラウザによってここで説明されるシステム及び技術の実施方式とインタラクションする)、又はこのようなバックエンドコンポーネントと、ミドルウェアコンポーネントと、フロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムで実施することができる。任意の形式又は媒体のデジタルデータ通信(例えば、通信ネットワーク)によってシステムのコンポーネントを相互に接続されることができる。通信ネットワークの例は、ローカルエリアネットワーク(LAN)と、ワイドエリアネットワーク(WAN)と、インターネットと、ブロックチェーンネットワークと、を含む。
【0087】
コンピュータシステムは、クライアントとサーバとを含むことができる。クライアントとサーバは、一般に、互いに離れており、通常に通信ネットワークを介してインタラクションする。対応するコンピュータ上で実行され、互いにクライアント-サーバ関係を有するコンピュータプログラムによってクライアントとサーバとの関係が生成される。サーバは、クラウドサーバであってもよく、クラウド計算またはクラウドホストとも呼ばれ、クラウド計算サービスシステムの中の一つのホスト製品であり、従来の物理ホストとVPSサーバ(VPS)に、存在する管理困難度が高く、業務拡張性が弱い欠陥を解決する。サーバは、分散システムのサーバであってもよく、またはブロックチェーンを組み合わせるサーバであってもよい。クラウドコンピューティングとは、ネットワークを介して柔軟で拡張可能な共有物理又は仮想リソースプールにアクセスし、リソースが、サーバ、操作システム、ネットワーク、ソフトウェア、アプリケーション及び記憶デバイスなどを含むことができ、必要に応じてセルフサービスの方式でリソースを配置及び管理できる技術体系を指す。クラウドコンピューティング技術によって、人工知能、ブロックチェーンなどの技術の適用、モデルトレーニングに効率的で強力なデータ処理能力を提供することができる。
【0088】
上記に示される様々な形式のフローを使用して、ステップを並べ替え、追加、又は削除することができることを理解されたい。例えば、本開示に記載されている各ステップは、並列に実行されてもよいし、順次的に実行されてもよいし、異なる順序で実行されてもよいが、本開示で開示されている技術案が所望の結果を実現することができれば、本明細書では限定されない。
【0089】
上記の具体的な実施方式は、本開示に対する保護範囲の制限を構成するものではない。当業者は、設計要求と他の要因に基づいて、様々な修正、組み合わせ、サブコンビネーション、及び代替を行うことができる。任意の本開示の精神と原則内で行われる修正、同等の置換、及び改善などは、いずれも本開示の保護範囲内に含まれなければならない。