顔認識のためのディープラーニングとオブジェクト検出のステップバイステップガイド

顔認識のためのディープラーニングとオブジェクト検出のステップバイステップガイド
[[277051]]

これまでの共有を通じて、顔認識の一般的なプロセスを理解しました。主に次のプロセスが含まれます。

1. 顔画像(生データ)の収集

2. 画像から顔を認識する

3. 顔データの抽出

4. 顔データの保存

5. 画像や動画から顔を検出する

6. 顔データの抽出

7. 認識された顔をデータベース内のデータと一つずつ比較し、顔を識別する。

上記の顔認識プロセスには、いくつかの問題があります。元の顔データが比較的大きい場合、データベースには大量の顔データが存在する必要があります。顔認識を実行するときに、認識された顔をデータベースのデータと比較する際に必然的に多くの時間がかかり、リアルタイムの顔認識の速度に大きな影響を与えます。 CNN 畳み込みニューラル ネットワークにヒントを得て、ニューラル ネットワークを使用して顔データをトレーニングします。ラベルは顔の名前、データは顔データです。ニューラル ネットワークを使用して顔データをトレーニングします。データが大きいほど、ニューラル ネットワークの認識速度と精度が高くなり、顔認識の速度と精度が大幅に向上します。顔認識プロセスは次のようになります。

1. 顔画像(生データ)の収集

2. 画像から顔を認識する

3. 顔データの抽出と保存

4. 顔データと顔ラベルのニューラルネットワークトレーニングとトレーニングモデルの保存

5. 画像や動画から顔を検出する

6. 識別された顔はニューラルネットワークによって予測され、顔認識が実行される。

この号では顔データの抽出について紹介します

1. オリジナル顔画像の収集

顔認識を行うには、ユーザーの顔画像を収集する必要があります。この記事では、ウェブサイトから数人の有名人の写真を収集して共有します。

まず、ディレクトリ ファイルの下に新しいデータセット フォルダーを作成し、その中に複数のフォルダーを配置します。各フォルダーには有名人の写真が含まれています。フォルダー名は有名人の名前です。ディレクトリは次のようになります。

2.顔検出モデルと顔抽出・埋め込みデータモデルを設定する

顔検出モデルでは、Caffe でトレーニングされたResNet-10 および SSD アルゴリズムを直接使用します。

顔データ抽出埋め込みモデルは、OpenFace の openface_nn4.small2.v1.t7 モデルを使用します。このモデルは pytorch でトレーニングされており、opencv を使用して直接読み込むことができます。

顔検出モデルと顔抽出・埋め込みデータモデル

3. 画像アドレスを初期化し、顔データ配列と顔名ラベル配列を初期化する

顔データを初期化する

4.データセットディレクトリ全体を走査し、画像を処理する

30 行目では、後で保存する必要があるラベル値であるフォルダーの名前を抽出します。

33 行目から 35 行目では、画像を読み取ってサイズを変更します。

38行目は画像のブロブ値を計算します

43-44行目: 画像のブロブ値を顔検出ニューラルネットワークに入力して顔検出を行う

47 行目: 画像内で顔が検出されると、ニューラル ネットワークの len 値は 0 より大きくなります。

50行目、顔が検出されると、顔の信頼度を抽出します。

53行目は顔の信頼度を0.5に設定する。

55行目から59行目は、画像内の顔の位置を計算し、顔のサイズを抽出します。

61-62行目、顔のサイズが小さい場合、顔の情報を無視し、画像内の大きい方の顔を選択します。

64行目、顔画像のサイズが要件を満たしている場合、顔のブロブ値を計算します。

67-68行目は顔画像のブロブ値を顔埋め込みデータニューラルネットワークに渡します。

71-72行目は顔ラベルと顔データを配列に保存します。

5. 顔データを保存する

トラバーサルが完了すると、データセット内のすべての顔データが事前に作成された配列に保存されます。

77 行目では、新しい辞書データを作成し、顔ラベルと顔データをローカルに保存して、後でニューラル ネットワークをトレーニングできるようにします。

以上の5つのステップで顔全体のデータ収集が完了します。もちろん、後の段階でより高い顔認識精度を求める場合は、大量の顔データを収集する必要があります。

この記事のこの部分は、顔認識の最初の部分、つまり顔データの収集と抽出です。後ほど、顔認識システムのニューラル ネットワークのトレーニングと顔認識について説明します。

<<:  アルゴリズム | 再帰の深い理解、あなたは再帰を誤解しています

>>:  時速55キロ!寧波杭州湾新区のスマート道路に無人車が走行

ブログ    
ブログ    

推薦する

シリコンバレーの大企業も「名門校の学位」を重視するのでしょうか? Redditの男の魂を問う質問が白熱した議論を巻き起こす

シリコンバレーの大企業からのオファーは多くのプログラマーにとって依然として非常に魅力的であり、今年は...

...

機械学習の神話を暴く - 機械学習に関する一般的な神話はどこから来たのか?

機械学習について多くの誤解を持っていると、その人のキャリアや評判に悪影響を与える可能性があります。 ...

...

Java プログラミング スキル - データ構造とアルゴリズム「ハフマン コーディング」

基本的な紹介ハフマン符号化は、(ハフマンコーディング) とも訳されます。ハフマン符号化は、ハフマンコ...

新しいインフラの推進により、人工知能の応用は新たな段階に入る

レポート概要新しいインフラストラクチャにより人工知能アプリケーションの実装が加速COVID-19パン...

...

顔認識の長所と短所:祝福か呪いか?

[[403037]]画像ソース: https://pixabay.com/images/id-32...

ロボットが人間を攻撃、しかしテスラはそのニュースを隠蔽?マスク氏はこう答えた。

テスラのオプティマスロボットが労働者を攻撃? !マスク氏は噂を払拭するために緊急で姿を現し、事実を歪...

李開復氏:将来、人間の仕事の半分はAIに奪われるが、失業しない分野は2つだけ

中関村オンラインニュース:李開復氏は先日、未来フォーラムで人工知能をテーマにしたメディアインタビュー...

モバイルインターネット開発における人工知能技術の応用

[[189519]]インテリジェントな需要は2つの側面に反映されるモバイル インターネットの発展が新...

...

Googleの人工知能部門DeepMindが想像力を駆使した新システムを開発

北京時間8月19日のreadwriteによると、2014年にGoogleに買収された英国の人工知能企...

6 つの大きな障害に直面していますが、AI イノベーションはそれらをうまく克服できるでしょうか?

現状では、人工知能業界は消費者からの需要が大きく、投資家からの関心も高く、非常に活況を呈しているよう...