トップページ -> データベース関連技術 -> 顔検出、顔識別 -> ビデオを扱ってみる(mpatacchiola/DeepGaze を使用)
[サイトマップへ], [サイト内検索へ]

ビデオを扱ってみる(mpatacchiola/DeepGaze を使用)

【このページの目次】

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

サイト内の関連ページ:

謝辞:DeepGaze の作者に感謝します

参考Webページ https://www.github.com/mpatacchiola/DeepGaze


前準備

Python, Dlib のインストール

Dlib は C:\pytools\dlib にインストールされているとする

virtualenv, virtualenv-wrapper のインストール

git, cmake のインストール

(NVIDIA GPU を使うとき)NVIDIA グラフィックスボード・ドライバ,NVIDIA CUDA ツールキットのインストール

次のページの手順により,インストールを行う

参考Webページ:

(NVIDIA GPU を使うとき)NVIDIA cuDNN のインストール

Windows でのインストール手順の詳細は,別ページで説明している.

インストールの要点:https://developer.nvidia.com/cudnn から cuDNN を入手し,C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1 などに展開(解凍)し,パスを通しておくこと


mpatacchiola/DeepGaze のインストール

隔離された Python 仮想環境の新規作成と,TensorFlow 1.15(旧バージョン)のインストール

  1. 今から作成する隔離された Python 仮想環境の名前と、Pythonのバージョンを決めておく
  2. Windows で,コマンドプロンプトを実行.
  3. virtualenv隔離された Python 仮想環境新規作成し,有効化

    下の例では,隔離された Python 仮想環境の名前をtf1に設定している

    mkvirtualenv tf1
    lsvirtualenv 
    

    [image]
  4. TenforFlow 1.15 のインストール

    このとき,virtualenv の隔離された Python 仮想環境を有効化する(「tf1」のところは、Python仮想環境の名前)

    ※ 「py」は,Windows のPythonランチャーAnaconda 3 内の Python などを間違って使ってしまわないように,Pythonランチャーを使って Python を起動している.Ubuntu では「py」でなく「python3」コマンドを使う.

    ※ 「py -m pip install」は,Python パッケージをインストールするための操作. Ubuntu では,「py -m pip install」の代わりに「pip3 install ...」のように操作すること.

    workon tf1
    py -m pip install --upgrade pip
    py -m pip install -U tensorflow==1.15
    

    [image]

    GPU版の TensorFlow を使いたいとき

    ※ TensorFlow 1.15 では CPU 版と GPU版が 1つのパッケージに統合されている.

    GPU 版 TensorFlow 1.15 を使うために,https://developer.nvidia.com/cuda-10.0-download-archiveから CUDA 10.0 を入手し,インストールしておくこと

    そして,https://developer.nvidia.com/cudnn から cuDNN を入手し,C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0 などに展開(解凍)し,パスを通しておくこと

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

Windows の場合

※ 「pip install ...」は,Python パッケージをインストールするための操作.

workon tf1
pip install -U scikit-image opencv-python dlib 

Ubuntu の場合

workon tf1
pip3 install -U scikit-image opencv-python dlib 

mpatacchiola/DeepGaze のインストール

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

    [image]
  2. DeepGaze のインストールディレクトリを空にしておく

    mkdir c:\pytools
    cd c:\pytools
    rmdir /s /q deepgaze
    

    [image]
  3. DeepGaze のインストール

    このとき,virtualenv の隔離された Python 仮想環境を有効化する(「tf1」のところは、Python仮想環境の名前)

    workon tf1
    git clone https://github.com/mpatacchiola/deepgaze
    cd deepgaze
    python setup.py build
    python setup.py install 
    

    [image]
    [image]

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

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

    [image]
  2. mp4 形式ビデオファイル: sample2.mp4 を、C:\face-image の下にダウンロード

ビデオカメラで動かしてみる

  1. Window でコマンドプロンプトを実行
  2. このとき,virtualenv の隔離された Python 仮想環境を有効化する(「tf1」のところは、Python仮想環境の名前)

    workon tf1
    

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

    ※ Python プログラムを動かすために, Windows では,「python」コマンドやPythonランチャーである「py」を使う. Ubuntu では「python3」コマンドを使う. あるいは, PyCharmなどにある Python コンソールも便利である.

    import numpy as np
    import cv2
    from deepgaze.saliency_map import FasaSaliencyMapping 
    
    # Using OpenCV the resolution of the webcam is set to these values.
    # You must check which resolution your webcam support and adjust the values in accordance.
    RESOLUTION_WIDTH = 320
    RESOLUTION_HEIGHT = 180
    
    # Open the video stream and set the webcam resolution.
    # It may give problem if your webcam does not support the particular resolution used.
    video_capture = cv2.VideoCapture(0)
    
    # Create the main window and move it
    cv2.namedWindow('Video')
    
    # Obtaining the CAM dimension
    cam_w = int(video_capture.get(3))
    cam_h = int(video_capture.get(4))
    
    # Defining the FASA object using the camera resolution
    my_map = FasaSaliencyMapping(cam_h, cam_w)
    
    while True:
        # Capture frame-by-frame
        ret, frame = video_capture.read()
        image_salient = my_map.returnMask(frame, tot_bins=8, format='BGR2LAB')
        cv2.imshow('Video', image_salient)
        # Press Q to exit
        if cv2.waitKey(1) & 0xFF == ord('q'):
            break
    

    [image]

    [image]

本サイトは金子邦彦研究室のWebページです.サイトマップは,サイトマップのページをご覧下さい. 本サイト内の検索は,サイト内検索のページをご利用下さい.

問い合わせ先: 金子邦彦(かねこ くにひこ) [image]