(57)【特許請求の範囲】
【請求項１】
顔姿勢検出方法であって、
顔検出アルゴリズムにより顔画像からＮ個の顔特徴点を抽出する顔特徴点抽出ステップと、
前記Ｎ個の顔特徴点から、顔部輪郭特徴点として、右耳の上方に近い第１特徴点と、右耳の下方に近い第２特徴点と、左耳の下方に近い第３特徴点と、左耳の上方に近い第４特徴点とを抽出し、且つ第５特徴点として鼻先特徴点を抽出するキー特徴点抽出ステップと、
前記第５特徴点と第１特徴点で第１ベクトルを形成し、第５特徴点と第４特徴点で第２ベクトルを形成し、第１ベクトルと第２ベクトルとの第１夾角を計算し、第１夾角と初期夾角の変化に基づいて、前記顔画像内で顔がＸ軸を中心に回転した角度を判断する第１計算ステップと、
前記第１特徴点と第４特徴点で第３ベクトルを形成し、第４特徴点からＸ軸に平行な直線Ｌ１を１本引き、第３ベクトルと直線Ｌ１との第２夾角を計算し、当該第２夾角に基づいて、前記顔画像内で顔がＹ軸を中心に回転した角度を判断する第２計算ステップと、
前記第２特徴点と第５特徴点との間の距離を第１距離と記録し、第３特徴点と第５特徴点との間の距離を第２距離と記録し、第１距離と第２距離との比率を計算し、第１距離と第２距離との比率に基づいて、前記顔画像内で顔がＺ軸を中心に回転した方向を判断する第３計算ステップとを含む、ことを特徴とする顔姿勢検出方法。
【請求項２】
前記顔部輪郭特徴点のうち、右耳の上方に近い第１特徴点は左耳の上方に近い第４特徴点と対称であり、右耳の下方に近い第２特徴点は左耳の下方に近い第３特徴点と対称である、ことを特徴とする請求項１に記載の顔姿勢検出方法。
【請求項３】
前記第１計算ステップは、
顔が初期位置にあるときの前記第１ベクトルと第２ベクトルとの初期夾角を計算することと、
前記第１夾角が初期夾角より大きいとき、前記顔画像内で顔がＸ軸を中心に上向きに回転し、回転角度が第１夾角と初期夾角との差であることを表すことと、
前記第１夾角が初期夾角より小さいとき、前記顔画像内で顔がＸ軸を中心に下向きに回転し、回転角度が初期夾角と第１夾角との差であることを表すことと、
前記第１夾角が初期夾角であるとき、前記顔画像内で顔がＸ軸に対して初期位置に位置することを表すこととを含む、ことを特徴とする請求項１に記載の顔姿勢検出方法。
【請求項４】
前記第２計算ステップは、
前記第２夾角が０°であるとき、前記顔画像内で顔がＹ軸に対して初期位置に位置することを表すことと、
前記第２夾角が０°でなく、且つ前記第１特徴点が前記直線Ｌ１の上方にあるとき、前記顔画像内で顔がＹ軸を中心に左へ回転し、回転角度が第２夾角の角度値であることを表すことと、
前記第２夾角が０°でなく、且つ前記第１特徴点が前記直線Ｌ１の下方にあるとき、前記顔画像内で顔がＹ軸を中心に右へ回転し、回転角度が第２夾角の角度値であることを表すこととを含む、ことを特徴とする請求項１に記載の顔姿勢検出方法。
【請求項５】
前記第３計算ステップは、
前記第１距離と第２距離との比率が１であるとき、前記顔画像内で顔がＺ軸に対して初期位置に位置することを表すことと、
前記第１距離と第２距離との比率が１より大きいとき、前記顔画像内で顔がＺ軸を中心に左へ回転することを表すことと、
前記第１距離と第２距離との比率が１より小さいとき、前記顔画像内で顔がＺ軸を中心に右へ回転することを表すこととを含む、ことを特徴とする請求項１に記載の顔姿勢検出方法。
【請求項６】
撮像装置、メモリ、及びプロセッサを含む計算装置において、
前記メモリは、顔姿勢検出プログラムを含み、前記顔姿勢検出プログラムが前記プロセッサに執行されるときに実施されるステップは、
顔検出アルゴリズムにより顔画像からＮ個の顔特徴点を抽出する顔特徴点抽出ステップと、
前記Ｎ個の顔特徴点から、顔部輪郭特徴点として、右耳の上方に近い第１特徴点と、右耳の下方に近い第２特徴点と、左耳の下方に近い第３特徴点と、左耳の上方に近い第４特徴点とを抽出し、且つ第５特徴点として鼻先特徴点を抽出するキー特徴点抽出ステップと、
前記第５特徴点と第１特徴点で第１ベクトルを形成し、第５特徴点と第４特徴点で第２ベクトルを形成し、第１ベクトルと第２ベクトルとの第１夾角を計算し、第１夾角と初期夾角の変化に基づいて、前記顔画像内で顔がＸ軸を中心に回転した角度を判断する第１計算ステップと、
前記第１特徴点と第４特徴点で第３ベクトルを形成し、第４特徴点からＸ軸に平行な直線Ｌ１を１本引き、第３ベクトルと直線Ｌ１との第２夾角を計算し、当該第２夾角に基づいて、前記顔画像内で顔がＹ軸を中心に回転した角度を判断する第２計算ステップと、
前記第２特徴点と第５特徴点との間の距離を第１距離と記録し、第３特徴点と第５特徴点との間の距離を第２距離と記録し、第１距離と第２距離との比率を計算し、第１距離と第２距離との比率に基づいて、前記顔画像内で顔がＺ軸を中心に回転した方向を判断する第３計算ステップとである、ことを特徴とする計算装置。
【請求項７】
前記顔部輪郭特徴点のうち、右耳の上方に近い第１特徴点は左耳の上方に近い第４特徴点と対称であり、右耳の下方に近い第２特徴点は左耳の下方に近い第３特徴点と対称である、ことを特徴とする請求項６に記載の計算装置。
【請求項８】
前記第１計算ステップは、
顔が初期位置にあるときの前記第１ベクトルと第２ベクトルとの初期夾角を計算することと、
前記第１夾角が初期夾角より大きいとき、前記顔画像内で顔がＸ軸を中心に上向きに回転し、回転角度が第１夾角と初期夾角との差であることを表すことと、
前記第１夾角が初期夾角より小さいとき、前記顔画像内で顔がＸ軸を中心に下向きに回転し、回転角度が初期夾角と第１夾角との差であることを表すことと、
前記第１夾角が初期夾角であるとき、前記顔画像内で顔がＸ軸に対して初期位置に位置することを表すこととを含む、ことを特徴とする請求項６に記載の計算装置。
【請求項９】
前記第２計算ステップは、
前記第２夾角が０°であるとき、前記顔画像内で顔がＹ軸に対して初期位置に位置することを表すことと、
前記第２夾角が０°でなく、且つ前記第１特徴点が前記直線Ｌ１の上方にあるとき、前記顔画像内で顔がＹ軸を中心に左へ回転し、回転角度が第２夾角の角度値であることを表すことと、
前記第２夾角が０°でなく、且つ前記第１特徴点が前記直線Ｌ１の下方にあるとき、前記顔画像内で顔がＹ軸を中心に右へ回転し、回転角度が第２夾角の角度値であることを表すこととを含む、ことを特徴とする請求項６に記載の計算装置。
【請求項１０】
前記第３計算ステップは、
前記第１距離と第２距離との比率が１であるとき、前記顔画像内で顔がＺ軸に対して初期位置に位置することを表すことと、
前記第１距離と第２距離との比率が１より大きいとき、前記顔画像内で顔がＺ軸を中心に左へ回転することを表すことと、
前記第１距離と第２距離との比率が１より小さいとき、前記顔画像内で顔がＺ軸を中心に右へ回転することを表すこととを含む、ことを特徴とする請求項６に記載の計算装置。
【請求項１１】
コンピュータ読み取り可能な記憶媒体であって、
顔姿勢検出プログラムを含み、前記顔姿勢検出プログラムが前記プロセッサにより執行されるとき、実施されるステップは、
顔検出アルゴリズムにより顔画像からＮ個の顔特徴点を抽出する顔特徴点抽出ステップと、
前記Ｎ個の顔特徴点から、顔部輪郭特徴点として、右耳の上方に近い第１特徴点と、右耳の下方に近い第２特徴点と、左耳の下方に近い第３特徴点と、左耳の上方に近い第４特徴点とを抽出し、且つ第５特徴点として鼻先特徴点を抽出するキー特徴点抽出ステップと、
前記第５特徴点と第１特徴点で第１ベクトルを形成し、第５特徴点と第４特徴点で第２ベクトルを形成し、第１ベクトルと第２ベクトルとの第１夾角を計算し、第１夾角と初期夾角の変化に基づいて、前記顔画像内で顔がＸ軸を中心に回転した角度を判断する第１計算ステップと、
前記第１特徴点と第４特徴点で第３ベクトルを形成し、第４特徴点からＸ軸に平行な直線Ｌ１を１本引き、第３ベクトルと直線Ｌ１との第２夾角を計算し、当該第２夾角に基づいて、前記顔画像内で顔がＹ軸を中心に回転した角度を判断する第２計算ステップと、
前記第２特徴点と第５特徴点との間の距離を第１距離と記録し、第３特徴点と第５特徴点との間の距離を第２距離と記録し、第１距離と第２距離との比率を計算し、第１距離と第２距離との比率に基づいて、前記顔画像内で顔がＺ軸を中心に回転した方向を判断する第３計算ステップとである、ことを特徴とするコンピュータ読み取り可能な記憶媒体。
【請求項１２】
前記顔部輪郭特徴点のうち、右耳の上方に近い第１特徴点は左耳の上方に近い第４特徴点と対称であり、右耳の下方に近い第２特徴点は左耳の下方に近い第３特徴点と対称である、ことを特徴とする請求項１１に記載のコンピュータ読み取り可能な記憶媒体。
【請求項１３】
前記第１計算ステップは、
顔が初期位置にあるときの前記第１ベクトルと第２ベクトルとの初期夾角を計算することと、
前記第１夾角が初期夾角より大きいとき、前記顔画像内で顔がＸ軸を中心に上向きに回転し、回転角度が第１夾角と初期夾角との差であることを表すことと、
前記第１夾角が初期夾角より小さいとき、前記顔画像内で顔がＸ軸を中心に下向きに回転し、回転角度が初期夾角と第１夾角との差であることを表すことと、
前記第１夾角が初期夾角であるとき、前記顔画像内で顔がＸ軸に対して初期位置に位置することを表すこととを含む、ことを特徴とする請求項１１に記載のコンピュータ読み取り可能な記憶媒体。
【請求項１４】
前記第２計算ステップは、
前記第２夾角が０°であるとき、前記顔画像内で顔がＹ軸に対して初期位置に位置することを表すことと、
前記第２夾角が０°でなく、且つ前記第１特徴点が前記直線Ｌ１の上方にあるとき、前記顔画像内で顔がＹ軸を中心に左へ回転し、回転角度が第２夾角の角度値であることを表すことと、
前記第２夾角が０°でなく、且つ前記第１特徴点が前記直線Ｌ１の下方にあるとき、前記顔画像内で顔がＹ軸を中心に右へ回転し、回転角度が第２夾角の角度値であることを表すこととを含む、ことを特徴とする請求項１１に記載のコンピュータ読み取り可能な記憶媒体。
【請求項１５】
前記第３計算ステップは、
前記第１距離と第２距離との比率が１であるとき、前記顔画像内で顔がＺ軸に対して初期位置に位置することを表すことと、
前記第１距離と第２距離との比率が１より大きいとき、前記顔画像内で顔がＺ軸を中心に左へ回転することを表すことと、
前記第１距離と第２距離との比率が１より小さいとき、前記顔画像内で顔がＺ軸を中心に右へ回転することを表すこととを含む、ことを特徴とする請求項１１に記載のコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、２０１７年８月１７日に出願された出願番号２０１７１０７０７９４１．２の「顔姿勢検出方法、装置及び記憶媒体」という中国特許願を基に、優先権を主張する。
本願は、コンピュータ視覚処理技術の分野に関し、特に顔姿勢検出方法、装置及び記憶媒体に関する。
【背景技術】
【０００２】
コンピュータ視覚処理技術は、１９６０年代初頭に始まり、検出、追跡、認識など様々な研究方向が含まれている。コンピュータとネットワーク技術の急速な発展に伴い、コンピュータ視覚処理技術は工業検査、セキュリティ監視、臨床診断・治療、交通、娯楽、軍事などの多くの重要な分野で広く使用されている。ここで、コンピュータによる顔姿勢検出技術は、運転支援、マンマシンインタラクションなどのスマートシステムに使用されることができ、幅広い応用の将来性を有する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
従来の顔姿勢検出システムは、深層学習を用いて異なる姿勢の顔サンプルデータを直接トレーニングしてから、トレーニングされたモデルを使用して顔姿勢を判断するものが多いが、このような検出方法は、大量のサンプルを必要とし、精度が悪く、且つトレーニング済みの姿勢しか検出できず、顔姿勢全部を検出することができない。
【課題を解決するための手段】
【０００４】
本願は、顔姿勢検出方法、装置及び記憶媒体を提供し、人間の顔のキー特徴点の座標値に基づいて顔姿勢情報を計算することにより、顔姿勢検出の速度と精度を向上させ、任意の角度の顔姿勢検出を実現することを目的とする。
【０００５】
上記の目的を実現するために、本願は、顔姿勢検出方法を提供し、当該方法は、
顔検出アルゴリズムにより顔画像からＮ個の顔特徴点を抽出する顔特徴点抽出ステップと、
前記Ｎ個の顔特徴点から、顔部輪郭特徴点として、右耳の上方に近い第１特徴点と、右耳の下方に近い第２特徴点と、左耳の下方に近い第３特徴点と、左耳の上方に近い第４特徴点とを抽出し、且つ第５特徴点として鼻先特徴点を抽出するキー特徴点抽出ステップと、
前記第５特徴点と第１特徴点で第１ベクトルを形成し、第５特徴点と第４特徴点で第２ベクトルを形成し、第１ベクトルと第２ベクトルとの第１夾角を計算し、第１夾角と初期夾角の変化に基づいて、前記顔画像内で顔がＸ軸を中心に回転した角度を判断する第１計算ステップと、
前記第１特徴点と第４特徴点で第３ベクトルを形成し、第４特徴点からＸ軸に平行な直線Ｌ１を１本引き、第３ベクトルと直線Ｌ１との第２夾角を計算し、当該第２夾角に基づいて、前記顔画像内で顔がＹ軸を中心に回転した角度を判断する第２計算ステップと、
前記第２特徴点と第５特徴点との間の距離を第１距離と記録し、第３特徴点と第５特徴点との間の距離を第２距離と記録し、第１距離と第２距離との比率を計算し、第１距離と第２距離との比率に基づいて、前記顔画像内で顔がＺ軸を中心に回転した方向を判断する第３計算ステップと、を含む。
【０００６】
上記の目的を実現するために、本願は、計算装置をさらに提供し、当該装置は、撮像装置、メモリ及びプロセッサを含み、前記メモリは顔姿勢検出プログラムを含み、前記顔姿勢検出プログラムが前記プロセッサにより実行されるときに実施されるステップは、
顔検出アルゴリズムにより顔画像からＮ個の顔特徴点を抽出する顔特徴点抽出ステップと、
前記Ｎ個の顔特徴点から、顔部輪郭特徴点として、右耳の上方に近い第１特徴点と、右耳の下方に近い第２特徴点と、左耳の下方に近い第３特徴点と、左耳の上方に近い第４特徴点とを抽出し、且つ第５特徴点として鼻先特徴点を抽出するキー特徴点抽出ステップと、
前記第５特徴点と第１特徴点で第１ベクトルを形成し、第５特徴点と第４特徴点で第２ベクトルを形成し、第１ベクトルと第２ベクトルとの第１夾角を計算し、第１夾角と初期夾角の変化に基づいて、前記顔画像内で顔がＸ軸を中心に回転した角度を判断する第１計算ステップと、
前記第１特徴点と第４特徴点で第３ベクトルを形成し、第４特徴点からＸ軸に平行な直線Ｌ１を１本引き、第３ベクトルと直線Ｌ１との第２夾角を計算し、当該第２夾角に基づいて、前記顔画像内で顔がＹ軸を中心に回転した角度を判断する第２計算ステップと、
前記第２特徴点と第５特徴点との間の距離を第１距離と記録し、第３特徴点と第５特徴点との間の距離を第２距離と記録し、第１距離と第２距離との比率を計算し、第１距離と第２距離との比率に基づいて、前記顔画像内で顔がＺ軸を中心に回転した方向を判断する第３計算ステップとである。
【０００７】
また、上記の目的を実現するために、本願は、顔姿勢検出プログラムを含むコンピュータ読み取り可能な記憶媒体をさらに提供する。前記顔姿勢検出プログラムが前記プロセッサにより執行されるとき、上記のような顔姿勢検出方法における任意のステップを実現する。
【発明の効果】
【０００８】
本願にかかる顔姿勢検出方法、装置及びコンピュータ読み取り可能な記憶媒体は、人間の顔のキー特徴点を抽出して、前記キー特徴点の座標値に基づいて顔の回転角度などの姿勢情報を計算することにより、顔姿勢検出の速度と精度を向上させ、任意の角度の顔姿勢検出を実現する。
【図面の簡単な説明】
【０００９】
【図１】本願の計算装置の好ましい実施例の動作環境を示す模式図である。
【図２】図１における顔姿勢検出プログラムの機能モジュール図である。
【図３】図２における抽出モジュールが抽出した顔特徴点を示す模式図である。
【図４】本願の顔姿勢検出方法の好ましい実施例のフローチャートである。
【図５】図４におけるステップＳ３０に関する特徴点、ベクトル及び夾角を示す模式図である。
【図６】図４におけるステップＳ４０に関する特徴点、ベクトル、直線及び夾角を示す模式図である。
【図７】図４におけるステップＳ５０に関する特徴点と特徴点との間の距離を示す模式図である。  本願の目的の実現、機能特徴、及びメリットについては、実施例を合わせて、添付図面を参照しながらさらに説明する。
【発明を実施するための形態】
【００１０】
本明細書に記載される具体的な実施例は、本願を説明するためのものにすぎず、それを限定することを意図するものではないことは理解されたい。
【００１１】
図１は、本願の計算装置１の好ましい実施例の動作環境を示す模式図である。
【００１２】
計算装置１は、サーバ、スマートフォン、タブレットコンピュータ、ポータブルコンピュータ、デスクトップコンピュータなどのコンピューティング機能を有する端末機器であってもよい。
【００１３】
図１に示すように、計算装置１は、撮像装置１１、メモリ１２、プロセッサ１３、ネットワークインタフェース１４及び通信バス１５を含む。ここで、撮像装置１１は、オフィス、監視エリア及びスマートカーの運転室などの特定の場所に設置され、当該特定の場所に入ったターゲットをリアルタイムに撮像してリアルタイム画像を取得し、ネットワークを介して撮像したリアルタイム画像をプロセッサ１３に伝送する。ネットワークインタフェース１４は、必要に応じて標準有線インタフェース、無線インタフェース（例えば、ＷＩ−ＦＩインタフェース）を含んでもよい。通信バス１５は、これらの部材間の接続通信を実現するために用いられる。
【００１４】
メモリ１２は、少なくとも１種類の読み取り可能な記憶媒体を含む。前記少なくとも１種類の読み取り可能な記憶媒体は、例えばフラッシュメモリ、ハードディスク、マルチメディアカード、カード型メモリなどの不揮発性記憶媒体であってもよい。一部の実施例において、前記読み取り可能な記憶媒体は、計算装置１の内部記憶ユニット、例えば計算装置１のハードディスクであってもよい。別の実施例において、前記読み取り可能な記憶媒体は、計算装置１の外付けメモリ、例えば計算装置１に搭載したプラグインハードディスク、スマートメモリカード（Ｓｍａｒｔ  Ｍｅｄｉａ(登録商標)  Ｃａｒｄ、ＳＭＣ）、セキュアデジタル（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ、ＳＤ）カード、フラッシュメモリカード（Ｆｌａｓｈ  Ｃａｒｄ）などであってもよい。
【００１５】
本実施例において、メモリ１２の読み取り可能な記憶媒体は、一般的に計算装置１にインストールされた顔姿勢検出プログラム１０、撮像装置１１により取得されたリアルタイム画像、顔画像及び初期データなどを格納するために用いられる。メモリ１２は、さらに出力済み又は出力しようとするデータを一時的に格納するために用いられる。
【００１６】
プロセッサ１３は、一部の実施例において中央処理装置（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、ＣＰＵ）、マイクロプロセッサ又は他のデータ処理チップであってもよく、メモリ１２に格納されているプログラムコード又は処理データを動作させるために用いられ、例えば、顔姿勢検出プログラム１０を執行するなど。
【００１７】
図１では、部材１１〜１５及び顔姿勢検出プログラム１０を有する計算装置１のみを示したが、示された部材すべてを実装する必要がなく、より多い又はより少ない部材を代わりに実装することもできる。
【００１８】
必要に応じて、計算装置１は、ユーザーインタフェースを含み、ユーザーインタフェースは、キーボード（Ｋｅｙｂｏａｒｄ）などの入力ユニットと、マイクロフォン（ｍｉｃｒｏｐｈｏｎｅ）など音声認識機能を有する機器などの音声入力装置と、オーディオ、ヘッドフォンなどの音声出力装置とを含んでもよく、必要に応じて、ユーザーインタフェースは、標準有線インタフェース、無線インタフェースをさらに含んでもよい。
【００１９】
必要に応じて、計算装置１は、ディスプレイをさらに含んでもよく、ディスプレイはディスプレイスクリーン又はディスプレイユニットと適当に呼んでもよい。一部の実施例において、ＬＥＤディスプレイ、液晶ディスプレイ、タッチ型液晶ディスプレイ及びＯＬＥＤ（Ｏｒｇａｎｉｃ  Ｌｉｇｈｔ−Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ、有機発光ダイオード）タッチデバイスなどであってもよい。ディスプレイは、計算装置１で処理された情報及び視覚化されたユーザーインタフェースを表示するために用いられる。
【００２０】
必要に応じて、計算装置１は、タッチセンサをさらに含む。前記タッチセンサにより提供されるユーザーのタッチ操作のための領域をタッチコントロール領域と呼ぶ。また、ここで前記タッチセンサは抵抗式タッチセンサ、静電容量式タッチセンサなどであってもよい。なお、前記タッチセンサは接触式タッチセンサを含むだけでなく、近接式タッチセンサなどを含んでもよい。また、前記タッチセンサは、個別のセンサであってもよく、アレイ状に配置された複数のセンサであってもよい。
【００２１】
また、計算装置１のディスプレイの面積は、前記タッチセンサの面積と同じであっても、異なっていてもよい。必要に応じて、ディスプレイと前記タッチセンサとを積層して設置することにより、タッチ型ディスプレイスクリーンを形成する。当該計算装置は、タッチ型ディスプレイスクリーンに基づいて、ユーザーによりトリガーされるタッチ操作を検出する。
【００２２】
必要に応じて、計算装置１は、ＲＦ（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ、無線周波数）回路、センサ、オーディオ回路などをさらに含んでもよく、ここでは詳細な説明を省略する。
【００２３】
コンピュータ読み取り可能な記憶媒体としてのメモリ１２は、操作システム、顔姿勢検出プログラム１０、撮像装置１１で取得したリアルタイム画像及び顔画像などのデータを含んでもよい。プロセッサ１３がメモリ１２に格納されている顔姿勢検出プログラム１０を執行するときのステップは以下のとおりである。
【００２４】
顔特徴点抽出ステップ：顔検出アルゴリズムにより顔画像からＮ個の顔特徴点を抽出する。図３に示すように、ｄｌｉｂ顔特徴点検出アルゴリズムを適用するとき、顔画像から顔特徴点Ｐ１−Ｐ６８（Ｎ＝６８）を抽出できる。
【００２５】
キー特徴点抽出ステップ：前記Ｎ個の顔特徴点から、顔部輪郭特徴点として、右耳の上方に近い第１特徴点Ｐ１と、右耳の下方に近い第２特徴点Ｐ３と、左耳の下方に近い第３特徴点Ｐ１５と、左耳の上方に近い第４特徴点Ｐ１７とを抽出し、且つ第５特徴点Ｐ３１として鼻先特徴点を抽出する。
【００２６】
第１計算ステップ：前記第５特徴点Ｐ３１と第１特徴点Ｐ１で第１ベクトルを形成し、第５特徴点Ｐ３１と第４特徴点Ｐ１７で第２ベクトルを形成し（図５参照）、第１ベクトルと第２ベクトルとの第１夾角を計算し、第１夾角と初期夾角の変化に基づいて、前記顔画像内で顔がＸ軸を中心に回転した角度を判断する。
【００２７】
第２計算ステップ：前記第１特徴点Ｐ１と第４特徴点Ｐ１７で第３ベクトルを形成し、第４特徴点Ｐ１７からＸ軸に平行な直線Ｌ１を１本引き（図６参照）、第３ベクトルと直線Ｌ１との第２夾角を計算し、当該第２夾角に基づいて、前記顔画像内で顔がＹ軸を中心に回転した角度を判断する。
【００２８】
第３計算ステップ：前記第２特徴点Ｐ３と第５特徴点Ｐ３１との間の距離を第１距離と記録し、第３特徴点Ｐ１５と第５特徴点Ｐ３１との間の距離を第２距離と記録し（図７参照）、第１距離と第２距離との比率を計算し、第１距離と第２距離との比率に基づいて、前記顔画像内で顔がＺ軸を中心に回転した方向を判断する。
【００２９】
ここで、前記第１計算ステップは、
顔が初期位置にあるときの前記第１ベクトルと第２ベクトルとの初期夾角を計算し、必要に応じて、当該初期夾角が１２０°である場合、
前記第１夾角が１２０°より大きいとき、前記顔画像内で顔がＸ軸を中心に上向きに回転し、回転角度が第１夾角と初期夾角との差であることを表すことと、
前記第１夾角が１２０°より小さいとき、前記顔画像内で顔がＸ軸を中心に下向きに回転し、回転角度が初期夾角と第１夾角との差であることを表すことと、
前記第１夾角が１２０°であるとき、前記顔画像内で顔がＸ軸に対して初期位置に位置し、すなわち頭を上げないか又は下げないことを表すこととを含む。
【００３０】
前記第２計算ステップは、
前記第２夾角が０°であるとき、前記顔画像内で顔がＹ軸に対して初期位置に位置し、すなわち顔が左又は右に傾いていないことを表すことと、
前記第２夾角が０°でなく、且つ前記第１特徴点が前記直線Ｌ１の上方にあるとき、前記顔画像内で顔がＹ軸を中心に左へ回転し、回転角度が第２夾角の角度値であることを表すことと、
前記第２夾角が０°でなく、且つ前記第１特徴点が前記直線Ｌ１の下方にあるとき、前記顔画像内で顔がＹ軸を中心に右へ回転し、回転角度が第２夾角の角度値であることを表すこととを含む。
【００３１】
前記第３計算ステップは、
前記第１距離と第２距離との比率が１であるとき、前記顔画像内で顔がＺ軸に対して初期位置に位置し、すなわち頭が左又は右に回転していないことを表すことと、
前記第１距離と第２距離との比率が１より大きいとき、前記顔画像内で顔がＺ軸を中心に左へ回転することを表すことと、
前記第１距離と第２距離との比率が１より小さいとき、前記顔画像内で顔がＺ軸を中心に右へ回転することを表すこととを含む。
【００３２】
本実施例において、前記顔検出アルゴリズムはｄｌｉｂ顔特徴点検出アルゴリズムである。図３に示すように、ｄｌｉｂ顔特徴点検出アルゴリズムを用いて顔画像から、顔部輪郭特徴点１７個と、眉特徴点１０個と、鼻先特徴点を含む鼻翼特徴点４個と、及び他の鼻孔、目、唇特徴点３７個とを含む６８個の特徴点を抽出する。前記顔部輪郭特徴点において、右耳の上方に近い第１特徴点は左耳の上方に近い第４特徴点と対称であり、右耳の下方に近い第２特徴点は左耳の下方に近い第３特徴点と対称である。
【００３３】
前記Ｘ、Ｙ、Ｚ座標軸とは、顔を円柱とみなし、円柱の中心軸を顔データの座標の垂直軸Ｚ軸とし、鼻先特徴点を通り且つ円柱中心軸と直交する直線をＹ軸とし、Ｚ軸とＹ軸との交差方向をＸ軸とすると定義される。
【００３４】
他の実施例において、顔姿勢検出プログラム１０は、さらに１つ又は複数のモジュールに分割することができ、当該１つ又は複数のモジュールは、メモリ１２に格納され且つプロセッサ１３に執行されることにより、本願を実現する。本願でのモジュールとは、特定の機能を実行できる一連のコンピュータプログラム命令セグメントである。
【００３５】
図２は、図１における顔姿勢検出プログラム１０の機能モジュール図である。
【００３６】
顔姿勢検出プログラム１０は、取得モジュール１１０、抽出モジュール１２０、及び計算モジュール１３０に分割されることができる。
【００３７】
取得モジュール１１０は、撮像装置１１が撮像したリアルタイム画像を取得し、顔認識アルゴリズムを用いて当該リアルタイム画像から１枚のリアルタイム顔部画像を抽出するために用いられる。撮像装置１１が１枚のリアルタイム画像を撮像したとき、撮像装置１１はこのリアルタイム画像をプロセッサ１３に送信し、プロセッサ１３が当該リアルタイム画像を受信した後、取得モジュール１１０は顔認識アルゴリズムを用いてリアルタイムの顔部画像を抽出する。
【００３８】
具体的には、当該リアルタイム画像からリアルタイム顔部画像を抽出する顔認識アルゴリズムは、幾何学的特徴ベースの方法、局所特徴分析方法、固有顔方法、弾性モデルベースの方法、ニューラルネットワーク方法などにすることができる。
【００３９】
抽出モジュール１２０は、当該リアルタイム顔部画像の顔特徴点とキー特徴点を抽出するために用いられる。
【００４０】
例えば、図３に示すように、抽出モジュール１２０は、ｄｌｉｂ顔特徴点検出アルゴリズムによりリアルタイム顔部画像から６８個の顔特徴点Ｐ１−Ｐ６８を抽出する。さらに、前記６８個の顔特徴点から、右耳の上方に近い第１特徴点Ｐ１、右耳の下方に近い第２特徴点Ｐ３、左耳の下方に近い第３特徴点Ｐ１５、左耳の上方に近い第４特徴点Ｐ１７、鼻先の第５特徴点Ｐ３１という５個のキー特徴点を抽出する。
【００４１】
計算モジュール１３０は、当該リアルタイム顔画像内の５個のキー特徴点の座標値に基づいて、当該リアルタイム顔画像内での顔の回転方向及び角度を計算する。
【００４２】
具体的には、計算モジュール１３０は、
前記第５特徴点と第１特徴点で形成した第１ベクトルと、第５特徴点と第４特徴点で形成した第２ベクトルとの第１夾角を計算し、第１夾角と初期夾角の変化に基づいて、前記顔画像内で顔がＸ軸を中心に回転した角度を判断することと、
前記第１特徴点と第４特徴点で形成した第３ベクトルと、第４特徴点から引いたＸ軸に平行な直線Ｌ１との第２夾角を計算し、それにより前記顔画像内で顔がＹ軸を中心に回転した角度を判断することと、
前記第２特徴点と第５特徴点との間の第１距離と、第３特徴点と第５特徴点との間の第２距離との比率を計算し、それにより前記顔画像内で顔がＺ軸を中心に回転した方向を判断することとのために用いられる。
【００４３】
本実施例に係る計算装置１は、リアルタイム画像からリアルタイム顔部画像を抽出し、ｄｌｉｂ顔特徴点検出アルゴリズムを用いて当該リアルタイム顔部画像内の顔特徴点を抽出し、続いてキー特徴点を抽出してから、キー特徴点の座標値に基づいて顔画像内での顔の回転方向及び角度を計算することにより、顔姿勢のリアルタイム検出を実現する。
【００４４】
また、本願は顔姿勢検出方法をさらに提供する。図４は、本願の顔姿勢検出方法の好ましい実施例のフローチャートである。当該方法は、１つの計算装置により執行されることができ、当該計算装置はソフトウェア及び／又はハードウェアにより実現できる。
【００４５】
本実施例において、顔姿勢検出方法は、ステップＳ１０〜ステップＳ５０を含む。
【００４６】
ステップＳ１０、抽出モジュール１２０は、顔検出アルゴリズムにより顔画像からＮ個の顔特徴点を抽出する。撮像装置１１は、１枚のリアルタイム画像を撮像して、当該リアルタイム画像をプロセッサ１３に送信し、プロセッサ１３は当該リアルタイム画像を受信した後、顔認識アルゴリズムを用いてリアルタイムの顔部画像を抽出し、続いて顔検出アルゴリズムによりＮ個の顔特徴点を取得する。必要に応じて、当該リアルタイム画像からリアルタイムの顔部画像を抽出する顔認識アルゴリズムは、幾何学的特徴ベースの方法、局所特徴分析方法、固有顔方法、弾性モデルベースの方法、ニューラルネットワーク方法などにすることができる。好ましくは、当該顔画像から顔特徴点を抽出する顔検出アルゴリズムはｄｌｉｂ顔特徴点検出アルゴリズムである。
【００４７】
ステップＳ２０、抽出モジュール１２０は、顔画像特徴点のうちのキー特徴点を抽出する。抽出モジュール１２０は、右耳の上方に近い第１特徴点Ｐ１と、右耳の下方に近い第２特徴点Ｐ３と、左耳の下方に近い第３特徴点Ｐ１５と、左耳の上方に近い第４特徴点Ｐ１７とをさらに抽出し、また第５特徴点Ｐ３１として鼻先特徴点を抽出する。
【００４８】
ステップＳ３０、計算モジュール１３０は、前記顔画像内で顔がＸ軸を中心に回転した角度を計算する。図５に示すように、前記第５特徴点Ｐ３１と第１特徴点Ｐ１で第１ベクトルを形成し、第５特徴点Ｐ３１と第４特徴点Ｐ１７で第２ベクトルを形成し、第１ベクトルと第２ベクトルとの第１夾角を計算し、第１夾角と初期夾角の変化に基づいて、前記顔画像内で顔がＸ軸を中心に回転した角度を判断する。
【００４９】
ステップＳ４０、計算モジュール１３０は、前記顔画像内で顔がＹ軸を中心に回転した角度を計算する。図６に示すように、前記第１特徴点Ｐ１と第４特徴点Ｐ１７で第３ベクトルを形成し、第４特徴点Ｐ１７からＸ軸に平行な直線Ｌ１を１本引き、第３ベクトルと直線Ｌ１との第２夾角を計算し、当該第２夾角に基づいて、前記顔画像内で顔がＹ軸を中心に回転した角度を判断する。
【００５０】
ステップＳ５０、計算モジュール１３０は、前記顔画像内で顔がＺ軸を中心に回転した方向を計算する。図７に示すように、前記第２特徴点Ｐ３と第５特徴点Ｐ３１との間の距離を第１距離と記録し、第３特徴点Ｐ１５と第５特徴点Ｐ３１との間の距離を第２距離と記録し、第１距離と第２距離との比率を計算し、第１距離と第２距離との比率に基づいて顔がＺ軸を中心に回転した方向を判断する。
【００５１】
本実施例に係る顔姿勢検出方法は、ｄｌｉｂ顔特徴点検出アルゴリズム用いて当該リアルタイム顔部画像内の顔特徴点を取得し、続いてキー特徴点を抽出し、キー特徴点の座標値に基づいて当該リアルタイム顔部画像内での顔の回転方向及び角度を計算することにより、顔姿勢のリアルタイム検出を実現する。
【００５２】
また、本願の実施例は、コンピュータ読み取り可能な記憶媒体をさらに提供し、前記コンピュータ読み取り可能な記憶媒体は顔姿勢検出プログラムを含み、前記顔姿勢検出プログラムが前記プロセッサにより執行されるときに実施される操作は、
顔検出アルゴリズムにより顔画像からＮ個の顔特徴点を抽出し、図３に示すように、ｄｌｉｂ顔特徴点検出アルゴリズムを適用するとき、顔画像から顔特徴点Ｐ１−Ｐ６８（Ｎ＝６８）を抽出できる顔特徴点抽出ステップと、
前記Ｎ個の顔特徴点から、顔部輪郭特徴点として、右耳の上方に近い第１特徴点Ｐ１と、右耳の下方に近い第２特徴点Ｐ３と、左耳の下方に近い第３特徴点Ｐ１５と、左耳の上方に近い第４特徴点Ｐ１７とを抽出し、また第５特徴点Ｐ３１として鼻先特徴点を抽出するキー特徴点抽出ステップと、
前記第５特徴点Ｐ３１と第１特徴点Ｐ１で第１ベクトルを形成し、第５特徴点Ｐ３１と第４特徴点Ｐ１７で第２ベクトルを形成し（図５参照）、第１ベクトルと第２ベクトルとの第１夾角を計算し、第１夾角と初期夾角の変化に基づいて、前記顔画像内で顔がＸ軸を中心に回転した角度を判断する第１計算ステップと、
前記第１特徴点Ｐ１と第４特徴点Ｐ１７で第３ベクトルを形成し、第４特徴点Ｐ１７からＸ軸に平行な直線Ｌ１を１本引き（図６参照）、第３ベクトルと直線Ｌ１との第２夾角を計算し、当該第２夾角に基づいて、前記顔画像内で顔がＹ軸を中心に回転した角度を判断する第２計算ステップと、
前記第２特徴点Ｐ３と第５特徴点Ｐ３１との間の距離を第１距離と記録し、第３特徴点Ｐ１５と第５特徴点Ｐ３１との間の距離を第２距離と記録し（図７参照）、第１距離と第２距離との比率を計算し、第１距離と第２距離との比率に基づいて、前記顔画像内で顔がＺ軸を中心に回転した方向を判断する第３計算ステップとである。
【００５３】
ここで、前記第１計算ステップは、
顔が初期位置にあるときの前記第１ベクトルと第２ベクトルとの初期夾角を計算し、当該初期夾角が１２０°である場合、
前記第１夾角が１２０°より大きいとき、前記顔画像内で顔がＸ軸を中心に上向きに回転し、回転角度が第１夾角と初期夾角との差であることを表すことと、
前記第１夾角が１２０°より小さいとき、前記顔画像内で顔がＸ軸を中心に下向きに回転し、回転角度が初期夾角と第１夾角との差であることを表すことと、
前記第１夾角が１２０°であるとき、前記顔画像内で顔がＸ軸に対して初期位置に位置し、すなわち頭を上げないか又は下げないことを表すこととを含む。
【００５４】
前記第２計算ステップは、
前記第２夾角が０°であるとき、前記顔画像内で顔がＹ軸に対して初期位置に位置し、すなわち顔が左又は右に傾いていないことを表すことと、
前記第２夾角が０°でなく、且つ前記第１特徴点が前記直線Ｌ１の上方にあるとき、前記顔画像内で顔がＹ軸を中心に左へ回転し、回転角度が第２夾角の角度値であることを表すことと、
前記第２夾角が０°でなく、且つ前記第１特徴点が前記直線Ｌ１の下方にあるとき、前記顔画像内で顔がＹ軸を中心に右へ回転し、回転角度が第２夾角の角度値であることを表すこととを含む。
【００５５】
前記第３計算ステップは、
前記第１距離と第２距離との比率が１であるとき、前記顔画像内で顔がＺ軸に対して初期位置に位置し、すなわち頭が左又は右に回転していないことを表すことと、
前記第１距離と第２距離との比率が１より大きいとき、前記顔画像内で顔がＺ軸を中心に左へ回転することを表すことと、
前記第１距離と第２距離との比率が１より小さいとき、前記顔画像内で顔がＺ軸を中心に右へ回転することを表すこととを含む。
【００５６】
本願における顔姿勢検出コンピュータ読み取り可能な記憶媒体の具体的な実施形態は、上記の顔姿勢検出方法の具体的な実施形態とほぼ同じであるため、ここでは詳細な説明を省略する。
【００５７】
なお、本明細書において、用語「含む」、「包含」又はその任意の他の変形は、非排他的な包含を網羅することにより、一連の要素を含むプロセス、装置、物品、又は方法には、これらの要素を含む以外に、明確に記載していない他の要素をさらに含むか、又はこれらのプロセス、装置又は方法が固有の要素をさらに含む。さらなる制限がなければ、「１つの…を含む」という文句が限定する要素は、この要素を含むプロセス、装置又は方法に別の同じ要素が存在することを除外しない。
【００５８】
上記本願の実施例の番号は説明するためのものにすぎず、実施例の良否を表すものではない。上記の実施形態の説明を通じて、当業者は、ソフトウェアに加えて必要な一般ハードウェアプラットフォーム方式で上記実施例の方法を実現でき、もちろんハードウェアで実現することもできるが、前者のほうがよりよい実施形態である場合が多いことを明確に理解できる。そのような理解に基づいて、本願の技術的解決手段の本質又は既存技術に寄与する部分は、ソフトウェア製品の形で実現され、当該コンピュータソフトウェア製品は上記の記憶媒体（例えば、ＲＯＭ／ＲＡＭ、磁気ディスク、光ディスク）に格納され、端末機器（携帯電話、コンピュータ、サーバ、又はネットワーク機器などであり得る）に本願の各実施例に記載の方法を執行させるためのいくつかの命令を含む。
【００５９】
上記は、本願の好ましい実施例にすぎず、本願の特許出願の範囲を限定するものではない。本願の明細書及び添付図面によってなされる同等の構造又は同等のプロセス変換、又は他の関連技術分野に直接的又は間接的に適用されたものは、すべて本願の特許保護の範囲に含まれる。
【図１】
0006815707.tif 000002
【図２】
0006815707.tif 000003
【図３】
0006815707.tif 000004
【図４】
0006815707.tif 000005
【図５】
0006815707.tif 000006
【図６】
0006815707.tif 000007
【図７】
0006815707.tif 000008