トップページ人工知能,実世界DB顔情報(顔検出,顔識別、表情判定,顔のクラスタリングや類似度や分類,肌色部分の抽出,瞳孔の検出,顔姿勢の推定)瞳孔を検知してみる(TobiasRoeddiger/PupilTracker を使用)

瞳孔を検知してみる(TobiasRoeddiger/PupilTracker を使用)

Dlibは,数多くの機能を持つ C++ ライブラリ.機能には,機械学習,数値計算,グラフィカルモデル推論,画像処理,スレッド,通信,GUI,データ圧縮・一貫性,テスト,さまざまなユーティリティなどがある.Python API もある.

Dlib を用いた、次のプログラム(公開されているもの)を動かしてみます

利用条件などは利用者において確認してください

【サイト内の関連ページ】:

先人に感謝

dlib の Web ページ: http://dlib.net/

前準備

Python のインストール,pip と setuptools の更新,Python 開発環境

Python の URL: http://www.python.org/

【Python, pip の使い方】

Python, pip は,次のコマンドで起動できる.

Python 開発環境のインストール】

Dlib のインストール

Dlib は c:\dlib にインストールされているとして,以下,説明する.

Git, cmake のインストール

Python 用 opencv-python のインストール

Windows の場合

コマンドプロンプト管理者として実行し,次のコマンドを実行.

Windows での pip の実行では,コマンドプロンプト管理者として実行することにする。

[image]

python -m pip install -U opencv-python

Ubuntu の場合

sudo apt -y update
sudo apt -y install python3-opencv

imutils のインストール

※ ここには,Windows でのインストール手順を示す.Ubuntuでも同様の手順になる.

  1. Windows で,コマンドプロンプト管理者として実行する.

    [image]
  2. imutils のインストール
    mkdir c:\pytools
    cd c:\pytools
    rmdir /s /q imutils
    

    [image]

    cd c:\pytools
    git clone https://github.com/jrosebr1/imutils
    cd imutils
    python setup.py build
    python setup.py install 
    

    [image]
    (以下省略)
  3. imutils のバージョン確認

    Windows のコマンドプロンプトで、次のコマンドを実行

    py -c "import imutils; print( imutils.__version__ )"
    

    [image]

このページで説明のために使用するビデオ

顔が写ったビデオファイル

ここで使用する mp4 形式ビデオファイル: sample1.mp4

[image]

作業手順

  1. C:\face-image のような作業用のディレクトリ(フォルダ)を作る

    [image]
  2. sample1.mp4 を、C:\face-image の下にダウンロード

TobiasRoeddiger/PupilTracker のダウンロード

謝辞:参考 Web ページ: https://github.com/TobiasRoeddiger/PupilTracker

利用条件などは必ず各自で確認してください

  1. Windows で,コマンドプロンプト管理者として実行する.

    [image]
  2. TobiasRoeddiger/PupilTracker のダウンロード
    mkdir c:\pytools
    cd c:\pytools
    rmdir /s /q PupilTracker
    

    [image]

    cd c:\pytools
    git clone https://github.com/TobiasRoeddiger/PupilTracker
    

    [image]

TobiasRoeddiger/PupilTracker による瞳孔の検知

[image]
  1. Window でコマンドプロンプトを実行

    端末で,次のコマンドを実行.

    cd c:\pytools
    cd PupilTracker
    copy pupil_tracker.py a.py
    

    [image]
  2. プログラムファイル a.pysample1.mp4 を使うように書き換え

    エディタを使う

    書き換え1つめ

    書き換え前

    [image]

    書き換え後

    cap = cv2.VideoCapture("c:/image/sample1.mp4")

    [image]

    書き換え2つめ

    書き換え前

    [image]

    書き換え後

    cv2.line(image,(int((bottom_left[0] + bottom_right[0]) / 2), lower_bound), (int((upper_left[0] + upper_right[0]) / 2), upper_bound),(0,0,255), 1)

    [image]
  3. Python プログラムを動かす.

    py a.py -p shape_predictor_68_face_landmarks.dat
    

    [image]
  4. 再び、プログラムファイルをコピー

    端末で,次のコマンドを実行.

    copy a.py b.py
    
  5. プログラムファイル b.pysample1.mp4 を使うように書き換え

    エディタを使う

    書き換え前

    [image]

    書き換え後

    cap = cv2.VideoCapture(0)

    [image]
  6. プログラムを実行してみる

    今度は、USB接続できるビデオカメラを準備し,パソコンに接続しておく.

    py b.py -p shape_predictor_68_face_landmarks.dat
    

    [image]