Chandrika Deb の顔マスク検出 (Chandrika Deb's Face Mask Detection) および顔のデータセット
写真やビデオから,マスクありの顔と,マスク無しの顔を検出する技術およびソフトウェア. 顔検出,マスク有りの顔とマスク無しの顔の分類を同時に行っている. MobileNetV2 (ディープニューラルネットワーク)を使用.
ソースコードは公開されており,画像を追加して学習をやり直すことも可能
次の2種類のデータを用いて学習を行う.
【実行結果例】
結果の動画ファイル: 1.mp4
【サイト内の関連ページ】
【関連する外部ページ】
https://colab.research.google.com/drive/1iYEI9O_cxWw4VyyafaYB4ne6CNdNJYeS?usp=sharing
Windows での Git のインストール: 別ページ »で説明
【関連する外部ページ】
Git の公式ページ: https://git-scm.com/
Windows での Python 3.10,関連パッケージ,Python 開発環境のインストール: 別ページ »で説明
【サイト内の関連ページ】
Python のまとめ: 別ページ »にまとめ
【関連する外部ページ】
Python の公式ページ: https://www.python.org/
Windows での TensorFlow,Keras のインストール: 別ページ »で説明
(このページで,Build Tools for Visual Studio 2022,NVIDIA ドライバ, NVIDIA CUDA ツールキット, NVIDIA cuDNNのインストールも説明している.)
コマンドプロンプトを管理者として実行: 別ページ »で説明
前提ソフトウエアのインストールと,ファイルのダウンロードを行う.
※ 「 python -m pip install ...」は,Python パッケージをインストールするためのコマンド.
pip install -U imutils numpy opencv-python matplotlib argparse scipy scikit-learn pillow streamlit onnx tf2onnx cd %HOMEPATH% rmdir /s /q Face-Mask-Detection git clone https://github.com/chandrikadeb7/Face-Mask-Detection
Chandrika Deb の顔マスク検出に同封のデータセット(Deb Bing Search API, Kaggle dataset, RMDF dataset から収集された顔のデータセット(マスクあり: 2165 枚,マスクなし 1930 枚))を使用して,学習を行う.
次のコマンドで学習を行う.
学習が終わるまで,数分以上待つ.
cd %HOMEPATH% cd Face-Mask-Detection python train_mask_detector.py --dataset dataset
エラーメッセージが出ていないこと.
次のコマンドを実行
python detect_mask_image.py --image images/pic1.jpeg
次のコマンドを実行
python detect_mask_video.py
TensorFlow で,GPU のメモリ不足でエラーメッセージがでて,プログラムが止まる場合, プログラムの先頭部分に次を追加すると解決する場合がある.
メッセージ
Internal: Attempting to perform BLAS operation using StreamExecutor without BLAS support
解決策:Python プログラムの先頭部分に次を追加すると解決する場合がある.
import tensorflow as tf gpus = tf.config.experimental.list_physical_devices('GPU') tf.config.experimental.set_memory_growth(gpus[0], True)
https://github.com/cabani/MaskedFace-Net
CMFD.zip と CMFD1.zip の 2つのファイルをダウンロードしたとして説明を続ける.
cd %HOMEPATH% cd Face-Mask-Detection python train_mask_detector.py --dataset dataset python detect_mask_image.py --image images/pic1.jpeg python detect_mask_video.py
結果の動画ファイル: 1.mp4