顔検出
ML Kit の顔検出 API を使用すると、画像内の顔を検出し、主要な顔の特徴を識別して、検出された顔の輪郭を取得できます。
顔検出を使用すると、自撮りやポートレートの装飾、ユーザーの写真からのアバターの生成などのタスクに必要な情報を取得できます。ML Kit はリアルタイムで顔検出をできるため、ビデオチャットや、プレーヤーの表情に反応するゲームなどのアプリケーションで使用できます。
Flutter デベロッパーの方は、Firebase の ML Vision API 用のプラグインを含む FlutterFire をお試しください。
主な機能
顔の特徴を認識して特定する | 検出された顔の目、耳、頬、鼻、口の座標を取得します。 |
顔の特徴の輪郭を取得する | 検出された顔と目、眉、唇、鼻の輪郭を取得します。 |
表情を認識する | 人が笑っているのか、目を閉じているのかを判断します。 |
ビデオフレームをまたいで顔をトラックする | 検出された人物の顔に ID を設定します。この ID は呼び出し間で一貫しているため、ビデオ ストリーム内の特定の人物に人物に対する画像操作を実行できます。 |
ビデオフレームをリアルタイムで処理する | 顔検出はデバイス上で実行されます。ビデオ操作など、リアルタイム アプリケーションでも十分に使用できる速さで処理されます。 |
実行結果の例
例 1
検出された顔ごとに次の情報を返します。
顔(1 / 3) | |||||||
---|---|---|---|---|---|---|---|
境界ポリゴン | (884.880004882812, 149.546676635742)、(1030.77197265625, 149.546676635742)、(1030.77197265625, 329.660278320312)、(884.880004882812, 329.660278320312) | ||||||
回転角 | Y: -14.054030418395996、Z: -55.007488250732422 | ||||||
トラッキング ID | 2 | ||||||
顔のランドマーク |
その他 |
||||||
特徴の確率 |
|
例 2(顔の輪郭検出)
顔の輪郭検出を有効にすると、検出された顔の特徴が点のリストで表示されます。これらの点は特徴の形状を表します。次の図は、これらの点が顔にどのようにマッピングされるかを示します(画像をクリックすると拡大します)。
顔の特徴の輪郭 | |
---|---|
鼻梁 | (505.149811, 221.201797)、(506.987122, 313.285919) |
左目 | (404.642029, 232.854431)、(408.527283, 231.366623)、(413.565796, 229.427856)、(421.378296, 226.967682)、(432.598755, 225.434143)、(442.953064, 226.089508)、(453.899811, 228.594818)、(461.516418, 232.650467)、(465.069580, 235.600845)、(462.170410, 236.316147)、(456.233643, 236.891602)、(446.363922, 237.966888)、(435.698914, 238.149323)、(424.320740, 237.235168)、(416.037720, 236.012115)、(409.983459, 234.870300) |
上唇の上 | (421.662048, 354.520813)、(428.103882, 349.694061)、(440.847595, 348.048737)、(456.549988, 346.295532)、(480.526489, 346.089294)、(503.375702, 349.470459)、(525.624634, 347.352783)、(547.371155, 349.091980)、(560.082031, 351.693268)、(570.226685, 354.210175)、(575.305420, 359.257751) |
その他 |