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

顔認識のためのディープラーニングとオブジェクト検出のステップバイステップガイド
[[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キロ!寧波杭州湾新区のスマート道路に無人車が走行

ブログ    
ブログ    
ブログ    
ブログ    

推薦する

フロントエンドエンジニアは、これらの18のトリッ​​クをマスターすることで、ブラウザでディープラーニングを習得できます

TensorFlow.js がリリースされた後、以前にトレーニングしたターゲット/顔検出モデルと顔...

...

MDFR: 顔画像復元と顔回転の結合モデルに基づく顔認識法

この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式...

AIを活用した自動化が成果を上げる:自動化の破壊的イノベーションにより収益成長が1.5倍に増加

新型コロナウイルス感染症のパンデミックによって引き起こされた市場の混乱は、世界中の企業に引き続き重く...

AI基礎データサービス市場は新たな段階に入った

データプライバシー保護規制が継続的に改善され、国がデータ要素市場を積極的に育成し、データ流通が継続的...

AIが不動産業界をどう変えるのか

デジタル化が進むにつれ、人工知能は不動産経済の成長を促進する上で重要な役割を果たします。有名なソフト...

Apple、たった1文で写真をレタッチできる新AIモデルMGIEを披露

2月8日、マイクロソフトの急速な発展と比較すると、AppleのAI分野における展開ははるかに控えめで...

Redis Chat (1): ナレッジグラフの構築

シナリオ: Redis インタビュー[[264477]] (インターネットからの写真)面接官: あな...

Github が絶賛: モザイクテキスト = 無意味、AI があなたの思考をすべて見抜く、オープンソースに

「この写真をフォトショップで加工しましょう!」 「いいですよ、でもこの段落は検閲しないと面倒なことに...

...

中国、米国、欧州における人工知能開発の現状の比較分析

1. 背景と比較方法[[393581]]人工知能は、経済、安全保障、社会の発展を促進する基礎技術です...

2020 年に最も注目される人工知能 (AI) アプリケーション トップ 10

人工知能または機械知能は、学習アルゴリズムを通じて人間のような知能をシミュレートします。今日、人工知...

IoT、AI、ブロックチェーンがビジネス経済を変革する

ビジネスとテクノロジーの世界のつながりは非常に強いため、テクノロジーの発展が次の段階に進むたびに、ビ...

1 つの記事で 4 つの基本的なニューラル ネットワーク アーキテクチャを理解する

[[260546]]ニューラル ネットワークを使い始めたばかりのときは、ニューラル ネットワーク ア...