(57)【要約】本開示は、ジェスチャー認識方法、ジェスチャー処理方法及び装置に関する。前記ジェスチャー認識方法は、画像における手部の指の状態を検出することと、前記指の状態に基づいて前記手部の状態ベクトルを決定することと、前記手部の状態ベクトルに基づいて前記手部のジェスチャーを特定することと、を含む。本開示の実施例は、各指の状態に基づいて状態ベクトルを決定し、状態ベクトルに基づいてジェスチャーを特定することにより、認識効率が高く、より汎用性がある。【選択図】図１
2021534482.tif 000002
【特許請求の範囲】
【請求項１】
画像における手部の指の状態を検出することと、
前記指の状態に基づいて前記手部の状態ベクトルを決定することと、
前記手部の状態ベクトルに基づいて前記手部のジェスチャーを特定することと、を含むことを特徴とするジェスチャー認識方法。
【請求項２】
前記指の状態は、前記指が前記手部の掌の根元部に対して伸ばされているか否か及び／又は伸ばされている度合の状態を示すことを特徴とする請求項１に記載の方法。
【請求項３】
前記指の状態に基づいて前記手部の状態ベクトルを決定することは、
前記指の状態に基づいて、指の状態ごとに異なる前記指の状態値を決定することと、
前記指の状態値に基づいて前記手部の状態ベクトルを決定することと、を含むことを特徴とする請求項１又は２に記載の方法。
【請求項４】
前記指の状態は、伸ばしている状態、伸ばしていない状態、半分伸ばしている状態、曲がっている状態のうちの１つ又は複数を含むことを特徴とする請求項１〜３のいずれか一項に記載の方法。
【請求項５】
前記画像における手部の指の位置情報を検出することと、
前記指の位置情報に基づいて前記手部の位置ベクトルを決定することと、を更に含み、
前記手部の状態ベクトルに基づいて前記手部のジェスチャーを特定することは、
前記手部の状態ベクトルと前記手部の位置ベクトルに基づいて前記手部のジェスチャーを特定することを含むことを特徴とする請求項１〜４のいずれか一項に記載の方法。
【請求項６】
前記画像における手部の指の位置情報を検出することは、
前記画像における前記手部の指のキーポイントを検出し、前記指のキーポイントの位置情報を取得することを含み、
前記指の位置情報に基づいて前記手部の位置ベクトルを決定することは、
前記指のキーポイントの位置情報に基づいて前記手部の位置ベクトルを決定することを含むことを特徴とする請求項５に記載の方法。
【請求項７】
前記画像における前記手部の指のキーポイントを検出し、前記指のキーポイントの位置情報を取得することは、
前記画像における前記手部の、伸ばしていない状態以外の指のキーポイントを検出し、前記キーポイントの位置情報を取得することを含むことを特徴とする請求項６に記載の方法。
【請求項８】
前記キーポイントは指先及び／又は指の関節を含むことを特徴とする請求項７に記載の方法。
【請求項９】
画像における手部の指の状態を検出することは、
前記画像をニューラルネットワークに入力して、前記ニューラルネットワークにより前記画像における手部の指の状態を検出することを含むことを特徴とする請求項１〜８のいずれか一項に記載の方法。
【請求項１０】
前記ニューラルネットワークは複数の状態分岐ネットワークを含み、前記ニューラルネットワークにより前記画像における手部の指の状態を検出することは、
前記ニューラルネットワークの異なる状態分岐ネットワークにより前記画像における手部の異なる指の状態をそれぞれ検出することを含むことを特徴とする請求項９に記載の方法。
【請求項１１】
前記ニューラルネットワークは位置分岐ネットワークを更に含み、前記画像における手部の指の位置情報を検出することは、
前記ニューラルネットワークの前記位置分岐ネットワークにより前記画像における前記手部の指の位置情報を検出することを含むことを特徴とする請求項９又は１０に記載の方法。
【請求項１２】
前記ニューラルネットワークは、予めラベル情報を有するサンプル画像を用いてトレーニングされたものであり、前記ラベル情報は、前記指の状態を示す第１のラベル情報、及び／又は、前記指の位置情報又はキーポイントの位置情報を示す第２のラベル情報を含むことを特徴とする請求項９〜１１のいずれか一項に記載の方法。
【請求項１３】
前記サンプル画像において、伸ばしていない状態の指について第２のラベル情報が付けされないことを特徴とする請求項１２に記載の方法。
【請求項１４】
前記第１のラベル情報は各指の状態を示す第１のマーク値から構成される状態ベクトルを含み、
前記第２のラベル情報は各指の位置情報又はキーポイントの位置情報をマークする第２のマーク値から構成される位置ベクトルを含むことを特徴とする請求項１２又は１３に記載の方法。
【請求項１５】
前記ニューラルネットワークのトレーニングには、
手部のサンプル画像をニューラルネットワークに入力して手部の指の状態を取得することと、
前記指の状態に基づいて指の位置重みを決定することと、
前記指の状態と前記位置重みに基づいて、前記ニューラルネットワークによるジェスチャー予測結果の損失を決定することと、
前記ニューラルネットワークに前記損失を逆伝搬して、前記ニューラルネットワークのネットワークパラメータを調整することと、を含むことを特徴とする請求項９〜１４のいずれか一項に記載の方法。
【請求項１６】
手部のサンプル画像をニューラルネットワークに入力して手部の指の状態を取得することは、
手部のサンプル画像をニューラルネットワークに入力して手部の指の状態と位置情報を取得することを含み、
前記指の状態と前記位置重みに基づいて、前記ニューラルネットワークによるジェスチャー予測結果の損失を決定することは、
前記指の状態、前記位置情報及び前記位置重みに基づいて、前記ニューラルネットワークによるジェスチャー予測結果の損失を決定することを含むことを特徴とする請求項１５に記載の方法。
【請求項１７】
前記指の状態に基づいて前記指の位置重みを決定することは、
指の状態が伸ばしていない状態である場合に、前記指の位置重みをゼロにすることを含むことを特徴とする請求項１５又は１６に記載の方法。
【請求項１８】
画像を取得することと、
請求項１〜１７のいずれか一項に記載の方法を用いて前記画像に含まれる手部のジェスチャーを認識することと、
ジェスチャーの認識結果に対応する制御操作を実行することと、を含むことを特徴とするジェスチャー処理方法。
【請求項１９】
ジェスチャーの認識結果に対応する操作制御を実行することは、
予め設定されたジェスチャーと制御指令とのマッピング関係により、ジェスチャーの認識結果に対応する制御指令を取得することと、
前記制御指令に基づいて、電子機器が対応する操作を実行するように制御することと、を含むことを特徴とする請求項１８に記載の方法。
【請求項２０】
ジェスチャーの認識結果に対応する操作制御を実行することは、
予め設定されたジェスチャーと特殊効果とのマッピング関係により、ジェスチャーの認識結果に対応する特殊効果を特定することと、
コンピュータグラフィックスにより前記画像に前記特殊効果を作成することと、を含むことを特徴とする請求項１８に記載の方法。
【請求項２１】
コンピュータグラフィックスにより前記画像に前記特殊効果を作成することは、
前記画像に含まれる手部又は手部の指のキーポイントに基づいて、コンピュータグラフィックスにより前記特殊効果を作成することを含むことを特徴とする請求項２０に記載の方法。
【請求項２２】
画像における手部の指の状態を検出するための状態検出モジュールと、
前記指の状態に基づいて前記手部の状態ベクトルを決定するための状態ベクトル取得モジュールと、
前記手部の状態ベクトルに基づいて前記手部のジェスチャーを特定するためのジェスチャー特定モジュールと、を含むことを特徴とするジェスチャー認識装置。
【請求項２３】
前記指の状態は、前記指が前記手部の掌の根元部に対して伸ばされているか否か及び／又は伸ばされている度合の状態を示すことを特徴とする請求項２２に記載の装置。
【請求項２４】
前記状態ベクトル取得モジュールは、
前記指の状態に基づいて、指の状態ごとに異なる前記指の状態値を決定するための状態値取得サブモジュールと、
前記指の状態値に基づいて前記手部の状態ベクトルを決定するための第１の状態ベクトル取得サブモジュールと、を含むことを特徴とする請求項２２又は２３に記載の装置。
【請求項２５】
前記指の状態は、伸ばしている状態、伸ばしていない状態、半分伸ばしている状態、曲がっている状態のうちの１つ又は複数を含むことを特徴とする請求項２２〜２４のいずれか一項に記載の装置。
【請求項２６】
前記画像における手部の指の位置情報を検出するための位置情報取得モジュールと、
前記指の位置情報に基づいて前記手部の位置ベクトルを決定するための位置ベクトル取得モジュールと、を更に含み、
前記ジェスチャー特定モジュールは、
前記手部の状態ベクトルと前記手部の位置ベクトルに基づいて前記手部のジェスチャーを特定するための第１のジェスチャー特定サブモジュールを含むことを特徴とする請求項２２〜２５のいずれか一項に記載の装置。
【請求項２７】
前記位置情報取得モジュールは、
前記画像における前記手部の指のキーポイントを検出し、前記指のキーポイントの位置情報を取得するためのキーポイント検出サブモジュールを含み、
前記位置ベクトル取得モジュールは、
前記指のキーポイントの位置情報に基づいて前記手部の位置ベクトルを決定するための第１の位置ベクトル取得サブモジュールを含むことを特徴とする請求項２６に記載の装置。
【請求項２８】
前記キーポイント検出サブモジュールは、
前記画像における前記手部の、伸ばしていない状態以外の指のキーポイントを検出し、前記キーポイントの位置情報を取得するために用いられることを特徴とする請求項２７に記載の装置。
【請求項２９】
前記キーポイントは指先及び／又は指の関節を含むことを特徴とする請求項２８に記載の装置。
【請求項３０】
前記状態検出モジュールは、
前記画像をニューラルネットワークに入力して、前記ニューラルネットワークにより前記画像における手部の指の状態を検出するための第１の状態検出サブモジュールを含むことを特徴とする請求項２２〜２９のいずれか一項に記載の方法。
【請求項３１】
前記ニューラルネットワークは複数の状態分岐ネットワークを含み、前記第１の状態検出サブモジュールは、
前記ニューラルネットワークの異なる状態分岐ネットワークにより前記画像における手部の異なる指の状態をそれぞれ検出するために用いられることを特徴とする請求項３０に記載の装置。
【請求項３２】
前記ニューラルネットワークは位置分岐ネットワークを更に含み、前記位置情報取得モジュールは、
前記ニューラルネットワークの前記位置分岐ネットワークにより前記画像における前記手部の指の位置情報を検出するための第１の位置情報取得サブモジュールを含むことを特徴とする請求項３０又は３１に記載の装置。
【請求項３３】
前記ニューラルネットワークは、予めラベル情報を有するサンプル画像を用いてトレーニングされたものであり、前記ラベル情報は、前記指の状態を示す第１のラベル情報、及び／又は、前記指の位置情報又はキーポイントの位置情報を示す第２のラベル情報を含むことを特徴とする請求項３０〜３２のいずれか一項に記載の装置。
【請求項３４】
前記サンプル画像において、伸ばしていない状態の指について第２のラベル情報が付けされないことを特徴とする請求項３３に記載の装置。
【請求項３５】
前記第１のラベル情報は各指の状態を示す第１のマーク値から構成される状態ベクトルを含み、
前記第２のラベル情報は各指の位置情報又はキーポイントの位置情報をマークする第２のマーク値から構成される位置ベクトルを含むことを特徴とする請求項３３又は３４に記載の装置。
【請求項３６】
前記ニューラルネットワークは、トレーニングモジュールを含み、前記トレーニングモジュールは、
手部のサンプル画像をニューラルネットワークに入力して手部の指の状態を取得するための状態取得サブモジュールと、
前記指の状態に基づいて指の位置重みを決定するための位置重み決定サブモジュールと、
前記指の状態と前記位置重みに基づいて、前記ニューラルネットワークによるジェスチャー予測結果の損失を決定するための損失決定サブモジュールと、
前記ニューラルネットワークに前記損失を逆伝搬して、前記ニューラルネットワークのネットワークパラメータを調整するための逆伝搬サブモジュールと、を備えることを特徴とする請求項３０〜３５のいずれか一項に記載の装置。
【請求項３７】
前記状態取得サブモジュールは、
手部のサンプル画像をニューラルネットワークに入力して手部の指の状態と位置情報を取得するために用いられ、
前記損失決定サブモジュールは、
前記指の状態、前記位置情報及び前記位置重みに基づいて、前記ニューラルネットワークによるジェスチャー予測結果の損失を決定するために用いられることを特徴とする請求項３６に記載の装置。
【請求項３８】
前記位置重み決定サブモジュールは、
指の状態が伸ばしていない状態である場合に、前記指の位置重みをゼロにするために用いられることを特徴とする請求項３６又は３７に記載の装置。
【請求項３９】
画像を取得するための画像取得モジュールと、
請求項２２〜３８のいずれか一項に記載の装置を用いて前記画像に含まれる手部のジェスチャーを認識するためのジェスチャー取得モジュールと、
ジェスチャーの認識結果に対応する制御操作を実行するための操作実行モジュールと、を含むことを特徴とするジェスチャー処理装置。
【請求項４０】
前記操作実行モジュールは、
予め設定されたジェスチャーと制御指令とのマッピング関係により、ジェスチャーの認識結果に対応する制御指令を取得するための制御指令取得サブモジュールと、
前記制御指令に基づいて、電子機器が対応する操作を実行するように制御するための操作実行サブモジュールと、を含むことを特徴とする請求項３９に記載の装置。
【請求項４１】
前記操作実行モジュールは、
予め設定されたジェスチャーと特殊効果とのマッピング関係により、ジェスチャーの認識結果に対応する特殊効果を特定するための特殊効果特定サブモジュールと、
コンピュータグラフィックスにより前記画像に前記特殊効果を作成するための特殊効果実行サブモジュールと、を含むことを特徴とする請求項３９に記載の装置。
【請求項４２】
前記特殊効果実行サブモジュールは、
前記画像に含まれる手部又は手部の指キーポイントに基づいて、コンピュータグラフィックスにより前記特殊効果を作成するために用いられることを特徴とする請求項４１に記載の装置。
【請求項４３】
プロセッサと、
プロセッサにより実行可能なコマンドを記憶するためのメモリと、を含み、
前記プロセッサは前記実行可能なコマンドを呼び出すことによって請求項１〜２１のいずれか一項に記載の方法を実現することを特徴とする電子機器。
【請求項４４】
コンピュータプログラムコマンドが記憶されているコンピュータ読取可能記憶媒体であって、前記コンピュータプログラムコマンドは、プロセッサにより実行されると、請求項１〜２１のいずれか一項に記載の方法を実現させることを特徴とするコンピュータ読取可能記憶媒体。
【請求項４５】
コンピュータ読取可能コードを含むコンピュータプログラムであって、前記コンピュータ読取可能コードは、電子機器で実行されると、前記電子機器のプロセッサに請求項１〜２１のいずれか一項に記載の方法を実現するためのコマンドを実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【関連出願の相互参照】
【０００１】
本願は、２０１８年８月１７日に中国特許局に提出された、出願番号２０１８１０９４２８８２．１、発明の名称「ジェスチャー認識方法、ジェスチャー処理方法及び装置」の中国特許出願の優先権を主張し、その開示の全てが参照によって本願に組み込まれる。
【技術分野】
【０００２】
本開示は、画像処理技術分野に関し、特に、ジェスチャー認識方法、ジェスチャー処理方法及び装置に関する。
【背景技術】
【０００３】
非接触ヒューマン・マシン・ インタラクションのシーンの生活への適用はますます広くなってきている。ユーザは異なるジェスチャーにより異なるヒューマン・マシン・インタラクションコマンドを容易に表現することができる。
【発明の概要】
【０００４】
本開示は、ジェスチャー認識の技術的手段を提供する。
【０００５】
本開示の一方面によれば、画像における手部の指の状態を検出することと、前記指の状態に基づいて前記手部の状態ベクトルを決定することと、前記手部の状態ベクトルに基づいて前記手部のジェスチャーを特定することと、を含むジェスチャー認識方法を提供する。
【０００６】
本開示の一方面によれば、画像を取得することと、上記ジェスチャー認識方法を用いて前記画像に含まれる手部のジェスチャーを認識することと、ジェスチャーの認識結果に対応する制御操作を実行することと、を含むジェスチャー処理方法を提供する。
【０００７】
本開示の一方面によれば、画像における手部の指の状態を検出するための状態検出モジュールと、前記指の状態に基づいて前記手部の状態ベクトルを決定するための状態ベクトル取得モジュールと、前記手部の状態ベクトルに基づいて前記手部のジェスチャーを特定するためのジェスチャー特定モジュールと、を含むジェスチャー認識装置を提供する。
【０００８】
本開示の一方面によれば、画像を取得するための画像取得モジュールと、上記ジェスチャー認識装置を用いて前記画像に含まれる手部のジェスチャーを認識するためのジェスチャー取得モジュールと、ジェスチャーの認識結果に対応する制御操作を実行するための操作実行モジュールと、を含むジェスチャー処理装置を提供する。
【０００９】
本開示の一方面によれば、プロセッサと、プロセッサにより実行可能なコマンドを記憶するためのメモリと、を含み、前記プロセッサは前記実行可能なコマンドを呼び出すことによって上記ジェスチャー認識方法及び／又はジェスチャー処理方法を実現する電子機器を提供する。
【００１０】
本開示の一方面によれば、コンピュータプログラムコマンドが記憶されているコンピュータ読取可能記憶媒体であって、前記コンピュータプログラムコマンドは、プロセッサにより実行されると、上記ジェスチャー認識方法及び／又はジェスチャー処理方法を実現させるコンピュータ読取可能記憶媒体を提供する。
【００１１】
本開示の一方面によれば、コンピュータ読取可能コードを含むコンピュータプログラムであって、前記コンピュータ読取可能コードは、電子機器で実行されると、前記電子機器のプロセッサに上記ジェスチャー認識方法及び／又はジェスチャー処理方法を実行させるコンピュータプログラムを提供する。
【００１２】
本開示の実施例では、画像における手部の指の状態を検出し、前記指の状態に基づいて前記手部の状態ベクトルを決定し、決定された手部の状態ベクトルに基づいて手部のジェスチャーを特定する。本開示の実施例は、各指の状態に基づいて状態ベクトルを決定し、状態ベクトルに基づいてジェスチャーを特定することにより、認識効率が高く、より汎用性がある。
【００１３】
以下、図面を参照しながら例示的な実施例について詳細に説明することにより、本開示の他の特徴及び方面は明瞭になる。
【図面の簡単な説明】
【００１４】
明細書の一部として組み込まれた図面は、明細書と共に本開示の例示的な実施例、特徴及び方面を示し、更に本開示の原理を解釈するために用いられる。
【図１】本開示の実施例に係るジェスチャー認識方法のフローチャートを示す。
【図２】本開示の実施例に係るジェスチャー認識方法における指の状態の模式図を示す。
【図３】本開示の実施例に係るジェスチャー認識方法のフローチャートを示す。
【図４】本開示の実施例に係るジェスチャー認識方法のフローチャートを示す。
【図５】本開示の実施例に係るジェスチャー認識方法のフローチャートを示す。
【図６】本開示の実施例に係るジェスチャー認識方法におけるニューラルネットワークのデータ処理のフローチャートを示す。
【図７】本開示の実施例に係るジェスチャー認識方法のフローチャートを示す。
【図８】本開示の実施例に係るジェスチャー処理方法のフローチャートを示す。
【図９】本開示の実施例に係るジェスチャー認識装置のブロック図を示す。
【図１０】本開示の実施例に係るジェスチャー処理装置のブロック図を示す。
【図１１】例示的実施例に係る電子機器のブロック図を示す。
【図１２】例示的実施例に係る電子機器のブロック図を示す。
【発明を実施するための形態】
【００１５】
以下に図面を参照しながら本開示の様々な例示的実施例、特徴および方面を詳細に説明する。図面において、同じ符号は同じまたは類似する機能の要素を表す。図面において実施例の様々な方面を示したが、特に断らない限り、比例に従って図面を作る必要がない。
【００１６】
ここの用語「例示的」とは、「例、実施例として用いられることまたは説明的なもの」を意味する。ここで「例示的」に説明したいかなる実施例も他の実施例より好ましい又は優れたものと理解すべきではない。
【００１７】
また、本開示をより効果的に説明するために、以下の具体的な実施形態において様々な具体的詳細を示す。当業者であれば、何らかの具体的詳細がなくても、本開示が同様に実施できるということを理解すべきである。いくつかの実施例では、本開示の趣旨を強調するために、当業者に既知の方法、手段、要素および回路に対する詳細な説明を省略する。以下のいくつかの具体的な実施例は、相互に組み合わせてもよく、同様又は類似的な概念又はプロセスについての説明をある実施例において省略することがある。以下の実施例は、本開示の選択可能な実施形態に過ぎないものと理解すべきで、本開示の保護範囲を実質的に制限するものと理解すべきではない。当業者により以下の実施例に基づいて実現された他の実施形態は、全て本開示の保護範囲に含まれる。
【００１８】
図１は本開示の実施例に係るジェスチャー認識方法のフローチャートを示す。前記ジェスチャー認識方法は、ユーザ側装置（Ｕｓｅｒ  Ｅｑｕｉｐｍｅｎｔ、ＵＥ）、携帯機器、ユーザ端末、端末、セルラーホン、コードレス電話、、パーソナル・デジタル・アシスタント（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ、ＰＤＡ）、手持ちの機器、計算装置、車載装置、ウエアラブル装置等の端末装置、又はサーバ等の電子機器により実行されてもよい。いくつかの可能な実施形態では、前記ジェスチャー認識方法は、プロセッサによりメモリに記憶されているコンピュータ読取可能コマンドを呼び出すことで実現されてもよい。
【００１９】
図１に示すように、前記方法は、以下のステップを含む。
【００２０】
ステップＳ１０、画像における手部の指の状態を検出する。
【００２１】
可能な一実施形態では、画像は静的画像であってもよく、ビデオストリーム中のフレーム画像であってもよい。画像認識方法を用いて画像から手部の各指の状態を取得するようにしてもよい。手部の５本の指の状態を取得してもよく、例えば人差し指の状態のみを取得するように、指定された複数本又は１本の指の状態を取得してもよい。
【００２２】
可能な一実施形態では、前記指の状態は、前記指が前記手部の掌の根元部に対して伸ばされているか否か及び／又は伸ばされている度合の状態を示す。手部のジェスチャーが拳である場合に、各指は掌の根元部に対して伸ばしていない状態となる。指は掌の根元部に対して伸ばしている状態となる場合に、掌部に対する指の位置又は指自身の湾曲度合に基づいて指の状態を更に区分するようにしてもよい。例えば、指の状態は、伸ばしていない状態と伸ばしている状態という２つの状態に分けてもよく、伸ばしていない状態、半分伸ばしている状態、伸ばしている状態という３つの状態に分けてもよく、伸ばしている状態、伸ばしていない状態、半分伸ばしている状態、曲がっている状態等の複数の状態に分けてもよい。
【００２３】
可能な一実施形態では、前記指の状態は、伸ばしている状態、伸ばしていない状態、半分伸ばしている状態、曲がっている状態のうちの１つ又は複数を含む。ここで、指と掌部との位置関係及び指自身の湾曲度合に基づいて、手部が拳から５本の指が全て最大に伸ばす状態になる過程において、各指の状態を順に伸ばしていない状態、半分伸ばしている状態、曲がっている状態、伸ばしている状態としてもよい。必要に応じて、指ごとに状態の等級を区分してもよい。本開示は各指の状態の区分方式、数量及び使用順序を限定しない。
【００２４】
図２は本開示の実施例に係るジェスチャー認識方法における指の状態の模式図を示す。図２に示す画像において、親指の状態が伸ばしていない状態となり、人差し指の状態が伸ばしている状態となり、中指の状態が伸ばしている状態となり、薬指の状態が伸ばしていない状態となり、小指の状態が伸ばしていない状態となる。画像から５本の指の状態を取得してもよく、指定された指（例えば、人差し指と中指）の状態のみを取得してもよい。
【００２５】
ステップＳ２０、前記指の状態に基づいて前記手部の状態ベクトルを決定する。
【００２６】
可能な一実施形態では、前記指の状態に基づいて前記手部の状態ベクトルを決定することは、前記指の状態に基づいて、指の状態ごとに異なる前記指の状態値を決定することと、前記指の状態値に基づいて前記手部の状態ベクトルを決定することと、を含む。
【００２７】
可能な一実施形態では、指の状態ごとに状態値を設定し、指の状態と状態値との対応関係を確立するようにしてもよい。指の状態値は、数字、英字又は符号の１つ又は任意の組合であってもよい。取得された指の状態及び確立された対応関係により指の状態値を特定し、更に指の状態値に基づいて手部の状態ベクトルを取得するようにしてもよい。手部の状態ベクトルは、アレー、リスト又は行列等の様々な形式を含んでもよい。
【００２８】
可能な一実施形態では、指の状態値を設定された指の順序で組み合わせて手部の状態ベクトルを取得するようにしてもよい。例えば、５本の指の状態値に基づいて手部の状態ベクトルを取得してもよい。親指、人差し指、中指、薬指、小指の順序で５本の指の状態値を組み合わせて手部の状態ベクトルを取得してもよい。また、任意に設定された他の順序で指の状態値を組み合わせて手部の状態ベクトルを取得してもよい。
【００２９】
例えば、図２に示す画像において、状態値Ａで伸ばしていない状態を示し、状態値Ｂで伸ばしている状態を示してもよい。図２に示すように、親指の状態値がＡとなり、人差し指の状態値がＢとなり、中指の状態値がＢとなり、薬指の状態値がＡとなり、小指の状態値がＡとなり、手部の状態ベクトルが（Ａ，Ｂ，Ｂ，Ａ，Ａ）となる。
【００３０】
ステップＳ３０、前記手部の状態ベクトルに基づいて前記手部のジェスチャーを特定する。
【００３１】
可能な一実施形態では、手部の各指の状態に基づいて手部のジェスチャーを特定するようにしてもよい。必要に応じて指の異なる状態を特定し、指の異なる状態に基づいて手部の状態ベクトルを決定し、更に手部の状態ベクトルに基づいて手部のジェスチャーを特定するようにしてもよい。指状態の認識プロセスが便利且つ信頼的であるので、ジェスチャーの特定プロセスもより便利且つ信頼的になる。手部の状態ベクトルとジェスチャーとの対応関係を確立し、状態ベクトルとジェスチャーとの対応関係を調整することにより、状態ベクトルに基づくジェスチャーの特定をより柔軟的に行うようにしてもよい。そのようにして、ジェスチャーの特定プロセスがより柔軟的になり、異なる応用環境に適応可能である。例えば、手部の状態ベクトル１がジェスチャー１に対応し、手部の状態ベクトル２がジェスチャー２に対応し、手部の状態ベクトル３がジェスチャー３に対応する。必要に応じて手部の状態ベクトルとジェスチャーとの対応関係を確立することができる。１つの手部の状態ベクトルを１つのジェスチャーに対応してもよく、複数の手部の状態ベクトルを１つのジェスチャーに対応してもよい。
【００３２】
可能な一実施形態では、例えば、図２に示す画像において、手部の状態ベクトルは（Ａ，Ｂ，Ｂ，Ａ，Ａ）である。手部の状態ベクトルとジェスチャーとの対応関係において、（Ａ，Ｂ，Ｂ，Ａ，Ａ）の状態ベクトルに対応するジェスチャーは「数字２」又は「勝利」であるようにしてもよい。
【００３３】
本実施例では、画像における手部の指の状態を検出し、前記指の状態に基づいて前記手部の状態ベクトルを決定し、決定された手部の状態ベクトルに基づいて手部のジェスチャーを特定する。本開示の実施例は、各指の状態に基づいて状態ベクトルを決定し、状態ベクトルに基づいてジェスチャーを特定することにより、認識効率が高く、より汎用性がある。
【００３４】
本実施例は、画像から各指の状態を認識する認識効率が高いので、ジェスチャー認識効率が高くなる。また、本実施例は、必要に応じて指の状態とジェスチャーとの対応関係を任意に調整できるので、同一な画像から、異なる需要に応じて定義された異なるジェスチャーを認識でき、特定されたジェスチャーがより汎用性がある。
【００３５】
可能な一実施形態では、前記指の状態は、伸ばしている状態又は伸ばしていない状態を含み、前記指の状態に基づいて前記手部の状態ベクトルを決定することは、指の状態が伸ばしている状態である場合に、前記指の状態値を第１の状態値に決定すること、又は、指の状態が伸ばしていない状態である場合に、前記指の状態値を第２の状態値に決定することと、前記指の状態値に基づいて前記手部の状態ベクトルを決定することと、を含む。
【００３６】
可能な一実施形態では、数字、英字又は符号のうちの１つ又は任意の組合により第１の状態値と第２の状態値を示すようにしてもよい。第１の状態値と第２の状態値は、反対の意味を示す２つの値であってもよく、例えば第１の状態値が有効であり、第２の状態値が無効であるようにしてもよい。第１の状態値と第２の状態値は、異なる数値の２つの数字であってもよく、例えば第１の状態値が１であり、第２の状態値が０であるようにしてもよい。図２に示す画像において、親指の状態値が０となり、人差し指の状態値が１となり、中指の状態値が１となり、薬指の状態値が０となり、小指の状態値が０となり、手部の状態ベクトルが（０，１，１，０，０）となる。
【００３７】
本実施例では、第１の状態値と第２の状態値に基づいて手部の状態ベクトルを決定できる。２つの状態値から構成される手部の状態ベクトルを用いて、手部の各指の状態を簡単且つ直感的に表現することができる。
【００３８】
図３は本開示の実施例に係るジェスチャー認識方法のフローチャートを示す。図３に示すように、前記方法は、以下のステップを更に含む。
【００３９】
ステップＳ４０、前記画像における手部の指の位置情報を検出する。
【００４０】
可能な一実施形態では、指の位置情報は画像における指の位置の情報を含むようにしてもよい。指の位置情報は画像における指の画素の座標位置の情報を含むようにしてもよい。画像をグリッドに分割して指の画素の所在するグリッドの位置情報を指の位置情報としてもよい。グリッドの位置情報はグリッドの番号を含んでもよい。
【００４１】
可能な一実施形態では、指の位置情報は画像における目標対象に対する指の位置情報を含むようにしてもい。例えば、一人がピアノを弾いている画像画面である場合に、画像における指の位置情報は鍵に対する指の位置情報を含んでもよい。例えば、指１の鍵からの距離が０であり、指２の鍵からの距離が３センチメートル等である。
【００４２】
可能な一実施形態では、指の位置情報は一次元又は多次元の位置情報を含むようにしてもよい。指の位置情報に基づいて、指同士の相対位置関係を取得することができる。
【００４３】
ステップＳ５０、前記指の位置情報に基づいて前記手部の位置ベクトルを決定する。
【００４４】
可能な一実施形態では、設定された指の順序で、異なる指の位置情報を組み合わせて手部の位置ベクトルを取得するようにしてもよい。手部の位置ベクトルはアレー、リスト又は行列等の様々な形式を含んでもよい。
【００４５】
ステップＳ３０は、前記手部の状態ベクトルと前記手部の位置ベクトルに基づいて前記手部のジェスチャーを特定するステップＳ３１を含む。
【００４６】
可能な一実施形態では、手部の状態ベクトルに基づいて手部の指の状態を取得し、手部の位置ベクトルの指の位置と組み合わせて、より精確なジェスチャーを特定するようにしてもよい。例えば、図２に示す画像において、手部の状態ベクトルが（０，１，１，０，０）となり、位置ベクトルが（Ｌ１，Ｌ２，Ｌ３，Ｌ４，Ｌ５）となる。手部の状態ベクトルのみに基づいて、手部の人差し指と中指の状態が伸ばしている状態であり、他の指が伸ばしていない状態であり、手部のジェスチャーが「数字２」又は「勝利」であると特定できる。
【００４７】
手部の位置ベクトルと手部の状態ベクトルの組み合わせに基づいて、人差し指と中指が伸ばされ且つ一定の角度で離れていると特定される場合、図２に示すように、手部のジェスチャーは「数字２」又は「勝利」であり得る。手部の状態ベクトルと手部の位置ベクトルに基づいて、人差し指と中指が伸ばされ且つ揃っている（未図示）と特定される場合、手部のジェスチャーは「勝利」ではなく、「数字２」である。
【００４８】
必要に応じて手部の状態ベクトルと手部の位置ベクトルを組み合わせて、組合ベクトルを取得した後、組合ベクトルとジェスチャーとの対応関係を確立してもよい。同様な状態ベクトルと異なる位置ベクトルから構成される異なる組合ベクトルは、異なるジェスチャーに対応してもよいし、同じジェスチャーに対応してもよい。
【００４９】
本実施例では、手部の状態ベクトルと位置ベクトルに基づいて手部のジェスチャーを特定することができる。手部の位置ベクトルと状態ベクトルを組み合わせることにより、より精確なジェスチャーを取得することができる。
【００５０】
図４は本開示の実施例に係るジェスチャー認識方法のフローチャートを示す。図４に示すように、前記方法におけるステップＳ４０は、前記画像における前記手部の指のキーポイントを検出し、前記指のキーポイントの位置情報を取得するステップＳ４１を含む。
【００５１】
可能な一実施形態では、前記キーポイントは指先及び／又は指の関節を含み、ここで、指の関節は中手指節関節又は指節間関節を含んでもよい。指の指先及び／又は指の関節の位置により指の位置情報を精確に示すことができる。例えば、図２に示す画像において、指のキーポイントが指先であり、各指の指先の位置情報を親指（Ｘ１，Ｙ１）、人差し指（Ｘ２，Ｙ２）、中指（Ｘ３，Ｙ３）、薬指（Ｘ４，Ｙ４）、小指（Ｘ５，Ｙ５）のように決定するようにしてもよく、ここで、親指、薬指及び小指の指先の座標点は近接している。
【００５２】
ステップＳ５０は、前記指のキーポイントの位置情報に基づいて前記手部の位置ベクトルを決定するステップＳ５１を含む。
【００５３】
可能な一実施形態では、例えば、図２に示す画像において、手部の位置ベクトルは（Ｘ１，Ｙ１，Ｘ２，Ｙ２，Ｘ３，Ｙ３，Ｘ４，Ｙ４，Ｘ５，Ｙ５）であるようにしてもよい。
【００５４】
手部の状態ベクトル（０，１，１，０，０）と手部の位置ベクトル（Ｘ１，Ｙ１，Ｘ２，Ｙ２，Ｘ３，Ｙ３，Ｘ４，Ｙ４，Ｘ５，Ｙ５）に基づいて、手部の人差し指と中指が伸ばされており且つ指先に一定の距離の間隔があり、残りの３本の指が掌に位置しており、手部のジェスチャーが「勝利」であると特定できる。
【００５５】
本実施例では、手部の指のキーポイントの位置情報に基づいて手部の位置ベクトルを取得することができる。それにより、手部の位置ベクトルの決定プロセスがより簡単になる。
【００５６】
可能な一実施形態では、ステップＳ４１は、前記画像における前記手部の、伸ばしていない状態以外の指のキーポイントを検出し、前記キーポイントの位置情報を取得することを含む。
【００５７】
可能な一実施形態では、ジェスチャーは伸ばしていない状態以外の指に基づいて特定されるので、画像において伸ばしていない状態以外の指のキーポイントを特定し、キーポイントの位置情報を取得するようにしてもよい。伸ばしていない状態の指のキーポイントの位置座標を、画像に位置しない座標値にしてもよい。例えば、画像の上縁部をＸ軸正方向とし、左側縁部をＹ軸正方向とし、無効座標を（−１，−１）にするようにしてもよい。
【００５８】
例えば、図２に示す画像において、画像の上縁部をＸ軸正方向とし、左側縁部をＹ軸正方向とし、指先を指のキーポイントとする場合、手部の状態ベクトル（０，１，１，０，０）に基づいて、親指（−１，−１）、人差し指（Ｘ２，Ｙ２）、中指（Ｘ３，Ｙ３）、薬指（−１，−１）、小指（−１，−１）のような指の指先の位置情報を画像から取得できる。この場合、手部の位置ベクトルは（−１，−１，Ｘ２，Ｙ２，Ｘ３，Ｙ３，−１，−１，−１，−１）となる。伸ばしていない状態の指のキーポイントの位置座標をゼロにするようにしてもよい。
【００５９】
手部の状態ベクトル（０，１，１，０，０）と手部の位置ベクトル（−１，−１，Ｘ２，Ｙ２，Ｘ３，Ｙ３，−１，−１，−１，−１）に基づいて、手部の人差し指と中指が伸ばされており且つ指先に一定の距離の間隔があり、残りの３本の指が掌に位置しており、手部のジェスチャーが「勝利」であると特定できる。
【００６０】
本実施例では、伸ばしていない状態以外の指のキーポイントの位置情報に基づいて手部の位置ベクトルを取得することができる。それにより、手部の位置ベクトルの決定プロセスがより効率的になる。
【００６１】
図５は本開示の実施例に係るジェスチャー認識方法のフローチャートを示す。図５に示すように、前記方法におけるステップＳ１０は、前記画像をニューラルネットワークに入力して、前記ニューラルネットワークにより前記画像における手部の指の状態を検出するステップＳ１１を含む。
【００６２】
可能な一実施形態では、ニューラルネットワークは生物学的ニューラルネットワークの構造や機能を真似た数学モデル又は計算モデルである。ニューラルネットワークは入力層、中間層及び出力層を含んでもよい。入力層は、外部からの入力データを受信し、入力データを中間層に伝達するためのものである。中間層は、情報交換を行うためのものであり、情報変換能力の需要に応じて単一隠れ層又は多層隠れ層として設計されてもよい。出力層は、中間層から伝達された出力結果を更なる処理を行って、ニューラルネットワークの出力結果を取得する。入力層、中間層及び出力層はいずれも若干のニューロンを含んでもよく、各ニューロン同士は可変重み付き有向アークで接続されてもよい。ニューラルネットワークは、既知情報を用いて繰り返し学習してトレーニングされて、ニューロン同士を接続する有向アークの重みを逐次調整、変更することにより、入力出力間の関係を真似たモデルを確立する目的を達成する。トレーニングされたニューラルネットワークは、真似た入力出力間の関係モデルを用いて、入力情報を検出し、入力情報に対応する出力情報を提供することができる。例えば、ニューラルネットワークは畳み込み層、プーリング層及び全結合層等を含んでもよい。ニューラルネットワークを用いて画像の特徴を抽出し、抽出された特徴に基づいて画像の指の状態を特定してもよい。
【００６３】
本実施例では、ニューラルネットワークの強い処理能力により画像における手部の指の状態を高速且つ精確に特定することができる。
【００６４】
可能な一実施形態では、前記ニューラルネットワークは複数の状態分岐ネットワークを含み、ステップＳ１１は、前記ニューラルネットワークの異なる状態分岐ネットワークにより前記画像における手部の異なる指の状態をそれぞれ検出することを含む。
【００６５】
可能な一実施形態では、ニューラルネットワークには、それぞれ画像から１つの指の状態を取得するために用いられる５つの状態分岐ネットワークを設置するようにしてもよい。
【００６６】
可能な一実施形態では、図６は本開示の実施例に係るジェスチャー認識方法におけるニューラルネットワークのデータ処理のフローチャートを示す。図６では、ニューラルネットワークは畳み込み層と全結合層を含んでもよい。ここで、畳み込み層は第１の畳み込み層、第２の畳み込み層、第３の畳み込み層及び第４の畳み込み層を含んでもよい。第１の畳み込み層は１層の畳み込み層「ｃｏｎｖ１＿１」を含み、第２の畳み込み層〜第４の畳み込み層はそれぞれ２層の畳み込み層、例えば「ｃｏｎｖ２＿１」〜「ｃｏｎｖ４＿２」を有してもよい。第１の畳み込み層、第２の畳み込み層、第３の畳み込み層及び第４の畳み込み層は、画像の特徴を抽出するために用いられる。
【００６７】
全結合層は第１の全結合層「ｉｐ１＿ｆｉｎｇｅｒｓ」、第２の全結合層「ｉｐ２＿ｆｉｎｇｅｒｓ」及び第３の全結合層「ｉｐ３＿ｆｉｎｇｅｒｓ」を含んでもよい。第１の全結合層、第２の全結合層及び第３の全結合層は、指の状態を特定し、指の状態ベクトルを取得するために用いられる。ここで、「ｉｐ３＿ｆｉｎｇｅｒｓ」は、第１の状態分岐ネットワーク（ｌｏｓｓ＿ｌｉｔｔｌｅｆｉｎｇｅｒ）、第２の状態分岐ネットワーク（ｌｏｓｓ＿ｒｉｎｇｆｉｎｇｅｒ）、第３の状態分岐ネットワーク（ｌｏｓｓ＿ｍｉｄｄｌｅｆｉｎｇｅｒ）、第４の状態分岐ネットワーク（ｌｏｓｓ＿ｆｏｒｅｆｉｎｇｅｒ）及び第５の状態分岐ネットワーク（ｌｏｓｓ＿ｔｈｕｍｂ）の５つの状態分岐ネットワークに分割されてもよい。各状態分岐ネットワークはそれぞれ１本の指に対応し、個別にトレーニングされてもよい。
【００６８】
可能な一実施形態では、前記全結合層は位置分岐ネットワークを更に含み、ステップＳ４０は、前記ニューラルネットワークの前記位置分岐ネットワークにより前記画像における前記手部の指の位置情報を検出することを含んでもよい。
【００６９】
図６では、ニューラルネットワークは位置分岐ネットワークを更に含み、位置分岐ネットワークは第５の全結合層「ｉｐ１＿ｐｏｉｎｔｓ」、第６の全結合層「ｉｐ２＿ｐｏｉｎｔｓ」及び第７の全結合層「ｉｐ３＿ｐｏｉｎｔｓ」を含んでもよい。第５の全結合層、第６の全結合層及び第７の全結合層は、指の位置情報を取得するために用いられる。
【００７０】
また、図６では、畳み込み層は活性化関数（ｒｅｌｕ＿ｃｏｎｖ）、プーリング層（ｐｏｏｌ）、損失関数（ｌｏｓｓ）等を更に含んでもよく、詳細な説明は割愛する。
【００７１】
本実施例では、位置分岐ネットワークにより画像から指の位置情報を特定し、及び、前記位置分岐ネットワークにより前記画像から前記指の位置情報を特定することができる。状態分岐ネットワークと位置分岐ネットワークにより、画像から指の状態情報と位置情報を高速且つ精確に取得することができる。
【００７２】
可能な一実施形態では、前記ニューラルネットワークは予めラベル情報を有するサンプル画像を用いてトレーニングされたものであり、前記ラベル情報は、前記指の状態を示す第１のラベル情報、及び／又は、前記指の位置情報又はキーポイントの位置情報を示す第２のラベル情報を含む。
【００７３】
可能な一実施形態では、サンプル画像のラベル情報は指の状態を示す第１のラベル情報を含んでもよい。ニューラルネットワークのトレーニングプロセスにおいて、検出された指の状態を第１のラベル情報と比較して、ジェスチャー予測結果の損失を決定してもよい。
【００７４】
可能な一実施形態では、サンプル画像のラベル情報は指の位置情報又はキーポイントの位置情報を示す第２のラベル情報を含んでもよい。第２のラベル情報に基づいて各指の位置又はキーポイントの位置を取得し、各指の位置又はキーポイントの位置に基づいて各指の状態を特定してもよい。ニューラルネットワークのトレーニングプロセスにおいて、検出された指の状態を、第２のラベル情報に基づいて特定された指の状態と比較して、ジェスチャー予測結果の損失を決定してもよい。
【００７５】
可能な一実施形態では、サンプル画像のラベル情報は第１のラベル情報と第２のラベル情報を含んでもよい。ニューラルネットワークのトレーニングプロセスにおいて、検出された指の状態を第１のラベル情報と比較し、検出された位置情報を第２のラベル情報と比較して、ジェスチャー予測結果の損失を決定してもよい。
【００７６】
可能な一実施形態では、前記第１のラベル情報は各指の状態を示す第１のマーク値から構成される状態ベクトルを含み、前記第２のラベル情報は各指の位置情報又はキーポイントの位置情報をマークする第２のマーク値から構成される位置ベクトルを含む。
【００７７】
可能な一実施形態では、前記サンプル画像において、伸ばしていない状態の指について第２のラベル情報が付けされない。伸ばしていない状態の指に対して無効である第２のマーク値、例えば（−１、−１）を設定してもよい。
【００７８】
可能な一実施形態では、指の状態の区分に応じて第１のラベル情報中のマーク値を決定してもよい。例えば、指の状態が伸ばしていない状態又は伸ばしている状態である場合に、第１のラベル情報中の第１のマーク値は０（伸ばしていない状態）又は１（伸ばしている状態）を含むようにしてもよい。指の状態は伸ばしていない状態、半分伸ばしている状態、曲がっている状態及び伸ばしている状態に区分される場合に、第１のマーク値は０（伸ばしていない状態）、１（半分伸ばしている状態）、２（曲がっている状態）、３（伸ばしている状態）を含むようにしてもよい。各指の第１のマーク値に基づいて手部の第１のラベル情報、例えば（０，１，１，０，０）を取得してもよい。
【００７９】
可能な一実施形態では、サンプル画像に対して画像座標系を確立し、確立された画像座標系により第２のラベル情報中の第２のマーク値を決定してもよい。各指の第２のマーク値により手部の第２のラベル情報、例えば（−１，−１，Ｘ２，Ｙ２，Ｘ３，Ｙ３，−１，−１，−１，−１）を取得してもよい。
【００８０】
図７は本開示の実施例に係るジェスチャー認識方法のフローチャートを示す。図７に示すように、前記ニューラルネットワークのトレーニングには、以下のステップを含む。
【００８１】
ステップＳ１、手部のサンプル画像をニューラルネットワークに入力して手部の指の状態を取得する。
【００８２】
可能な一実施形態では、手部のサンプル画像をニューラルネットワークに入力して手部の指の状態を取得することは、手部のサンプル画像をニューラルネットワークに入力して手部の指の状態と位置情報を取得することを含む。
【００８３】
可能な一実施形態では、手部のサンプル画像は指の状態と位置情報がラベル付けされた画像であってもよい。手部のサンプル画像をニューラルネットワークに入力し、ニューラルネットワークにより画像の特徴を抽出し、抽出された特徴に基づいて指の状態と位置情報を特定するようにしてもよい。後続のジェスチャー認識のステップにおいて、特定された指の状態と位置情報に基づいて、手部のジェスチャーを特定するようにしてもよい。
【００８４】
ステップＳ２、前記指の状態に基づいて指の位置重みを決定する。
【００８５】
可能な一実施形態では、指の異なる状態に対して異なる位置重みを設定するようにしてもよい。例えば、伸ばしている状態の指に対して高い位置重みを設定し、伸ばしていない状態の指に対して低い位置重みを設定してもよい。
【００８６】
可能な一実施形態では、前記指の状態に基づいて前記指の位置重みを決定することは、指の状態が伸ばしていない状態である場合に、前記指の位置重みをゼロにすることを含む。
【００８７】
可能な一実施形態では、指の状態が伸ばしている状態である場合に、前記指の位置重みを非ゼロにし、指の状態が伸ばしていない状態である場合に、前記指の位置重みをゼロにするようにしてもよい。
【００８８】
可能な一実施形態では、伸ばしている状態の指のキーポイントの位置情報を取得し、伸ばしている状態の指のキーポイントの位置情報に基づいて手部の位置情報を取得し、更に手部の位置情報と状態情報により手部のジェスチャーを特定するようにしてもよい。例えば、図２に示す画像において、手部の状態ベクトルが（０，１，１，０，０）となり、手部の位置ベクトルが（−１，−１，Ｘ２，Ｙ２，Ｘ３，Ｙ３，−１，−１，−１，−１）となる。手部の状態ベクトルに基づいて、人差し指と中指の位置重みを１とし、残りの３本の指の位置重みを０として、（０，０，１，１，１，１，０，０，０，０）のような手部の位置重みを取得する。
【００８９】
可能な一実施形態では、人差し指が伸ばされ且つ他の４本の指が揃っているジェスチャーは、手部の状態ベクトルが（０，１，０，０，０）であり、指先をキーポイントとする手部の位置ベクトルが（−１，−１，Ｘ２，Ｙ２，−１，−１，−１，−１，−１，−１）であり、位置重みが（０，０，１，１，０，０，０，０，０，０）である。拳のジェスチャーは、手部の状態ベクトルが（０，０，０，０，０）であり、指先をキーポイントとする手部の位置ベクトルが（−１，−１，−１，−１，−１，−１，−１，−１，−１，−１）であり、位置重みが（０，０，０，０，０，０，０，０，０，０）である。中指、薬指及び小指が伸ばされ、親指と人差し指で丸を作る「ＯＫ」ジェスチャーは、手部の状態ベクトルが（０，０，１，１，１）であり、指先をキーポイントとする手部の位置ベクトルが（−１，−１，−１，−１，Ｘ３，Ｙ３，Ｘ４，Ｙ４，Ｘ５，Ｙ５）であり、位置重みが（０，０，０，０，１，１，１，１，１，１）である。
【００９０】
ステップＳ３、前記指の状態と前記位置重みに基づいて、前記ニューラルネットワークによるジェスチャー予測結果の損失を決定する。
【００９１】
可能な一実施形態では、前記指の状態と前記位置重みに基づいて、前記ニューラルネットワークによるジェスチャー予測結果の損失を決定することは、前記指の状態、前記位置情報及び前記位置重みに基づいて、前記ニューラルネットワークによるジェスチャー予測結果の損失を決定することを含む。
【００９２】
ステップＳ４、前記ニューラルネットワークに前記損失を逆伝搬して、前記ニューラルネットワークのネットワークパラメータを調整する。
【００９３】
可能な一実施形態では、ニューラルネットワークへの逆伝搬において、指の位置ベクトルのうちの伸ばしていない状態の指の位置ベクトルの値は、ニューラルネットワークへの逆伝搬による損失関数の計算結果に影響を与える。例えば、指の状態と位置情報のみにより前記ニューラルネットワークへの逆伝搬を行う場合、例えば図２に示す画像において、手部の状態ベクトルを（０，１，１，０，０）とし、手部の位置ベクトルを（−１，−１，Ｘ２，Ｙ２，Ｘ３，Ｙ３，−１，−１，−１，−１）として、ニューラルネットワークへの逆伝搬を行う場合、親指、薬指及び小指の位置ベクトルが−１に近接するため、ニューラルネットワークへの逆伝搬にずれが発生してしまい、トレーニングされたニューラルネットワークによる認識結果が不精確になる。手部の位置重み（０，０，１，１，１，１，０，０，０，０）と組み合わせば、ニューラルネットワークへの逆伝搬において、親指、薬指及び小指の位置ベクトルが計算に使用されなく、トレーニングされたニューラルネットワークによる認識結果が精確になる。
【００９４】
本実施例では、指の状態、位置情報及び位置重みに基づいてニューラルネットワークに逆伝搬することで、指の位置情報における位置座標の値による不利な影響を減少して、トレーニングされたニューラルネットワークをより精確にすることができる。
【００９５】
図８は本開示の実施例に係るジェスチャー処理方法のフローチャートを示す。前記ジェスチャー処理方法は、ユーザ側装置（Ｕｓｅｒ  Ｅｑｕｉｐｍｅｎｔ、ＵＥ）、携帯機器、ユーザ端末、端末、セルラーホン、コードレス電話、、パーソナル・デジタル・アシスタント（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ、ＰＤＡ）、手持ちの機器、計算装置、車載装置、ウエアラブル装置等の端末装置、又は、サーバ等の電子機器により実行されてもよい。いくつかの可能な実施形態では、前記ジェスチャー処理方法は、プロセッサによりメモリに記憶されているコンピュータ読取可能コマンドを呼び出すことで実現されてもよい。
【００９６】
図８に示すように、前記方法は、画像を取得するステップＳ６０と、上記のいずれか一項のジェスチャー認識方法を用いて前記画像に含まれる手部のジェスチャーを認識するステップＳ７０と、ジェスチャーの認識結果に対応する制御操作を実行するステップＳ８０と、を含む。
【００９７】
可能な一実施形態では、撮影装置により所望の画像を撮影してもよく、様々の受信方式により画像を直接に受信してもよい。本開示の実施例のいずれか一項に記載のジェスチャー認識方法により、取得された画像から画像に含まれる手部のジェスチャーを認識するようにしてもよい。画像から認識されたジェスチャーに応じて、対応の制御操作を行うようにしてもよい。
【００９８】
可能な一実施形態では、ステップＳ８０は、予め設定されたジェスチャーと制御指令とのマッピング関係により、ジェスチャーの認識結果に対応する制御指令を取得することと、前記制御指令に基づいて、電子機器が対応する操作を実行するように制御することと、を含む。
【００９９】
可能な一実施形態では、必要に応じてジェスチャーと制御指令とのマッピング関係を確立するようにしてもよい。例えば、ジェスチャー１に対して「前へ進む」の制御指令を設定し、ジェスチャー２に対して「停止する」の制御指令を設定する。画像から手部のジェスチャーを特定した後、ジェスチャーと確立されたマッピング関係に基づいて、ジェスチャーに対応する制御指令を決定する。
【０１００】
可能な一実施形態では、特定されたジェスチャーの制御指令に基づいて、ロボット、機械設備、車両等の装置に配置される電子機器を制御して、ロボット、機械設備、車両等の装置の自動制御を実現するようにしてもよい。例えば、ロボットに配置される撮影装置を用いて制御者の手部画像を撮影した後、本開示の実施例のジェスチャー認識方法により撮影した画像からジェスチャーを認識し、ジェスチャーに応じて制御指令を決定して、最終的にロボットの自動制御を実現するようにしてもよい。本開示は、制御指令に基づいて制御される電子機器の種類を限定しない。
【０１０１】
本実施例では、ジェスチャーに応じて制御指令を決定でき、必要に応じてジェスチャーと制御指令とのマッピング関係を確立することにより、画像に含まれるジェスチャーに対して豊富な制御指令を決定することができる。制御指令に基づいて電子機器を制御して、車両等の各種の装置を制御するという目的を達成することができる。
【０１０２】
可能な一実施形態では、ステップＳ８０は、予め設定されたジェスチャーと特殊効果とのマッピング関係により、ジェスチャーの認識結果に対応する特殊効果を特定することと、コンピュータグラフィックスにより前記画像に前記特殊効果を作成することと、を含む。
【０１０３】
可能な一実施形態では、ジェスチャーと特殊効果とのマッピング関係を確立するようにしてもよい。特殊効果は、ジェスチャーの内容を強調したり、ジェスチャーの表現力を強化する等のために用いられる。例えば、ジェスチャーが「勝利」であると認識された場合に、花火を打ち上げるような特殊効果等を作成する。
【０１０４】
可能な一実施形態では、コンピュータグラフィックスにより特殊効果を作成し、作成済み特殊効果を画像の内容と共に表示するようにしてもよい。特殊効果は、２次元ステッカー特殊効果、２次元画像特殊効果、３次元特殊効果、粒子特殊効果、部分画像変形特殊効果等を含んでもよい。本開示は特殊効果の内容、種類及び実施形態を限定しない。
【０１０５】
可能な一実施形態では、コンピュータグラフィックスにより前記画像に前記特殊効果を作成することは、前記画像に含まれる手部又は手部の指のキーポイントに基づいて、コンピュータグラフィックスにより前記特殊効果を作成することを含む。
【０１０６】
可能な一実施形態では、画像を再生する時に、手部の位置情報に基づいて、画像に文字、符号又は画像等の追加情報を追加するようにしてもよい。追加情報は、文字、画像、符号、英字、数字のいずれか１つ又は任意の組合せを含んでもよい。例えば、指の指先部位に「感嘆符」等の符号や「稲妻」等の画像情報を追加するように、編集者が表現又は強調しようとする情報を画像に追加し、画像の表現力を豊かにしてもよい。
【０１０７】
本実施例では、ジェスチャーに応じてそれに対応する特殊効果を決定し、画像に特殊効果を追加することで、画像の表現力が豊かになる。
【０１０８】
図９は本開示の実施例に係るジェスチャー認識装置のブロック図を示す。図９に示すように、前記ジェスチャー認識装置は、画像における手部の指の状態を検出するための状態検出モジュール１０と、前記指の状態に基づいて前記手部の状態ベクトルを決定するための状態ベクトル取得モジュール２０と、前記手部の状態ベクトルに基づいて前記手部のジェスチャーを特定するためのジェスチャー特定モジュール３０と、を含む。
【０１０９】
本実施例では、画像における手部の指の状態を検出し、前記指の状態に基づいて前記手部の状態ベクトルを決定し、決定された手部の状態ベクトルに基づいて手部のジェスチャーを特定する。本開示の実施例は、各指の状態に基づいて状態ベクトルを決定し、状態ベクトルに基づいてジェスチャーを特定することにより、認識効率が高く、より汎用性がある。
【０１１０】
可能な一実施形態では、前記指の状態は、前記指が前記手部の掌の根元部に対して伸ばされているか否か及び／又は伸ばされている度合の状態を示す。手部のジェスチャーが拳である場合に、各指は掌の根元部に対して伸ばしていない状態となる。指は掌の根元部に対して伸ばしている状態となる場合に、掌部に対する指の位置又は指自身の湾曲度合に基づいて指の状態を更に区分するようにしてもよい。例えば、指の状態は、伸ばしていない状態と伸ばしている状態という２つの状態に分けてもよく、伸ばしていない状態、半分伸ばしている状態、伸ばしている状態という３つの状態に分けてもよく、更には、伸ばしている状態、伸ばしていない状態、半分伸ばしている状態、曲がっている状態等の複数の状態に分けてもよい。
【０１１１】
可能な一実施形態では、前記状態ベクトル取得モジュールは、前記指の状態に基づいて、指の状態ごとに異なる前記指の状態値を決定するための状態値取得サブモジュールと、前記指の状態値に基づいて前記手部の状態ベクトルを決定するための第１の状態ベクトル取得サブモジュールと、を含む。
【０１１２】
可能な一実施形態では、指の状態ごとに状態値を設定し、指の状態と状態値との対応関係を確立するようにしてもよい。指の状態値は、数字、英字又は符号の１つ又は任意の組合であってもよい。取得された指の状態及び確立された対応関係により指の状態値を特定し、更に指の状態値に基づいて手部の状態ベクトルを取得するようにしてもよい。手部の状態ベクトルは、アレー、リスト又は行列等の様々な形式を含んでもよい。
【０１１３】
可能な一実施形態では、前記指の状態は、伸ばしている状態、伸ばしていない状態、半分伸ばしている状態、曲がっている状態のうちの１つ又は複数を含む。ここで、指と掌部との位置関係及び指自身の湾曲度合に基づいて、手部が拳から５本の指が全て最大に伸ばす状態になる過程において、各指の状態を順に伸ばしていない状態、半分伸ばしている状態、曲がっている状態、伸ばしている状態としてもよい。必要に応じて、指ごとに状態の等級を区分してもよい。本開示は各指の状態の区分方式、数量及び使用順序を限定しない。
【０１１４】
可能な一実施形態では、前記装置は、前記画像における手部の指の位置情報を検出するための位置情報取得モジュールと、前記指の位置情報に基づいて前記手部の位置ベクトルを決定するための位置ベクトル取得モジュールと、を更に含み、前記ジェスチャー特定モジュールは、前記手部の状態ベクトルと前記手部の位置ベクトルに基づいて前記手部のジェスチャーを特定するための第１のジェスチャー特定サブモジュールを含む。
【０１１５】
本実施例では、手部の状態ベクトルと位置ベクトルに基づいて手部のジェスチャーを特定することができる。手部の位置ベクトルと状態ベクトルを組み合わせて、より精確なジェスチャーを取得することができる。
【０１１６】
可能な一実施形態では、前記位置情報取得モジュールは、前記画像における前記手部の指のキーポイントを検出し、前記指のキーポイントの位置情報を取得するためのキーポイント検出サブモジュールを含み、前記位置ベクトル取得モジュールは、前記指のキーポイントの位置情報に基づいて前記手部の位置ベクトルを決定するための第１の位置ベクトル取得サブモジュールを含む。
【０１１７】
本実施例では、手部の指のキーポイントの位置情報に基づいて手部の位置ベクトルを取得することができる。それにより、手部の位置ベクトルの決定プロセスがより簡単になる。
【０１１８】
可能な一実施形態では、前記キーポイント検出サブモジュールは、前記画像における前記手部の、伸ばしていない状態以外の指のキーポイントを検出し、前記キーポイントの位置情報を取得するために用いられる。
【０１１９】
本実施例では、伸ばしていない状態以外の指のキーポイントの位置情報に基づいて手部の位置ベクトルを取得することができる。それにより、手部の位置ベクトルの決定プロセスがより効率的になる。
【０１２０】
可能な一実施形態では、前記キーポイントは指先及び／又は指の関節を含む。ここで、指の関節は中手指節関節又は指節間関節を含んでもよい。指の指先及び／又は指の関節の位置により指の位置情報を精確に示すことができる。
【０１２１】
可能な一実施形態では、前記状態検出モジュールは、前記画像をニューラルネットワークに入力して、前記ニューラルネットワークにより前記画像における手部の指の状態を検出するための第１の状態検出サブモジュールを含む。
【０１２２】
本実施例では、ニューラルネットワークの強い処理能力により画像における手部の指の状態を高速且つ精確に特定することができる。
【０１２３】
可能な一実施形態では、前記ニューラルネットワークは複数の状態分岐ネットワークを含み、前記第１の状態検出サブモジュールは、前記ニューラルネットワークの異なる状態分岐ネットワークにより前記画像における手部の異なる指の状態をそれぞれ検出するために用いられる。
【０１２４】
可能な一実施形態では、ニューラルネットワークには、それぞれ画像から１つの指の状態を取得するために用いられる５つの状態分岐ネットワークを設置するようにしてもよい。
【０１２５】
可能な一実施形態では、前記ニューラルネットワークは位置分岐ネットワークを更に含み、前記位置情報取得モジュールは、前記ニューラルネットワークの前記位置分岐ネットワークにより前記画像における前記手部の指の位置情報を検出するための第１の位置情報取得サブモジュールを含む。
【０１２６】
本実施例では、位置分岐ネットワークにより画像から指の位置情報を特定し、前記位置分岐ネットワークにより前記画像から前記指の位置情報を特定することができる。状態分岐ネットワークと位置分岐ネットワークにより、画像から指の状態情報と位置情報を高速且つ精確に取得することができる。
【０１２７】
可能な一実施形態では、前記ニューラルネットワークは、予めラベル情報を有するサンプル画像を用いてトレーニングされたものであり、前記ラベル情報は、前記指の状態を示す第１のラベル情報、及び／又は、前記指の位置情報又はキーポイントの位置情報を示す第２のラベル情報を含む。
【０１２８】
可能な一実施形態では、前記サンプル画像において、伸ばしていない状態の指について第２のラベル情報が付けされない。伸ばしていない状態の指に対して無効の第２のマーク値を設定してもよい。
【０１２９】
可能な一実施形態では、前記第１のラベル情報は各指の状態を示す第１のマーク値から構成される状態ベクトルを含み、前記第２のラベル情報は各指の位置情報又はキーポイントの位置情報をマークする第２のマーク値から構成される位置ベクトルを含む。
【０１３０】
可能な一実施形態では、前記ニューラルネットワークは、トレーニングモジュールを含み、前記トレーニングモジュールは、手部のサンプル画像をニューラルネットワークに入力して手部の指の状態を取得するための状態取得サブモジュールと、前記指の状態に基づいて指の位置重みを決定するための位置重み決定サブモジュールと、前記指の状態と前記位置重みに基づいて、前記ニューラルネットワークによるジェスチャー予測結果の損失を決定するための損失決定サブモジュールと、前記ニューラルネットワークに前記損失を逆伝搬して、前記ニューラルネットワークのネットワークパラメータを調整するための逆伝搬サブモジュールと、を備える。
【０１３１】
可能な一実施形態では、前記状態取得サブモジュールは、手部のサンプル画像をニューラルネットワークに入力して手部の指の状態と位置情報を取得するために用いられ、前記損失決定サブモジュールは、前記指の状態、前記位置情報及び前記位置重みに基づいて、前記ニューラルネットワークによるジェスチャー予測結果の損失を決定するために用いられる。
【０１３２】
本実施例では、指の状態、位置情報及び位置重みに基づいてニューラルネットワークに逆伝搬することで、指の位置情報における位置座標の値による不利な影響を減少して、トレーニングされたニューラルネットワークをより精確にすることができる。
【０１３３】
可能な実施形態では、前記位置重み決定サブモジュールは、指の状態が伸ばしていない状態である場合に、前記指の位置重みをゼロにするために用いられる。
【０１３４】
可能な一実施形態では、指の状態が伸ばしている状態である場合に、前記指の位置重みを非ゼロにし、指の状態が伸ばしていない状態である場合に、前記指の位置重みをゼロにするようにしてもよい。
【０１３５】
図１０は本開示の実施例に係るジェスチャー処理装置のブロック図を示す。図１０に示すように、前記装置は、画像を取得するための画像取得モジュール１と、上記ジェスチャー認識装置のいずれか一項に記載の装置を用いて前記画像に含まれる手部のジェスチャーを認識するためのジェスチャー取得モジュール２と、ジェスチャーの認識結果に対応する制御操作を実行するための操作実行モジュール３と、を含む。
【０１３６】
可能な一実施形態では、撮影装置により所望の画像を撮影してもよく、様々の受信方式により直接に画像を受信してもよい。本開示の実施例のいずれか一項に記載のジェスチャー認識方法により、取得された画像から画像に含まれる手部のジェスチャーを認識するようにしてもよい。画像から認識されたジェスチャーに応じて対応の制御操作を行うようにしてもよい。
【０１３７】
可能な一実施形態では、前記操作実行モジュールは、予め設定されたジェスチャーと制御指令とのマッピング関係により、ジェスチャーの認識結果に対応する制御指令を取得するための制御指令取得サブモジュールと、前記制御指令に基づいて電子機器が対応する操作を実行するように制御するための操作実行サブモジュールと、を含む。
【０１３８】
本実施例では、ジェスチャーに応じて制御指令を決定でき、必要に応じてジェスチャーと制御指令とのマッピング関係を確立することにより、画像に含まれるジェスチャーに対して豊富な制御指令を決定することができる。制御指令に基づいて電子機器を制御して、車両等の各種の装置を制御するという目的を達成することができる。
【０１３９】
可能な一実施形態では、前記操作実行モジュールは、予め設定されたジェスチャーと特殊効果とのマッピング関係により、ジェスチャーの認識結果に対応する特殊効果を特定するための特殊効果特定サブモジュールと、コンピュータグラフィックスにより前記画像に前記特殊効果を作成するための特殊効果実行サブモジュールと、を含む。
【０１４０】
可能な一実施形態では、前記特殊効果実行サブモジュールは、前記画像に含まれる手部又は手部の指キーポイントに基づいて、コンピュータグラフィックスにより前記特殊効果を作成するために用いられる。
【０１４１】
本実施例では、ジェスチャーに応じてそれに対応する特殊効果を決定し、画像に特殊効果を追加することで、画像の表現力が豊かになる。
【０１４２】
本開示で言及される上記各方法の実施例は、原理と論理に違反しない限り、相互に組み合わせて実施例を形成することができることが理解され、紙数に限りがあるので、詳細な説明を省略する。
【０１４３】
なお、本開示は上記装置、電子機器、コンピュータ読取可能記憶媒体、プログラムを更に提供し、それらのいずれも本開示により提供されたジェスチャー認識方法及びジェスチャー処理方法のいずれか１つのを実現するために用いられ、対応する技術的手段及び説明は、方法についての対応的な記載を参照すればよく、詳細な説明を省略する。
【０１４４】
本開示の実施例は、コンピュータプログラムコマンドが記憶されているコンピュータ読取可能記憶媒体であって、前記コンピュータプログラムコマンドは、プロセッサにより実行されると、上記方法の実施例のいずれかを実現させるコンピュータ読取可能記憶媒体を更に提供する。コンピュータ読取可能記憶媒体は、不揮発性コンピュータ読取可能記憶媒体であってもよく、揮発性コンピュータ読取可能記憶媒体であってもよい。
【０１４５】
本開示の実施例は、プロセッサと、プロセッサにより実行可能なコマンドを記憶するためのメモリと、を含み、前記プロセッサは、前記実行可能なコマンドを呼び出すことによって本開示の方法の実施例のいずれかを実現する電子機器を更に提供し、具体的な動作プロセス及び設置形態は本開示の上記の対応方法の実施例についての具体的な説明を参照すればよく、紙数に限りがあるので、詳細な説明を省略する。
【０１４６】
本開示の実施例は、コンピュータ読取可能コードを含むコンピュータプログラムであって、前記コンピュータ読取可能コードは、電子機器において実行されると、前記電子機器のプロセッサに本開示のいずれか1つの方法の実施例を実行させるコンピュータプログラムを更に提供する。
【０１４７】
図１１は例示的実施例に係る電子機器８００のブロック図である。例えば、電子機器８００は携帯電話、コンピュータ、デジタル放送端末、メッセージ送受信装置、ゲームコンソール、タブレット装置、医療機器、フィットネス器具、パーソナル・デジタル・アシスタントなどの端末であってもよい。
【０１４８】
図１１を参照すると、電子機器８００は、処理コンポーネント８０２、メモリ８０４、電源コンポーネント８０６、マルチメディアコンポーネント８０８、オーディオコンポーネント８１０、入力／出力（Ｉ／Ｏ）のインタフェース８１２、センサコンポーネント８１４、および通信コンポーネント８１６のうちの一つ以上を含んでもよい。
【０１４９】
処理コンポーネント８０２は通常、電子機器８００の全体的な動作、例えば表示、電話の呼び出し、データ通信、カメラ動作および記録動作に関連する動作を制御する。処理コンポーネント８０２は、命令を実行して上記方法の全てまたは一部のステップを実行するために、一つ以上のプロセッサ８２０を含んでもよい。また、処理コンポーネント８０２は、他のコンポーネントとのインタラクションのための一つ以上のモジュールを含んでもよい。例えば、処理コンポーネント８０２は、マルチメディアコンポーネント８０８とのインタラクションのために、マルチメディアモジュールを含んでもよい。
【０１５０】
メモリ８０４は電子機器８００での動作をサポートするための様々なタイプのデータを記憶するように構成される。これらのデータは、例として、電子機器８００において操作するあらゆるアプリケーションプログラムまたは方法の命令、連絡先データ、電話帳データ、メッセージ、ピクチャー、ビデオなどを含む。メモリ８０４は、例えば静的ランダムアクセスメモリ（ＳＲＡＭ）、電気的消去可能プログラマブル読み取り専用メモリ（ＥＥＰＲＯＭ）、消去可能なプログラマブル読み取り専用メモリ（ＥＰＲＯＭ）、プログラマブル読み取り専用メモリ（ＰＲＯＭ）、読み取り専用メモリ（ＲＯＭ）、磁気メモリ、フラッシュメモリ、磁気ディスクまたは光ディスクなどの様々なタイプの揮発性または不揮発性記憶装置またはそれらの組み合わせによって実現できる。
【０１５１】
電源コンポーネント８０６は電子機器８００の各コンポーネントに電力を供給する。電源コンポーネント８０６は電源管理システム、一つ以上の電源、および電子機器８００のための電力生成、管理および配分に関連する他のコンポーネントを含んでもよい。
【０１５２】
マルチメディアコンポーネント８０８は前記電子機器８００とユーザとの間で出力インタフェースを提供するスクリーンを含む。いくつかの実施例では、スクリーンは液晶ディスプレイ（ＬＣＤ）およびタッチパネル（ＴＰ）を含んでもよい。スクリーンがタッチパネルを含む場合、ユーザからの入力信号を受信するタッチスクリーンとして実現してもよい。タッチパネルは、タッチ、スライドおよびタッチパネルでのジェスチャーを検知するように、一つ以上のタッチセンサを含む。前記タッチセンサはタッチまたはスライド動きの境界を検知するのみならず、前記タッチまたはスライド操作に関連する持続時間および圧力を検出することにしてもよい。いくつかの実施例では、マルチメディアコンポーネント８０８は前面カメラおよび／または背面カメラを含む。電子機器８００が動作モード、例えば撮影モードまたは撮像モードになる場合、前面カメラおよび／または背面カメラは外部のマルチメディアデータを受信するようにしてもよい。各前面カメラおよび背面カメラは、固定された光学レンズ系、または焦点距離および光学ズーム能力を有するものであってもよい。
【０１５３】
オーディオコンポーネント８１０はオーディオ信号を出力および／または入力するように構成される。例えば、オーディオコンポーネント８１０は、一つのマイク（ＭＩＣ）を含み、マイク（ＭＩＣ）は、電子機器８００が動作モード、例えば呼び出しモード、記録モードおよび音声認識モードになる場合、外部のオーディオ信号を受信するように構成される。受信されたオーディオ信号はさらにメモリ８０４に記憶されるか、または通信コンポーネント８１６を介して送信されてもよい。いくつかの実施例では、オーディオコンポーネント８１０はさらに、オーディオ信号を出力するためのスピーカーを含む。
【０１５４】
Ｉ／Ｏインタフェース８１２は処理コンポーネント８０２と周辺インタフェースモジュールとの間でインタフェースを提供し、上記周辺インタフェースモジュールはキーボード、クリックホイール、ボタンなどであってもよい。これらのボタンはホームボタン、音量ボタン、スタートボタンおよびロックボタンを含んでもよいが、これらに限定されない。
【０１５５】
センサコンポーネント８１４は電子機器８００の各方面の状態評価のために一つ以上のセンサを含む。例えば、センサコンポーネント８１４は電子機器８００のオン／オフ状態、例えば電子機器８００の表示装置およびキーパッドのようなコンポーネントの相対的位置決めを検出でき、センサコンポーネント８１４はさらに、電子機器８００または電子機器８００のあるコンポーネントの位置の変化、ユーザと電子機器８００との接触の有無、電子機器８００の方位または加減速および電子機器８００の温度変化を検出できる。センサコンポーネント８１４は、いかなる物理的接触もない場合に近傍の物体の存在を検出するように構成された近接センサを含んでもよい。センサコンポーネント８１４はさらに、ＣＭＯＳまたはＣＣＤイメージセンサのような、イメージングアプリケーションにおいて使用するための光センサを含んでもよい。いくつかの実施例では、該センサコンポーネント８１４はさらに、加速度センサ、ジャイロセンサ、磁気センサ、圧力センサまたは温度センサを含んでもよい。
【０１５６】
通信コンポーネント８１６は電子機器８００と他の機器との有線または無線通信を実現するように配置される。電子機器８００は通信規格に基づく無線ネットワーク、例えばＷｉＦｉ、２Ｇまたは３Ｇ、またはそれらの組み合わせにアクセスできる。一例示的実施例では、通信コンポーネント８１６は放送チャネルを介して外部の放送管理システムの放送信号または放送関連情報を受信する。一例示的実施例では、前記通信コンポーネント８１６はさらに、近距離通信を促進させるために、近距離無線通信（ＮＦＣ）モジュールを含む。例えば、ＮＦＣモジュールは、無線周波数識別（ＲＦＩＤ）技術、赤外線データ協会（ＩｒＤＡ）技術、超広帯域（ＵＷＢ）技術、ブルートゥース（ＢＴ）技術および他の技術によって実現できる。
【０１５７】
例示的な実施例では、電子機器８００は一つ以上の特定用途向け集積回路（ＡＳＩＣ）、デジタル信号プロセッサ（ＤＳＰ）、デジタルシグナルプロセッサ（ＤＳＰＤ）、プログラマブルロジックデバイス（ＰＬＤ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、コントローラ、マイクロコントローラ、マイクロプロセッサまたは他の電子要素によって実現され、上記方法を実行するために用いられることができる。
【０１５８】
例示的な実施例では、さらに、不揮発性コンピュータ読み取り可能記憶媒体、例えばコンピュータプログラム命令を含むメモリ８０４が提供され、上記コンピュータプログラム命令は、電子機器８００のプロセッサ８２０によって実行されと、上記方法を実行させることができる。
【０１５９】
図１２は例示的実施例により示された電子機器１９００のブロック図である。例えば、電子機器１９００はサーバとして提供されてもよい。図１２を参照すると、電子機器１９００は、一つ以上のプロセッサを含む処理コンポーネント１９２２、および、処理コンポーネント１９２２によって実行可能な命令、例えばアプリケーションプログラムを記憶するための、メモリ１９３２を代表とするメモリ資源を含む。メモリ１９３２に記憶されているアプリケーションプログラムは、それぞれが１つの命令群に対応する一つ以上のモジュールを含んでもよい。また、処理コンポーネント１９２２は命令を実行することによって上記方法を実行するように構成される。
【０１６０】
電子機器１９００はさらに、電子機器１９００の電源管理を実行するように構成された電源コンポーネント１９２６、電子機器１９００をネットワークに接続するように構成された有線または無線ネットワークインタフェース１９５０、および入出力（Ｉ／Ｏ）インタフェース１９５８を含んでもよい。電子機器１９００はメモリ１９３２に記憶されいるオペレーティングシステム、例えばＷｉｎｄｏｗｓ  ＳｅｒｖｅｒＴＭ、Ｍａｃ  ＯＳ  ＸＴＭ、ＵｎｉｘＴＭ、ＬｉｎｕｘＴＭ、ＦｒｅｅＢＳＤＴＭまたは類似するものに基づいて動作できる。
【０１６１】
例示的な実施例では、さらに、不揮発性コンピュータ読み取り可能記憶媒体、例えばコンピュータプログラム命令を含むメモリ１９３２が提供され、上記コンピュータプログラム命令は、電子機器１９００の処理コンポーネント１９２２によって実行されと、上記方法を実行させることができる。
【０１６２】
本開示はシステム、方法および／またはコンピュータプログラム製品であってもよい。コンピュータプログラム製品は、プロセッサに本開示の各方面を実現させるためのコンピュータ読み取り可能プログラム命令が有しているコンピュータ読み取り可能記憶媒体を含んでもよい。
【０１６３】
コンピュータ読み取り可能記憶媒体は、命令実行機器に使用される命令を保存および記憶可能な有形装置であってもよい。コンピュータ読み取り可能記憶媒体は例えば、電気記憶装置、磁気記憶装置、光記憶装置、電磁記憶装置、半導体記憶装置、または上記の任意の適当な組み合わせであってもよいが、これらに限定されない。コンピュータ読み取り可能記憶媒体のさらに具体的な例（非非網羅的リスト）としては、携帯型コンピュータディスク、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭまたはフラッシュメモリ）、静的ランダムアクセスメモリ（ＳＲＡＭ）、携帯型コンパクトディスク読み取り専用メモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、メモリスティック、フロッピーディスク、例えば命令が記憶されているせん孔カードまたはスロット内突起構造のような機械的符号化装置、および上記の任意の適当な組み合わせを含む。ここで使用されるコンピュータ読み取り可能記憶媒体は、瞬時信号自体、例えば無線電波または他の自由に伝播される電磁波、導波路または他の伝送媒体を経由して伝播される電磁波（例えば、光ファイバーケーブルを通過するパルス光）、または電線を経由して伝送される電気信号と解釈されるものではない。
【０１６４】
ここで記述したコンピュータ読み取り可能プログラム命令は、コンピュータ読み取り可能記憶媒体から各計算／処理機器にダウンロードされてもよいし、またはネットワーク、例えばインターネット、ローカルエリアネットワーク、広域ネットワークおよび／または無線ネットワークを介して外部のコンピュータまたは外部記憶装置にダウンロードされてもよい。ネットワークは銅伝送ケーブル、光ファイバー伝送、無線伝送、ルーター、ファイアウォール、交換機、ゲートウェイコンピュータおよび／またはエッジサーバを含んでもよい。各計算／処理機器内のネットワークアダプタカードまたはネットワークインタフェースはネットワークからコンピュータ読み取り可能プログラム命令を受信し、該コンピュータ読み取り可能プログラム命令を転送し、各計算／処理機器内のコンピュータ読み取り可能記憶媒体に記憶させる。
【０１６５】
本開示の動作を実行するためのコンピュータプログラム命令はアセンブリ命令、命令セットアーキテクチャ（ＩＳＡ）命令、機械語命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはＳｍａｌｌｔａｌｋ、Ｃ＋＋などのオブジェクト指向プログラミング言語、および「Ｃ」言語または類似するプログラミング言語などの一般的な手続き型プログラミング言語を含める一つ以上のプログラミング言語の任意の組み合わせで書かれたソースコードまたは目標コードであってもよい。コンピュータ読み取り可能プログラム命令は、完全にユーザのコンピュータにおいて実行されてもよく、部分的にユーザのコンピュータにおいて実行されてもよく、スタンドアロンソフトウェアパッケージとして実行されてもよく、部分的にユーザのコンピュータにおいてかつ部分的にリモートコンピュータにおいて実行されてもよく、または完全にリモートコンピュータもしくはサーバにおいて実行されてもよい。リモートコンピュータに関与する場合、リモートコンピュータは、ローカルエリアネットワーク（ＬＡＮ）または広域ネットワーク（ＷＡＮ）を含む任意の種類のネットワークを経由してユーザのコンピュータに接続されてもよく、または、（例えばインターネットサービスプロバイダを利用してインターネットを経由して）外部コンピュータに接続されてもよい。いくつかの実施例では、コンピュータ読み取り可能プログラム命令の状態情報を利用して、例えばプログラマブル論理回路、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）またはプログラマブル論理アレイ（ＰＬＡ）などの電子回路をパーソナライズし、該電子回路によりコンピュータ読み取り可能プログラム命令を実行することににより、本開示の各方面を実現するようにしてもよい。
【０１６６】
ここで本開示の実施例に係る方法、装置（システム）およびコンピュータプログラム製品のフローチャートおよび／またはブロック図を参照しながら本開示の各態様を説明したが、フローチャートおよび／またはブロック図の各ブロックおよびフローチャートおよび／またはブロック図の各ブロックの組み合わせは、いずれもコンピュータ読み取り可能プログラム命令によって実現できることを理解すべきである。
【０１６７】
これらのコンピュータ読み取り可能プログラム命令は、汎用コンピュータ、専用コンピュータまたは他のプログラマブルデータ処理装置のプロセッサへ提供され、これらの命令がコンピュータまたは他のプログラマブルデータ処理装置のプロセッサによって実行されると、フローチャートおよび／またはブロック図の一つ以上のブロックにおいて指定された機能／動作を実現ように、装置を製造してもよい。これらのコンピュータ読み取り可能プログラム命令は、コンピュータ読み取り可能記憶媒体に記憶され、コンピュータ、プログラマブルデータ処理装置および／または他の機器を特定の方式で動作させるようにしてもよい。命令が記憶されているコンピュータ読み取り可能記憶媒体は、フローチャートおよび／またはブロック図の一つ以上のブロックにおいて指定された機能／動作の各方面を実現する命令を有する製品を含む。
【０１６８】
コンピュータ読み取り可能プログラム命令は、コンピュータ、他のプログラマブルデータ処理装置、または他の機器にロードされ、コンピュータ、他のプログラマブルデータ処理装置または他の機器に一連の動作ステップを実行させることにより、コンピュータにより実施なプロセスを生成するようにしてもよい。このようにして、コンピュータ、他のプログラマブルデータ処理装置、または他の機器において実行される命令により、フローチャートおよび／またはブロック図の一つ以上のブロックにおいて指定された機能／動作を実現する。
【０１６９】
図面のうちフローチャートおよびブロック図は、本開示の複数の実施例に係るシステム、方法およびコンピュータプログラム製品の実現可能なシステムアーキテクチャ、機能および動作を示す。この点では、フローチャートまたはブロック図における各ブロックは一つのモジュール、プログラムセグメントまたは命令の一部分を代表することができ、前記モジュール、プログラムセグメントまたは命令の一部分は指定された論理機能を実現するための一つ以上の実行可能命令を含む。いくつかの代替としての実現形態では、ブロックに表記される機能は、図面に付した順序と異なって実現してもよい。例えば、連続的な二つのブロックは実質的に並列に実行してもよく、また、係る機能によって、逆な順序で実行してもよい。なお、ブロック図および／またはフローチャートにおける各ブロック、およびブロック図および／またはフローチャートにおけるブロックの組み合わせは、指定される機能または動作を実行するハードウェアに基づく専用システムによって実現してもよいし、または専用ハードウェアとコンピュータ命令との組み合わせによって実現してもよいことにも注意すべきである。
【０１７０】
論理に違反しない限り、本願の異なる実施例を相互に組み合わせることができ、異なる実施例において重点として説明されるものが異なって、重点として説明されていない部分については他の実施例の記載を参照できる。
【０１７１】
以上、本開示の各実施例を記述したが、上記説明は例示的なものに過ぎず、網羅的なものではなく、かつ披露された各実施例に限定されるものでもない。当業者にとって、説明された各実施例の範囲および精神から逸脱することなく、様々な修正および変更が自明である。本明細書に選ばれた用語は、各実施例の原理、実際の適用または市場における技術への改善を好適に解釈するか、または他の当業者に本文に披露された各実施例を理解させるためのものである。
【図１】
2021534482.tif 000003
【図２】
2021534482.tif 000004
【図３】
2021534482.tif 000005
【図４】
2021534482.tif 000006
【図５】
2021534482.tif 000007
【図６】
2021534482.tif 000008
【図７】
2021534482.tif 000009
【図８】
2021534482.tif 000010
【図９】
2021534482.tif 000011
【図１０】
2021534482.tif 000012
【図１１】
2021534482.tif 000013
【図１２】
2021534482.tif 000014
【手続補正書】
【提出日】令和3年2月4日(2021.2.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
画像における手部の指の状態を検出することと、
前記指の状態に基づいて前記手部の状態ベクトルを決定することと、
前記手部の状態ベクトルに基づいて前記手部のジェスチャーを特定することと、を含むことを特徴とするジェスチャー認識方法。
【請求項２】
前記指の状態は、前記指が前記手部の掌の根元部に対して伸ばされているか否か及び／又は伸ばされている度合の状態を示すことを特徴とする請求項１に記載の方法。
【請求項３】
前記指の状態に基づいて前記手部の状態ベクトルを決定することは、
前記指の状態に基づいて、指の状態ごとに異なる前記指の状態値を決定することと、
前記指の状態値に基づいて前記手部の状態ベクトルを決定することと、を含むことを特徴とする請求項１又は２に記載の方法。
【請求項４】
前記指の状態は、伸ばしている状態、伸ばしていない状態、半分伸ばしている状態、曲がっている状態のうちの１つ又は複数を含むことを特徴とする請求項１〜３のいずれか一項に記載の方法。
【請求項５】
前記画像における手部の指の位置情報を検出することと、
前記指の位置情報に基づいて前記手部の位置ベクトルを決定することと、を更に含み、
前記手部の状態ベクトルに基づいて前記手部のジェスチャーを特定することは、
前記手部の状態ベクトルと前記手部の位置ベクトルに基づいて前記手部のジェスチャーを特定することを含むことを特徴とする請求項１〜４のいずれか一項に記載の方法。
【請求項６】
前記画像における手部の指の位置情報を検出することは、
前記画像における前記手部の指のキーポイントを検出し、前記指のキーポイントの位置情報を取得することを含み、
前記指の位置情報に基づいて前記手部の位置ベクトルを決定することは、
前記指のキーポイントの位置情報に基づいて前記手部の位置ベクトルを決定することを含むことを特徴とする請求項５に記載の方法。
【請求項７】
前記画像における前記手部の指のキーポイントを検出し、前記指のキーポイントの位置情報を取得することは、
前記画像における前記手部の、伸ばしていない状態以外の指のキーポイントを検出し、前記キーポイントの位置情報を取得することを含むことを特徴とする請求項６に記載の方法。
【請求項８】
前記キーポイントは指先及び／又は指の関節を含むことを特徴とする請求項７に記載の方法。
【請求項９】
画像における手部の指の状態を検出することは、
前記画像をニューラルネットワークに入力して、前記ニューラルネットワークにより前記画像における手部の指の状態を検出することを含むことを特徴とする請求項１〜８のいずれか一項に記載の方法。
【請求項１０】
前記ニューラルネットワークは複数の状態分岐ネットワークを含み、前記ニューラルネットワークにより前記画像における手部の指の状態を検出することは、
前記ニューラルネットワークの異なる状態分岐ネットワークにより前記画像における手部の異なる指の状態をそれぞれ検出することを含むことを特徴とする請求項９に記載の方法。
【請求項１１】
前記ニューラルネットワークは位置分岐ネットワークを更に含み、前記方法は、前記画像における手部の指の位置情報を検出することをさらに含み、前記画像における手部の指の位置情報を検出することは、
前記ニューラルネットワークの前記位置分岐ネットワークにより前記画像における前記手部の指の位置情報を検出することを含むことを特徴とする請求項９又は１０に記載の方法。
【請求項１２】
前記ニューラルネットワークは、予めラベル情報を有するサンプル画像を用いてトレーニングされたものであり、前記ラベル情報は、前記指の状態を示す第１のラベル情報、及び／又は、前記指の位置情報又はキーポイントの位置情報を示す第２のラベル情報を含むことを特徴とする請求項９〜１１のいずれか一項に記載の方法。
【請求項１３】
前記サンプル画像において、伸ばしていない状態の指について第２のラベル情報が付けされないことを特徴とする請求項１２に記載の方法。
【請求項１４】
前記第１のラベル情報は各指の状態を示す第１のマーク値から構成される状態ベクトルを含み、
前記第２のラベル情報は各指の位置情報又はキーポイントの位置情報をマークする第２のマーク値から構成される位置ベクトルを含むことを特徴とする請求項１２又は１３に記載の方法。
【請求項１５】
前記ニューラルネットワークのトレーニングには、
手部のサンプル画像をニューラルネットワークに入力して手部の指の状態を取得することと、
前記指の状態に基づいて指の位置重みを決定することと、
前記指の状態と前記位置重みに基づいて、前記ニューラルネットワークによるジェスチャー予測結果の損失を決定することと、
前記ニューラルネットワークに前記損失を逆伝搬して、前記ニューラルネットワークのネットワークパラメータを調整することと、を含むことを特徴とする請求項９〜１４のいずれか一項に記載の方法。
【請求項１６】
手部のサンプル画像をニューラルネットワークに入力して手部の指の状態を取得することは、
手部のサンプル画像をニューラルネットワークに入力して手部の指の状態と位置情報を取得することを含み、
前記指の状態と前記位置重みに基づいて、前記ニューラルネットワークによるジェスチャー予測結果の損失を決定することは、
前記指の状態、前記位置情報及び前記位置重みに基づいて、前記ニューラルネットワークによるジェスチャー予測結果の損失を決定することを含むことを特徴とする請求項１５に記載の方法。
【請求項１７】
前記指の状態に基づいて前記指の位置重みを決定することは、
指の状態が伸ばしていない状態である場合に、前記指の位置重みをゼロにすることを含むことを特徴とする請求項１５又は１６に記載の方法。
【請求項１８】
予め設定されたジェスチャーと制御指令とのマッピング関係により、ジェスチャーを特定した結果に対応する制御指令を取得することと、
前記制御指令に基づいて、電子機器が対応する操作を実行するように制御することと、をさらに含み、又は、
予め設定されたジェスチャーと特殊効果とのマッピング関係により、ジェスチャーを特定した結果に対応する特殊効果を特定することと、
コンピュータグラフィックスにより前記画像に前記特殊効果を作成することと、をさらに含むことを特徴とする請求項１に記載の方法。
【請求項１９】
プロセッサと、
プロセッサにより実行可能なコマンドを記憶するためのメモリと、を含み、
前記プロセッサは前記実行可能なコマンドを呼び出すことによって請求項１〜１８のいずれか一項に記載の方法を実現することを特徴とする電子機器。
【請求項２０】
コンピュータプログラムコマンドが記憶されているコンピュータ読取可能記憶媒体であって、前記コンピュータプログラムコマンドは、プロセッサにより実行されると、請求項１〜１８のいずれか一項に記載の方法を実現させることを特徴とするコンピュータ読取可能記憶媒体。
【国際調査報告】
2021534482.tif 000015
2021534482.tif 000016
2021534482.tif 000017
2021534482.tif 000018
2021534482.tif 000019