1.5K Views
January 29, 23
スライド概要
トピックス:顔情報処理, 顔情報処理の種類, 顔検出, 顔ランドマーク, 顔検証, 顔識別, 顔認識, ディープラーニング, 人工知能
ディープラーニング(スライドとプログラム例,Python を使用)(全15回)
https://www.kkaneko.jp/ai/ae/index.html
金子邦彦研究室ホームページ
https://www.kkaneko.jp/index.html
金子邦彦(かねこくにひこ) 福山大学・工学部・教授 ホームページ: https://www.kkaneko.jp/index.html 金子邦彦 YouTube チャンネル: https://youtube.com/user/kunihikokaneko
6. 顔情報処理 (ディープラーニング,Python を使用) (全15回) https://www.kkaneko.jp/cc/ae/index.html 金子邦彦 1
顔検出 顔のコード化 顔のアラインメント 顔ランドマーク 性別の推定,年齢の推定 2
機械学習 • 学習による上達の能力 • 訓練データを使用して,学習を行う 3
画像理解の主な種類 ① 画像分類 「何があるか」を理解 person bicycle person ② 物体検出 場所と大きさも理解 ③ セグメンテーション 画素単位で領域を理解 bicycle 4
物体検出 car バウンディングボックス, ラベルと確率 person バウンディングボックスは, 物体を囲む最小の四角形 bicycle 5
畳み込みニューラルネットワーク(CNN) 畳み込みニューラルネットワークは,畳み込み 層と,プーリング層を交互に繰り返すディープ ニューラルネットワーク 畳 み 込 み 層 プ ー リ ン グ 層 畳 み 込 み 層 プ ー リ ン グ 層 畳 み 込 み 層 プ ー リ ン グ 層 畳 み 込 み 層 プ ー リ ン グ 層 畳 み 込 み 層 プ ー リ ン グ 層 さまざまなバリエーション • 畳み込み層 ・・・ パターンの識別 • プーリング層 ・・・ 画像の小移動に対して, 出力が不変になる 6
ディープラーニングへの期待 「ディープニューラルネットワークの利用により, さまざまなレベルのパターンを抽出・認識できるようにな る」という考える場合も 「より出力に近い層では, より高次のパターンを 認識したい」という 考え方も 7
アウトライン 番号 項目 6-1 6-2 6-3 6-4 6-5 6-6 顔画像処理 顔画像処理の種類 顔検出 顔ランドマーク 顔検証,顔識別や顔認識 顔情報処理の演習 各自,資料を読み返したり,課題に取り組んだりも行う 8
物体検出 顔検出 ■ 物体検出は,顔検出の基礎 ■ 物体検出のAIを,顔画像で学習することにより 顔検出が可能 9
顔ランドマークと顔のコード化 顔ランドマーク (顔の目印となるポイント) 【用途】 顔のコード化, 顔識別(本人の特定)や顔認識, 年齢の推定,性別の推定, 表情の推定,顔の3次元再構成 など,さまざまな用途に 顔のコード化 顔による本人確認や, 個人の特定の基礎 10
6-1. 顔情報処理 11
• 顔識別(本人の特定)を行い,鍵代わりに使用 12
過去,写真の中の顔が誰であるかを,自動で 特定, SNS のタグ付けが行われてきた この機能を廃止するというニュースも (2021年) 便利さより ⇒ プライバシー,人権が重要に 13
職場での行動把握 ・「顔」が本人の特定の手掛かり ・適切な監視により,安全が高まるという 考え方も(プライバシ,人権の尊重は前提) 14
群衆のカウント • 群衆のカウント(画像内の人数を数える) • 監視等に役立つ. 元画像 FIDTM 法による群衆のカウント FIDTM 法(2021年発表)は, それ以前の手法よりも,さまざま な大きさの顔を精度よく検出 できるとされている 15
マスク有りの顔,マスク無しの顔検出 Chandrika Deb の顔マスク検出法では,次を同時に実行 • 顔検出 • マスク有りの顔とマスク無しの顔の画像分類 マスク有りの顔検出 マスク無しの顔検出 訓練データ:顔のデータセット(マス ク有り: 2165 枚,マスク無し 1930 枚) 16
顔写真からの3次元再構成 3DFFA 法(2022年発表) • 元画像から,3次元の顔を生成(3次元再構成) • 顔検出,顔ランドマーク(顔の目印となるポイント)の検 出ののち,ランドマークに顔の3次元モデルをあてはめる 元画像 顔ランドマーク 3次元再構成 17
Face aging 元の顔画像から,さまざまな年齢の顔画像を生成 Ali Elmahmudi, H. Ugail, A framework for facial age progression and regression using exemplar face templates, 2020. 18
顔情報処理の用途 • 顔による本人確認 • 集団行動解析,人流解析,人数推定 • その他 表情の推定,年齢判定,3次元再構成, 顔のセグメンテーション,顔画像の生成 など 19
6-2. 顔情報処理の種類 20
顔検出 (face detection) 顔検出 写真やビデオの中から, 顔を検出すること ・顔の場所と領域を検出 ・複数ある場合にはすべ て識別 21
顔のアラインメント 顔のアラインメント 顔の向き,大きさをそ ろえる 22
顔ランドマーク (facial landmark) 顔ランドマーク まゆげ,目,鼻,くち, 顔の輪郭など,顔の目 印となるポイント 何をランドマークとす るかで,さまざま種類 がある 顔の 68ランドマーク 23
顔のコード化 • 顔のコードは,複数の数値(ふつう100以上)の組み合 わせ • 顔画像から,顔ランドマークを求め,顔のコードを得る • さまざまな用途:顔識別(本人の特定),顔認識,年齢の 推定,性別の推定,表情の推定,顔の3次元再構成など 顔検出, 顔ランドマーク 数値化 24
顔検証 (face verification) 顔検証 2つの別の写真ある いはビデオを照合し, 同一人物であるかを 判定すること ※ 顔識別(本人の特 定)や顔認識は類似 の処理 同一人物である 同一人物でない 25
表情の推定 • ここでは,7種の表情 Angry, Disgust, Fear, Happy, Neutral, Sad, Surprised のそれぞれの確率を推定 • https://github.com/ezgiakcora/Facial-Expression-Keras で公開されている成果物 26
年齢の推定,性別の推定 27
顔情報処理のバリエーション • 顔検出 • 顔のアラインメント • 顔ランドマーク検出 • 顔のコード化 • 顔検証 • 顔識別(本人の特定)や顔認識 • 年齢の推定,性別の推定,表情の推定 • さまざまな応用 群衆のカウント,マスク有り顔に関する処理, 顔の3次元再構成など 28
6-3. 顔検出 29
30
顔検出を行う AI • 顔検出を行う AI は教師あり学習である • 顔検出は,物体検出が基礎となる データ (入力) プログラム 顔検出結果 コンピュータ 顔画像と バウンディングボックス 訓練データ 顔画像の例 31
顔検出と畳み込みニューラルネットワーク 「畳み込みニューラルネットワークの利用により,さまざま なレベルのパターンを抽出・認識できるようになる」という 考える場合も Mei Wang, Weihong Deng, Deep Face Recognition: A Survey, arXiv:1804.06655, 2018. 32
まとめ • 顔検出を行う AI は教師あり学習である • 顔検出は,物体検出が基礎となる • 多くの場合,畳み込みニューラルネットワークが 使用される 33
6-4. 顔ランドマーク 34
顔ランドマークの検出 ディープラーニングによる顔ランドマークの検出は 2013年 に登場 畳み込みニューラルネットワーク を使用 Yi Sun, Xiaogang Wang, Xiaoou Tang Deep Convolutional Network Cascade for Facial Point Detection, 2013 35
5ランドマークの検出結果 • 右目,左目,鼻の5つのランドマーク 36
68ランドマーク https://www.researchgate.net/figure/dentification-of- facial-landmarksusing-Dlib-a-Facial-landmarks-b-The-position-and_fig2_343699139 37
68ランドマークの検出 • 顔の所定の箇所に設けられた68個のランドマーク 38
まとめ • 顔ランドマークは,顔の目印となるポイントであ る • さまざまな種類がある 5ランドマーク,68ランドマーク,その他 39
6-5. 顔検証,顔識別,顔認識 40
顔のコード化 • 顔のコードは,複数の数値(ふつう100以上)の組み合 わせ • 顔画像から,顔ランドマークを求め,顔のコードを得る • さまざまな用途:顔識別(本人の特定),顔認識,年齢の 推定,性別の推定,表情の推定,顔の3次元再構成など 顔検出, 顔ランドマーク 数値化 41
顔検証 (face verification) 2つの別の写真あるいはビデオを照合し,同一人 物であるかを判定する 顔の 比較 顔の コード (距離計算) コード 同一人物である または 同一人物でない 42
顔認証 顔写真について,本人の特定を行う 精度の向上のため, 多数の写真と比較 顔の コード 比較 顔の 顔の コード (距離計算) コード 本人である 顔の コード または 本人でない 43
顔認識 • データベース内の顔写真との比較により、人物を 特定する データベース 顔の 顔の 顔の 顔の 顔の 顔の 比較 顔の 顔の 顔の 顔の コード コード コード(距離計算) コード コード コード コード コード コード コード 写真内のそれぞれの人物が 誰なのか 44
距離学習 距離学習は,ディープラーニングでの顔検証,顔識 別,顔認識の基礎となる技術 距離学習では,次を目標に AI が学習する ・同一人物の顔のコードは,別の写真であっても近 い値になる ・違う人物の顔のコードは,離れた値になる 45
全体まとめ • 顔検出の技術のベースは、物体検出である • 顔情報処理のバリエーション 顔検出,顔のアラインメント,顔ランドマー ク検出,顔のコード化,顔検証,顔識別や顔 認識,年齢の推定,性別の推定,表情の推定, 群衆のカウント,マスク有り顔など • 顔情報処理のさまざまな処理(顔検出、顔ランド マーク検出、距離計算) • ディープラーニングを利用 • 多くの場合、畳み込みニューラルネットワークが利用 されている 46
6-6. 顔情報処理の演習 47
Google Colaboratory の使い方概要 ① 実行 コードセル Google Colaboratory ノートブック コードセルの再実行や変更には, Google アカウントでのログインが必要 48
Google Colaboratory の使い方概要 ② 実行 コードセル テキストセル 実行 コードセル • WEBブラウザでアクセス • コードセルは Python プログラム. 各自の Google アカウント でログインすれば, 変更,再実行可能 一番上のコードセルから順々に実行 49
顔検出 顔のコード化 顔のアラインメント 顔ランドマーク 性別の推定,年齢の推定 50
今回の演習では,自分で用意した顔画像で試すこと ができるようにしている 必須ではありませんが,興味のある人はチャレンジ してみてください ① 顔がうつったファイルを準備. ・ファイル名は,数字と英字のみを使用 ・各自で準備してください。 ② 今回は,ランタイムのタイプをGPUに設 定してから実行してください(次ページ) 51
今回使用するページを再実行するときは, ランタイムのタイプを「GPU」にすること ① コードセルの左の実行ボタンで実行 ② 次のようなエラーが出て,進めないことがある • メニューで「ランタイム」 を選び • 「ランタイムのタイプを変 更」。 • 新しく出てきた画面で, ハードウエアアクセラレー タのところを「GPU」に して,「保存」と操作 • コードセルの実行を最初 52 からやり直す
画像ファイルのアップロード 参照をクリックし,画像ファイルを選ぶ 53