AI DeepLearning Python プログラミング

【python できること】pytorch facenetでAI 顔認証アプリ開発する方法

 

前回、「【python 活用】pytorch facenetでAI 顔認証のアルゴリズム、実装方法の説明」でアルゴリズムとコーディングについて説明しましたが、今回は実際にアプリケーションにしてみたいと思います。

参考【python できること】pytorch facenetでAI 顔認証のアルゴリズム、実装方法の説明

続きを見る

 

本記事はこんな方におすすめです。

hituji
サンプルコードをコピペして、簡単に顔認証アプリケーションを開発したい

 

本記事の内容

  • サンプルコードの動かし方
  • サンプルコードの説明

 

今回は、Windwosのノートパソコンで実際に動く顔認証アプリケーションの開発を紹介いたします。

次のような、ユーザー登録と登録されたユーザーかを認証する機能があるアプリケーションを作っていきます。

 

サンプルコードをダウンロードいただければ、実際に顔認証を体験していただくことができます。

 

 

サンプルコード

 

スポンサーリンク

サンプルコードの動かし方

ライブラリが数GBありため、数ステップ必要になりますが、以下の手順でインストールしてください。

サンプルコードダウンロード

下記リンクより、ダウンロードしてください。

サンプルコード

 

CodeからDownload ZIPを選択

ダウンロードしたら解凍してください。

ライブラリのインストール

解凍したファイルの中の、_internalフォルダの中のpython_console.batを起動します。

起動したら、「python get-pip.py」と入力

 

インストールが完了したら、続いて、「pip install -r requirements.txt」を入力

 

数GBのライブラリを取得しているので10分ほど待ちます。

次の画面になれば、インストール完了。

 

アプリケーションを起動

解凍したフォルダの「app.bat」で起動します。

 

ユーザーを登録

認証するユーザーを登録します。

顔認証ボタン」を押してください。

 

ファイルダイアログが開くので、自分の名前をファイル名にした、顔の写真を読み込みます。

次の画面で登録が完了。

 

顔データを数値化して、登録されて解凍したフォルダに、「face_data.pkl」で保存されます。

 

顔認証をする

顔認証」ボタンを押すと、ノートパソコンのカメラが起動しますので、顔を映り込ませてください。

認識すると、下記メッセージが出ます。

 

以上が、サンプルコードの使い方になります。

このまま、サンプルコードの内容を知りたい方は、引き続き読んでいただければと思います。

サンプルコードの解説

サンプルコードでは、他の記事で紹介しているコードを流用しています。

合わせて、他の記事も参考にしてみてください。

 

デスクトップアプリ

PyQt5を使ったデスクトップアプリは、「【python 活用】【PyQt5】デスクトップアプリ化して配布 -その3 ツールバー(QToolBar)の追加-」のコードを使っていますので、この記事を参考にしてください。

参考【python】【PyQt5】デスクトップアプリ化して配布 -その3 ツールバー(QToolBar)の追加-

続きを見る

この記事では、ツールバーにボタン2つが付いたWindowsのデスクトップアプリの紹介をしています。

 

 

次に、「【python 活用】pytorch facenetでAI 顔認証のアルゴリズム、実装方法の説明」の記事で使ったコードをもとに、ユーザー登録顔認証の機能を実装します。

全体のコードが200行くらいあるので、全体のコードは下記リンクを見てください。

>> 全体のコード

 

ユーザー登録

ユーザーの登録では、次の処理を実行しています。

登録処理流れ

  • ファイルダイアログ表示
  • AIモデル読み込み
  • 画像読み込み
  • 顔を切り取る
  • 顔を数値化
  • 数値をdict型にファイル名で入れて、face_data.pklに保存

 

 

保存されたデータは、アプリ起動時に読み込んでいます。

 

顔認証

顔認証では、ノートパソコンのカメラから取得できる人の顔が、登録ユーザーと一致しているか確認します。

認証の流れ

  • AIモデル読み込み
  • カメラ起動
  • 画像から顔を切りとる
  • 顔を数値化
  • 登録ユーザーと類似度計算
  • 0.7以上か確認

 

 

うまく認証しましたか?

複数の顔を登録して遊んでみると良いでしょう!

 

こんな感じで、Pythonスキルを習得したら、ぜひ活用しましょう!

>> Python 副業の始め方紹介【隙間時間 で可能】

-AI, DeepLearning, Python, プログラミング

© 2021 ひつじ工房