顔検出のコンセプトの概要

顔検出は、視覚媒体(デジタル画像または動画)にある人間の顔を自動的に識別するプロセスです。顔が検出されると、顔の位置が、関連するサイズと方向の情報とともに報告されます。検出された顔は、目や鼻などのランドマークで検索できます。

ML Kit の顔検出機能の説明で使用する用語の一部を以下に示します。

  • 顔トラッキング: 顔検出を動画シーケンスに拡張します。動画に出現する任意の顔(期間も任意)をトラッキングすることができます。つまり、連続する動画フレームで検出された顔を同一人物として識別することができます。この機能は顔認識の一形態ではないことにご注意ください。このメカニズムは、動画シーケンス内の顔の位置と動きに基づく推論のみを行います。

  • ランドマーク: 顔の内部の特別な部分です。左目、右目、鼻底はすべてランドマークの例です。ML Kit には、検出された顔のランドマークを見つける機能が用意されています。

  • 輪郭: 顔の特徴の形状に沿った点の集合です。ML Kit には、顔の輪郭を検出する機能が用意されています。

  • 分類: ある顔の特徴が存在するかどうかを判断します。たとえば、目が開いているか閉じているかを基準にして、顔を分類することができます。別の例としては、顔が笑顔であるかどうかが基準になります。

顔の方向

以下の用語は、カメラを基準にした顔の方向の角度の説明です。

  • オイラー X: オイラー X の角度が正である顔は上向きです。
  • オイラー Y: オイラー Y の角度が正の場合、顔の右側がカメラに向いています。
  • オイラー Z: オイラー Z の角度が正である顔は、カメラを基準にして反時計回りに回転しています。

ML Kit では、検出された顔のオイラー Z の角度を常に報告します。オイラー Y の角度を使用できるのは、顔検出器の「精細」モード設定を使用する場合に限られます(検出を高速化するためにある程度のショートカットを行う「高速」モード設定では使用できません)。オイラー X の角度はサポートされていません。

ランドマーク

ランドマークは、顔の内部の特別な部分です。左目、右目、鼻底はすべてランドマークの例です。

ML Kit は、最初にランドマークを検出してから顔全体を検出する基盤としてランドマークを使用する、という処理は行いません。詳細なランドマーク情報とは独立して顔全体を検出します。このため、ランドマーク検出はデフォルトでは有効ではないオプション ステップです。

次の表は、関連する顔のオイラー Y の角度に関して、検出可能なすべてのランドマークをまとめたものです。

オイラー Y の角度 検出可能なランドマーク
-36 度未満 左耳、口の左側、左耳、鼻底、左頬
-36 度〜-12 度 口の左側、鼻底、口の下側、右目、左目、左頬、左耳先端
-12 度〜12 度 右目、左目、鼻底、左頬、右頬、口の左側、口の右側、口の下側
12 度〜36 度 口の右側、鼻底、口の下側、左目、右目、右頬、右耳先端
36 度超 右目、口の右側、右耳、鼻底、右頬

検出された各ランドマークには、画像内の関連する位置が含まれます。

輪郭

輪郭は、顔の特徴の形状を表す点の集合です。次の図は、これらの点が顔にどのようにマッピングされるかを示します(画像をクリックすると拡大します)。

ML Kit によって検出される顔の特徴の輪郭はそれぞれ、一定数の点によって表されます。

顔面の楕円 36 点 上唇(上縁) 11 点
左眉毛(上縁) 5 点 上唇(下縁) 9 点
左眉毛(下縁) 5 点 下唇(上縁) 9 点
右眉毛(上縁) 5 点 下唇(下縁) 9 点
右眉毛(下縁) 5 点 鼻梁 2 点
左目 16 点 鼻の下縁 3 点
右目 16 点
左頬(中央) 1 点
右頬(中央) 1 点

すべての顔の輪郭を一度に取得すると、133 個の点の配列が得られます。これはそれぞれの輪郭に次のように対応します。

顔の輪郭のインデックス
0-35 顔面の楕円
36-40 左眉毛(上縁)
41-45 左眉毛(下縁)
46-50 右眉毛(上縁)
51-55 右眉毛(下縁)
56-71 左目
72-87 右目
88-96 上唇(下縁)
97-105 下唇(上縁)
106-116 上唇(上縁)
117-125 下唇(下縁)
126、127 鼻梁
128-130 鼻の下縁(中央の点がインデックス 128 にあることに注意)
131 左頬(中央)
132 右頬(中央)

分類

分類により、ある顔の特徴が存在するかどうかを判断します。ML Kit では現在、「目を開いている」と「笑顔」の 2 つの分類をサポートしています。

分類は確実性の値として表され、顔の特徴が存在する確かさを示します。たとえば、笑顔の分類の値が 0.7 以上であれば、かなりの可能性で人が微笑んでいることを示します。

これらの分類は両方ともランドマーク検出に依存しています。

また、「目を開いている」と「笑顔」の分類は、顔が正面を向いている場合、つまりオイラー Y の角度が小さい(おおよそ +18 度~-18 度の範囲)場合にのみ機能します。

次のステップ

iOS アプリまたは Android アプリで顔検出を使用する。

フィードバックを送信...

ご不明な点がありましたら、Google のサポートページをご覧ください。