見出し画像

Zoom で顔ホッケーをやってみた。

オンラインミーティングの顔出しでホッケーをやるという遊びです。
Zoom のギャラリービューの画面をキャプチャーし、カメラに映った顔検出・顔識別をして目の部分をホッケーのバーとして扱うものです。

環境構築の時にDlibライブラリ(機械学習のアルゴリズムで顔検出・顔識別の機能を持つソフトウェア)のインストールでハマったのでメモに残しておきます。

環境

- Windows 10 (x64)   (←Mac、Linuxはサポートされていません)
- Anaconda Python 3.7.7  (←ココがハマったところでした)

まずはAnacondaをダウンロード(Windows (64bit) Python 3.7を選択)してインストールします。

次にAnacondaのPython実行環境を構築します。普通に環境を構築するとPython 3.7.7がインストールされて、Dlibライブラリの読み込みでエラーになります。

> python
Python 3.7.7 (default, May  6 2020, 11:45:54) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import dlib
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
ImportError: DLL load failed: ダイナミック リンク ライブラリ (DLL) 初期化ルーチンの実行に失敗しました。

後になって分かったことですが、DlibライブラリはPython3.7では動作しないとのことでした。

したがって、以下の手順でPythonのバージョンをダウングレードし、必要なライブラリをインストールする必要がありました。
以下の手順で無事に動かすことができました。

> conda install python=3.6
> conda create -n py36 python=3.6 anaconda
> activate py36
> conda install -y opencv
> conda install -y -c conda-forge dlib
> pip install pysimplegui
> pip install mss

正常にインストールが完了したかどうかを確認します。(エラーが出力されず、バージョン情報が出力されれば正常です。)

> python
Python 3.6.10 |Anaconda, Inc.| (default, May  7 2020, 19:46:08) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'4.2.0'
>>> import dlib
>>> dlib.__version__
'19.8.1'

最後にgithubからKaoHockeyをダウンロードしてmain.pyを実行します。

> python main.py

コマンドプロンプト画面にはログが出力され、「顔ホッケー」というウィンドウが立ち上がります。
Crop Left、Crop Right、Crop Top、Crop Buttomを操作してZoomのギャラリービューにキャプチャー画面の位置を合わせます。

画像1

次にLeft、Top、Right、Buttomを設定します。
今回はお試しなので
Left、Right →None
Top →Team1
Buttom →Team2
としました。

画像2

最後にScreenのチェックボックスにチェックを入れるとホッケーゲームが始まります。

画像3

スクリーンショット 2020-05-08 21.42.23

スクリーンショット 2020-05-08 21.42.42

ぼっちテレカンでも意外に楽しかったです。笑

いいなと思ったら応援しよう!